{"title":"Test-driven development, engagement in activity, and maintainability: An empirical study","authors":"Wei Ren, Stephen Barrett","doi":"10.1049/sfw2.12135","DOIUrl":null,"url":null,"abstract":"<p>The software engineering community aims to achieve and maintain high-efficient software engineering practical activities. One of the techniques used for this purpose is Test-Driven Development (TDD), which is a cyclic and test-centered development method positively related to maintainability, which may vary depending on the context and application. Previous research has indicated that TDD's benefits on maintainability may be due to the improved focus on coding and testing activities. However, limited research has investigated the role of engagement in software quality. Therefore, this study investigates the relationship between TDD methods, engagement level in development activities, and maintainability. The primary research questions addressed in this study are does following TDD methods improve the engagement level in development activities? And does a higher engagement level leads to better maintainability? The study employs a statistical analysis technique, regression analysis to explore the research questions. The results show that TDD behaviours improve the engagement level, and engaging in development activities has a significant positive impact on maintainability. Additionally, the study finds that the positive impact of focussing on testing, such as writing more test cases, is more pronounced compared to coding activities. Our study adds to current software engineering literature that not only personal expertise but the engagement level in the development process are associated with software quality and calls for the emphasis on developer's engagement.</p>","PeriodicalId":50378,"journal":{"name":"IET Software","volume":"17 4","pages":"509-525"},"PeriodicalIF":1.5000,"publicationDate":"2023-07-27","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"https://onlinelibrary.wiley.com/doi/epdf/10.1049/sfw2.12135","citationCount":"0","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"IET Software","FirstCategoryId":"94","ListUrlMain":"https://onlinelibrary.wiley.com/doi/10.1049/sfw2.12135","RegionNum":4,"RegionCategory":"计算机科学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"Q3","JCRName":"COMPUTER SCIENCE, SOFTWARE ENGINEERING","Score":null,"Total":0}
引用次数: 0
Abstract
The software engineering community aims to achieve and maintain high-efficient software engineering practical activities. One of the techniques used for this purpose is Test-Driven Development (TDD), which is a cyclic and test-centered development method positively related to maintainability, which may vary depending on the context and application. Previous research has indicated that TDD's benefits on maintainability may be due to the improved focus on coding and testing activities. However, limited research has investigated the role of engagement in software quality. Therefore, this study investigates the relationship between TDD methods, engagement level in development activities, and maintainability. The primary research questions addressed in this study are does following TDD methods improve the engagement level in development activities? And does a higher engagement level leads to better maintainability? The study employs a statistical analysis technique, regression analysis to explore the research questions. The results show that TDD behaviours improve the engagement level, and engaging in development activities has a significant positive impact on maintainability. Additionally, the study finds that the positive impact of focussing on testing, such as writing more test cases, is more pronounced compared to coding activities. Our study adds to current software engineering literature that not only personal expertise but the engagement level in the development process are associated with software quality and calls for the emphasis on developer's engagement.
期刊介绍:
IET Software publishes papers on all aspects of the software lifecycle, including design, development, implementation and maintenance. The focus of the journal is on the methods used to develop and maintain software, and their practical application.
Authors are especially encouraged to submit papers on the following topics, although papers on all aspects of software engineering are welcome:
Software and systems requirements engineering
Formal methods, design methods, practice and experience
Software architecture, aspect and object orientation, reuse and re-engineering
Testing, verification and validation techniques
Software dependability and measurement
Human systems engineering and human-computer interaction
Knowledge engineering; expert and knowledge-based systems, intelligent agents
Information systems engineering
Application of software engineering in industry and commerce
Software engineering technology transfer
Management of software development
Theoretical aspects of software development
Machine learning
Big data and big code
Cloud computing
Current Special Issue. Call for papers:
Knowledge Discovery for Software Development - https://digital-library.theiet.org/files/IET_SEN_CFP_KDSD.pdf
Big Data Analytics for Sustainable Software Development - https://digital-library.theiet.org/files/IET_SEN_CFP_BDASSD.pdf