返回
Machine Learning for Technical Debt Identification
DOI:10.1109/TSE.2021.3129355.png)
摘要
En 中文
Technical Debt (TD) is a successful metaphor in conveying the consequences of software inefficiencies and their elimination to both technical and non-technical stakeholders, primarily due to its monetary nature. The identification and quantification of TD rely heavily on the use of a small handful of sophisticated tools that check for violations of certain predefined rules, usually through static analysis. Different tools result in divergent TD estimates calling into question the reliability of findings derived by a single tool. To alleviate this issue we use 18 metrics pertaining to source code, repository activity, issue tracking, refactorings, duplication and commenting rates of each class as features for statistical and Machine Learning models, so as to classify them as High-TD or not. As a benchmark we exploit 18,857 classes obtained from 25 Java projects, whose high levels of TD has been confirmed by three leading tools. The findings indicate that it is feasible to identify TD issues with sufficient accuracy and reasonable effort: a subset of superior classifiers achieved an F$_2$2-measure score of approximately 0.79 with an associated Module Inspection ratio of approximately 0.10. Based on the results a tool prototype for automatically assessing the TD of Java projects has been implemented.
Keyword:
Machine learning
metrics
measurement
quality analysis and evaluation
software maintenance
期刊
IF:
5.6
论文数:
2.9K
被引数:
1.1W
机构
引用论文
The Effectiveness of Supervised Machine Learning Algorithms in Predicting Software Refactoring监督机器学习算法在预测软件重构中的有效性
Functional chitosan gel coating enhances antimicrobial properties and osteogenesis of titanium alloy under persistent chronic inflammation功能性壳聚糖凝胶涂层增强钛合金在持续慢性炎症下的抗菌性能和成骨作用
Comparing and experimenting machine learning techniques for code smell detection比较和实验用于代码气味检测的机器学习技术

