Predicting Maintenance Performance Using Object-Oriented Design Complexity Metrics

The Object-Oriented (OO) paradigm has become increasingly popular in recent years. Researchers agree that, although maintenance may turn out to be easier for OO systems, it is unlikely that the maintenance burden will completely disappear. One approach to controlling software maintenance costs is the utilization of software metrics during the development phase, to help identify potential problem areas. Many new metrics have been proposed for OO systems, but only a few of them have been validated. The purpose of this research is to empirically explore the validation of three existing OO design complexity metrics and, specifically, to assess their ability to predict maintenance time. This research reports the results of validating three metrics, Interaction Level (IL), Interface Size (IS), and Operation Argument Complexity (OAC). A controlled experiment was conducted to investigate the effect of design complexity (as measured by the above metrics) on maintenance time. Each of the three metrics by itself was found to be useful in the experiment in predicting maintenance performance.

[1]  J.-Y. Chen,et al.  A new metric for object-oriented design , 1993, Inf. Softw. Technol..

[2]  Elaine J. Weyuker,et al.  Evaluating Software Complexity Measures , 2010, IEEE Trans. Software Eng..

[3]  P. Oman,et al.  Maintainability measurements on industrial source code maintenance activities , 1995, Proceedings of International Conference on Software Maintenance.

[4]  Shari Lawrence Pfleeger,et al.  Software metrics (2nd ed.): a rigorous and practical approach , 1997 .

[5]  M A Branch,et al.  Software maintenance management , 1986 .

[6]  James A. Senn,et al.  System structure and software maintenance performance , 1989, Commun. ACM.

[7]  Sallie M. Henry,et al.  Predicting source-code complexity at the design stage , 1990, IEEE Software.

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

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

[10]  Fernando Brito e Abreu,et al.  Evaluating the impact of object-oriented design on software quality , 1996, Proceedings of the 3rd International Software Metrics Symposium.

[11]  J. R. Koehler,et al.  Modern Applied Statistics with S-Plus. , 1996 .

[12]  Miguel Goulão,et al.  Toward the Design Quality Evaluation of Object-Oriented Software Systems , 1995 .

[13]  Shari Lawrence Pfleeger,et al.  Software Metrics : A Rigorous and Practical Approach , 1998 .

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

[15]  H. Dieter Rombach,et al.  A Controlled Expeniment on the Impact of Software Structure on Maintainability , 1987, IEEE Transactions on Software Engineering.

[16]  Fernando Brito e Abreu,et al.  Candidate metrics for object-oriented software within a taxonomy framework , 1994, J. Syst. Softw..

[17]  Martin Hitz,et al.  Chidamber & Kemerer's Metrics Suite: a Measurement Theory Perspective , 1996 .

[18]  Grady Booch,et al.  Object-oriented development , 1986, IEEE Transactions on Software Engineering.

[19]  Harry M. Sneed,et al.  Comprehending a complex, distributed, object-oriented software system: a report from the field , 1999, Proceedings Seventh International Workshop on Program Comprehension.

[20]  Dennis de Champeaux Object-oriented development process and metrics , 1997 .

[21]  Bill Curtis,et al.  Measuring the Psychological Complexity of Software Maintenance Tasks with the Halstead and McCabe Metrics , 1979, IEEE Transactions on Software Engineering.

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

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

[24]  Lionel C. Briand,et al.  Exploring the relationships between design measures and software quality in object-oriented systems , 2000, J. Syst. Softw..

[25]  Stephen R. Schach,et al.  A Comparison of Sixteen Quality Metrics for Object-Oriented Design , 1996, Inf. Process. Lett..

[26]  Neville Churcher,et al.  Comments on "A Metrics Suite for Object Oriented Design" , 1995, IEEE Trans. Software Eng..

[27]  Paul W. Oman,et al.  The application of software maintainability models in industrial software systems , 1995, J. Syst. Softw..

[28]  Sallie M. Henry,et al.  Measuring Object-Oriented Design , 1995, Journal of object-oriented programming.

[29]  Linda Rising Information hiding metrics for modular programming languages , 1992 .

[30]  Ronald D. Snee,et al.  Validation of Regression Models: Methods and Examples , 1977 .

[31]  Giuliano Antoniol,et al.  Identifying design-code inconsistencies in object-oriented software: a case study , 1998, Proceedings. International Conference on Software Maintenance (Cat. No. 98CB36272).

[32]  Norman Wilde,et al.  Maintenance Support for Object-Oriented Programs , 1992, IEEE Trans. Software Eng..

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

[34]  J. Neter,et al.  Applied linear statistical models : regression, analysis of variance, and experimental designs , 1974 .

[35]  Giuliano Antoniol,et al.  Design‐code traceability for object‐oriented systems , 2000, Ann. Softw. Eng..

[36]  D. Mancl,et al.  A study of the impact of C++ on software maintenance , 1990, Proceedings. Conference on Software Maintenance 1990.

[37]  Vijay K. Vaishnavi,et al.  Using object-oriented design complexity metrics to predict maintenance performance , 1998 .

[38]  B. Henderson-Sellers The mathematical validity of software metrics , 1996, SOEN.

[39]  Sandro Morasca,et al.  Defining and Validating Measures for Object-Based High-Level Design , 1999, IEEE Trans. Software Eng..

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

[41]  Letha H. Etzkorn,et al.  Design and Code Complexity Metrics for OO Classes , 2003 .

[42]  Brian Henderson-Sellers,et al.  Object-Oriented Metrics , 1995, TOOLS.

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

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

[45]  H. Dieter Rombach Design measurement: some lessons learned , 1990, IEEE Software.