Investigating effect of Design Metrics on Fault Proneness in Object-Oriented Systems

Demand for quality software has undergone with rapid growth during the last few years. This is leading to an increase in the development of metrics for measuring the properties of software such as coupling, cohesion or inheritance that can be used in early quality assessments. Quality models that explore the relationship between these properties and quality attributes such as fault proneness, maintainability, effort or productivity are needed to use these metrics effectively. The goal of this work is to empirically explore the relationship between object-oriented design metrics and fault proneness of object-oriented system classes. The study used data collected from Java applications is containing 136 classes. We use a set of twenty-six design metrics in our work. Result of this study shows that many metrics are based on comparable ideas and provide redundant information. It is shown that by using a subset of metrics in the prediction models can be built to identify the faulty classes. The proposed model predicts faulty classes with more than 80% accuracy.

[1]  Michelle Cartwright,et al.  An Empirical Investigation of an Object-Oriented Software System , 2000, IEEE Trans. Software Eng..

[2]  James M. Bieman,et al.  Cohesion and reuse in an object-oriented system , 1995, SSR '95.

[3]  Tibor Gyimóthy,et al.  Empirical validation of object-oriented metrics on open source software for fault prediction , 2005, IEEE Transactions on Software Engineering.

[4]  Mei-Hwa Chen,et al.  An empirical study on object-oriented metrics , 1999, Proceedings Sixth International Software Metrics Symposium (Cat. No.PR00403).

[5]  Khaled El Emam,et al.  A Validation of Object-oriented Metrics , 1999 .

[6]  M. Stone Cross‐Validatory Choice and Assessment of Statistical Predictions , 1976 .

[7]  C. R. Kothari,et al.  Research Methodology: Methods and Techniques , 2009 .

[8]  Martin Hitz,et al.  Measuring coupling and cohesion in object-oriented systems , 1995 .

[9]  Sallie M. Henry,et al.  Object-oriented metrics that predict maintainability , 1993, J. Syst. Softw..

[10]  W. W. Muir,et al.  Regression Diagnostics: Identifying Influential Data and Sources of Collinearity , 1980 .

[11]  Victor R. Basili,et al.  A Validation of Object-Oriented Design Metrics as Quality Indicators , 1996, IEEE Trans. Software Eng..

[12]  Chris F. Kemerer,et al.  A Metrics Suite for Object Oriented Design , 2015, IEEE Trans. Software Eng..

[13]  Lionel C. Briand,et al.  A Unified Framework for Coupling Measurement in Object-Oriented Systems , 1999, IEEE Trans. Software Eng..

[14]  Lionel C. Briand,et al.  A Unified Framework for Cohesion Measurement in Object-Oriented Systems , 2004, Empirical Software Engineering.

[15]  Stephen R. Schach,et al.  Validation of the coupling dependency metric as a predictor of run-time failures and maintenance measures , 1998, Proceedings of the 20th International Conference on Software Engineering.

[16]  Lionel C. Briand,et al.  Replicated Case Studies for Investigating Quality Factors in Object-Oriented Designs , 2001, Empirical Software Engineering.

[17]  Javam C. Machado,et al.  The prediction of faulty classes using object-oriented design metrics , 2001, J. Syst. Softw..

[18]  Brian Henderson-Sellers,et al.  Object-Oriented Metrics , 1993, TOOLS.

[19]  Richard H. Carver,et al.  An Evaluation of the MOOD Set of Object-Oriented Software Metrics , 1998, IEEE Trans. Software Eng..

[20]  David P. Darcy,et al.  Managerial Use of Metrics for Object-Oriented Software: An Exploratory Analysis , 1998, IEEE Trans. Software Eng..

[21]  Lionel C. Briand,et al.  A Unified Framework for Cohesion Measurement , 1997, IEEE METRICS.

[22]  David P. Tegarden,et al.  A software complexity model of object-oriented systems , 1995, Decis. Support Syst..

[23]  N. V. Balasubramanian Object-oriented metrics , 1996, Proceedings 1996 Asia-Pacific Software Engineering Conference.

[24]  Hausi A. Müller,et al.  Predicting fault-proneness using OO metrics. An industrial case study , 2002, Proceedings of the Sixth European Conference on Software Maintenance and Reengineering.

[25]  Brian Henderson-Sellers,et al.  Object-oriented metrics: measures of complexity , 1995 .

[26]  Curtis R. Cook,et al.  Use of Factor Analysis to Develop OOP Software Complexity Metrics , 1994 .

[27]  Andreas Rausch,et al.  Journal of Object Technology , 2002 .

[28]  Jana Polgar,et al.  Object-Oriented Software Metrics , 2005, Encyclopedia of Information Science and Technology.

[29]  Chris F. Kemerer,et al.  Towards a metrics suite for object oriented design , 2017, OOPSLA '91.

[30]  David W. Hosmer,et al.  Applied Logistic Regression , 1991 .

[31]  K. K. Aggarwal,et al.  Software reuse metrics for object-oriented systems , 2005, Third ACIS Int'l Conference on Software Engineering Research, Management and Applications (SERA'05).