Architecture metrics: a servey of the potential to improve softwar
Abstract
Software development hinges on well-crafted architecture, a foundational phase that influences the entire system. This study investigates using architectural design metrics, which quantify various aspects of architecture. We conducted a systematic mapping study, analysing existing literature to understand how these metrics are currently employed. Our findings reveal a limited yet promising landscape. Metrics exist to assess design stability, understandability, modularity, and security. Notably, several studies explore gauging the "option-generation ability" of an architecture and its potential to generate different design choices. However, a gap exists in directly using these metrics for fault prediction. Existing research primarily focuses on the "reverse" effect, where metrics from later development stages (like code) are used to identify architectural issues. Overall, this study highlights the underutilised potential of architectural design metrics. While current research demonstrates the effectiveness of a relatively simple set of metrics for various purposes, further exploration is warranted. Future efforts should delve into data accumulation and investigate models for using these metrics for predictive purposes, ultimately enhancing software quality and development processes.
Problems in programming 2024; 2-3: 99-106
Keywords
Full Text:
PDF (Українська)References
M. Aoyama, Metrics and analysis of software architecture evolution with discontinuity, International Workshop on Principles of Software Evolution (IWPSE '02), 2002, pp. 103–107. doi: 10.1145/512035.512059.
J. Muskens, M. R. V. Chaudron, R.Westgeest, Software architecture analysis tool: software architecture metrics collection, 3rd PROGRESS Workshop on Embedded Systems,2002, pp. 128–139.
H. Venkitachalam, J. Richenhagen, A.Schlosser, T. Tasky, Metrics for Verification and Validation of Architecture in Powertrain Software Development, First International Workshop on Automotive Software Architecture (WASA '15), 2015, pp. 27–33. doi: 10.1145/2752489.2752496.
O. Al-Debagy, P. Martinek, A Metrics Framework for Evaluating Microservices Architecture Designs, Journal of Web Engineering, 2020. Vol. 19, no. 3–4. pp. 341–370. doi: 10.13052/jwe1540-9589.19341.
M. G. Moreira, B. B. N. De França,Analysis of Microservice Evolution using Cohesion Metrics, 16th Brazilian Symposium on Software Components, Architectures, and Reuse (SBCARS '22), 2022, pp. 40–49. doi: 10.1145/3559712.3559716.
K. Sethi, Y. Cai, S. Wong, A. Garcia and C. Sant'Anna, From retrospect to prospect: Assessing modularity and stability from software architecture, Joint Working IEEE/IFIP Conference on Software Architecture & European Conference on Software Architecture, 2009, pp. 269-272. doi: 10.1109/WICSA.2009.5290817.
E. Bouwers, J. P. Correia, A. v. Deursen, J. Visser, Quantifying the Analyzability of Software Architectures, Ninth Working IEEE/IFIP Conference on Software Architecture, 2011, pp. 83–92. doi: 10.1109/WICSA.2011.20.
E. Bouwers, A. van Deursen, J.Visser, Evaluating usefulness of software metrics: An industrialexperience report, 35th International Conference on Software Engineering (ICSE), 2013, pp. 921–930. doi: 10.1109/ICSE.2013.6606641.
D. Perez-Palacin, R. Mirandola, J.Merseguer, Software architecture adaptability metrics for QoS-based self-adaptation, Joint ACM SIGSOFT conference -QoSA and ACM SIGSOFT symposium – ISARCS onQuality of software architectures –QoSA and architecting critical systems –ISARCS (QoSA-ISARCS '11), 2011, pp. 171–176. doi: 10.1145/2000259.2000288.
U. Tiwari, S. Kumar, In-out interaction complexity metrics for component-based software, SIGSOFT Softw. Eng. Notes, 2014. Vol.39(5). pp. 1–4. doi: 10.1145/2659118.2659135.
S. Stevanetic, T. Haitzer, U. Zdun, Supporting Software Evolution by Integrating DSL-based Architectural Abstraction and Understandability Related Metrics, European Conference on Software Architecture Workshops (ECSAW '14), 2014. Article 19, pp. 1–8. doi: 10.1145/2642803.2642822
O. Zimmermann, Metrics for architectural synthesis and evaluation: requirements and compilation by viewpoint: an industrial experience report, Second International Workshop on Software Architecture and Metrics (SAM '15), 2015, pp. 8–14.
D. Le, Architectural-Based Speculative Analysis to Predict Bugs in a Software System, 38th International Conference on Software Engineering Companion (ICSE-C), 2016, pp. 807–810.
S. Orlov, A. Vishnyakov, Decision Making for the Software Architecture Structure Based on the Criteria Importance Theory, Procedia Computer Science, 2017. Vol. 104. pp. 27–34. doi: 10.1016/j.procs.2017.01.050.
B. Nassar, R. Scandariato, Traceability Metrics as Early Predictors of Software Defects?, IEEE International Conference on Software Architecture (ICSA), 2017, pp. 235–238. doi: 10.1109/ICSA.2017.12.
W. Wu et al., Software Architecture Measurement—Experiences from a Multinational Company, Lecture Notes in Computer Science, 2018. Vol. 11048. doi: 10.1007/978-3-030-00761-4_20.
M. Buitrago, I. Borne, J. Buisson, Deriving metrics for software architectures from the "protected entry points" security patterns, 38th ACM/SIGAPP Symposium on Applied Computing (SAC '23), 2023, pp. 1473–1475. doi: 10.1145/3555776.3577816.
N. Knoll, R. Lichtenthäler, An Experimental Evaluation of Relations Between Architectural and Runtime Metrics in Microservices Systems, 13th International Conference on Cloud Computing and Services Science – CLOSER, 2023, pp. 147–154. doi: 10.5220/0011728600003488.
M. H. Hasan, M. H. Osman, N. I.Admodisastro, M. S. Muhammad, From Monolith to Microservice: Measuring Architecture Maintainability, International Journal of Advanced Computer Science and Applications, 2023. Vol. 14(5). doi: 10.14569/IJACSA.2023.0140591
Refbacks
- There are currently no refbacks.