Microservices Evolution Factors: A Multivocal Literature Review
Sebastian Pinto-Agüero, René Noël · IEEE Access · 2025
Microservices is a software architectural approach based on decomposing systems into small services that are simpler and technology-independent for their development and operation. However, microservices design involves not only technical requirements but also organizational information to ensure their alignment with the organization’s strategy and structure. This raises the question of how microservices evolve over time, that is, which factors foster and hinder microservices’ evolution. In this study, we present a multivocal literature review of scientific and industry articles reporting analyses and experiences on microservice architectures design and evolution. We aim to identify the factors that influence the evolution of microservice architecture, as well as the key non-functional requirements and quality attributes that drive the evolution of microservices. We collected 554 articles from Web of Science, Scopus, and Google; 26 were finally selected. We found empirical evidence in both academic and gray literature that design practices are the most influential factors in microservices evolution.Well-managed granularity and bounded context design were the main factors fostering evolution, while dependencies were the most common factors hindering evolution. In addition, the results of this study empirically showthat factors related to infrastructure and management services, DevOps, organization culture, and cost also impact microservices evolution. Our findings can help both researchers and practitioners to be aware of the decisions they make throughout the design and development phases of microservices and how those decisions can affect the evolution of this architectural approach.