On the Influence of Test-Driven Development on Software Design

11 years 12 months ago
On the Influence of Test-Driven Development on Software Design
Test-driven development (TDD) is an agile software development strategy that addresses both design and testing. This paper describes a controlled experiment that examines the effects of TDD on internal software design quality. The experiment was conducted with undergraduate students in a software engineering course. Students in three groups completed semester-long programming projects using either an iterative Test-First (TDD), iterative Test-Last, or linear Test-Last approach. Results from this study indicate that TDD can be an effective software design approach improving both code-centric aspects such as object decomposition, test coverage, and external quality, and developer-centric aspects including productivity and confidence. In addition, iterative development approaches that include automated testing demonstrated benefits over a more traditional linear approach with manual tests. This study demonstrates the viability of teaching TDD with minimal effort in the context of a relat...
David Janzen, Hossein Saiedian
Added 13 Oct 2010
Updated 13 Oct 2010
Type Conference
Year 2006
Where CSEE
Authors David Janzen, Hossein Saiedian
Comments (0)