skip to main content
research-article

Assessment of maintainability metrics for object-oriented software system

Published: 30 September 2011 Publication History

Abstract

Many organizations assess the maintainability of software systems before they are deployed. Object-oriented design has been shown to be a useful technique to develop and deliver quality software. Objectoriented metrics can be used to assess the maintainability of a software system. Various software metrics and models have been developed and described. This paper provides a review of this literature and the related state-of-the-art. It also proposes a maintainability model that is based on the analysis of the relationship between object-oriented metrics and maintainability.

References

[1]
Abreu F. B. (1995): The MOOD Metrics Set, In Proc. ECOOP'95 Workshop on Metrics, (1995).
[2]
Abreu, B. F. and W.L. Melo (1996): Evaluating the Impact of Object-Oriented Design on Software Quality, Third International Software Metrics Symposium, Berlin, Germany, March 1996.
[3]
Aggarwal, K. K., Y. Singh, A. Kaur and R. Malhotra (2006): Application of Artificial Neural Network for Predicting Maintainability using Object-Oriented Metrics, Transactions on Engineering, Computing and Technology, 15, pp. 285--289.
[4]
Alshayeb, M. and M. Li (2003): An Empirical Validation of Object-Oriented Metrics in Two Different Iterative Software Processes, IEEE Transactions on Software Engineering archive, 29, pp.1043--1049.
[5]
Antonellis, P., D. Antoniou, Y. Kanellopoulos, C. Makris, E. Theodoridis, C. Tjortjis, and N. Tsirakis (2007): A Data Mining Methodology for Evaluating Maintainability According to ISO/IEC-9126 Software Engineering Product Quality Standard, Proc. 11th IEEE Conference on Software Maintenance and Reengineering (CSMR2007), 21-23 March 2007, Amsterdam, Netherlands, 2007.
[6]
Bandi, R. K., V. K. Vaishnavi and D.E. Turk (2003): Predicting maintenance performance using object-oriented design complexity metrics, IEEE Transactions on Software Engineering, 29(1), pp. 77--87.
[7]
Bandini, S., F. D. Paoli, S. Manzoni, P. Mereghetti (2002): A support system to COTSbased software development for business services, Proceedings of the 14th International Conference on Software Engineering and Know ledge Engineering, Ischia, Italy, 27, pp. 307--314.
[8]
Bansiya J. and C. G. Davis (2002): A Hierarchical Model for Object-Oriented Design Quality Assessment, IEEE Transactions on Software Engineering, 2002.
[9]
Basili, V.R., L. C. Briand and W. L Melo. (1996): A Validation of Object-Oriented Design Metrics as Quality Indicators, IEEE Transactions on Software Engineering, 22(10), 1996, pp. 751--761.
[10]
Binkley, A. and S. Schach (1998): Validation of the Coupling Dependency Metric as a Predictor of Run-Time Failures and Maintenance Measures, Proc. 20th Int'l Conf. Software Eng., pp. 452--455, 1998.
[11]
Boehm, B. W., J. R. Brown, H. Kaspar, M. Lipow, G. McLeod, G., and M. Merritt, (1978): Characteristics of Software Quality, North Holland, 1978.
[12]
Briand L. C., S. Morasca and V. Basili (1996): Property-Based Software Engineering Measurement, IEEE Transactions on Software Engineering, 22(6), 1996, pp. 68--86.
[13]
Briand, L. and F. Lanubile (1997): Proceeding of 2nd Intl. Workshop on Empirical Studies of Software maintenance (ESS'97), ISBN 3-00-002030-6, 1997
[14]
Briand, L. C., J. W. Daly, V. Porter and J. Wust (1998): A Comprehensive Empirical Validation of Product Measures for Object-Oriented Systems, Technical Report ISERN-98-07, 1998
[15]
Briand, L.C., J. Wuest, S. Ikonomovski, and H. Lounis (1999): Investigation of Quality Factors in Object-Oriented Designs: An Industrial Case Study, Proc. Int'l Conf. Software Eng., pp. 345--354, 1999.
[16]
Briand L. C., J. Wüst, J. W. Daly and V. Porter (2000): Exploring the relationships between design measures and software quality in object-oriented systems, The Journal of Systems and Software, 51, 2000, pp. 245--273.
[17]
Briand L.C. and J. W Daly (2001): The Impact of Design Properties on Development Cost in Object-Oriented Systems, In Proceeding of 7th Int'l Software Metrics Symposium (METRICS'01), IEEE CS Press, 2001.
[18]
Bruntink, M., A. Deursen (2004): Predicting Class Testability Using Object-Oriented Metrics, Source Code Analysis and Manipulation, Fourth IEEE International Workshop, 2004.
[19]
Cartwright M. (1998): An Empirical view of inheritance, Information and Software Technology, 40(4), 1998, pp. 795--799.
[20]
Cartwright, M. and M. Shepperd (2000): An Empirical Investigation of an Object-Oriented Software System, IEEE Trans. Software Eng., 26(7), 2000, pp. 786--796.
[21]
Chidamber, S. R. and C. F. Kemerer (1994): A Metrics Suite for Object Oriented Design, IEEE Transactions on Software Engineering, 20(6), 1994, pp. 476--493.
[22]
Chidamber, S. R., D.P. Darcy and C. F. Kemerer (1998): Managerial Use of Metrics for Object-Oriented Software: An Exploratory Analysis, IEEE Transactions on Software Engineering, 24(8), 1998, pp. 629--637.
[23]
Daly, J. W., J. Miller, J. Brooks, M. Roper and M. Wood (1995): Issues on the object-oriented paradigm: A questionnaire survey, DeMarco, T. 1982, Controlling Software Projects Prentice Hall.
[24]
Daly J., Brooks A., J. Miller, M. Roper and M. Wood (1996): An Empirical Study Evaluating Depth of Inheritance on Maintainability of Object-Oriented Software, Empirical Software Engineering, 1(2), 1996, pp. 109--132.
[25]
Dromey, R. G. (195): A model for software product quality, IEEE Transactions on Software Engineering, 2, pp. 146--163, 1995.
[26]
Emam, K. El, S. Benlarbi, N. Goel, and S.N. Rai (2001): The Confounding Effect of Class Size on the Validity of Object- Oriented Metrics, IEEE Trans. Software Eng., 27, pp. 630--650, 2001.
[27]
Fenton, N. E. and S. L. Peeger (1997): Software Metrics: A Rigorous and Practical Approach, PWS Publishing Company, Boston, Massachusetts, USA, 1997.
[28]
Genero, M., E. Manso, and G. Cantone (2003): Building UML Class Diagram Maintainability Prediction Models Based on Early Metrics, Proc. 9th International Symposium on Software Metrics (METRICS'03), 3-5 Sept., 2003, pp. 263--275.
[29]
Ghezzi, C., M. Jazayeri and D. Mandrioli (1991): Fundamental of Software Enginnering, Prentice-Hall, NJ, USA, 1991.
[30]
Glass, R. (2002): Facts and Fallacies of Software Engineering: Addison-Wesley Professional, 2002.
[31]
Grady, R. B. (1992): Practical Software Metrics for Project Management and Process Improvement. Prentice Hall, Englewood Cliffs, NJ, USA, 1992
[32]
Gustafson, D. A. and B. Prasad (1991): Properties of Software Measures, In Formal Aspects of Measurement, T. Denvir, Ed. New York, Springer-Verlag, (1991)
[33]
Harrison, R., S. J. Counsell, and R. V. Nithi (1998): An Evaluation of the Mood Set of Object-Oriented Software Metrics, IEEE Transactions on Software Engineering, June 1998, 24, pp. 491--496
[34]
Harrison R., S. J. Counsell and R. Nithi (2000): Experimental Assessment of the Effect of Inheritance on the Maintainability of Object-Oriented Systems, The Journal of Systems and Software, 52, 2000, pp. 173--179.
[35]
Hayes, J.H., S.C. Patel, and L. Zhao (2004): A Metrics-Based Software Maintenance Effort Model, Proc. 8th European Conference on Software Maintenance and Reengineering (CSMR'04), IEEE Computer Society, 24-26 Mar. 2004, pp. 254--258.
[36]
Hayes, J.H. and L. Zhao (2005): Maintainability Prediction: a Regression Analysis of Measures of Evolving Systems, Proc. 21st IEEE International Conference on Software Maintenance, 26-29 Sept. 2005, pp. 601--604.
[37]
Henry, S. M., M. Humphrey and J. Lewis (1990): Evaluation of the Maintainability of Object-Oriented Software, in Proceedings of IEEE Conference on Computer and Communication Systems, 1990.
[38]
IEEE (1989): Standards for a Software Quality Metrics Methodology, P-1061/D20, IEEE Press, New York, 1989.
[39]
IEEE Std. 610.12 (1990): Standard Glossary of Software Engineering Terminology. The Institute of Electrical and Electronics Engineers, NY, USA, 1990.
[40]
IEEE (1998): Standard for Software Quality Assurance Plans, pp. 730--1998.
[41]
IEEE (2001): IEEE Transaction of Software Engineering, 27, pp. 630--650, 2001.
[42]
ISO 9126-1(2001): Software engineering Product Quality -- Part 1, Quality model, 2001.
[43]
Jung, H. W., S. G. Kim, and C. S. Chung (2004): Measuring Software Quality: A Survey of ISO/IEC 9126. IEEE Software. 21(5), 2004, pp: 88--92.
[44]
Karlssons, E. (1995): Software Reuse-A Holistic Approach, John Wiley & Sons, 1995
[45]
Khairuddin, H. and K. Elizabeth (1996): Software Maintainability Attributes Model, Malaysian Journal of Computer Science, 9(2), 1996, pp: 92--97.
[46]
Kiewkanya, M., N. Jindasawat, and P. Muenchaisri (2004): A Methodology for Constructing Maintainability Model of Object- Oriented Design, Proc. 4th International Conference on Quality Software, IEEE Computer Society, 8-9 Sept., 2004, pp. 206--213.
[47]
Li, W. (1992): Applying Software Maintenance Metrics in the Object Oriented Software Development Life Cycle, Ph.D. Dissertation, September 1992, Virginia Polytechnic Institute and State University, 1992.
[48]
Li, W. and S. M. Henry (1993): Object-Oriented Metrics that Predict Maintainability, Journal of Systems and Software, 23(2), pp. 111--122.
[49]
Li, W. and S. M. Henry (1993): Maintenance metrics for the object oriented paradigm, in Proceedings of the First International Software Metrics Symposium, IEEE, pp. 52--60.
[50]
Li, W., S. M. Henry, D Kafura and R. Schulman (1995): Measuring Object-Oriented Design, Journal of Object-Oriented Programming, 8 (4), Jul/Aug 1995, pp. 48--55.
[51]
Lorenz, M. and J. Kidd (1994): Object-Oriented Software Metrics, Prentice Hall, 1994.
[52]
Mancl, D., and W. Havanas (1990): A study of the impact of C++ on software maintenance, Proceedings of IEEE conference on Software Maintenance, November 1990, pp. 63--69
[53]
Matinlassi, M. and N. Eila (2003) : The Impact of Maintainability on Component Based Software System, Proceeding of the 29th EUROMICRO Conference 'New waves in System Architecture', 2003
[54]
McCall, J. A., P. K. Richards and G. F. Walters (1977): Factors in Software Quality, Springfield, VA, National Technical Information Service, 1977.
[55]
Muthanna, S., K. Kontogiannis, K. Ponnambalam, and B. Stacey (2000): A Maintainability Model for Industrial Software Systems Using Design Level Metrics, Proc. 7th Working Conference on Reverse Engineering (WCRE'00), Brisbane, Australia, 23-25 Nov., 2000, pp. 248--256.
[56]
Oman, P.W. and J. R. Hagemeister (1994): Construction and Testing of Polynomials Predicting Software Maintainability, Journal of Systems and Software, 24(3), pp. 251--266, 1994.
[57]
Peercy, D. (1981): A Software Maintainability Evaluation Methodology, IEEE Transactions on Software Engineering, 7, July 1981, pp. 343--352.
[58]
Poels G. and G. Dedene (1999): DISTANCE: A Framework for Software Measure Construction, Research Report DTEW9937, Dept. Applied Economics, Katholieke Universiteit Leuven, Belgium, 1999, pp 46.
[59]
Poels G. and G. Dedene (2001): Evaluating the Effect of Inheritance on the Modifiability of Object-Oriented Business Domain Models, 5th European Conference on Software Maintenance and Reengineering (CSMR 2001), Lisbon, Portugal, 2001, pp. 20--29.
[60]
Prechelt L., B. Unger, M. Philippsen and W. Tichy (2003): A controlled experiment on inheritance depth as a cost factor for code maintenance, The Journal of Systems and Software, 65, 2003, pp. 115--126.
[61]
Pressman, R. S. (2005): Software Engineering - A Practitioner's Approach, 7th ed.: McGraw Hill, 2005.
[62]
Reenskaug, T., E. Andersen A. Berre, A. Hurlen, A. Landmark, O. Lehne, E. Nordhagen, E. Ness-Ulseth, G. Oftedal, A. Skaar, and P. Stenslet(1992):OORASS: seamless support for the creation and maintenance of object oriented systems, Journal of Object Oriented Programming, 5(6), 1992, pp. 7--41.
[63]
Rizvi, S.W.A., Khan, R.A., "A Critical Review on Software Maintainability Models," Proc. of the National Conference on Cutting EdgeComputer and Electronics Technologies, 14-16 Feb. 2009, pp. 144--148, Pantnagar, India, 2009.
[64]
Rizvi, S.W.A., R.A Khan (2010): Maintainability Estimation Model for Object-Oriented Software in Design Phase, Journal of Computing, 2(4), April 2010.
[65]
Rombach, H.D. (1990): Design Measurement: Some Lessons Learned, IEEE Software, March 1990, pp. 17--25.
[66]
Rosenberg L. H. and L. Hyatt (1995): Software Quality Metrics for Object-Oriented Environments, SATC, NASA Technical Report SATC-TR-95-1001, 1995.
[67]
Selby, R. W. and V. R. Vasili,(1991): Analyzing Error-Prone Systems Structure, IEEE Transactions on Software Engineering, 17, 1991, pp. 141--152.
[68]
Sneed, H., A. Mercy (1985): Automated Software Quality Assurance. IEEE Trans. Software Eng., 11(9), 1985, pp. 909--916.
[69]
Subramanyam, R. and M. S. Krishnan, (2003): Empirical Analysis of CK Metrics for Object-Oriented Design Complexity: Implications for Software Defects, IEEE Transactions on Software Engineering, 29(4), APRIL 2003.
[70]
Tang M., M. Kao and M. Chen (1998): An Empirical Study on Object-Oriented Metrics, 6th IEEE International Symposium on Software Metrics, 1998.
[71]
Tang, M. H., M.H. Kao, and M.H. Chen (1999): An Empirical Study on Object Oriented Metrics, Proc. Sixth Int'l Software Metrics Symp., pp. 242--249, 1999.
[72]
The Object Agency (1996): A comparison of Object-Oriented Development Methodologies, 1996. http://www.toa.com
[73]
Welker, K.D. and P.W. Oman, (1995): Software Maintainability Metrics Models in Practice, Journal of Defense Software Engineering, 8(11), pp. 19--23, 1995.
[74]
Weyuker, E.J. (1988): Evaluating Software Complexity Measures, IEEE Transactions on Software Engineering, September 1988, pp. 1357--1365
[75]
Yau, S.S. and J. S. Collofello (1985): Design Stability Measures for Software Maintenance, IEEE Transactions on Software Engineering, September 1985, pp. 849--856.

Cited By

View all
  • (2024)Determination of optimum refactoring sequence for maximizing the maintainability of object-oriented systems using machine learning algorithmsInternational Journal of System Assurance Engineering and Management10.1007/s13198-024-02639-716:2(651-666)Online publication date: 7-Dec-2024
  • (2024)Quality evaluation meta-model for open-source software: multi-method validation studySoftware Quality Journal10.1007/s11219-023-09658-w32:2(487-541)Online publication date: 1-Jun-2024
  • (2022)Object-Oriented Software Testing: A ReviewProceedings of International Conference on Information Technology and Applications10.1007/978-981-16-7618-5_40(461-467)Online publication date: 21-Apr-2022
  • Show More Cited By

Index Terms

  1. Assessment of maintainability metrics for object-oriented software system

    Recommendations

    Comments

    Information & Contributors

    Information

    Published In

    cover image ACM SIGSOFT Software Engineering Notes
    ACM SIGSOFT Software Engineering Notes  Volume 36, Issue 5
    September 2011
    160 pages
    ISSN:0163-5948
    DOI:10.1145/2020976
    Issue’s Table of Contents

    Publisher

    Association for Computing Machinery

    New York, NY, United States

    Publication History

    Published: 30 September 2011
    Published in SIGSOFT Volume 36, Issue 5

    Check for updates

    Author Tags

    1. CK metric suite
    2. maintainability
    3. metrics
    4. object-oriented system
    5. software

    Qualifiers

    • Research-article

    Contributors

    Other Metrics

    Bibliometrics & Citations

    Bibliometrics

    Article Metrics

    • Downloads (Last 12 months)4
    • Downloads (Last 6 weeks)0
    Reflects downloads up to 03 Mar 2025

    Other Metrics

    Citations

    Cited By

    View all
    • (2024)Determination of optimum refactoring sequence for maximizing the maintainability of object-oriented systems using machine learning algorithmsInternational Journal of System Assurance Engineering and Management10.1007/s13198-024-02639-716:2(651-666)Online publication date: 7-Dec-2024
    • (2024)Quality evaluation meta-model for open-source software: multi-method validation studySoftware Quality Journal10.1007/s11219-023-09658-w32:2(487-541)Online publication date: 1-Jun-2024
    • (2022)Object-Oriented Software Testing: A ReviewProceedings of International Conference on Information Technology and Applications10.1007/978-981-16-7618-5_40(461-467)Online publication date: 21-Apr-2022
    • (2021)Predicting Relative Thresholds for Object Oriented Metrics2021 IEEE/ACM International Conference on Technical Debt (TechDebt)10.1109/TechDebt52882.2021.00015(55-63)Online publication date: May-2021
    • (2021)Application of AO* Algorithm in Recognizing the Optimum Refactoring sequence for examining the effect on Maintainability: An Empirical Study2021 11th International Conference on Cloud Computing, Data Science & Engineering (Confluence)10.1109/Confluence51648.2021.9377109(188-195)Online publication date: 28-Jan-2021
    • (2020)Assessment of optimum refactoring sequence to improve the software quality of object-oriented softwareJournal of Information and Optimization Sciences10.1080/02522667.2020.1809097(1-10)Online publication date: 9-Sep-2020
    • (2020)Investigating optimum refactoring sequence using hill-climbing algorithmJournal of Information and Optimization Sciences10.1080/02522667.2020.172461441:2(499-508)Online publication date: 28-Apr-2020
    • (2019)INTERNAL AND EXTERNAL QUALITY IN THE EVOLUTION OF MOBILE SOFTWARE: AN EXPLORATORY STUDY IN OPEN-SOURCE MARKETInformation and Software Technology10.1016/j.infsof.2019.04.002Online publication date: Apr-2019
    • (2018)Mobil Uygulamaların Evriminde Karmaşıklık, Boyut ve İç Kalite Gelişimi: Keşifsel bir ÇalışmaGazi Üniversitesi Mühendislik-Mimarlık Fakültesi Dergisi10.17341/gazimmfd.4605472018:18-2Online publication date: 12-Sep-2018
    • (2018)Automatic Software Refactoring via Weighted Clustering in Method-Level NetworksIEEE Transactions on Software Engineering10.1109/TSE.2017.267975244:3(202-236)Online publication date: 1-Mar-2018
    • Show More Cited By

    View Options

    Login options

    View options

    PDF

    View or Download as a PDF file.

    PDF

    eReader

    View online with eReader.

    eReader

    Figures

    Tables

    Media

    Share

    Share

    Share this Publication link

    Share on social media