# Assuring the Evolvability of Microservices: Insights into Industry   Practices and Challenges

**Authors:** Justus Bogner, Jonas Fritzsch, Stefan Wagner, Alfred Zimmermann

arXiv: 1906.05013 · 2021-09-02

## TL;DR

This study explores industry practices for ensuring the evolvability of microservices, highlighting the importance of governance, manual reviews, and the gap in tool support for managing architectural technical debt.

## Contribution

It provides empirical insights into current industry practices, challenges, and perceptions regarding microservice evolvability and technical debt management.

## Key findings

- Governance and architectural guidelines are key for evolvability.
- Manual activities like code review are valued despite automation needs.
- Architectural technical debt is a major concern, but tools are underused.

## Abstract

While Microservices promise several beneficial characteristics for sustainable long-term software evolution, little empirical research covers what concrete activities industry applies for the evolvability assurance of Microservices and how technical debt is handled in such systems. Since insights into the current state of practice are very important for researchers, we performed a qualitative interview study to explore applied evolvability assurance processes, the usage of tools, metrics, and patterns, as well as participants' reflections on the topic. In 17 semi-structured interviews, we discussed 14 different Microservice-based systems with software professionals from 10 companies and how the sustainable evolution of these systems was ensured. Interview transcripts were analyzed with a detailed coding system and the constant comparison method.   We found that especially systems for external customers relied on central governance for the assurance. Participants saw guidelines like architectural principles as important to ensure a base consistency for evolvability. Interviewees also valued manual activities like code review or boy scouting, even though automation and tool support was described as very important. Source code quality was the primary target for the usage of tools and metrics. Despite most reported issues being related to Architectural Technical Debt (ATD), our participants did not apply any architectural or service-oriented tools and metrics. While participants generally saw their Microservices as evolvable, service cutting and finding an appropriate service granularity with low coupling and high cohesion were reported as challenging. Future Microservices research in the areas of evolution and technical debt should take these findings and industry sentiments into account.

## Full text

_Full body text omitted from this summary view._ Fetch the complete paper as Markdown: https://tomesphere.com/paper/1906.05013/full.md

## Figures

3 figures with captions in the complete paper: https://tomesphere.com/paper/1906.05013/full.md

## References

21 references — full list in the complete paper: https://tomesphere.com/paper/1906.05013/full.md

---
Source: https://tomesphere.com/paper/1906.05013