A Survey of Metrics for UML Class Diagrams

The demand for increased software quality has resulted in quality being more of differentiator between products than it ever has been before. For this reason, software developers need objective and valid measures for use in the evaluation and improvement of product quality from the initial stages of development. Class diagrams are a key artifact in the development of object-oriented (OO) software because they lay the foundation for all later design and implementation work. It follows that emphasizing class diagram quality may significantly contribute to higher quality OO software systems. The primary aim of this work, therefore, is to present a survey, as complete as possible, of the existing relevant works regarding class diagram metrics. Thus, from works previously published, researchers and practitioners alike may gain broad and ready access to insights for measuring these quality characteristics. Another aim of this work is to help reveal areas of research either lacking completion or yet to undertaken.

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

[2]  Fernando Brito e Abreu Using OCL to formalize object ori-ented metrics definitions , 2001 .

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

[4]  Miguel Goulão,et al.  The Design of Eiffel Programs: Quantitative Evaluation Using the MOOD Metrics , 2001 .

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

[6]  Jack J. Champlain Auditing Information Systems , 1998 .

[7]  Sandeep Purao,et al.  Product metrics for object-oriented systems , 2003, CSUR.

[8]  Coral Calero,et al.  Information and Database Quality , 2002, Advances in Database Systems.

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

[10]  Mario Piattini,et al.  Using Metrics to Predict OO Information Systems Maintainability , 2001, CAiSE.

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

[12]  Letha H. Etzkorn,et al.  Clarifying specialized forms of association in UML and OML , 1998 .

[13]  Colin Atkinson,et al.  Model-Driven Development: A Metamodeling Foundation , 2003, IEEE Softw..

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

[15]  Norman E. Fenton,et al.  Software Metrics: A Rigorous Approach , 1991 .

[16]  Klaas van den Berg,et al.  Axiomatic Validation in the Software Metric Development Process , 1995 .

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

[18]  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.

[19]  Letha H. Etzkorn,et al.  A Class Cohesion Metric For Object-Oriented Designs , 1999, J. Object Oriented Program..

[20]  Sallie M. Henry,et al.  An Empirical Study of the Object-Oriented Paradigm and Software Reuse , 1991, OOPSLA.

[21]  Victor R. Basili,et al.  A Methodology for Collecting Valid Software Engineering Data , 1984, IEEE Transactions on Software Engineering.

[22]  Forrest Shull,et al.  Building Knowledge through Families of Experiments , 1999, IEEE Trans. Software Eng..

[23]  H. Dieter Rombach Keynote: Evidence Based Software Engineering: A Pre-Requisite for Useful Research and Technology Transfer , 2003, IEEE METRICS.

[24]  Barry W. Boehm,et al.  Software Engineering Economics , 1993, IEEE Transactions on Software Engineering.

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

[26]  M. Genero,et al.  Empirical validation of class diagram complexity metrics , 2001, SCCC 2001. 21st International Conference of the Chilean Computer Science Society.

[27]  Geert Poels,et al.  Distance-based software measurement: necessary and sufficient properties for software measures , 2000, Inf. Softw. Technol..

[28]  Yann-Gaël Guéhéneuc,et al.  Quantitative Approaches in Object-Oriented Software Engineering , 1999, ECOOP Workshops.

[29]  Norman E. Fenton,et al.  Software metrics: roadmap , 2000, ICSE '00.

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

[31]  Sandro Morasca,et al.  An Operational Process for Goal-Driven Definition of Measures , 2002, IEEE Trans. Software Eng..

[32]  Manos Roumeliotis,et al.  A Review of Experimental Investigations into Object-Oriented Technology , 2004, Empirical Software Engineering.

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

[34]  David N. Card,et al.  Measurement of Object-Oriented Software Development Projects , 2001 .

[35]  Victor R. Basili,et al.  The TAME Project: Towards Improvement-Oriented Software Environments , 1988, IEEE Trans. Software Eng..

[36]  Brian Henderson-Sellers OPEN Relationships - Compositions and Containments , 1997, J. Object Oriented Program..

[37]  Michael Philippsen,et al.  The impact of inheritance depth on maintenance tasks - Detailed description and evaluation of two experiment replications , 1998 .

[38]  Geert Poels,et al.  DISTANCE: a framework for software measure construction , 1999 .

[39]  Michele Marchesi OOA metrics for the Unified Modeling Language , 1998, Proceedings of the Second Euromicro Conference on Software Maintenance and Reengineering.

[40]  John W. Daly,et al.  An empirical study evaluating depth of inheritance on the maintainability of object-oriented software , 1996 .

[41]  Mario Piattini,et al.  Building UML class diagram maintainability prediction models based on early metrics , 2003, Proceedings. 5th International Workshop on Enterprise Networking and Computing in Healthcare Industry (IEEE Cat. No.03EX717).

[42]  M Wood,et al.  Replication of Experimental Results in Software Engineering , 2022 .

[43]  Coral Calero,et al.  Empirical validation of referential integrity metrics , 2001, Inf. Softw. Technol..

[44]  Egon Berghout,et al.  The Goal/Question/Metric method: a practical guide for quality improvement of software development , 1999 .

[45]  Letha H. Etzkorn,et al.  A Practical Look at the Lack of Cohesion in Methods Metric , 1998, J. Object Oriented Program..

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

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

[48]  Adam A. Porter,et al.  Empirical studies of software engineering: a roadmap , 2000, ICSE '00.

[49]  James Miller,et al.  Applying meta-analytical procedures to software engineering experiments , 2000, J. Syst. Softw..

[50]  Rachel Harrison,et al.  Coupling metrics for object-oriented design , 1998, Proceedings Fifth International Software Metrics Symposium. Metrics (Cat. No.98TB100262).

[51]  Anneke Kleppe,et al.  The object constraint language: precise modeling with UML , 1998 .

[52]  Geert Poels,et al.  Measures for Assessing Dynamic Complexity Aspects of Object-Oriented Conceptual Schemes , 2000, ER.

[53]  Premkumar T. Devanbu,et al.  An Investigation into Coupling Measures for C++ , 1997, Proceedings of the (19th) International Conference on Software Engineering.

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

[55]  Fernando Brito e Abreu,et al.  Object-Oriented Software Engineering: Measuring and Controlling the Development Process , 1994 .

[56]  李幼升,et al.  Ph , 1989 .

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

[58]  Jeffrey C. Carver,et al.  Replicating software engineering experiments: addressing the tacit knowledge problem , 2002, Proceedings International Symposium on Empirical Software Engineering.

[59]  Shari Lawrence Pfleeger,et al.  Preliminary Guidelines for Empirical Research in Software Engineering , 2002, IEEE Trans. Software Eng..

[60]  Frank Houdek,et al.  Empirical Studies of Object-Oriented Artifacts, Methods, and Processes: State of the Art and Future Directions , 1999, Empirical Software Engineering.

[61]  Michelle Cartwright,et al.  An empirical view of inheritance , 1998, Inf. Softw. Technol..

[62]  Horst Zuse,et al.  A Framework of Software Measurement , 1998 .

[63]  Sandro Morasca,et al.  Property-Based Software Engineering Measurement , 1996, IEEE Trans. Software Eng..

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

[65]  Sallie M. Henry,et al.  Maintenance metrics for the object oriented paradigm , 1993, [1993] Proceedings First International Software Metrics Symposium.

[66]  Shari Lawrence Pfleeger,et al.  Towards a Framework for Software Measurement Validation , 1995, IEEE Trans. Software Eng..

[67]  Michael Philippsen,et al.  A controlled experiment on inheritance depth as a cost factor for code maintenance , 2003, J. Syst. Softw..

[68]  Rachel Harrison,et al.  Experimental assessment of the effect of inheritance on the maintainability of object-oriented systems , 2000, J. Syst. Softw..

[69]  Lionel C. Briand,et al.  Investigating quality factors in object-oriented designs: an industrial case study , 1999, Proceedings of the 1999 International Conference on Software Engineering (IEEE Cat. No.99CB37002).

[70]  John W. Daly,et al.  Evaluating inheritance depth on the maintainability of object-oriented software , 2004, Empirical Software Engineering.

[71]  Khaled El-Emam,et al.  Object-oriented metrics: A review of theory and practice , 2002 .

[72]  Sallie M. Henry,et al.  An empirical study of the object-oriented paradigm and software reuse , 1991, OOPSLA '91.

[73]  Carl G. Davis,et al.  A Hierarchical Model for Object-Oriented Design Quality Assessment , 2002, IEEE Trans. Software Eng..

[74]  Lionel C. Briand,et al.  A Controlled Experiment for Evaluating Quality Guidelines on the Maintainability of Object-Oriented Designs , 2001, IEEE Trans. Software Eng..

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

[76]  Mario Piattini,et al.  Early Measures for UML Class Diagrams , 2000, Obj. Logiciel Base données Réseaux.

[77]  Antonio F. Gómez-Skarmeta,et al.  A regression methodology to induce a fuzzy model , 2001, Int. J. Intell. Syst..

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

[79]  Mark Lorenz,et al.  Object-oriented software metrics - a practical guide , 1994 .

[80]  Geert Poels,et al.  Evaluating the effect of inheritance on the modifiability of object-oriented business domain models , 2001, Proceedings Fifth European Conference on Software Maintenance and Reengineering.