A First Look at Duplicate and Near-duplicate Self-admitted Technical Debt Comments
Self-admitted technical debt (SATD) refers to technical debt that is intentionally introduced by developers and explicitly documented in code comments or other software artifacts (e.g., issue reports) to annotate sub-optimal decisions made by developers in the software development process.
In this work, we take the first look at the existence and characteristics of duplicate and near-duplicate SATD comments in five popular Apache OSS projects, i.e., JSPWiki, Helix, Jackrabbit, Archiva, and SystemML. We design a method to automatically identify groups of duplicate and near-duplicate SATD comments and track their evolution in the software system by mining the commit history of a software project. Leveraging the proposed method, we identified 3,520 duplicate and near-duplicate SATD comments from the target projects, which belong to 1,141 groups. We manually analyze the content and context of a sample of 1,505 SATD comments (by sampling 100 groups for each project) and identify if they annotate the same root cause. We also investigate whether duplicate SATD comments exist in code clones, whether they co-exist in the same file, and whether they are introduced and removed simultaneously. Our preliminary study reveals several surprising findings that would shed light on future studies aiming to improve the management of duplicate SATD comments. For instance, only 48.5% duplicate SATD comment groups with the same root cause exist in regular code clones, and only 33.9% of the duplicate SATD comment pairs are introduced in the same commit.
Tue 17 MayDisplayed time zone: Eastern Time (US & Canada) change
07:50 - 08:40 | Session 14: DocumentationResearch / Early Research Achievements (ERA) / Tool Demonstration at ICPC room Chair(s): Fiorella Zampetti University of Sannio, Italy | ||
07:50 7mTalk | Fine-Grained Code-Comment Semantic Interaction Analysis Research Mingyang Geng National University of Defense Technology, Shangwen Wang National University of Defense Technology, Dezun Dong NUDT, Shanzhi Gu Hunan Huishiwei Intelligent Technology Co., Ltd., Fang Peng University of Chinese Academy of Sciences, Weijian Ruan Shenzhen Institutes of Advanced Technology,Chinese Academy of Sciences, Liao Xiangke National University of Defense Technology DOI Pre-print Media Attached | ||
07:57 4mTalk | Using Discord Conversations as Program Comprehension Aid Early Research Achievements (ERA) Marco Raglianti Software Institute - USI, Lugano, Csaba Nagy Software Institute - USI, Lugano, Roberto Minelli Software Institute - USI, Lugano, Michele Lanza Software Institute - USI, Lugano Media Attached | ||
08:01 7mTalk | Demystifying Software Release Note Issues on GitHub Research Jianyu Wu Peking University, Hao He Peking University, Wenxin Xiao School of Computer Science, Peking University, Kai Gao University of Science and Technology Beijing, Minghui Zhou Peking University, China Pre-print Media Attached | ||
08:08 4mTalk | A First Look at Duplicate and Near-duplicate Self-admitted Technical Debt Comments Early Research Achievements (ERA) Jerin Yasmin Queen's University, Canada, Mohammad Sadegh Sheikhaei Queen's University, Yuan Tian Queens University, Kingston, Canada Pre-print Media Attached | ||
08:12 7mTalk | HatCUP: Hybrid Analysis and Attention based Just-In-Time Comment Updating Research Hongquan Zhu State Key Laboratory for Novel Software Technology, Nanjing University, Xincheng He State Key Laboratory for Novel Software Technology, Nanjing University, Lei Xu State Key Laboratory for Novel Software Technology, Nanjing University DOI Pre-print Media Attached | ||
08:19 4mTalk | Casdoc: Unobtrusive Explanations in Code Examples Tool Demonstration Mathieu Nassif McGill University, Zara Horlacher McGill University, Martin P. Robillard McGill University Pre-print Media Attached | ||
08:23 17mLive Q&A | Q&A-Paper Session 14 Research |