A validation of object-oriented design metrics as quality indicators

被引:877
作者
Basili, VR
Briand, LC
Melo, WL
机构
[1] UNIV MARYLAND, DEPT COMP SCI, COLLEGE PK, MD 20742 USA
[2] FRAUNHOFER INST EXPT SOFTWARE ENGN, D-67661 KAISERSLAUTERN, GERMANY
[3] CTR RECH INFORMAT MONTREAL, MONTREAL, PQ H3A 2N4, CANADA
基金
美国国家航空航天局; 美国国家科学基金会;
关键词
object-oriented design metrics; error prediction model; object-oriented software development; C++ programming language;
D O I
10.1109/32.544352
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
This paper presents the results of a study in which we empirically investigated the suite of object-oriented (OO) design metrics introduced in [13]. More specifically, our goal is to assess these metrics as predictors of fault-prone classes and, therefore, determine whether they can be used as early quality indicators. This study is complementary to the work described in [30] where the same suite of metrics had been used to assess frequencies of maintenance changes to classes. To perform our validation accurately, we collected data on the development of eight medium-sized information management systems based on identical requirements. All eight projects were developed using a sequential life cycle model, a well-known OO analysis/design method and the C++ programming language. Based on empirical and quantitative analysis, the advantages and drawbacks of these OO metrics are discussed. Several of Chidamber and Kemerer's OO metrics appear to be useful to predict class fault-proneness during the early phases of the life-cycle. Also, on our data set, they are better predictors than ''traditional'' code metrics, which can only be collected at a later phase of the software development processes.
引用
收藏
页码:751 / 761
页数:11
相关论文
共 38 条
[1]  
ABREU FBE, 1994, J SYST SOFTWARE, V26, P87, DOI 10.1016/0164-1212(94)90099-X
[2]  
*AM SOFTW RES, 1994, GETT START AM
[3]  
[Anonymous], P 1995 S SOFTW REUS
[4]   METRIC ANALYSIS AND DATA VALIDATION ACROSS FORTRAN PROJECTS [J].
BASILI, VR ;
SELBY, RW ;
PHILLIPS, TY .
IEEE TRANSACTIONS ON SOFTWARE ENGINEERING, 1983, 9 (06) :652-663
[5]   How reuse influences productivity in object-oriented systems [J].
Basili, VR ;
Briand, LC ;
Melo, WL .
COMMUNICATIONS OF THE ACM, 1996, 39 (10) :104-116
[6]   AN EMPIRICAL-STUDY OF A SYNTACTIC COMPLEXITY FAMILY [J].
BASILI, VR ;
HUTCHENS, DH .
IEEE TRANSACTIONS ON SOFTWARE ENGINEERING, 1983, 9 (06) :664-672
[7]  
Boehm B. W., 1981, SOFTWARE ENG EC
[8]  
BRIAND L, 1995, 9503 ISERN
[9]   Property-based software engineering measurement [J].
Briand, LC ;
Morasca, S ;
Basili, VR .
IEEE TRANSACTIONS ON SOFTWARE ENGINEERING, 1996, 22 (01) :68-86
[10]   DEVELOPING INTERPRETABLE MODELS WITH OPTIMIZED SET REDUCTION FOR IDENTIFYING HIGH-RISK SOFTWARE COMPONENTS [J].
BRIAND, LC ;
BASILI, VR ;
HETMANSKI, CJ .
IEEE TRANSACTIONS ON SOFTWARE ENGINEERING, 1993, 19 (11) :1028-1044