A Longitudinal Cohort Study on the Retainment of Test-Driven Development

被引:9
|
作者
Fucci, Davide [1 ]
Romano, Simone [2 ]
Baldassarre, Maria Teresa [3 ]
Caivano, Danilo [3 ]
Scanniello, Giuseppe [2 ]
Turhan, Burak [4 ]
Juristo, Natalia [5 ]
机构
[1] Univ Hamburg, Hamburg, Germany
[2] Univ Basilicata, Potenza, Italy
[3] Univ Bari, Bari, Italy
[4] Monash Univ, Melbourne, Vic, Australia
[5] Univ Politecn Madrid, Madrid, Spain
来源
PROCEEDINGS OF THE 12TH ACM/IEEE INTERNATIONAL SYMPOSIUM ON EMPIRICAL SOFTWARE ENGINEERING AND MEASUREMENT (ESEM 2018) | 2018年
基金
芬兰科学院;
关键词
Test-driven development; longitudinal cohort study; EXPERIENCE; QUALITY;
D O I
10.1145/3239235.3240502
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Background: Test-Driven Development (TDD) is an agile software development practice, which is claimed to boost both external quality of software products and developers' productivity. Aims: We want to study: (i) the TDD effects on the external quality of software products as well as the developers' productivity; and (ii) the retainment of TDD over a period of five months. Method: We conducted a (quantitative) longitudinal cohort study with 30 third-year undergraduate students in Computer Science at the University of Bari in Italy. Results: The use of TDD has a statistically significant effect neither on the external quality of software products nor on the developers' productivity. However, we observed that participants using TDD produced significantly more tests than those applying a non-TDD development process, and that the retainment of TDD is particularly noticeable in the amount of tests written. Conclusions: Our results should encourage software companies to adopt TDD because who practices TDD tends to write more tests-having more tests can come in handy when testing software systems or localizing faults-and it seems that novice developers retain TDD.
引用
收藏
页数:10
相关论文
共 50 条
  • [31] Test-Driven Development in scientific software: a survey
    Aziz Nanthaamornphong
    Jeffrey C. Carver
    Software Quality Journal, 2017, 25 : 343 - 372
  • [32] Introducing Test Automation and Test-Driven Development: An Experience Report
    Damm, Lars-Ola
    Lundberg, Lars
    Olsson, David
    ELECTRONIC NOTES IN THEORETICAL COMPUTER SCIENCE, 2005, 116 : 3 - 15
  • [33] Long-Term Effects of Test-Driven Development A Case Study
    Marchenko, Artem
    Abrahamsson, Pekka
    Ihme, Tuomas
    AGILE PROCESSES IN SOFTWARE ENGINEERING AND EXTREME PROGRAMMING: 10TH INTERNATIONAL CONFERENCE, XP 2009, 2009, 31 : 13 - +
  • [34] Automation of Test Skeletons within Test-Driven Development Projects
    Olmez, Muhammet Mustafa
    Gehringer, Edward
    2024 36TH INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING EDUCATION AND TRAINING, CSEE & T 2024, 2024,
  • [35] Test-driven programming
    Georgiev, Bozhidar
    Georgieva, Adriana
    39TH INTERNATIONAL CONFERENCE APPLICATIONS OF MATHEMATICS IN ENGINEERING AND ECONOMICS (AMEE13), 2013, 1570 : 455 - 460
  • [36] USING TEST ORACLES AND FORMAL SPECIFICATIONS WITH TEST-DRIVEN DEVELOPMENT
    Alawneh, Shadi G.
    Peters, Dennis K.
    INTERNATIONAL JOURNAL OF SOFTWARE ENGINEERING AND KNOWLEDGE ENGINEERING, 2013, 23 (03) : 361 - 385
  • [37] Bringing Test-Driven Development to web service choreographies
    Besson, Felipe
    Moura, Paulo
    Kon, Fabio
    Milojicic, Dejan
    JOURNAL OF SYSTEMS AND SOFTWARE, 2015, 99 : 135 - 154
  • [38] Test-Driven Synthesis
    Perelman, Daniel
    Gulwani, Sumit
    Grossman, Dan
    Provost, Peter
    ACM SIGPLAN NOTICES, 2014, 49 (06) : 408 - 418
  • [39] Effects of Developer Experience on Learning and Applying Unit Test-Driven Development
    Latorre, Roberto
    IEEE TRANSACTIONS ON SOFTWARE ENGINEERING, 2014, 40 (04) : 381 - 395
  • [40] THE EMPIRICAL STUDY: ENCOURAGING STUDENTS' INTEREST IN SOFTWARE DEVELOPMENT USING TEST-DRIVEN DEVELOPMENT
    Nanthaamornphong, Aziz
    Bressan, Stephane
    TEHNICKI GLASNIK-TECHNICAL JOURNAL, 2019, 13 (04): : 267 - 274