The long way through Software Craftsmanship

Paper: TDD in industrial teams

May 12, 2015 - 1 minute read - Comments - paperinvestigationspringertddnachiappan-nagappanmichael-maximilienthirumalesh-bhatlaurie-williams2008quote

I’ve read this paper by Nagappan, Maximilien, Bhat and Williams on the cost, advantages, pitfalls of doing TDD in industrial teams (private companies who create software).

My notes

Abstract:

little empirical evidence supports or refutes the utility of this practice in an industrial context

  • they seem to be talking about inside-out tdd as in chapter 2 (page 291), they talk about small units and then integrating them in a bigger context

Benefits

taken from chapter 2 (page 292)

  • Better design
  • Efficiency
  • Test assets
  • Reducing defect injection

Conclusions

TDD seems to be applicable in various domains

[TDD] can significantly reduce the defect density of developed software without significant productivity reduction […]

[…] an important aspect of TDD is the creation of tests assets.

Recommendations (this is all quotes):

  • Start TDD from the beginning of projects
  • For a team new to TDD, introduce automated build test integration towards the second third of the development phase
  • […] add new tests every time a problem is found
  • Get the test team involved and knowledgeable about the TDD approach
  • Constantly running the unit tests […]
  • Encourage fast unit test execution and efficient unit testing design

Disclaimer about AI/GenAI

As of 2026-05-06, the text in these articles and blog entries has been written without AI/GenAI, except I sometimes use a spellchecker to fix errors. Think Word's spellchecker, not ChatGPT.

Notes, as of today (2026-05-06):

  • No code snippet has been automatically generated, nor vibe-coded, nor generated and reviewed.
  • I don’t have any article with AI contribution.

For future entries:

  • I may have used GenAI for the code in the repo. The code I exemplify/copy in the article will always be reviewed and tested, not vibe-coded. I will specify it in each snippet or at the top/bottom of the article.
  • I normally don't use it for the text contents, although if I have used it for the article text, it would be indicated as such.

Any entry before 2026-05-06 does not contain any AI/GenAI.

For more information, read the AI/GenAI Policy

Talk: Software is eating the world Software gardening manifesto