Does test-driven development improve the program code? Alarming results from a comparative case study

Maria Siniaalto, Pekka Abrahamsson

Research output: Chapter in Book/Report/Conference proceedingConference article in proceedingsScientificpeer-review

15 Citations (Scopus)

Abstract

It is suggested that test-driven development (TDD) is one of the most fundamental practices in agile software development, which produces loosely coupled and highly cohesive code. However, how the TDD impacts on the structure of the program code have not been widely studied. This paper presents the results from a comparative case study of five small scale software development projects where the effect of TDD on program design was studied using both traditional and package level metrics. The empirical results reveal that an unwanted side effect can be that some parts of the code may deteriorate. In addition, the differences in the program code, between TDD and the iterative test-last development, were not as clear as expected. This raises the question as to whether the possible benefits of TDD are greater than the possible downsides. Moreover, it additionally questions whether the same benefits could be achieved just by emphasizing unit-level testing activities.
Original languageEnglish
Title of host publicationBalancing Agility and Formalism in Software Engineering
Subtitle of host publicationSecond IFIP TC 2 Central and East European Conference on Software Engineering Techniques, CEE-SET 2007
EditorsBertrand Meyer, Jerzy R. Nawrocki, Bartosz Walter
Place of PublicationBerlin - Heidelberg
PublisherSpringer
Pages143-156
ISBN (Electronic)978-3-540-85279-7
ISBN (Print)978-3-540-85278-0
DOIs
Publication statusPublished - 2008
MoE publication typeA4 Article in a conference publication
EventSecond IFIP TC 2 Central and East European Conference on Software Engineering Techniques, CEE-SET 2007 - Poznan, Poland
Duration: 10 Oct 200712 Oct 2007

Publication series

SeriesLecture Notes in Computer Science
Volume5082
ISSN0302-9743

Conference

ConferenceSecond IFIP TC 2 Central and East European Conference on Software Engineering Techniques, CEE-SET 2007
Country/TerritoryPoland
CityPoznan
Period10/10/0712/10/07

Keywords

  • Test-driven development
  • test-first programming
  • test-first development
  • agile software development
  • software quality

Fingerprint

Dive into the research topics of 'Does test-driven development improve the program code? Alarming results from a comparative case study'. Together they form a unique fingerprint.

Cite this