Title :
A Comparative Case Study on the Impact of Test-Driven Development on Program Design and Test Coverage
Author :
Siniaalto, Maria ; Abrahamsson, Pekka
Author_Institution :
VTT Tech. Res. Centre of Finland, Oulu
Abstract :
Test-driven development (TDD) is a programming technique in which the tests are written prior to the source code. It is proposed that TDD is one of the most fundamental practices enabling the development of software in an agile and iterative manner. Both the literature and practice suggest that TDD practice yields several benefits. Essentially, it is claimed that TDD leads to an improved software design, which has a dramatic impact on the maintainability and further development of the system. The impact of TDD on program design has seldom come under the researchers´ focus. This paper reports the results from a comparative case study of three software development projects where the effect of TDD on program design was measured using object-oriented metrics. The results show that the effect of TDD on program design was not as evident as expected, but the test coverage was significantly superior to iterative test-last development.
Keywords :
object-oriented programming; program testing; software maintenance; software metrics; object-oriented metrics; program design; program test coverage; software design; software development project; software maintainability; source code; test-driven development; Application software; Functional programming; NASA; Scattering; Security; Software design; Software engineering; Software measurement; Software testing; System testing;
Conference_Titel :
Empirical Software Engineering and Measurement, 2007. ESEM 2007. First International Symposium on
Conference_Location :
Madrid
Print_ISBN :
978-0-7695-2886-1
DOI :
10.1109/ESEM.2007.35