Communications of the ACM
Refactoring: improving the design of existing code
Refactoring: improving the design of existing code
Agile Software Development: Principles, Patterns, and Practices
Agile Software Development: Principles, Patterns, and Practices
Software Engineering: Theory and Practice
Software Engineering: Theory and Practice
Test Driven Development: By Example
Test Driven Development: By Example
Software Metrics: A Rigorous and Practical Approach
Software Metrics: A Rigorous and Practical Approach
Case Studies for Method and Tool Evaluation
IEEE Software
IEEE Software
Quantitative Analysis of Faults and Failures in a Complex Software System
IEEE Transactions on Software Engineering
Assessing test-driven development at IBM
Proceedings of the 25th International Conference on Software Engineering
An initial investigation of test driven development in industry
Proceedings of the 2003 ACM symposium on Applied computing
Test-Driven Development in Microsoft .Net
Test-Driven Development in Microsoft .Net
On the Effectiveness of the Test-First Approach to Programming
IEEE Transactions on Software Engineering
Results from introducing component-level test automation and test-driven development
Journal of Systems and Software - Special issue: Selected papers from the 11th Asia Pacific software engineering conference (APSEC 2004)
Evaluating the efficacy of test-driven development: industrial case studies
Proceedings of the 2006 ACM/IEEE international symposium on Empirical software engineering
On the Sustained Use of a Test-Driven Development Practice at IBM
AGILE '07 Proceedings of the AGILE 2007
ESEM '07 Proceedings of the First International Symposium on Empirical Software Engineering and Measurement
IEEE Transactions on Software Engineering
IEEE Transactions on Software Engineering
Proceedings of the 2005 conference on Software Engineering: Evolution and Emerging Technologies
The impact of test-driven development on software development productivity: an empirical study
EuroSPI'07 Proceedings of the 14th European conference on Software Process Improvement
Considering rigor and relevance when evaluating test driven development: A systematic review
Information and Software Technology
Hi-index | 0.00 |
Test-driven development (TDD) is a software development practice, where test cases are incrementally written before implementing the production code. This paper presents the results of a multi-case study investigating the effectiveness of TDD within an industrial environment. Three comparable medium-sized projects were observed during their development cycle. Two projects were driven without TDD practice, while the third one introduced TDD into the development process. The effectiveness of TDD was expressed in terms of external code quality, productivity, and maintainability. Our results indicate that the TDD developers produced higher quality code that is easier to maintain, although we did observe a reduction in productivity.