Abstract
To help practitioners and researchers choose the most suitable predictors when selecting from existing Software Product Maintainability Prediction (SPMP) models or designing new ones, a literature review of empirical studies on SPMP identified a large number of metrics or factors used as predictors of maintainability. However, there is a redundancy and ambiguity in both the naming and meaning of these predictors. To address this terminology issue, a one-level taxonomy of the SPMP predictors identified in the literature review have been proposed. This paper now proposes a more detailed two-level taxonomy where the first level refers to four categories, namely, software design, software size, quality attributes (or factors), and software process, the second to sub-categories, and predictors inventoried from empirical studies on SPMP.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Similar content being viewed by others
References
Bourque, P., Fairley, R.E., et al.: Guide to the software engineering body of knowledge (SWEBOK (R)): Version 3.0. IEEE Computer Society Press (2014)
ISO/IEC 25010:2011 Systems and software engineering—Systems and software Quality Requirements and Evaluation (SQuaRE)—System and software quality models. Geneva, Switzerland (2011)
Glass, R.L., Noiseux, R.A.: Software Maintenance Guidebook. Prentice Hall, Englewood Cliffs (1981)
Jones, C., Jones, C.: Assessment and Control of Software Risks. Yourdon Press, New York (1994)
Pigoski, T.M.: Practical Software Maintenance: Best Practices for Managing Your Software Investment. Wiley, New York (1996)
Bandi, R.K., Vaishnavi, V.K., Turk, D.E.: Predicting maintenance performance using object-oriented design complexity metrics. IEEE Trans. Softw. Eng. 29, 77–87 (2003)
Srinivasan, K.P., Devi, T.: A novel software metrics and software coding measurement in software engineering. Int. J. Adv. Res. Comput. Sci. Softw. Eng. 4, 303–308 (2014)
Elmidaoui, S., Cheikhi, L., Idri, A., Abran, A.: Empirical studies on software product maintainability prediction: a systematic mapping and review. e-Inf. Softw. Eng. J. 13, 141–202 (2019)
Elmidaoui, S., Cheikhi, L., Idri, A.: Accuracy comparison of empirical studies on software product maintainability prediction. In: Rocha, Á., Adeli, H., Reis, L.P., Costanzo, S. (eds.) WorldCIST’18 2018. AISC, vol. 746, pp. 26–35. Springer, Cham (2018). https://doi.org/10.1007/978-3-319-77712-2_3
Elmidaoui, S., Cheikhi, L., Idri, A.: Towards a taxonomy of software maintainability predictors. In: Rocha, Á., Adeli, H., Reis, L.P., Costanzo, S. (eds.) WorldCIST’19 2019. AISC, vol. 930, pp. 823–832. Springer, Cham (2019). https://doi.org/10.1007/978-3-030-16181-1_77
Saraiva, J., Soares, S., Castor, F.: Towards a catalog of Object-Oriented Software Maintainability metrics. In: 2013 4th International Workshop on Emerging Trends in Software Metrics (WETSoM), pp. 84–87 (2013)
e Abreu, F.B., Carapuça, R.: Candidate metrics for object-oriented software within a taxonomy framework. J. Syst. Softw. 26, 87–96 (1994)
Archer, C., Stinson, M.: Object-Oriented Software Measures. Technical report CMU/SEI-95-TR-002, ESC-TR-95–002 (1995)
Saraiva, J., et al.: Classifying metrics for assessing Object-Oriented Software Maintainability: a family of metrics’ catalogs. J. Syst. Software 103, 85–101 (2015)
Halstead, M.H.: Elements of Software Science. Elsevier Science Inc., New York (1977)
McCabe, T.J.: A complexity measure. IEEE Trans. Software Eng. SE-2, 308–320 (1976)
Chidamber, S.R., Kemerer, C.F.: A metrics suite for object oriented design. IEEE Trans. Software Eng. 20, 476–493 (1994)
Cheikhi, L., Al-Qutaish, R.E., Idri, A., Sellami, A.: Chidamber and kemerer object-oriented measures: analysis of their design from the metrology perspective. Int. J. Softw. Eng. Appl. 8, 359–374 (2014)
Li, W., Henry, S.: Object-oriented metrics that predict maintainability. J. Syst. Softw. 23, 111–122 (1993)
Thwin, M.M.T., Quah, T.S.: Application of neural networks for estimating software maintainability using object-oriented metrics. In: International Conference on Software Engineering and Knowledge Engineering, pp. 69–73 (2003)
Van Koten, C., Gray, A.R.: An application of Bayesian network for predicting object-oriented software maintainability. Inf. Softw. Technol. 48, 59–67 (2006)
Zhou, Y., Leung, H.: Predicting object-oriented software maintainability using multivariate adaptive regression splines. J. Syst. Softw. 80, 1349–1361 (2007)
Dubey, S.K., Rana, A.: A fuzzy approach for evaluation of maintainability of object oriented software system. Int. J. Comput. Appl. 49, 1–6 (2012)
Zhou, Y., Xu, B.: Predicting the maintainability of open source software using design metrics. Wuhan Univ. J. Nat. Sci. 13, 14–20 (2008)
Misra, S., Egoeze, F.: Framework for maintainability measurement of web application for efficient knowledge-sharing on campus intranet. In: Murgante, B., et al. (eds.) ICCSA 2014. LNCS, vol. 8583, pp. 649–662. Springer, Cham (2014). https://doi.org/10.1007/978-3-319-09156-3_45
Cheikhi, L., Abran, A.: Investigation of the relationships between the software quality models of the ISO 9126 standard: an empirical study using the Taguchi method. Softw. Qual. Profess. 14 (2012)
Akram, M., Mandala, S., R, M.: A literature review on various software metric. Int. J. Res. Appl. Sci. Eng. Technol. 4, 529–535 (2016)
Albrecht, A.J.: Measuring application development productivity. In: Joint Share, Guide and IBM Application Development Symposium, pp. 83–92 (1979)
Rains, E.: Function points in an ada object-oriented design? SIGPLAN OOPS Mess. 2, 23–25 (1991)
ISO/IEC 20926, Software Engineering - IFPUG Unadjusted Functional Size Measurement Method. (1994)
Fpa, M.I.: United Kingdom Software Metrics Association (UKSMA) MK II function point analysis counting practices manual (1998)
NESMA, D.: Definitions and Counting Guidelines for the Application of Function Point analysis: a practical manual (1997)
ISO/IEC 19761 Software Engineering-Cosmic-FFP-a Functional Size Measurement Method. International Organization for Standardization_ISO, Geneva. 70 (2003)
Dumke, R., Abran, A.: COSMIC Function Points: Theory and Advanced Practices. Auerbach Publications (2016)
Jin, X., Liu, Y., Ren, J., Xu, A., Bie, R.: Locality preserving projection on source code metrics for improved software maintainability. In: Sattar, A., Kang, B.(eds.) AI 2006. LNCS (LNAI), vol. 4304, pp. 877–886. Springer, Heidelberg (2006). https://doi.org/10.1007/11941439_92
Muthanna, S., Kontogiannis, K., Ponnambalam, K., Stacey, B.: A maintainability model for industrial software systems using design level metrics. In: 7th Working Conference on Reverse Engineering, pp. 248–256 (2000)
McCall, J.A., Richards, P.K., Walters, G.F.: Factors in software quality, volumes I, II, and III. US Rome Air Development Center Reports, US Department of Commerce, USA. (1977)
Boehm, B.W., Brown, J.R., Kaspar, H., Lipow, M., Merritt, M.: Characteristics of software quality (1978)
Dromey, R.G.: Concerning the Chimera- software quality. IEEE Softw. 13, 33–43 (1996)
9126–1, I.: ISO. 2001. Information Technology - Product Quality - Part 1: Quality model . ISO/IEC 9126–1, Geneva, Switzerland (2001)
ISO/IEC TR 9126–2:2003 Software engineering—Product quality—Part 2: External metrics, Geneva, Switzerland (2003)
ISO/IEC TR 9126–3:2003 Software engineering—Product quality—Part 3: Internal metrics, Geneva, Switzerland (2003)
ISO/IEC TR 9126–4:2004 Software engineering—Product quality—Part 4: quality in use metrics, Geneva, Switzerland (2004)
Sharma, A., Grover, P.S., Kumar, R.: Predicting maintainability of component-based systems by using fuzzy logic. In: Ranka, S., et al. (eds.) IC3 2009. CCIS, vol. 40, pp. 581–591. Springer, Heidelberg (2009). https://doi.org/10.1007/978-3-642-03547-0_55
Pratap, A., Chaudhary, R., Yadav, K.: Estimation of software maintainability using fuzzy logic technique. In: 2014 International Conference on Issues and Challenges in Intelligent Computing Techniques (ICICT). pp. 486–492 (2014)
Team, C.P.: CMMI for Development, version 1.2. (2006)
Hayes, J.H., Zhao, L.: Maintainability prediction: a regression analysis of measures of evolving systems. In: 21st IEEE International Conference on Software Maintenance (ICSM 2005), pp. 601–604 (2005)
Sandhya, T., Anuradha, C.: Sequencing of refactoring techniques by Greedy algorithm for maximizing maintainability. In: 2016 International Conference on Advances in Computing, Communications and Informatics (ICACCI), pp. 1397–1403 (2016)
Geeta, L., Kavita, A., Rizwan, B.: Maintainability measurement model for object oriented design. Int. J. Adv. Res. Comput. Sci. Softw. Eng. 4, 945–956 (2014)
Cheikhi, L.: Modèles de Qualité du Logiciel: Estimation de l’Impact du Changement dans les Programmes Orientés Objets en utilisant les Algorithmes d’Apprentissage. Editions universitaires europeennes (2011)
Al Dallal, J.: Object-oriented class maintainability prediction using internal quality attributes. Inf. Softw. Technol. 55, 2028–2048 (2013)
Dhankhar, P., Mittal, H., Mittal, A.: Maintainability prediction for object oriented software. Int. J. Adv. Eng. Sci. 1, 8–11 (2011)
Pham, H.: System Software Reliability. Springer, London (2007). https://doi.org/10.1007/1-84628-295-0
Abreu, F.B., Carapuça, R.: Object-Oriented Software Engineering: Measuring and Controlling the Development Process (1994)
Booch, Grady., Grady: Object-Oriented Analysis and Design with Applications. Benjamin/Cummings Pub. Co., Redwood City (1994)
Kuljit, K., Singh, H.: Analyzing software evolution using the mood metric set. Int. J. Adv. Res. Comput. Sci. 2, 509–512 (2011)
Misra, S.C.: Modeling design/coding factors that drive maintainability of software systems. Software Qual. J. 13, 297–320 (2005)
Kiewkanya, M., Jindasawat, N., Muenchaisri, P.: A methodology for constructing maintainability model of object-oriented design. In: 4th International Conference onQuality Software, QSIC, pp. 206–213 (2004)
Genero, M., Piattini, M., Manso, E., Cantone, G.: Building UML class diagram maintainability prediction models based on early metrics. In: 5th International Workshop on Enterprise Networking and Computing in Healthcare Industry (IEEE Cat. No. 03EX717), pp. 263–275 (2003)
Rumbaugh, J., Blaha, M., Premerlani, W., Eddy, F., Lorensen, B.: Object-Oriented Modeling and Design. Prentice Hall, Englewood Cliffs (1991)
Genero, M., Piattini, M.: Empirical validation of measures for class diagram structural complexity through controlled experiments. In: 5th International ECOOP Workshop on Quantitative Approaches in Object-Oriented Software Engineering (2001). https://doi.org/10.1007/3-540-47853-1_15
Rosenberg, D., Scott, K.: Applying Use Case Driven Object Modeling with UML: An Anotated E-commerce Example. Addison-Wesley, Upper Saddle River (2001)
OUP: Oxford Dictionaries. Oxford University Press, Oxford (2013)
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2022 The Author(s), under exclusive license to Springer Nature Switzerland AG
About this paper
Cite this paper
Elmidaoui, S., Cheikhi, L., Idri, A., Abran, A. (2022). Towards a Taxonomy of Software Maintainability Predictors: A Detailed View. In: Rocha, A., Adeli, H., Dzemyda, G., Moreira, F. (eds) Information Systems and Technologies. WorldCIST 2022. Lecture Notes in Networks and Systems, vol 470. Springer, Cham. https://doi.org/10.1007/978-3-031-04829-6_18
Download citation
DOI: https://doi.org/10.1007/978-3-031-04829-6_18
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-031-04828-9
Online ISBN: 978-3-031-04829-6
eBook Packages: Intelligent Technologies and RoboticsIntelligent Technologies and Robotics (R0)