Exploring Maintainability Index Variants for Software Maintainability Measurement in Object-Oriented Systems
Saved in:
| Title: | Exploring Maintainability Index Variants for Software Maintainability Measurement in Object-Oriented Systems |
|---|---|
| Authors: | Tjaša Heričko, Boštjan Šumak |
| Source: | Applied Sciences, Vol 13, Iss 5, p 2972 (2023) |
| Publisher Information: | MDPI AG |
| Publication Year: | 2023 |
| Collection: | Directory of Open Access Journals: DOAJ Articles |
| Subject Terms: | software maintenance, maintainability measurement, Maintainability Index, software metrics, object-oriented software, Java, Technology, Engineering (General). Civil engineering (General), TA1-2040, Biology (General), QH301-705.5, Physics, QC1-999, Chemistry, QD1-999 |
| Description: | During maintenance, software systems undergo continuous correction and enhancement activities due to emerging faults, changing environments, and evolving requirements, making this phase expensive and time-consuming, often exceeding the initial development costs. To understand and manage software under development and maintenance better, several maintainability measures have been proposed. The Maintainability Index is commonly used as a quantitative measure of the relative ease of software maintenance. There are several Index variants that differ in the factors affecting maintainability (e.g., code complexity, software size, documentation) and their given importance. To explore the variants and understand how they compare when evaluating software maintainability, an experiment was conducted with 45 Java-based object-oriented software systems. The results showed that the choice of the variant could influence the perception of maintainability. Although different variants presented different values when subjected to the same software, their values were strongly positively correlated and generally indicated similarly how maintainability evolved between releases and over the long term. Though, when focusing on fine-grained results posed by the Index, the variant selection had a larger impact. Based on their characteristics, behavior, and interrelationships, the variants were divided into two distinct clusters, i.e., variants that do not consider code comments in their calculation and those that do. |
| Document Type: | article in journal/newspaper |
| Language: | English |
| Relation: | https://www.mdpi.com/2076-3417/13/5/2972; https://doaj.org/toc/2076-3417; https://doaj.org/article/d5d785d77ab0402882b5a6735e08a2b9 |
| DOI: | 10.3390/app13052972 |
| Availability: | https://doi.org/10.3390/app13052972 https://doaj.org/article/d5d785d77ab0402882b5a6735e08a2b9 |
| Accession Number: | edsbas.BBF64B09 |
| Database: | BASE |
| Abstract: | During maintenance, software systems undergo continuous correction and enhancement activities due to emerging faults, changing environments, and evolving requirements, making this phase expensive and time-consuming, often exceeding the initial development costs. To understand and manage software under development and maintenance better, several maintainability measures have been proposed. The Maintainability Index is commonly used as a quantitative measure of the relative ease of software maintenance. There are several Index variants that differ in the factors affecting maintainability (e.g., code complexity, software size, documentation) and their given importance. To explore the variants and understand how they compare when evaluating software maintainability, an experiment was conducted with 45 Java-based object-oriented software systems. The results showed that the choice of the variant could influence the perception of maintainability. Although different variants presented different values when subjected to the same software, their values were strongly positively correlated and generally indicated similarly how maintainability evolved between releases and over the long term. Though, when focusing on fine-grained results posed by the Index, the variant selection had a larger impact. Based on their characteristics, behavior, and interrelationships, the variants were divided into two distinct clusters, i.e., variants that do not consider code comments in their calculation and those that do. |
|---|---|
| DOI: | 10.3390/app13052972 |
Nájsť tento článok vo Web of Science