How Far Have We Progressed in Identifying Self-admitted Technical Debts? A Comprehensive Empirical Study

Author:

Guo Zhaoqiang1,Liu Shiran1,Liu Jinping2,Li Yanhui1,Chen Lin1,Lu Hongmin1,Zhou Yuming1

Affiliation:

1. Nanjing University

2. Jiangsu University

Abstract

Background. Self-admitted technical debt (SATD) is a special kind of technical debt that is intentionally introduced and remarked by code comments. Those technical debts reduce the quality of software and increase the cost of subsequent software maintenance. Therefore, it is necessary to find out and resolve these debts in time. Recently, many automatic approaches have been proposed to identify SATD. Problem. Popular IDEs support a number of predefined task annotation tags for indicating SATD in comments, which have been used in many projects. However, such clear prior knowledge is neglected by existing SATD identification approaches when identifying SATD. Objective. We aim to investigate how far we have really progressed in the field of SATD identification by comparing existing approaches with a simple approach that leverages the predefined task tags to identify SATD. Method. We first propose a simple heuristic approach that fuzzily Matches task Annotation Tags ( MAT ) in comments to identify SATD. In nature, MAT is an unsupervised approach, which does not need any data to train a prediction model and has a good understandability. Then, we examine the real progress in SATD identification by comparing MAT against existing approaches. Result. The experimental results reveal that: (1) MAT has a similar or even superior performance for SATD identification compared with existing approaches, regardless of whether non-effort-aware or effort-aware evaluation indicators are considered; (2) the SATDs (or non-SATDs) correctly identified by existing approaches are highly overlapped with those identified by MAT ; and (3) supervised approaches misclassify many SATDs marked with task tags as non-SATDs, which can be easily corrected by their combinations with MAT . Conclusion. It appears that the problem of SATD identification has been (unintentionally) complicated by our community, i.e., the real progress in SATD comments identification is not being achieved as it might have been envisaged. We hence suggest that, when many task tags are used in the comments of a target project, future SATD identification studies should use MAT as an easy-to-implement baseline to demonstrate the usefulness of any newly proposed approach.

Funder

National Key Basic Research and Development Program of China

National Natural Science Foundation of China

Publisher

Association for Computing Machinery (ACM)

Subject

Software

Reference96 articles.

1. Python Developer's Guide. 2020. Retrieved from https://www.python.org/dev/peps/pep-0350/. Python Developer's Guide. 2020. Retrieved from https://www.python.org/dev/peps/pep-0350/.

2. Tips about Eclipse. 2020. Retrieved from http://www.javaperspective.com/how-to-use-todo-and-fixme-task-tags-in-eclipse.html.++6. Tips about Eclipse. 2020. Retrieved from http://www.javaperspective.com/how-to-use-todo-and-fixme-task-tags-in-eclipse.html.++6.

3. Tasklist of NetBeans. 2020. Retrieved from https://ui.netbeans.org/docs/hi/promoB/tasklist.html. Tasklist of NetBeans. 2020. Retrieved from https://ui.netbeans.org/docs/hi/promoB/tasklist.html.

4. To-Do List plugin of CodeBlocks. 2020. Retrieved from http://wiki.codeblocks.org/index.php/To-Do_List_plugin. To-Do List plugin of CodeBlocks. 2020. Retrieved from http://wiki.codeblocks.org/index.php/To-Do_List_plugin.

5. Task Tags Preferences of Eclipse. 2020. Retrieved from https://www.eclipse.org/pdt/help/html/task_tags.htm. Task Tags Preferences of Eclipse. 2020. Retrieved from https://www.eclipse.org/pdt/help/html/task_tags.htm.

Cited by 21 articles. 订阅此论文施引文献 订阅此论文施引文献,注册后可以免费订阅5篇论文的施引文献,订阅后可以查看论文全部施引文献

1. Self-Admitted Technical Debts Identification: How Far Are We?;2024 IEEE International Conference on Software Analysis, Evolution and Reengineering (SANER);2024-03-12

2. Why and how bug blocking relations are breakable: An empirical study on breakable blocking bugs;Information and Software Technology;2024-02

3. Utilization of Machine Learning for the Detection of Self-admitted Vulnerabilities;Product-Focused Software Process Improvement;2023-12-02

4. Identifying Self-admitted Technical Debt with Context-Based Ladder Network;Communications in Computer and Information Science;2023-11-26

5. Software Industry Perception of Technical Debt and Its Management;International Journal of Software Engineering and Knowledge Engineering;2023-11-11

同舟云学术

1.学者识别学者识别

2.学术分析学术分析

3.人才评估人才评估

"同舟云学术"是以全球学者为主线,采集、加工和组织学术论文而形成的新型学术文献查询和分析系统,可以对全球学者进行文献检索和人才价值评估。用户可以通过关注某些学科领域的顶尖人物而持续追踪该领域的学科进展和研究前沿。经过近期的数据扩容,当前同舟云学术共收录了国内外主流学术期刊6万余种,收集的期刊论文及会议论文总量共计约1.5亿篇,并以每天添加12000余篇中外论文的速度递增。我们也可以为用户提供个性化、定制化的学者数据。欢迎来电咨询!咨询电话:010-8811{复制后删除}0370

www.globalauthorid.com

TOP

Copyright © 2019-2024 北京同舟云网络信息技术有限公司
京公网安备11010802033243号  京ICP备18003416号-3