当前位置: X-MOL 学术J. Comput. Sci. Tech. › 论文详情
Our official English website, www.x-mol.net, welcomes your feedback! (Note: you will need to create a separate account there.)
Machine Learning Techniques for Software Maintainability Prediction: Accuracy Analysis
Journal of Computer Science and Technology ( IF 1.2 ) Pub Date : 2020-09-30 , DOI: 10.1007/s11390-020-9668-1
Sara Elmidaoui , Laila Cheikhi , Ali Idri , Alain Abran

Maintaining software once implemented on the end-user side is laborious and, over its lifetime, is most often considerably more expensive than the initial software development. The prediction of software maintainability has emerged as an important research topic to address industry expectations for reducing costs, in particular, maintenance costs. Researchers and practitioners have been working on proposing and identifying a variety of techniques ranging from statistical to machine learning (ML) for better prediction of software maintainability. This review has been carried out to analyze the empirical evidence on the accuracy of software product maintainability prediction (SPMP) using ML techniques. This paper analyzes and discusses the findings of 77 selected studies published from 2000 to 2018 according to the following criteria: maintainability prediction techniques, validation methods, accuracy criteria, overall accuracy of ML techniques, and the techniques offering the best performance. The review process followed the well-known systematic review process. The results show that ML techniques are frequently used in predicting maintainability. In particular, artificial neural network (ANN), support vector machine/regression (SVM/R), regression & decision trees (DT), and fuzzy & neuro fuzzy (FNF) techniques are more accurate in terms of PRED and MMRE. The N-fold and leave-one-out cross-validation methods, and the MMRE and PRED accuracy criteria are frequently used in empirical studies. In general, ML techniques outperformed non-machine learning techniques, e.g., regression analysis (RA) techniques, while FNF outperformed SVM/R, DT, and ANN in most experiments. However, while many techniques were reported superior, no specific one can be identified as the best.

中文翻译:

用于软件可维护性预测的机器学习技术:准确度分析

维护软件一旦在最终用户端实施是费力的,并且在其生命周期内,通常比最初的软件开发成本高得多。软件可维护性的预测已成为解决行业对降低成本,尤其是维护成本的期望的重要研究课题。研究人员和从业者一直致力于提出和识别从统计到机器学习 (ML) 的各种技术,以更好地预测软件可维护性。本次审查旨在分析有关使用 ML 技术的软件产品可维护性预测 (SPMP) 准确性的经验证据。本文根据以下标准对 2000 年至 2018 年发表的 77 项选定研究的结果进行了分析和讨论:可维护性预测技术、验证方法、准确性标准、ML 技术的整体准确性以及提供最佳性能的技术。审查过程遵循着名的系统审查过程。结果表明,ML 技术经常用于预测可维护性。特别是人工神经网络(ANN)、支持向量机/回归(SVM/R)、回归和决策树(DT)、模糊和神经模糊(FNF)技术在PRED和MMRE方面更准确。N 折和留一法交叉验证方法以及 MMRE 和 PRED 准确性标准经常用于实证研究。一般来说,ML 技术优于非机器学习技术,例如回归分析 (RA) 技术,而 FNF 在大多数实验中优于 SVM/R、DT 和 ANN。
更新日期:2020-09-30
down
wechat
bug