Author:
Agha Dua,Sohail Rashida,Meghji Areej Fatemah,Qaboolio Ramsha,Bhatti Sania
Abstract
Test-Driven Development (TDD) is a methodology in software development that necessitates tests to be written before to the production code. This approach can be used in any software development paradigm that involves writing code, including Agile, Scrum, XP, and Lean. This research paper surveys the impact of TDD on software development with a specific focus on its effects on code coverage, productivity, internal and external software quality, and the affective reactions associated with TDD. The paper also identifies potential challenges and drawbacks of implementing TDD, such as increased overhead and time consumption, a learning curve for developers, and difficulty in testing certain types of code. The studies’ results suggest that TDD can improve code coverage, and code quality, reduce defects, increase productivity and developer satisfaction, improve internal and external software quality, and ultimately lead to higher customer satisfaction.
Reference25 articles.
1. K. Beck, "Test-driven development: by example." Addison-Wesley Professional, 2003.
2. M. T. Baldassarre, D. Caivano, D. Fucci, N. Juristo, S. Romano, G. Scanniello, and B. Turhan, "Studying test-driven development and its retainment over a six-month time span," Journal of Systems and Software, vol. 176, p. 110937, 2021.
3. B. Turhan, L. Layman, M. Diep, H. Erdogmus, and F. Shull, "How effective is test-driven development," Making Software: What Really Works, and Why We Believe It, pp. 207–217, 2010.
4. C. VersionOne, "2018 state of agile report," 2018.
5. M. Siniaalto and P. Abrahamsson, "A comparative case study on the impact of test-driven development on program design and test coverage," in First International Symposium on Empirical Software Engineering and Measurement (ESEM 2007). IEEE, 2007, pp. 275–284.