Design, Monitoring, and Testing of Microservices Systems: The Practitioners' Perspective
Muhammad Waseem, Peng Liang, Mojtaba Shahin, Amleto Di Salle, Gast\'on, M\'arquez

TL;DR
This study provides an empirical overview of how industry practitioners design, monitor, and test microservices systems, highlighting common practices, challenges, and areas needing further research.
Contribution
It offers new insights into industry practices for microservices design, monitoring, and testing based on empirical data from practitioners.
Findings
Domain-driven design and business capability are primary decomposition strategies.
Architecture evaluation and implementation are commonly used in design.
API gateway and Backend for frontend are popular microservices patterns.
Abstract
Context: Microservices Architecture (MSA) has received significant attention in the software industry. However, little empirical evidence exists on design, monitoring, and testing of microservices systems. Objective: This research aims to gain a deep understanding of how microservices systems are designed, monitored, and tested in the industry. Method: A mixed-methods study was conducted with 106 survey responses and 6 interviews from microservices practitioners. Results: The main findings are: (1) a combination of domain-driven design and business capability is the most used strategy to decompose an application into microservices, (2) over half of the participants used architecture evaluation and architecture implementation when designing microservices systems, (3) API gateway and Backend for frontend patterns are the most used MSA patterns, (4) resource usage and load balancing as…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
