Master Thesis MSTR-2021-97

BibliographySeifermann, Valentin: How to strangle systematically : an approach and case study for the continuous evolution of monoliths to microservices.
University of Stuttgart, Faculty of Computer Science, Electrical Engineering, and Information Technology, Master Thesis No. 97 (2021).
84 pages, english.

In today’s enterprise IT, a growing number of applications are being developed based on microservice architectures to meet enterprise requirements for highly scaled, highly available and resilient systems running in cloud environments. However, monolithic architectures have been the traditional way of developing applications for many years, which results in IT environments still consisting of applications based on these types of architectures. To overcome the limitations of these monolithic architectures, microservice migrations are performed with the goal of gradually decomposing the monolith into independent services at granular levels. In order to achieve this process, different decomposition approaches are presented in various publications, often focusing only on the technical aspects of a microservice migration. However, during this long-term process, various factors occur on different dimensions that are not only technical in nature. These non-functional factors are often not considered in existing publications. This leaves software engineers in need of a systematic migration guide on how to proceed with a continuous migration that also takes into account the decision-making processes based on the factors that influence the migration process. To address this lack on methodological guidance, this work provides a systematic approach for a continuous and gradual evolution of monolith to microservices based on the strangler pattern. The approach is based on interviews with software engineers and project managers who have participated in microservice migrations. Based on these experiences, the influencing factors that occur during the various steps of a migration are identified. Moreover, the decisions made based on these factors are considered in order to provide a decision-making guidance.

Full text and
other links
Department(s)University of Stuttgart, Institute of Software Technology, Empirical Software Engineering
Superviser(s)Wagner, Prof. Stefan; Bogner, Dr. Justus; Fritzsch, Jonas; Weidle, Daniel
Entry dateApril 26, 2022
   Publ. Computer Science