DocumentCode
2371445
Title
Test-driven development as a defect-reduction practice
Author
Williams, Laurie ; Maximilien, E. Michael ; Vouk, Mladen
Author_Institution
Dept. of Comput. Sci., North Carolina State Univ., Raleigh, NC, USA
fYear
2003
fDate
17-20 Nov. 2003
Firstpage
34
Lastpage
45
Abstract
Test-driven development is a software development practice that has been used sporadically for decades. With this practice, test cases (preferably automated) are incrementally written before production code is implemented. Test-driven development has recently re-emerged as a critical enabling practice of the extreme programming software development methodology. We ran a case study of this practice at IBM. In the process, a thorough suite of automated test cases was produced after UML design. In this case study, we found that the code developed using a test-driven development practice showed, during functional verification and regression tests, approximately 40% fewer defects than a baseline prior product developed in a more traditional fashion. The productivity of the team was not impacted by the additional focus on producing automated test cases. This test suite aids in future enhancements and maintenance of this code. The case study and the results are discussed in detail.
Keywords
Unified Modeling Language; formal verification; program testing; regression analysis; IBM; UML design; automated test cases; defect-reduction practice; extreme programming software development; functional verification; production code; regression test; software development practice; test-driven development; Automatic testing; Computer science; NASA; Production; Productivity; Programming; Radio access networks; Software testing; Unified modeling language; Writing;
fLanguage
English
Publisher
ieee
Conference_Titel
Software Reliability Engineering, 2003. ISSRE 2003. 14th International Symposium on
ISSN
1071-9458
Print_ISBN
0-7695-2007-3
Type
conf
DOI
10.1109/ISSRE.2003.1251029
Filename
1251029
Link To Document