Coaching Environment - TDD
Contents
Context, People
While working on the real (usually messy legacy) code, coach developers in how to break dependencies, test in isolation, and do TDD.
min 2 developers, plus coach. max 3 developers.
Room, Walls, Whiteboards
- People will be organized around 1 computer and 2-4 LARGE computer monitors.
- 1 whiteboard
- 1 flip chart paper
- 1 tape (e.g., masking tape), unless the flip charts of PostIt flip charts with sticky back
- WHITEBOARD marker pens
- whiteboard eraser
Choice of Legacy Application and First Method to "Bring Under Test"
We should start on an method or function that that you would like to "bring under test" -- to be able to unit test in isolation, so that we can do unit TDD. The method should NOT be trivially easy -- it should have some dependency problems, because teaching dependency breaking is a point of the coaching. On the other hand, it should not be the most awkward, messy, highly dependent method you can think of -- that would make getting started too slow.
Computers, Software and Networking
- 1 fast computer connected to the real product software, with internal network and internet access.
- 2-4 LARGE monitors (attached to 1 or 2 computers) with replicated (mirrored) desktop display on each. e.g., via monitor splitting cables, multiple video output ports, microsoft netmeeting shared desktop, VNC shared desktop, ...
- all normal development tools working
- NB!! pre-installation of the chosen TDD framework (JUnit, NUnit, BoostTest, ...). ACTION >> Check with the coach with framework to install, and prepare this before the coaching session.