Litcius/Paper detail

An empirical study of the systemic and technical migration towards microservices

Hamdy Michael Ayas, Philipp Leitner, Regina Hebig

2023Empirical Software Engineering22 citationsDOIOpen Access PDF

Abstract

Context: As many organizations modernize their software architecture and transition to the cloud, migrations towards microservices become more popular. Even though such migrations help to achieve organizational agility and effectiveness in software development, they are also highly complex, long-running, and multi-faceted. Objective: In this study we aim to comprehensively map the journey towards microservices and describe in detail what such a migration entails. In particular, we aim to discuss not only the technical migration, but also the long-term journey of change, on a systemic level. Method: Our research method is an inductive, qualitative study on two data sources. Two main methodological steps take place - interviews and analysis of discussions from StackOverflow. The analysis of both, the 19 interviews and 215 StackOverflow discussions, is based on techniques found in grounded theory. Results: Our results depict the migration journey, as it materializes within the migrating organization, from structural changes to specific technical changes that take place in the work of engineers. We provide an overview of how microservices migrations take place as well as a deconstruction of high level modes of change to specific solution outcomes. Our theory contains 2 modes of change taking place in migration iterations, 14 activities and 53 solution outcomes of engineers. One of our findings is on the architectural change that is iterative and needs both a long and short term perspective, including both business and technical understanding. In addition, we found that a big proportion of the technical migration has to do with setting up supporting artifacts and changing the paradigm that software is developed.

Topics & Concepts

MicroservicesSociotechnical systemContext (archaeology)Computer scienceData scienceCloud computingPerspective (graphical)Grounded theoryDeconstruction (building)Knowledge managementSoftware engineeringQualitative researchProcess managementSociologyEngineeringArtificial intelligenceSocial scienceWaste managementOperating systemPaleontologyBiologySoftware System Performance and ReliabilitySoftware Engineering Techniques and PracticesSoftware Engineering Research
An empirical study of the systemic and technical migration towards microservices | Litcius