ACM Home Page
Please provide us with feedback. Feedback
An initial investigation of test driven development in industry
Full text PdfPdf (501 KB)
Source Symposium on Applied Computing archive
Proceedings of the 2003 ACM symposium on Applied computing table of contents
Melbourne, Florida
SESSION: Software engineering table of contents
Pages: 1135 - 1139  
Year of Publication: 2003
ISBN:1-58113-624-2
Authors
Boby George  North Carolina State University, Raleigh, NC
Laurie Williams  North Carolina State University, Raleigh, NC
Sponsor
SIGAPP: ACM Special Interest Group on Applied Computing
Publisher
ACM  New York, NY, USA
Bibliometrics
Downloads (6 Weeks): 15,   Downloads (12 Months): 139,   Citation Count: 16
Additional Information:

abstract   references   cited by   index terms   collaborative colleagues  

Tools and Actions: Request Permissions Request Permissions    Review this Article  
DOI Bookmark: Use this link to bookmark this Article: http://doi.acm.org/10.1145/952532.952753
What is a DOI?

ABSTRACT

Test Driven Development (TDD) is a software development practice in which unit test cases are incrementally written prior to code implementation. In our research, we ran a set of structured experiments with 24 professional pair programmers. One group developed code using TDD while the other a waterfall-like approach. Both groups developed a small Java program. We found that the TDD developers produced higher quality code, which passed 18% more functional black box test cases. However, TDD developer pairs took 16% more time for development. A moderate correlation between time spent and the resulting quality was established upon analysis. It is conjectured that the resulting high quality of code written using the TDD practice may be due to the granularity of TDD, which may encourage more frequent and tighter verification and validation. Lastly, the programmers which followed a waterfall-like process often did not write the required automated test cases after completing their code, which might be indicative of the tendency among practitioners toward inadequate testing. This observation supports that TDD has the potential of increasing the level of testing in the industry as testing as an integral part of code development.


REFERENCES

Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.

 
1
Auer, K. and Miller, R., XP Applied: Addison-Wesley, 2001.
 
2
 
3
 
4
 
5
 
6
Chaplin, D., "Test First Programming," TechZone, 2001.
 
7
Cornett, S., "Code Coverage Analysis," Bullseye Testing Technology 2002.
 
8
 
9
Gelperin, D. and Hetzel, W., "Software Quality Engineering," presented at Fourth International Conference on Software Testing, Washington D.C., June 1987.
 
10
George, B., "Analysis and Quantification of Test Driven Development Approach," North Carolina State MS Thesis, 2002.
 
11
 
12
Jeffries, R. E., "Extreme Testing," presented at Software Testing and Quality Engineering, 1999.
 
13
Martin, C. R., Advanced Principles, Patterns and Process of Software Development: Prentice Hall, 2001, in press.
 
14
Muller, M. M. and Hagner, O., "Experiment about Test-first programming," presented at Empirical Assessment In Software Engineering EASE '02, Keele, April 2002.
 
15
Royce, W. W., "Managing the development of large software systems: concepts and techniques," presented at IEEE WESTCON, Los Angeles, CA, 1970.
 
16
Williams, L. A., The Collaborative Software Process. Salt Lake City, UT: Department of Computer Science, 2000.

CITED BY  16

Collaborative Colleagues:
Boby George: colleagues
Laurie Williams: colleagues