Technical debt (TD) refers to delayed tasks and immature artifacts that may bring short-term benefits but incur extra costs of change during maintenance and evolution in the long term. TD has been extensively studied in the past decade, and numerous open source software (OSS) projects were used to explore specific aspects of TD and validate various approaches for TD management (TDM). However, there still lacks a comprehensive understanding on the practice of TDM in OSS development, which penetrates the OSS community's perception of the TD concept and how TD is managed in OSS development. To this end, we conducted an empirical study on the whole GitHub to explore the adoption and execution of TDM based on issues in OSS projects. We collected 35,278 issues labeled as TD (TD issues) distributed over 3,598 repositories in total from the issue tracking system of GitHub between 2009 and 2020. The findings are that: (1) the OSS community is embracing the TD concept; (2) the analysis of TD instances shows that TD may affect both internal and external quality of software systems; (3) only one TD issue was identified in 31.1% of the repositories and all TD issues were identified by only one developer in 69.0% of the repositories; (4) TDM was ignored in 27.3% of the repositories after TD issues were identified; and (5) among the repositories with TD labels, 32.9% have abandoned TDM while only 8.2% adopt TDM as a consistent practice. These findings provide valuable insights for practitioners in TDM and promising research directions for further investigation.
翻译:技术债务(TD)是指延迟的任务和不成熟的文物,可能会带来短期利益,但在长期维护和演变期间带来额外的变化成本。过去十年,我们广泛研究了TDT, 并使用许多开放源码软件项目来探讨TDT的具体方面,并验证TD管理的各种办法。然而,对于开放源码软件开发过程中的TDM做法仍然缺乏全面了解,这渗透了开放源码软件社区对TDM概念的看法,以及TDD如何在开放源码软件开发过程中得到管理。为此,我们对整个GitHub进行了实证研究,以探讨在开放源码软件项目中的问题基础上采用和执行TDM。我们收集了35,27 27 TDM 数据库中标为TD(TD)问题共分发了3,598个储存库。结果显示:(1) 开放源码软件社区正在接受TDM概念;(2) 对TDD实例的分析表明,TDD可能影响到软件系统的内部和外部质量;(3) 在31.1%的储存库中只发现了一个TDM问题,在TDM 3 数据库中,只有1个连续的TDM 问题被确定为TDM 。