Identifying Self-Admitted Technical Debts With Jitterbug: A Two-Step Approach

Identifying Self-Admitted Technical Debts With Jitterbug: A Two-Step Approach
复制标题

DOI:
10.1109/tse.2020.3031401
复制
发表时间:
2020-02
影响因子:
7.4
通讯作者:
Zhe Yu;F. M. Fahid;Huy Tu;T. Menzies
Zhe Yu;F. M. Fahid;Huy Tu;T. Menzies
中科院分区:
计算机科学1区
文献类型:
--
作者:
Zhe Yu;F. M. Fahid;Huy Tu;T. Menzies

文献摘要

被引文献

相似文献

跟踪和管理自我承认的技术债务(SATD)对于维护健康的软件项目非常重要。这需要人类专家花费大量时间和精力来手动识别SATD。目前的自动化解决方案在识别SATD以完全自动化这一过程方面没有令人满意的精确度和召回率。为了解决上述问题,我们提出了一种两步法识别SATD的框架Jitterbug。Jitterbug首先使用一种新的模式识别技术,以接近100%的精度自动识别“容易找到的”SATD。随后,应用机器学习技术来帮助人类专家以更少的人力来手动识别剩余的“难以找到”的SATD。我们在10个软件项目上的模拟研究表明,Jitterbug可以比现有的最先进的方法更有效地识别SATD(用更少的人力)。
Keeping track of and managing Self-Admitted Technical Debts (SATDs) are important to maintaining a healthy software project. This requires much time and effort from human experts to identify the SATDs manually. The current automated solutions do not have satisfactory precision and recall in identifying SATDs to fully automate the process. To solve the above problems, we propose a two-step framework called Jitterbug for identifying SATDs. Jitterbug first identifies the “easy to find” SATDs automatically with close to 100 percent precision using a novel pattern recognition technique. Subsequently, machine learning techniques are applied to assist human experts in manually identifying the remaining “hard to find” SATDs with reduced human effort. Our simulation studies on ten software projects show that Jitterbug can identify SATDs more efficiently (with less human effort) than the prior state-of-the-art methods.