Publication Type
Journal Article
Version
acceptedVersion
Publication Date
12-2019
Abstract
Self-Admitted Technical Debt (SATD) refers to technical debt that is introduced intentionally. Previous studies that identify SATD at the file-level in isolation cannot describe the TD context related to multiple files. Therefore, it is more beneficial to identify the SATD once a change is being made. We refer to this type of TD identification as “Change-level SATD Determination”, and identifying SATD at the change-level can help to manage and control TD by understanding the TD context through tracing the introducing changes. In this paper, we propose a change-level SATD Determination mode by extracting 25 features from software changes that are divided into three dimensions, namely diffusion, history and message, respectively. To evaluate the effectiveness of our proposed model, we perform an empirical study on 7 open source projects containing a total of 100,011 software changes. The experimental results show that our model achieves a promising and better performance than four baselines in terms of AUC and cost-effectiveness. On average across the 7 experimental projects, our model achieves AUC of 0.82, cost-effectiveness of 0.80, which is a significant improvement over the comparison baselines used. In addition, we found that “Diffusion” is the most discriminative dimension for determining TD-introducing changes
Keywords
Self-admitted Technical Debt, Software Change, Labeling, Measurement, Software quality, Technical Debt, Feature extraction, Change-level Determination
Discipline
Software Engineering
Research Areas
Software and Cyber-Physical Systems
Publication
IEEE Transactions on Software Engineering
Volume
45
Issue
12
First Page
1211
Last Page
1229
ISSN
0098-5589
Identifier
10.1109/TSE.2018.2831232
Publisher
Institute of Electrical and Electronics Engineers (IEEE)
Citation
YAN, Meng; XIA, Xin; SHIHAB, Emad; LO, David; YIN, Jianwei; and YANG, Xiaohu.
Automating change-level self-admitted technical debt determination. (2019). IEEE Transactions on Software Engineering. 45, (12), 1211-1229.
Available at: https://ink.library.smu.edu.sg/sis_research/4352
Copyright Owner and License
Authors
Creative Commons License
This work is licensed under a Creative Commons Attribution-NonCommercial-No Derivative Works 4.0 International License.
Additional URL
https://doi.org/10.1109/TSE.2018.2831232