Automated Identification of On-hold Self-admitted Technical Debt

  title={Automated Identification of On-hold Self-admitted Technical Debt},
  author={Rungroj Maipradit and Bin Lin and Csaba Nagy and Gabriele Bavota and Michele Lanza and Hideaki Hata and Ken-ichi Matsumoto},
  journal={2020 IEEE 20th International Working Conference on Source Code Analysis and Manipulation (SCAM)},
Modern software is developed under considerable time pressure, which implies that developers more often than not have to resort to compromises when it comes to code that is well written and code that just does the job. This has led over the past decades to the concept of “technical debt”, a short-term hack that potentially generates long-term maintenance problems. Self-admitted technical debt (SATD) is a particular form of technical debt: developers consciously perform the hack but also… Expand
Characterizing and Mitigating Self-Admitted Build Debt
This work describes SABD by location and rationale (reason and purpose) and presents the first step towards understanding technical debt in build systems and opens up avenues for future work, such as tool support to track and manage SABd backlogs. Expand
Characterizing and Mitigating Self-Admitted Technical Debt in Build Systems
  • Tao Xiao, Dong Wang, +4 authors Kenichi Matsumoto
  • Computer Science
  • IEEE Transactions on Software Engineering
  • 2021
This work presents the first step towards understanding technical debt in build systems and opens up avenues for future work, such as tool support to track and manage SATDbacklogs. Expand
FixMe: A GitHub Bot for Detecting and Monitoring On-Hold Self-Admitted Technical Debt
This paper proposes FixMe, a GitHub bot that helps developers detecting and monitoring Onhold SATD in their repositories and notify them whenever the On-hold SATDs are ready to be fixed (i.e. the referenced issues are resolved). Expand
Waiting around or job half-done? Sentiment in self-admitted technical debt
Results of the study indicate that the SATD content is crosscutting along life-cycle dimensions identified in previous work, and comments related to functional problems or on-hold SATD are generally more negative than poor implementation choices or partially implemented functionality. Expand
Automating the removal of obsolete TODO comments
This work proposes a novel model, named TDCleaner (TODO comment Cleaner), to identify obsolete TODO comments in software projects and shows the promising performance of the model over a set of benchmarks. Expand
GitHub Discussions: An Exploratory Study of Early Adoption
A mixed-methods study based on early adopters of GitHub discussions found that errors, unexpected behavior, and code reviews are prevalent discussion categories and positive sentiment in Discussions is more frequent than in Stack Overflow posts. Expand


Wait for it: identifying “On-Hold” self-admitted technical debt
This work designs and evaluates an automated classifier which can identify on-hold self-admitted technical debt which contains a condition to indicate that a developer is waiting for a certain event or an updated functionality having been implemented elsewhere. Expand
Recommending when Design Technical Debt Should be Self-Admitted
This paper investigates the extent to which previously self-admitted technical debt can be used to provide recommendations to developers when they write new source code, suggesting them when to "self-admit" design technical debt, or possibly when to improve the code being written. Expand
Beyond the Code: Mining Self-Admitted Technical Debt in Issue Tracker Systems
The findings suggest that there is space for designing novel tools to support technical debt management, particularly tools that encourage developers to create and label issues containing TD concerns, as well as issue-based SATD or just SATD-I. Expand
Using Natural Language Processing to Automatically Detect Self-Admitted Technical Debt
This paper presents an approach to automatically identify design and requirement self-admitted technical debt using Natural Language Processing (NLP), and shows that the proposed approach can achieve a good accuracy even with a relatively small training dataset. Expand
Was Self-Admitted Technical Debt Removal a Real Removal? An In-Depth Perspective
An in-depth quantitative and qualitative study of how SATD is addressed in five Java open source projects and can be used to better plan TD management or learn patterns for addressing certain kinds of TD and provide recommendations to developers. Expand
A Large-Scale Empirical Study on Self-Admitted Technical Debt
  • G. Bavota, B. Russo
  • Computer Science
  • 2016 IEEE/ACM 13th Working Conference on Mining Software Repositories (MSR)
  • 2016
This paper runs a study across 159 software projects to investigate the diffusion and evolution of self-admitted technical debt and its relationship with software quality, and shows that self-altered technical debt is diffused and increases over time due to the introduction of new instances that are not fixed by developers. Expand
SATD Detector: A Text-Mining-Based Self-Admitted Technical Debt Detection Tool
SATD Detector is proposed, a tool that is able to automatically detect SATD comments using text mining and highlight, list and manage detected comments in an integrated development environment (IDE). Expand
Automating Change-Level Self-Admitted Technical Debt Determination
The experimental results show that the proposed change-level SATD Determination model achieves a promising and better performance than four baselines in terms of AUC and cost-effectiveness and “Diffusion” is the most discriminative dimension among the three dimensions of features for determining TD-introducing changes. Expand
Detecting and quantifying different types of self-admitted technical Debt
This paper examines code comments to determine the different types of technical debt, and finds that self-admitted technical debt can be classified into five main types - design debt, defect debt, documentation debt, requirement debt and test debt. Expand
Identifying self-admitted technical debt in open source projects using text mining
This paper proposes an automated approach to detect SATD in source code comments using text mining, and utilizes feature selection to select useful features for classifier training, and combines multiple classifiers from different source projects to build a composite classifier that identifies SATD comments in a target project. Expand