Decision models for microservices: Design areas, stakeholders, use cases, and requirements

S. Haselböck, R. Weinreich, G. Buchgeher. Decision models for microservices: Design areas, stakeholders, use cases, and requirements. volume 10475, pages 155-170, DOI 10.1007/978-3-319-65831-5 11, 9, 2017.

  • Stefan Haselböck
  • Rainer Weinreich
  • Georg Buchgeher
BuchSoftware Architecture - Proc. ECSA 2017
TypIn Konferenzband
SerieLecture Notes in Computer Science
DOI10.1007/978-3-319-65831-5 11

Introducing a microservice architecture is a complex task, requiring many design decisions regarding system architecture, organizational structure, and system infrastructure. Decision models have been successfully used in other domains for design space exploration, decision making and decision documentation. In this paper, we investigate the use of decision models for microservice architecture. As a first step, we identified areas of microservice design and created decision models for some of the identified areas. We then used the created models as part of a technical action research (TAR) process with partner companies to identify important stakeholders and use cases for decision models in this context, as well as to identify requirements on decision model elements and presentation. Results indicate that practitioners perceive decision models for microservices to be useful. Challenges include the large number of interlinked knowledge areas, the need for context-specific adaptations, and the need for processes to manage the decision space over time.