Issue No. 05 - September/October (2006 vol. 8)
DOI Bookmark: http://doi.ieeecomputersociety.org/10.1109/MITP.2006.122
Test-driven development (TDD) is a key practice for agile developers because it involves writing test cases ahead of the code, which can improve design. The TDD process works well for projects in which a collocated team develops a small to medium system, but it can be challenging for large systems, especially those involving geographically distributed teams. The main obstacle is the degree of integration: when the team must integrate many individual classes developed at distributed sites, the coordination and communication grows exponentially with the number of individual developers and sites. This does not mean that TDD is ineffective for large-scale geographically distributed projects, but developers must take care to account for its focus on unit testing and its failure to rigorously address communications issues during system and integration testing. In this article, suggestions to scale up TDD are presented with two large-scale global software development projects at a major corporation and a recent meeting to exchange global software development best practices with a Fortune 500 company
System testing, Programming, Writing, Large scale integration, Large-scale systems, Best practices, Computer aided software engineering, Counting circuits, Buildings, Automatic testing, design testing, TDD, automated testing
"Test-Driven Development in Large Projects," in IT Professional, vol. 8, no. , pp. 25-29, 2006.