2022, 33(1):26-54.DOI: 10.13328/j.cnki.jos.006292
摘要:技术债是一个指以牺牲长期代码质量为代价来实现短期项目目标的隐喻. 其中, 那些由开发者有意引入项目中的技术债被称为自承认技术债(self-admitted technical debt, SATD), 通常以代码注释的形式存在于软件项目中. SATD的存在给软件质量和鲁棒性带来了巨大挑战. 为了识别并且及时地偿还SATD来保障代码质量, 研究者从特性分析和识别模型两方面进行了大量研究并且取得了较大的进展. 与此同时, 相关研究工作中仍存在一些亟待解决的挑战. 对近年来国内外学者在该领域的研究成果进行系统性的总结. 首先, 描述自承认技术债的研究问题. 然后, 分别从特性分析和识别模型两方面总结相关的研究进展, 并对具体的理论和技术途径进行梳理. 接着, 简要介绍技术债的其他相关技术. 最后, 指出目前该领域研究过程中面临的挑战并给出建议的研究方向.