2013 ACM / IEEE International Symposium on Empirical Software Engineering and Measurement (2013)
Baltimore, MD USA
Oct. 10, 2013 to Oct. 11, 2013
DOI Bookmark: http://doi.ieeecomputersociety.org/10.1109/ESEM.2013.15
Davide Fucci , Dept. of Inf. Process. Sci., Univ. of Oulu, Oulu, Finland
Burak Turhan , Dept. of Inf. Process. Sci., Univ. of Oulu, Oulu, Finland
Background: Test-first development (TF) is regarded as a development practice that can lead to better quality of software products, as well as improved developer productivity. By implementing unit tests before the corresponding production code, the tests themselves are the main driver to such improvements. The role of tests on the effectiveness of TF has been studied in a controlled experiment by Erdogmus et al. (i.e. original study). Aim: Our goal is to examine the impact of test-first (TF) development on product quality and developer productivity, specifically the role that tests play in it. Method: We replicated the original study's controlled experiment by comparing an experimental group applying TF to a control group applying a test-last approach. We then carried out a correlation study in order to understand whether the number of tests is a good predictor for external quality and/or productivity. Results: Mann-Whitney tests did not show any significant difference between the two groups in terms of number of tests written (W=114.5, p=0.38), developers' productivity (W=90, p=0.82) and external quality (W=81.55, p=0.53). In addition, while a significant correlation exists between the number of tests and productivity (Spearman's ρ = 0.57, p<;0.001), none was found in the case of external quality (Spearman's ρ = 0.17, p=0.18). Conclusions: We conclude that TF neither improves nor deteriorates the external quality or the productivity when compared to the test-last approach, leaving room for other variables to impact the effects of TF. This replication has partially confirmed the findings of the original study.
Productivity, Measurement, Correlation, Context, Programming, Software
D. Fucci and B. Turhan, "A Replicated Experiment on the Effectiveness of Test-First Development," 2013 ACM / IEEE International Symposium on Empirical Software Engineering and Measurement(ESEM), Baltimore, MD USA, 2014, pp. 103-112.