Skip to main content
Article
Identifying self-admitted technical debt in open source projects using text mining
Empirical Software Engineering
  • Qiao HUANG, Zhejiang University
  • Emad SHIHAB, Concordia University, Montreal, Quebec, Canada
  • Xin XIA, Zhejiang University
  • David LO, Singapore Management University
  • Shanping LI, Zhejiang University
Publication Type
Journal Article
Version
acceptedVersion
Publication Date
2-2018
Abstract

Technical debt is a metaphor to describe the situation in which long-term code quality is traded for short-term goals in software projects. Recently, the concept of self-admitted technical debt (SATD) was proposed, which considers debt that is intentionally introduced, e.g., in the form of quick or temporary fixes. Prior work on SATD has shown that source code comments can be used to successfully detect SATD, however, most current state-of-the-art classification approaches of SATD rely on manual inspection of the source code comments. In this paper, we proposed an automated approach to detect SATD in source code comments using text mining. In our approach, we utilize feature selection to select useful features for classifier training, and we combine multiple classifiers from different source projects to build a composite classifier that identifies SATD comments in a target project. We investigate the performance of our approach on 8 open source projects that contain 212,413 comments. Our experimental results show that, on every target project, our approach outperforms the state-of-the-art and the baselines approaches in terms of F1-score. The F1-score achieved by our approach ranges between 0.518 - 0.841, with an average of 0.737, which improves over the state-of-the-art approach proposed by Potdar and Shihab by 499.19%. When compared with the text mining-based baseline approaches, our approach significantly improves the average F1-score by at least 58.49%. When compared with a natural language processing-based baseline, our approach also significantly improves its F1-score by 27.95%. Our proposed approach can be used by project personnel to effectively identify SATD with minimal manual effort.

Keywords
  • Source code comments,
  • Technical debt,
  • Text mininga
Identifier
10.1007/s10664-017-9522-4
Publisher
Springer Verlag (Germany)
Copyright Owner and License
Authors
Creative Commons License
Creative Commons Attribution-NonCommercial-No Derivative Works 4.0 International
Additional URL
https://doi.org/10.1007/s10664-017-9522-4
Citation Information
Qiao HUANG, Emad SHIHAB, Xin XIA, David LO, et al.. "Identifying self-admitted technical debt in open source projects using text mining" Empirical Software Engineering Vol. 23 Iss. 1 (2018) p. 418 - 451 ISSN: 1382-3256
Available at: http://works.bepress.com/david_lo/277/