Evaluation of Microservice Architectures: A Metric and Tool-Based Approach

Thomas Engel,Melanie Langermeier,Bernhard Bauer,Alexander Hofmann
DOI: https://doi.org/10.1007/978-3-319-92901-9_8
2018-01-01
Abstract:Microservices are an architectural style that decomposes the functionality of an application system into several small functional units. The services are implemented and managed independently from each other. Breaking up monolithic structures into a microservice architecture increases the number of single components massively. Thus, effective management of the dependencies between them is required. This task can be supported with the creation and evaluation of architectural models. In this work, we propose an evaluation approach for microservice architectures based on identified architecture principles from research and practice like a small size of the services, a domain-driven design or loose coupling. Based on a study showing the challenges in current microservice architectures, we derived principles and metrics for the evaluation of the architectural design. The required architecture data is captured with a reverse engineering approach from traces of communication data. The developed tool is finally evaluated within a case study.
What problem does this paper attempt to address?