Supporting Architectural Decision Making on Data Management in Microservice Architectures
Today many service-based systems follow the microservice architecture style. As microservices are used to build distributed systems and promote architecture properties such as independent service development, polyglot technology stacks including polyglot persistence, and loosely coupled dependencies, architecting data management is crucial in most microservice architectures. Many patterns and practices for microservice data management architectures have been proposed, but are today mainly informally discussed in the so-called ``grey literature'': practitioner blogs, experience reports, and system documentations. As a result, the architectural knowledge is scattered across many knowledge sources that are usually based on personal experiences, inconsistent, and, when studied on their own, incomplete. In this paper we report on a qualitative, in-depth study of 35 practitioner descriptions of best practices and patterns on microservice data management architectures. Following a model-based qualitative research method, we derived a formal architecture decision model containing 325 elements and relations. Comparing the completeness of our model with an existing pattern catalog, we conclude that our architectural decision model substantially reduces the effort needed to sufficiently understand microservice data management decisions, as well as the uncertainty in the design process.
Top- Ntentos, Evangelos
- Zdun, Uwe
- Plakidas, Konstantinos
- Schall, Daniel
- Li, Fei
- Meixner, Sebastian
Category |
Paper in Conference Proceedings or in Workshop Proceedings (Paper) |
Event Title |
13th European Conference on Software Architecture (ECSA) - 2019 |
Divisions |
Software Architecture |
Event Location |
Paris, France |
Event Type |
Conference |
Event Dates |
9-13 September 2019 |
Date |
9 September 2019 |
Export |