Microservice transition and its granularity problem: A systematic mapping study

Research output: Contribution to journalArticlepeer-review

Authors

Colleges, School and Institutes

External organisations

  • SEI/CMU, University of Hawaii, Honolulu, USA
  • Software Engineering Institute (SEI)/CMU Pittsburgh Pennsylvania USA

Abstract

Microservices have gained wide recognition and acceptance in software industries as an emerging architectural style for autonomic, scalable, and more reliable computing. The transition to microservices has been highly motivated by the need for better alignment of technical design decisions with improving value potentials of architectures. Despite microservices' popularity, research still lacks disciplined understanding of transition and consensus on the principles and activities underlying that transition. In this paper, we report on a systematic mapping study that consolidates various views, approaches and activities that commonly assist in the transition to microservices. The study aims to provide a better understanding of the transition; it also contributes a working definition of the transition and technical activities underlying it. We term the transition and technical activities leading to microservice architectures as microservitization. We then shed light on a fundamental problem of microservitization: microservice granularity and reasoning about its adaptation as first‐class entities. This study reviews state‐of‐the‐art and ‐practice related to reasoning about microservice granularity; it reviews modeling approaches, aspects considered, guidelines and processes used to reason about microservice granularity. This study identifies opportunities for future research and development related to reasoning about microservice granularity.

Details

Original languageEnglish
Pages (from-to)1651-1681
JournalSoftware: Practice and Experience
Volume50
Issue number9
Early online date25 Jun 2020
Publication statusPublished - 1 Sep 2020

Keywords

  • design decision support, granularity, microservices, software economics, systematic mapping study