Insights on Microservice Architecture Through the Eyes of Industry Practitioners

Vinicius L. Nogueira,Fernando S. Felizardo,Aline M. M. M. Amaral,Wesley K. G. Assuncao,Thelma E. Colanzi
2024-08-20
Abstract:The adoption of microservice architecture has seen a considerable upswing in recent years, mainly driven by the need to modernize legacy systems and address their limitations. Legacy systems, typically designed as monolithic applications, often struggle with maintenance, scalability, and deployment inefficiencies. This study investigates the motivations, activities, and challenges associated with migrating from monolithic legacy systems to microservices, aiming to shed light on common practices and challenges from a practitioner's point of view. We conducted a comprehensive study with 53 software practitioners who use microservices, expanding upon previous research by incorporating diverse international perspectives. Our mixed-methods approach includes quantitative and qualitative analyses, focusing on four main aspects: (i) the driving forces behind migration, (ii) the activities to conduct the migration, (iii) strategies for managing data consistency, and (iv) the prevalent challenges. Thus, our results reveal diverse practices and challenges practitioners face when migrating to microservices. Companies are interested in technical benefits, enhancing maintenance, scalability, and deployment processes. Testing in microservice environments remains complex, and extensive monitoring is crucial to managing the dynamic nature of microservices. Database management remains challenging. While most participants prefer decentralized databases for autonomy and scalability, challenges persist in ensuring data consistency. Additionally, many companies leverage modern cloud technologies to mitigate network overhead, showcasing the importance of cloud infrastructure in facilitating efficient microservice communication.
Software Engineering
What problem does this paper attempt to address?
The main problem that this paper attempts to solve is to understand the motivations, activities, and challenges faced by industry practitioners in the process of migrating monolithic legacy systems to microservice architectures. Specifically, the research aims to reveal: 1. **Drivers of migration**: Why do companies decide to migrate monolithic legacy systems to microservice architectures? This includes motivations at the technical, operational, and organizational levels. 2. **Activities during the migration process**: How do practitioners carry out the migration? What strategies do they adopt to understand and split the legacy systems? 3. **Data persistence issues**: What are the concerns in data management during the system modernization using microservice architectures? 4. **Major challenges and pitfalls**: What common challenges do practitioners face during the migration process and what pitfalls need to be avoided? Through the exploration of these questions, the paper hopes to provide practical guidance for other professionals, helping them make more informed decisions when considering the adoption of microservice architectures. The research adopted quantitative and qualitative methods and collected rich data through a survey of 53 software practitioners from different countries, thus providing a comprehensive perspective.