DETERMINING OBJECT-ORIENTED DESIGN COMPLEXITY DUE TO THE IDENTIFICATION OF CLASSES OF OPEN-SOURCE WEB APPLICATIONS CREATED USING PHP FRAMEWORKS
DOI:
https://doi.org/10.15588/1607-3274-2024-2-16Keywords:
object-oriented design complexity, identification of classes, open-source software, Web app, prediction ellipsoid, Box-Cox transformation, depth of inheritance tree, number of children, weighted methods per classAbstract
Context. The problem of determining the object-oriented design (OOD) complexity of the open-source software, including Web apps created using the PHP frameworks, is important because nowadays open-source software is growing in popularity and using the PHP frameworks making app development faster. The object of the study is the process of determining the OOD complexity of the open-source Web apps created using the PHP frameworks. The subject of the study is the mathematical models to determine the OOD complexity due to the identification of classes of the open-source Web apps created using the PHP frameworks.
Objective. The goal of the work is the build a mathematical model for determining the OOD complexity due to the identification of classes of the open-source Web apps created using the PHP frameworks based on the three-variate Box-Cox normalizing transformation to increase confidence in determining the OOD complexity of these apps.
Method. The mathematical model for determining the OOD complexity due to the identification of classes of the open-source Web apps created using the PHP frameworks is constructed in the form of the prediction ellipsoid equation for normalized metrics WMC, DIT, and NOC at the app level. We apply the three-variate Box-Cox transformation for normalizing the above metrics. The maximum likelihood method is used to compute the parameter estimates of the three-variate Box-Cox transformation.
Results. A comparison of the constructed model based on the F distribution quantile with the prediction ellipsoid equation based on the Chi-Square distribution quantile has been performed.
Conclusions. The mathematical model in the form of the prediction ellipsoid equation for the normalized WMC, DIT, and NOC metrics at the app level to determine the OOD complexity due to the identification of classes of the open-source Web apps created using the PHP frameworks is firstly built based on the three-variate Box-Cox transformation. This model takes into account the correlation between the WMC, DIT, and NOC metrics at the app level. The prospects for further research may include the use of other data sets to confirm or change the prediction ellipsoid equation for determining the OOD complexity due to the identification of classes of the open-source Web apps created using the PHP frameworks.
References
Khan S. A., Khan R. A. Object oriented design complexity quantification model, Procedia Technology, 2012, Vol. 4, pp. 548–554. DOI: 10.1016/j.protcy.2012.05.087.
Booch G. Object oriented design with applications. Redwood City, CA, Benjamin/Cummings, 1991, 580 p.
Madaehoh A., Senivongse T. OSS-AQM: An open-source software quality model for automated quality measurement, Data and Software Engineering (ICoDSE) : the 2022 International Conference. Denpasar, Indonesia, proceedings, IEEE, 2022, pp. 126–131. DOI: 10.1109/ICoDSE56892.2022.9972135
Chidamber S. R., Kemerer C.F. Towards a metrics suite for object oriented design, ACM SIGPLAN Notices, 1991, Vol. 26, Issue 11, pp. 197–211. DOI: 10.1145/118014.117970
Chidamber S. R., Kemerer C. F. A metrics suite for objectoriented design, IEEE Transactions on Software Engineering, 1994, Vol. 20, No. 6, pp. 476–493. DOI: 10.1109/32.295895
Booch G. Object-oriented development, IEEE Transactions on Software Engineering, 1986, Vol. 12, No. 1, pp. 211– 221. DOI: 10.1109/TSE.1986.6312937
Barkmann H., Lincke R., Löwe W. Quantitative evaluation of software quality metrics in open-source projects, Advanced Information Networking and Applications Workshops, 2009 International Conference. Bradford, UK, 2009, proceedings, pp. 1067–1072. DOI: 10.1109/WAINA.2009.190
Sabahat N., Afzal Malik A., Azam F. Utility of CK metrics in predicting size of board-based software games, Mehran University Research Journal of Engineering and Technology, 2017, Vol. 36, No. 4, pp. 975–986.
Molnar AJ., Neamţu A., Motogna S. Evaluation of software product quality metrics, in E. Damiani, G. Spanoudakis, L. Maciaszek. Eds. Evaluation of Novel Approaches to Software Engineering. ENASE 2019. Communications in Computer and Information Science, Vol. 1172, Springer, Cham, 2020, pp. 163–187. DOI: 10.1007/978-3-030-402235_8
Rizwan M., Nadeem A., Sindhu M. A. Empirical evaluation of coupling metrics in software fault prediction, Applied Sciences and Technology (IBCAST), 2020 17th International Bhurban Conference. Islamabad, Pakistan, 2020, proceedings, IEEE, 2020, pp. 434–440. DOI: 10.1109/IBCAST47879.2020.9044489
Tapia V., Gaona C. Research opportunities in microservices quality assessment: A systematic literature review, Journal of Advances in Information Technology, 2023, Vol. 14, No. 5, pp. 991–1002. DOI: 10.12720/jait.14.5.991-1002
Wikantyasa I. M. A., Kurniawan A. P., Rochimah S. CK metric and architecture smells relations: Towards software quality assurance, Information & Communication Technology and System (ICTS), 2023 14th International Conference. Surabaya, Indonesia, 2023, proceedings, IEEE, 2023, pp. 13–17. DOI: 10.1109/ICTS58770.2023.10330874
Jin W. Zhang Y., Shang J. et al. Identifying code changes for architecture decay via a metric forest structure, Technical Debt (TechDebt) : 2023 ACM/IEEE International Conference. Melbourne, Australia, 2023, proceedings, pp. 62–71. DOI: 10.1109/TechDebt59074.2023.00014
Levasseur M., Badri M. Prioritizing unit tests using objectoriented metrics, centrality measures, and machine learning algorithms [Electronic resource], Innovations in Systems and Software Engineering, 2024. DOI: 10.1007/s11334-02400550-9. Access mode: https://doi.org/10.1007/s11334-02400550-9
Prykhodko S., Prykhodko N., Smykodub T. A joint statistical estimation of the RFC and CBO metrics for open-source applications developed in Java, Computer Sciences and Information Technologies : the 2022 IEEE 17th International Conference (CSIT). Lviv, Ukraine, 10–12 November, 2022, proceedings. pp. 442–445. DOI: 10.1109/CSIT56902.2022.10000457
Navas-Su J., Gonzalez-Torres A., Hernandez-Vasquez M. et al. A metrics suite for measuring indirect coupling complexity, Programming and Computer Software, 2023, Vol. 49, Issue 8, pp. 735–761. DOI: 10.1134/S0361768823080157
Prykhodko S. Makarova L., Prykhodko K. et al. Application of transformed prediction ellipsoids for outliers detection in multivariate non-gaussian data, Advanced Trends in Radioelectronics, Telecommunications and Computer Engineering (TCSET) : the 15th International Conference, IEEE, Lviv-Slavske, 2020, proceedings, pp. 359–362. DOI: 10.1109/TCSET49122.2020.235454
Prykhodko S. B., Shutko I. S., Prykhodko A. S. A nonlinear regression model to estimate the size of web apps created using the CakePHP framework, Radio Electronics, Computer Science, Control, 2021, Vol. 59, No. 4, pp. 129–139. DOI: 10.15588/1607-3274-2021-4-12
PhpMetrics is a static analysis tool for PHP [Electronic resource]. Access mode: https://phpmetrics.org/
Johnson R. A., Wichern D. W. Applied multivariate statistical analysis. Pearson Prentice Hall, 2007, 800 p.
Mardia K.V. Measures of multivariate skewness and kurtosis with applications, Biometrika, 1970, Vol. 57, pp. 519– 530. DOI: 10.1093/biomet/57.3.519
Malakhov E., Shchelkonogov D., Mezhuyev V.Algorithms of classification of mass problems of production subject domains, Software and Computer Applications (ICSCA 2019) : 2019 8th International Conference, Feb. 19–21, 2019. Penang, Malaysia, proceedings, pp. 149–153. DOI: 10.1145/3316615.3316676
Downloads
Published
How to Cite
Issue
Section
License
Copyright (c) 2024 А. С. Приходько, Є. В. Малахов
This work is licensed under a Creative Commons Attribution-ShareAlike 4.0 International License.
Creative Commons Licensing Notifications in the Copyright Notices
The journal allows the authors to hold the copyright without restrictions and to retain publishing rights without restrictions.
The journal allows readers to read, download, copy, distribute, print, search, or link to the full texts of its articles.
The journal allows to reuse and remixing of its content, in accordance with a Creative Commons license СС BY -SA.
Authors who publish with this journal agree to the following terms:
-
Authors retain copyright and grant the journal right of first publication with the work simultaneously licensed under a Creative Commons Attribution License CC BY-SA that allows others to share the work with an acknowledgement of the work's authorship and initial publication in this journal.
-
Authors are able to enter into separate, additional contractual arrangements for the non-exclusive distribution of the journal's published version of the work (e.g., post it to an institutional repository or publish it in a book), with an acknowledgement of its initial publication in this journal.
-
Authors are permitted and encouraged to post their work online (e.g., in institutional repositories or on their website) prior to and during the submission process, as it can lead to productive exchanges, as well as earlier and greater citation of published work.