Abstract
Test-driven development (TDD) is entering the mainstream of software development. We examined the software development process for the purpose of evaluation of the TDD impact, with respect to software development productivity, in the context of a web based system development. The design of the study is based on Goal-Question-Metric approach, and may be easily replicated in different industrial contexts where the number of subjects involved in the study is limited. The study reveals that TDD may have positive impact on software development productivity. Moreover, TDD is characterized by the higher ratio of active development time (described as typing and producing code) in total development time than test-last development approach.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
Beck, K., Andres, C.: Extreme Programming Explained: Embrace Change, 2nd edn. Addison-Wesley, Reading (2004)
Maxwell, K., Forselius, P.: Benchmarking Software-Development Productivity - Applied Research Results. IEEE Software 17(1), 80–88 (2000)
Fowler, M.: Cannot Measure Productivity (accessed March 2007), http://www.martinfowler.com/bliki/CannotMeasureProductivity.html
Beck, K.: Test Driven Development: By Example. Addison-Wesley, Reading (2002)
Müller, M.M., Hagner, O.: Experiment about test-first programming. IEE Proceedings - Software 149(5), 131–136 (2002)
George, B., Williams, L.A.: An Initial Investigation of Test Driven Development in Industry. In: SAC 2003. Proceedings of the 2003 ACM Symposium on Applied Computing, pp. 1135–1139. ACM, New York (2003)
George, B., Williams, L.A.: A structured experiment of test-driven development. Information and Software Technology 46(5), 337–342 (2004)
Williams, L., Maximilien, E.M., Vouk, M.: Test-Driven Development as a Defect-Reduction Practice. In: ISSRE 2003. Proceedings of the 14th International Symposium on Software Reliability Engineering, Washington, DC, USA, pp. 34–48. IEEE Computer Society Press, Los Alamitos (2003)
Maximilien, E.M., Williams, L.A.: Assessing Test-Driven Development at IBM. In: ICSE 2003. Proceedings of the 25th International Conference on Software Engineering, pp. 564–569. IEEE Computer Society Press, Los Alamitos (2003)
Geras, A., Smith, M.R., Miller, J.: A prototype empirical evaluation of test driven development. In: METRICS 2004. Proceedings of the 10th International Symposium on Software Metrics, pp. 405–416. IEEE Computer Society Press, Los Alamitos (2004)
Madeyski, L.: Preliminary Analysis of the Effects of Pair Programming and Test-Driven Development on the External Code Quality. In: Zieliński, K., Szmuc, T. (eds.) Software Engineering: Evolution and Emerging Technologies. Frontiers in Artificial Intelligence and Applications, vol. 130, pp. 113–123. IOS Press, Amsterdam (2005), http://madeyski.e-informatyka.pl/download/Madeyski05b.pdf
Bhat, T., Nagappan, N.: Evaluating the efficacy of test-driven development: industrial case studies. In: ISESE 2006. Proceedings of the 2006 ACM/IEEE International Symposium on Empirical Software Engineering, pp. 356–363. ACM Press, New York (2006)
Canfora, G., Cimitile, A., Garcia, F., Piattini, M., Visaggio, C.A.: Evaluating advantages of test driven development: a controlled experiment with professionals. In: ISESE 2006. Proceedings of the 2006 ACM/IEEE International Symposium on Empirical Software Engineering, pp. 364–371. ACM Press, New York (2006)
Müller, M.M.: The Effect of Test-Driven Development on Program Code. In: Abrahamsson, P., Marchesi, M., Succi, G. (eds.) XP 2006. LNCS, vol. 4044, pp. 94–103. Springer, Heidelberg (2006)
Basili, V.R., Caldiera, G., Rombach, H.D.: The Goal Question Metric Approach. In: Encyclopedia of Software Engineering, pp. 528–532 (1994)
Erdogmus, H., Morisio, M., Torchiano, M.: On the Effectiveness of the Test-First Approach to Programming. IEEE Transactions on Software Engineering 31(3), 226–237 (2005)
Kiczales, G., Lamping, J., Mendhekar, A., Maeda, C., Lopes, C.V., Loingtier, J.M., Irwin, J.: Aspect-Oriented Programming. In: Aksit, M., Matsuoka, S. (eds.) ECOOP 1997. LNCS, vol. 1241, pp. 220–242. Springer, Heidelberg (1997)
Höst, M., Wohlin, C., Thelin, T.: Experimental Context Classification: Incentives and Experience of Subjects. In: ICSE 2005. Proceedings of the 27th International Conference on Software Engineering, pp. 470–478. ACM Press, New York (2005)
Clarke, S., Baniassad, E.: Aspect-Oriented Analysis and Design: The Theme Approach. Addison-Wesley, Reading (2005)
Wohlin, C., Runeson, P., Höst, M., Ohlsson, M.C., Regnell, B., Wesslén, A.: Experimentation in Software Engineering: An Introduction. Kluwer Academic Publishers, Norwell, MA, USA (2000)
Sørumgård, L.S.: Verification of Process Conformance in Empirical Studies of Software Development. PhD thesis, The Norwegian University of Science and Technology (1997)
ActivitySensor project (accessed March 2007), http://www.e-informatyka.pl/sens/Wiki.jsp?page=Projects.ActivitySensor
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 2007 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Madeyski, L., Szała, Ł. (2007). The Impact of Test-Driven Development on Software Development Productivity — An Empirical Study. In: Abrahamsson, P., Baddoo, N., Margaria, T., Messnarz, R. (eds) Software Process Improvement. EuroSPI 2007. Lecture Notes in Computer Science, vol 4764. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-75381-0_18
Download citation
DOI: https://doi.org/10.1007/978-3-540-75381-0_18
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-74765-9
Online ISBN: 978-3-540-75381-0
eBook Packages: Computer ScienceComputer Science (R0)