中文

自承认老化债务的检测、分类与流行率分析

软件工程 2025-04-25 v1 人工智能 计算工程、金融与科学 综合文献

摘要

背景:关于软件老化的现有研究局限于关注动态运行指标如内存和性能,往往忽视演化指标如源代码注释,且仅限于 TD 上下文中狭义地检查遗留问题。目标:我们提出了老化债务(Aging Debt, AD)的概念,表示为保持软件更新所需的增加维护工作量和成本。我们通过软件开发者留在源代码注释中的自承认老化债务(Self-Admitted Aging Debt, SAAD)来研究 AD。方法:我们采用混合方法,结合定性和定量分析来检测和衡量软件中的 AD,包括在分析源代码上下文后,从源代码注释中提炼 SAAD 模式,然后利用 SAAD 模式检测 SAAD 注释。在此过程中,我们发展了一种反映软件时间老化及其相关债务的 SAAD 分类法。随后,我们利用该分类法对不同类型的 AD 在开源软件存储库中进行量化。结果:我们的提议分类法将时间软件老化分为主动型和 dormant 型。我们对超过 9000 个开源软件(OSS)存储库进行广泛分析,发现超过 21% 的存储库 exhibits SAAD 的迹象。值得注意的是,dormant AD 成为主要类别,凸显了软件维护中一个关键但常被忽视的方面。结论:随着软件数量年均增长,演化老化和维护挑战也随之增加;我们的提议分类法可助力研究人员开展详尽的软件老化研究,并帮助实践者制定改进和积极的维护策略。

关键词

引用

@article{arxiv.2504.17428,
  title  = {Detection, Classification and Prevalence of Self-Admitted Aging Debt},
  author = {Murali Sridharan and Mika Mäntylä and Leevi Rantala},
  journal= {arXiv preprint arXiv:2504.17428},
  year   = {2025}
}

备注

Draft