5 days or 10 days
The TDD bootcamp is an experience-driven workshop, not lecture-driven. The "written" materials of the course are normally a few posters on the wall and the agenda. The workshop may be supplemented with learning aids from the Agile TDD and Refactoring course, or may follow that course.
While it may be possible to lecture on TDD and refactoring for days on end, our observations on TDD adoption is that the primary problems are two-fold:
The design of this bootcamp assumes:
The theme of the bootcamp is to dare people to do things differently than they did last week--TDD is just one part of that. They don't think working off the main trunk or a project branch will work? OK, how about we just try it for two weeks? They don't think they can check in every 30 minutes? Ok, just try it. They don't think they can evolve towards the software architecture they have in mind with YAGNI? Maybe, let's try it YAGNI for a while, ruthlessly.
Having at least the shell of a working CI site helps immensely but is not a prerequisite.
primarily workshop exercises & coaching; some discussion, presentation, Q&A
These sessions are primarily intended for one team of software developers.
Immersive: This bootcamp model leans heavily on the attendees commitment and desire to progress their project work using TDD.
The bootcamp is best done during the first iteration of a significant project. You should be able to work in a common development environment which should be set-up beforehand.
Upon completion of this course, students should be able to:
single team, 11