Difference between revisions of "Coaching Environment - TDD"

Line 1: Line 1:
 
 
== Context, People ==
 
== Context, People ==
 
While working on the real (usually messy legacy) code, coach developers in how to break dependencies, test in isolation, and do TDD.
 
While working on the real (usually messy legacy) code, coach developers in how to break dependencies, test in isolation, and do TDD.
Line 18: Line 17:
  
 
* whiteboard eraser
 
* 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 ==
 
== Computers, Software and Networking ==
 
* 1 fast computer connected to the real product software, with internal network and internet access.
 
* 1 fast computer connected to the real product software, with internal network and internet access.
 +
 +
* 2-4 LARGE monitors (attached to 1 computer) with replicated (mirrored) desktop display on each
  
 
* all normal development tools working
 
* 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.
 
* 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.

Revision as of 12:44, 18 January 2010

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 computer) with replicated (mirrored) desktop display on each
  • 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.