机器学习
人工智能
计算机科学
软件
深度学习
精确性和召回率
数据挖掘
软件质量
断层(地质)
作者
Iqra Batool,Tamim Ahmed Khan
标识
DOI:10.1016/j.compeleceng.2022.107886
摘要
Software fault/defect prediction assists software developers to identify faulty constructs, such as modules or classes, early in the software development life cycle . There are data mining , machine learning , and deep learning techniques used for software fault prediction. We perform analysis of previously published reviews, surveys, and related studies to distill a list of questions. These questions were either answered in the past but needed a fresh look or they were not considered at all. We justify why answers to newly added questions are important and divide previous work based on data mining, machine learning, and deep learning and compare their performance. We study which datasets were commonly used and what comparison criteria were mostly adopted for software fault prediction. We select 68 primary studies from a wide list of initially selected set following our quality assessment criteria and present answers to our research questions. • We study fault prediction using data mining, machine learning and deep learning. • Data mining and machine learning techniques as widely used ones for software fault prediction. • Most commonly used metrics are CK, McCabe and Halstead metrics. • NASA and PROMISE datasets are widely used repositories. • Common performance measures used include Accuracy, Precision, Recall, F1-Score and AUC.
科研通智能强力驱动
Strongly Powered by AbleSci AI