Abstract
The polyglot nature of microservice architectures and the need for high reliability in security analyses pose unique challenges that existing approaches to automatic architecture recovery often fail to address. This article proposes an approach for extracting detailed architecture models from polyglot microservice source code focusing on explainability and traceability. The approach involves abstracting code navigation as a tree structure, using an exploratory algorithm to detect architectural aspects, and providing a set of generic detectors as input. The architecture models are automatically annotated with detailed information that makes them useful for architecture conformance checking and violation fixing. Our case studies of microservice software systems validate the usefulness of our approach, providing insights into its completeness, accuracy, and effectiveness for software architecture tasks.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Similar content being viewed by others
References
Bushong, V., Das, D., Al Maruf, A., Cerny, T.: Using static analysis to address microservice architecture reconstruction. In: 2021 36th IEEE/ACM International Conference on Automated Software Engineering (ASE). IEEE (2021)
Cerny, T., Abdelfattah, A.S., Bushong, V., Al Maruf, A., Taibi, D.: Microservice architecture reconstruction and visualization techniques: a review. In: 2022 IEEE International Conference on Service-Oriented System Engineering (SOSE). IEEE (2022)
Ducasse, S., Pollet, D.: Software architecture reconstruction: a process-oriented taxonomy. IEEE Trans. Software Eng. 35(4), 573–591 (2009)
Granchelli, G., Cardarelli, M., Di Francesco, P., Malavolta, I., Iovino, L., Di Salle, A.: Towards recovering the software architecture of microservice-based systems. In: 2017 IEEE International conference on software architecture workshops (ICSAW). IEEE (2017)
Hasselbring, W., Steinacker, G.: Microservice architectures for scalability, agility and reliability in e-commerce. In: 2017 IEEE International Conference on Software Architecture Workshops (ICSAW). IEEE (2017)
Newman, S.: Building Microservices. O’Reilly Media Inc., Sebastopol (2015)
Ntentos, E., Zdun, U., Plakidas, K., Geiger, S.: Semi-automatic feedback for improving architecture conformance to microservice patterns and practices. In: 2021 IEEE 18th International Conference on Software Architecture (ICSA). IEEE (2021)
Ntentos, E., et al.: Detector-based component model abstraction for microservice-based systems. Computing 103(11), 2521–2551 (2021)
Ntentos, E., Zdun, U., Plakidas, K., Meixner, S., Geiger, S.: Assessing architecture conformance to coupling-related patterns and practices in microservices. In: Jansen, A., Malavolta, I., Muccini, H., Ozkaya, I., Zimmermann, O. (eds.) ECSA 2020. LNCS, vol. 12292, pp. 3–20. Springer, Cham (2020). https://doi.org/10.1007/978-3-030-58923-3_1
Papotti, P.E., do Prado, A.F., de Souza, W.L.: Reducing time and effort in legacy systems reengineering to MDD using metaprogramming. In: Proceedings of the 2012 ACM Research in Applied Computation Symposium (2012)
Rademacher, F., Sachweh, S., Zündorf, A.: A modeling method for systematic architecture reconstruction of microservice-based software systems. In: Nurcan, S., Reinhartz-Berger, I., Soffer, P., Zdravkovic, J. (eds.) BPMDS/EMMSAD -2020. LNBIP, vol. 387, pp. 311–326. Springer, Cham (2020). https://doi.org/10.1007/978-3-030-49418-6_21
Rattan, D., Bhatia, R., Singh, M.: Software clone detection: a systematic review. Inf. Softw. Technol. 55(7), 1165–1199 (2013)
Zdun, U., et al.: Microservice security metrics for secure communication, identity management, and observability. ACM Trans. Softw. Eng. Methodol. 32(1), 1–34 (2023)
Acknowledgements
Our work has received funding from the European Union’s Horizon 2020 research and innovation programme under grant agreement No 952647 (AssureMOSS project). This work was supported by: FWF (Austrian Science Fund) project API-ACE: I 4268; FWF (Austrian Science Fund) project IAC: I 4731-N.
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2023 The Author(s), under exclusive license to Springer Nature Switzerland AG
About this paper
Cite this paper
Quéval, PJ., Zdun, U. (2023). Extracting the Architecture of Microservices: An Approach for Explainability and Traceability. In: Tekinerdogan, B., Trubiani, C., Tibermacine, C., Scandurra, P., Cuesta, C.E. (eds) Software Architecture. ECSA 2023. Lecture Notes in Computer Science, vol 14212. Springer, Cham. https://doi.org/10.1007/978-3-031-42592-9_24
Download citation
DOI: https://doi.org/10.1007/978-3-031-42592-9_24
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-031-42591-2
Online ISBN: 978-3-031-42592-9
eBook Packages: Computer ScienceComputer Science (R0)