Environment - Team Based TDD exercise

Computers are used occasionally throughout the course.

However, we only need (and want) 1 computer for each 2 students; e.g., if 16 students, then 8 computers. Often, it is possible for students to bring their own laptop.

Internet access and network access are required, since the students are working in teams of 4 or more, and doing continuous integration with a shared version control tool (e.g., subversion)

Power strips and extension cords are generally needed in order to supply power to the computers safely.


If we are doing team-based development, then for the team-based continuous integration work during TDD, each team people need shared access to a version control tool and shared repository, such as Subversion. the team-based course version is most common for longer courses such as Agile Software Development, or for internal 1-company courses.

On the other hand, if only working in pairs (and not larger teams), then no version control tool or repository is needed. the non-team-based course version is most common for short courses (such as the TDD course).

For Acceptance TDD, an ATDD tool, such as

If Java group:

  • latest PUBLIC (not internal to your company) version of Java Runtime (JRE)
  • latest PUBLIC (not internal to your company) version of Eclipse (most common choice) or NetBeans (less common choice)

If C++ group:

  • normally, we do the exercises in Java anyway, to avoid burning hours on awkward/slow tool setup and use in C++); Java is similar to C++, and sufficient for the educational goals (of introducing the idea of TDD and refactoring). However, if the client is really keen on doing the exercises in C++, this is possible (the coach is skilled in C++). Action >> 1+ weeks before the course, please let the coach know if C++ is important.

If .NET group:

  • Visual Studio in C#

If C group:

  • usually, Eclipse with CDT and the GNU tool chain (or cygwin or MinGW variant) -- ask the coach