The prerequisite for a precise maintainability measurement model is the measurement of class diagram analyzability, understandability, and modifiability. The study has therefore created three models for Analyzability, Understandability, and Modifiability before establishing MEFOOS. Multivariate linear regression model (1) has been chosen to be the setup model for all three models.
Y = β0 + β1* X1 + β2 * X2 +………… + βn * Xn + ε | (1) |
Where
Y is the projected value of the dependent variable while X1, X2 …, Xn are independent variables. β1, β2, …,βn is the regression coefficient of independent variables, ε model error (i.e., the degree of variation in our estimate of ) and β0 is the y-intercept (Y value when every other parameter is set to 0).
9.1 Understandability Model
Metrics listed in Table 3 will serve as independent variables while Understandability will be used as the dependent variable to create a multivariate model for class diagram Understandability. The necessary information utilized to create the Understandability measurement model is sourced from [3]. The association in the middle of maintainability factors and object-oriented characteristics has been established as illustrated in Eq. 2. As per the mapping, Metrics ‘NC’, ‘NGenH’ are selected from Table 3 as independent variable to set up the Understandability measurement model. The coefficient values are obtained using SPSS, and the Understandability model is formulated as follows:
Understandability = 1.617 − 0.016 * NC + 0.377 * NGenH | (2) |
Where NGenH stands for "Number of Generalization Hierarchies" and NC stands for "Number of Classes." According to (2), "NC" is directly proportional to "Understandability of Class Diagram," but "NGenH" is inversely proportional to "Understandability of Class Diagram."
9.1.1 Statistical Significance of the Model and Independent Variables
It is clear from the numbers in Tables 3, 4, and 5 that the Understandability model is statistically significant at a level of confidence more than 99%. Additionally, the values of R2 and Adjusted R2 are satisfactory. The metrics "NC" and "NGenH" involved in (2) are both statistically significant.
Table 3
Model | Unstandardized Coefficients | Standardized Coefficients |
B | Std. Error | Beta |
1 | (Constant) | 1.617 | 0.367 | |
NC | -0.016 | 0.019 | -0.304 |
NGenH | 0.377 | 0.222 | 1.066 |
a. Dependent Variable: Understandability |
Table 4
Model | R | R2 | Adjusted R2 | Std. Error of the estimate |
1 | 0.987a | 0.975 | 0.952 | 0.38277 |
a. Predictors: (Constants), NC, NGenH. |
Table 5
Model | Sum of Squares | df | Mean Square | F | Significance. |
1 | Regression | 55.045 | 2 | 27.526 | 120.879 | 0.006a |
Residual | 4.098 | 18 | 0.228 | | |
Total | 55.143 | 20 | | | |
a. Predictors: (Constants), NC, NGenH |
b. Dependent Variable: Understandability |
9.2 Modifiability Model
The next step is to create a similar model for Modifiability after building a model for Understandability. Data from [22] was utilized to create the modifiability model. Eq. 3 illustrates the proven relationship between object-oriented qualities and maintainability factors. Metrics "NC", "NGenH", "NGen", "NAggH" and "MaxDIT" are chosen from Table 3 as independent variables to construct the Modifiability measurement model in accordance with the mapping. The coefficient values are obtained using SPSS, and the modifiability model is formulated as follows:
Modifiability = 1.088 + 0.283 * NC – 0.079 * NGen – 0.616* NGenH – 0.696 * NAggH + 0.170 * MaxDIT | (3) |
The "Number of Classes" (NC), "Number of Generalizations" (NGen), "Number of Aggregation Hierarchies" (NAggH), "Number of Generalization Hierarchies" (NGenH), and "Maximum DIT" (MaxDIT) are used in this equation. According to the model, "Number of Classes" and "Maximum DIT" are directly correlated with "Modifiability of Class Diagram," whereas "NGen" and "Number of Generalization and Aggregation Hierarchies" are inversely correlated.
9.2.1 Statistical Significance of the Model
Observing the significance (p-value) for the F-test in the last column of Analysis of Variance (Table 6), it can be concluded that the modifiability model (3) is statistically significant at a confidence level of more than 95%.
Table 6
Model | Sum of Squares | df | Mean Square | F | Significance. |
1 | Regression | 60.237 | 5 | 12.047 | 114.886 | 0.079a |
Residual | 1.573 | 15 | 0.105 | |
Total | 61.810 | 20 | | | |
a. Predictors: (Constants), MaxDIT, NGen, NGenH, NC, NAggH. |
b. Dependent Variable: Modifiability |
Also, the value of R2 (Coefficient of Determination) and Adjusted R2 in the Table 7, is also very encouraging. As, it refers to the percentage or proportion of the total variance in modifiability by all the five metrics (independent variables) participating in the model (3).
Table 7
Model | R | R2 | Adjusted R2 | Std. Error of the estimate |
1 | 0. 980a | 0.960 | 0.879 | 0.324 |
a. Predictors: (Constants), MaxDIT, NGen, NGenH, NC, NAggH. |
9.2.2 Statistical Significance of Independent Variables
It can be noticed from the end column of Table 8, that all of the five metrics participating in the model is statistically significant at a significance level of 0.05 (equivalent to a confidence level of 95%).
Table 8
Model | Unstandardized Coefficients | Standardized Coefficients |
B | Std. Error | Beta |
1 | (Constant) | 1.088 | 0.224 | |
NC | 0.283 | 0.077 | 1.341 |
NAssoc | -0.079 | 0.048 | -0.204 |
NGenH | -0.616 | 0.241 | -0.316 |
NAggH | -0.696 | 0.192 | -0.255 |
MaxDIT | 0.170 | 0.104 | 0.122 |
a. Dependent Variable: Modifiability |
9.3 Analyzability Model
The next step is to create a similar model for Analyzability after building a model for Understandability and Modifiability. Data from [22] was utilized to create the modifiability model. Eq. 4 illustrates the proven relationship between object-oriented qualities and maintainability factors. Metrics "NC", "NGenH" and "MaxDIT" are chosen from Table 3 as independent variables to construct the Analyzability measurement model in accordance with the mapping. The coefficient values are obtained using SPSS, and the analyzability model is formulated as follows:
Analyzability = 1.617–0.016 * NC + 0.377 * NGenH + 0.671 * MaxDIT | (4) |
Where, NC is the ‘Number of Classes’, NGenH is ‘Number of Generalization Hierarchies’ and MaxDIT is Maximum DIT. From the model it can be interpreted that modifiability of class diagram is directly proportional to ‘Number of Classes’ and ‘Maximum DIT’, while ‘NGenH’ is inversely proportional to analyzability of class diagram.
9.3.1 Statistical Significance of the Model and Independent Variables
According to the results of Tables 9, 10, and 11, the Analyzability model is statistically significant at a level of confidence more than 99%, and the values of R2 and Adjusted R2 are satisfactory as well. Both of the three metrics involved in (4)—NC, NGenH, and MaxDIT—are statistically significant.
Table 9
Model | Unstandardized Coefficients | Standardized Coefficients |
B | Std. Error | Beta |
1 | (Constant) | 1.617 | 0.367 | |
NC | -0.016 | 0.018 | -0.304 |
NGenH | 0.377 | 0.50 | 0.546 |
MaxDIT | 0.671 | 0.222 | 1.065 |
a. Dependent Variable: Analyzability |
Table 10
Model | R | R2 | Adjusted R2 | Std. Error of the estimate |
1 | 0.987a | 0.975 | 0.952 | 0.38277 |
a. Predictors: (Constants), NC, NGenH, MaxDIT |
Table 11
Model | Sum of Squares | df | Mean Square | F | Significance. |
1 | Regression | 55.045 | 2 | 27.526 | 120.879 | 0.006a |
Residual | 4.098 | 18 | 0.228 | |
Total | 55.143 | 20 | | | |
a. Predictors: (Constants), NC, NGenH, MaxDIT |
b. Dependent Variable: Analyzability |
9.4 Maintainability Estimation Model
It is crucial to ensure the proper relationship between maintainability, understandability, modifiability, and analyzability of class diagrams before constructing the maintainability model. Table 12 displays the correlation coefficients between them. The correlation values show a substantial association between maintainability and both Understandability, Modifiability and Analyzability.
Table 12
Correlation among maintainability, understandability, modifiability, and analyzability
| Maintainability | Understandability | Modifiability | Analyzability | |
Pearson Correlation | Maintainability | 1.000 | 0.792 | 0.822 | 0.400 | |
Understandability | 0.792 | 1.000 | 0.792 | 0.792 | |
Modifiability | 0.822 | 0.757 | 1.000 | 0.822 | |
Analyzability | 0.400 | 0.567 | 0.400 | 1.000 | |
Maintainability = 2.168–0.313 * Understandability – 0.938 * Modifiability + 1.043 * Analyzability. | (5) |
Table 14
Model | Unstandardized Coefficients | Standardized Coefficients |
B | Std. Error | Beta |
1 | (Constant) | 2.168 | 0.599 | |
Understandability | -0.313 | 1.156 | -1.220 |
Modifiability | -0.938 | 0.745 | -4.172 |
Analyzability | 1.043 | 1.543 | 4.896 |
a. Dependent Variable: Maintainability |
Table 15
Model | R | R2 | Adjusted R2 | Std. Error of the estimate |
1 | 0.879a | 0.773 | 0.091 | 0.48908 |
a. Predictors: (Constants), Understandability, Modifiability, Analyzability |
Table 16
Model | Sum of Squares | df | Mean Square | F | Significance. |
1 | Regression | 0.813 | 3 | 0.271 | 1.133 | 0.583a |
Residual | 0.239 | 1 | 0.239 | | |
Total | 1.239 | 4 | | | |
a. Predictors: (Constants), Understandability, Modifiability, Analyzability |
b. Dependent Variable: Maintainability |