论文标题

进一步调查代码技术债务项目的生存能力

Further Investigation of the Survivability of Code Technical Debt Items

论文作者

Zabardast, Ehsan, Bennin, Kwabena Ebo, Gonzalez-Huerta, Javier

论文摘要

上下文:技术债务(TD)讨论了次级决策以应对软件开发中需求速度的负面影响。代码技术债务项目(TDI)是TD的原子要素,可以在代码文物中观察到。开源系统的经验结果证明了如何在发布周期中引入并“生存”的Code-Smells是如何引入TDI的。但是,对于其他类型的代码TDI(即错误和漏洞)以及在工业环境中,关于代码销售的生存能力的结果是否鲜为人知。目标:通过进行一项实证研究,分析Apache Foundation的两个工业案例和31个开源系统,了解TDIS的生存能力。方法:我们分析了Sonarqube(193,196 Consits)检测到的133,670代码TDI(工业系统中的35,703),以使用生存模型来评估其生存能力。结果:通常,代码tdis倾向于在开源系统中长时间持续下去,而在工业系统中,它们会更快地删除。在一定阈值中生存的代码TDI往往会保持更长的时间,这证实了先前的结果。我们的结果还表明,错误往往会更快地清除,而代码的气味和脆弱性往往更长。

Context: Technical Debt (TD) discusses the negative impact of sub-optimal decisions to cope with the need-for-speed in software development. Code Technical Debt Items (TDI) are atomic elements of TD that can be observed in code artefacts. Empirical results on open-source systems demonstrated how code-smells, which are just one type of TDIs, are introduced and "survive" during release cycles. However, little is known about whether the results on the survivability of code-smells hold for other types of code TDIs (i.e., bugs and vulnerabilities) and in industrial settings. Goal: Understanding the survivability of code TDIs by conducting an empirical study analysing two industrial cases and 31 open-source systems from Apache Foundation. Method: We analysed 133,670 code TDIs (35,703 from the industrial systems) detected by SonarQube (in 193,196 commits) to assess their survivability using survivability models. Results: In general, code TDIs tend to remain and linger for long periods in open-source systems, whereas they are removed faster in industrial systems. Code TDIs that survive over a certain threshold tend to remain much longer, which confirms previous results. Our results also suggest that bugs tend to be removed faster, while code smells and vulnerabilities tend to survive longer.

扫码加入交流群

加入微信交流群

微信交流群二维码

扫码加入学术交流群,获取更多资源