Does test-driven development improve the program code? Alarming results from a comparative case study

被引:0
|
作者
Siniaalto, Maria [1 ]
Abrahamsson, Pekka [2 ]
机构
[1] F Secure Oyj, Elektroniikkatie 3, FIN-90570 Oulu, Finland
[2] VTT Tech Res Ctr Finland, FIN-90571 Oulu, Finland
关键词
test-driven development; test-first programming; test-first development; agile software development; software quality;
D O I
暂无
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
It is suggested that test-driven development (TDD) is one of the most fundamental practices in agile software development, which produces loosely Coupled and highly cohesive code. However, how the TDD impacts on the structure of the program code have not been widely studied. This paper presents the results from a comparative case study of five small scale software development projects where the effect of TDD on program design was studied using both traditional and package level metrics. The empirical results reveal that art unwanted side effect can be that some parts of the code may deteriorate. In addition, the differences in the program code, between TDD and the iterative test-last development, were not as clear as expected. This raises the question as to whether the possible benefits of TDD are greater than the possible downsides. Moreover, it additionally questions whether the same benefits could be achieved just by emphasizing unit-level testing activities.
引用
收藏
页码:143 / +
页数:3
相关论文
共 50 条
  • [21] A Case Study: Test-Driven Development in a Microscopy Image-Processing Project
    Nanthaamornphong, Aziz
    PROCEEDINGS OF SE-HPCCSE 2016: 4TH INTERNATIONAL WORKSHOP ON SOFTWARE ENGINEERING OR HIGH PERFORMANCE COMPUTING IN COMPUTATIONAL SCIENCE AND ENGINEERING, 2016, : 9 - 16
  • [22] Findings from a multi-method study on test-driven development
    Romano, Simone
    Fucci, Davide
    Scanniello, Giuseppe
    Turhan, Burak
    Juristo, Natalia
    INFORMATION AND SOFTWARE TECHNOLOGY, 2017, 89 : 64 - 77
  • [23] Using Thesaurus-Based Tag Clouds to Improve Test-Driven Code Search
    Lazzarini Lemos, Otavio Augusto
    de Paula, Adriano Carvalho
    Konishi, Gustavo
    Ossher, Joel
    Bajracharya, Sushil
    Lopes, Cristina
    7TH BRAZILIAN SYMPOSIUM ON SOFTWARE COMPONENTS, ARCHITECTURES AND REUSE (SBCARS 2013), 2013, : 99 - 108
  • [24] Test-driven development with mutation testing - an experimental study
    Roman, Adam
    Mnich, Michal
    SOFTWARE QUALITY JOURNAL, 2021, 29 (01) : 1 - 38
  • [25] Test-driven development with mutation testing – an experimental study
    Adam Roman
    Michal Mnich
    Software Quality Journal, 2021, 29 : 1 - 38
  • [26] Investigating the Impact of Peer Code Review and Pair Programming on Test-Driven Development
    Swamidurai, Rajendran
    Dennis, Brad
    Kannan, Uma
    IEEE SOUTHEASTCON 2014, 2014,
  • [27] The impact of test-driven development on software development productivity - An empirical study
    Madeyski, Lech
    Szala, Lukasz
    SOFTWARE PROCESS IMPROVEMENT, PROCEEDINGS, 2007, 4764 : 200 - +
  • [28] Test-driven development, engagement in activity, and maintainability: An empirical study
    Ren, Wei
    Barrett, Stephen
    IET SOFTWARE, 2023, 17 (04) : 509 - 525
  • [29] Prioritized Test-Driven Reverse Engineering Process: A Case Study
    Sfetsos, Panagiotis
    Angelis, Lefteris
    Stamelos, Ioannis
    2015 6TH INTERNATIONAL CONFERENCE ON INFORMATION, INTELLIGENCE, SYSTEMS AND APPLICATIONS (IISA), 2015,
  • [30] From Test Cases to FSMs: Augmented Test-driven Development and Property Inference
    Arts, Thomas
    Thompson, Simon
    ERLANG 2010: PROCEEDINGS OF THE 2010 ACM SIGPLAN, ERLANG WORKSHOP, 2010, : 1 - 12