The effectiveness of software metrics in identifying error-prone classes in post-release software evolution process

被引:102
作者
Shatnawi, Raed [1 ]
Li, Wei [2 ]
机构
[1] Jordan Univ Sci & Technol, Irbid 22110, Jordan
[2] Univ Alabama, Dept Comp Sci, Huntsville, AL 35899 USA
关键词
Object-oriented metrics; Class error proneness; Error-severity categories; Design evolution; Open source software; Empirical study;
D O I
10.1016/j.jss.2007.12.794
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Many empirical studies have found that software metrics can predict class error proneness and the prediction can be used to accurately group error-prone classes. Recent empirical studies have used open Source systems. These Studies, however. focused on the relationship between software metrics and class error proneness during the development phase of software projects. Whether software metrics can still predict class error proneness in a system's post-release evolution is still a question to be answered. This study examined three releases of the Eclipse project and found that although some metrics can still predict class error proneness in three error-severity categories, the accuracy of the prediction decreased from release to release. Furthermore, we found that the prediction cannot be used to build a metrics model to identify error-prone classes with acceptable accuracy. These findings Suggest that its a system evolves, the use of some commonly used metrics to identify which classes are more prone to errors becomes increasingly difficult and we should seek alternative methods (to the metric-prediction models) to locate error-prone classes if we want high accuracy. (C) 2008 Elsevier Inc. All rights reserved.
引用
收藏
页码:1868 / 1882
页数:15
相关论文
共 33 条
[1]   An empirical study of System Design Instability metric and design evolution in an agile software process [J].
Alshayeb, M ;
Li, W .
JOURNAL OF SYSTEMS AND SOFTWARE, 2005, 74 (03) :269-274
[2]   An empirical validation of object-oriented metrics in two different iterative software processes [J].
Alshayeb, M ;
Li, W .
IEEE TRANSACTIONS ON SOFTWARE ENGINEERING, 2003, 29 (11) :1043-1049
[3]   The quarks of object-oriented development [J].
Armstrong, DJ .
COMMUNICATIONS OF THE ACM, 2006, 49 (02) :123-128
[4]   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
[5]  
Belsley D. A., 1980, REGRESSION DIAGNOSTI
[6]   A Unified Framework for Cohesion Measurement in Object-Oriented Systems [J].
Briand L.C. ;
Daly J.W. ;
Wüst J. .
Empirical Software Engineering, 1998, 3 (1) :65-117
[7]   Exploring the relationships between design measures and software quality in object-oriented systems [J].
Briand, LC ;
Wüst, J ;
Daly, JW ;
Porter, DV .
JOURNAL OF SYSTEMS AND SOFTWARE, 2000, 51 (03) :245-273
[8]   An empirical investigation of an object-oriented software system [J].
Cartwright, M ;
Shepperd, M .
IEEE TRANSACTIONS ON SOFTWARE ENGINEERING, 2000, 26 (08) :786-796
[9]   A METRICS SUITE FOR OBJECT-ORIENTED DESIGN [J].
CHIDAMBER, SR ;
KEMERER, CF .
IEEE TRANSACTIONS ON SOFTWARE ENGINEERING, 1994, 20 (06) :476-493
[10]   Managerial use of metrics for object-oriented software: An exploratory analysis [J].
Chidamber, SR ;
Darcy, DP ;
Kemerer, CF .
IEEE TRANSACTIONS ON SOFTWARE ENGINEERING, 1998, 24 (08) :629-639