Modeling microservice architectures

Javier Esparza-Peidro,Francesc D. Muñoz-Escoí,José M. Bernabéu-Aubán
DOI: https://doi.org/10.1016/j.jss.2024.112041
IF: 3.5
2024-04-01
Journal of Systems and Software
Abstract:Modern microservice architectures demand new features from traditional architecture description languages, many of them related to the complexity of the modeled systems. This paper first identifies common concerns found in microservice architectures. Then it presents the features required by a suitable architecture modeling language in order to face many of these concerns. Existent modeling languages get evaluated and a lightweight high-level platform-independent modeling language is proposed. The language is general enough for describing many interactive microservice architectures, bringing together most of the features found in a scattered way in previous contributions. The language is presented in an ordered way, first defining its syntax using MOF and describing informally its underlying concepts, and later proposing an alternative hypergraph-based mechanism for describing its semantics. Regarding this methodology, an architectural style gets defined using a hierarchical type hypergraph, which contains all the information about all valid software architectures in an intuitive and compact way. The feasibility of the language is then demonstrated by providing an experimental tool which translates models to different container orchestration systems. Finally, the language is evaluated against the identified features in the context of the TeaStore reference application.
computer science, theory & methods, software engineering
What problem does this paper attempt to address?