A structured experiment of test-driven development

Author(s): B. George and L. Williams
Venue: Information and Software Technology (IST)
Date: 2003


Type of Study: Structured experiment
Methodology: TDD
Duration: 4.75 hours
Company: John Deere, Role Model Software, Ericsson
Type of project: Bowling Game
# of developers: 24
project life: New
Team Language Experience: Experienced
Language: Java
Collocation: Collocated

This experiment was completed with the help of three companies: John Deere, RoleModel, and Ericcson. With every experiment, there are things that restrict external validity. In this case, the sample size was small and the application was extremely small (code size about 200 LOC). After the first trail, the experiment instruction had to be change and only one group out of the six wrote any worthwhile automated test cases, even though all groups were specifically instructed to. All programmers worked in pairs; John Deere and RoleModel use the pair programming practice in their daily development while Ericcson was introduced to the practice. Code that came from TDD teams passed approximately 18% more test cases than the control group pairs, however, it also took them 16% more time to develop the application. The main lesson learned from this was transitioning to the TDD mindset is difficult.