Techniques for evaluating fault prediction models

被引:178
作者
Jiang, Yue [1 ]
Cukic, Bojan [1 ]
Ma, Yan [2 ]
机构
[1] W Virginia Univ, Lane Dept Comp Sci & Elect Engn, Morgantown, WV 26506 USA
[2] W Virginia Univ, Dept Stat, Morgantown, WV 26506 USA
关键词
fault-prediction models; model evaluation; predictive models in software engineering; empirical studies;
D O I
10.1007/s10664-008-9079-3
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Many statistical techniques have been proposed to predict fault-proneness of program modules in software engineering. Choosing the "best" candidate among many available models involves performance assessment and detailed comparison, but these comparisons are not simple due to the applicability of varying performance measures. Classifying a software module as fault-prone implies the application of some verification activities, thus adding to the development cost. Misclassifying a module as fault free carries the risk of system failure, also associated with cost implications. Methodologies for precise evaluation of fault prediction models should be at the core of empirical software engineering research, but have attracted sporadic attention. In this paper, we overview model evaluation techniques. In addition to many techniques that have been used in software engineering studies before, we introduce and discuss the merits of cost curves. Using the data from a public repository, our study demonstrates the strengths and weaknesses of performance evaluation techniques and points to a conclusion that the selection of the "best" model cannot be made without considering project cost characteristics, which are specific in each development environment.
引用
收藏
页码:561 / 595
页数:35
相关论文
共 40 条
[1]   Comparing classifiers when the misallocation costs are uncertain [J].
Adams, NM ;
Hand, DJ .
PATTERN RECOGNITION, 1999, 32 (07) :1139-1147
[2]  
[Anonymous], 2007, QUALITY TECHNOL QUAN, DOI DOI 10.1080/16843703.2007.11673144
[3]  
[Anonymous], P WORKSH ROC AN MACH
[4]  
ARISHOLM E, 2006, P 2006 ACM IEEE INT
[5]  
AZAR D, 2002, 17 IEEE INT C AUT SO
[6]   A validation of object-oriented design metrics as quality indicators [J].
Basili, VR ;
Briand, LC ;
Melo, WL .
IEEE TRANSACTIONS ON SOFTWARE ENGINEERING, 1996, 22 (10) :751-761
[7]  
BOETTICHER GD, 2005, ACM SIGSOFT SOFTWARE, V30, P1
[8]  
BRAGA AC, 2006, INT C ROB STAT ICORS
[9]   Random forests [J].
Breiman, L .
MACHINE LEARNING, 2001, 45 (01) :5-32
[10]   Empirical assessment of machine learning based software defect prediction techniques [J].
Challagulla, VUB ;
Bastani, FB ;
Yen, IL ;
Paul, RA .
WORDS 2005: 10TH IEEE INTERNATIONAL WORKSHOP ON OBJECT-ORIENTED REAL-TIME DEPENDABLE, PROCEEDINGS, 2005, :263-270