A Systematic Mapping Study on the Modernization of Legacy Systems to Microservice Architecture
Abstract
1. Introduction
- A detailed and solid panorama of initiatives related to the modernization of legacy systems based on MSA. This panorama enables us to understand the following aspects:
- -
- A taxonomy of the initiatives identified in the literature. In light of our investigation, this taxonomy compiles the principal evidence on the initiatives identified in the literature. In summary, this taxonomy can serve as a theoretical framework and a source of valuable insights, thereby facilitating the design of new initiatives.
- -
- The application domains that needed to modernize their systems based on MSA. The evidence presented here can provide insights related to the features that are required by such initiatives, which may vary depending on the domain or subdomain in question.
- -
- The correlation between the evaluation strategies employed by these initiatives and their level of maturity. Our study found that more rigorous evaluation tends to improve the credibility of an initiative and increase its adoption by the organizations.
- -
- The most common quality attributes. The results of our investigation revealed the advantages of implementing monitoring systems for modernized software, specifically in the context of microservices.
- The main activities related to modernization. The discovered process has the potential to serve as a guideline framework for guiding different stakeholders in the activity of modernizing a legacy system with the implementation of MSA, taking into account the diverse organizational structures and technological architectures that may be involved. Furthermore, our findings show that the proposed process has the potential to be customized and instantiated to serve other application domains. This is due to the comprehensive nature of the identified activities and steps, which can be reused or adapted to act on software systems of neighboring domains. In this regard, it is noteworthy to highlight Micro4Dephi [9], a process initiated under the guidelines established in our investigation (i.e., the SMS) with the active involvement of practitioners from the software industry who have expertise in the Delphi development environment.
2. Background and Related Work
3. Planning and Conducting the Mapping
3.1. Planning
3.1.1. Objectives and Research Questions
- RQ1:
- What initiatives have been proposed to support the modernization of legacy systems based on MSA? The purpose of this question is to gather evidence regarding the modernization initiatives proposed in the primary studies selected in our SMS. As a result, this question aims to present an overview concerning the classification of these initiatives (e.g., approaches, processes, or methodologies), so that new initiatives can be proposed.
- RQ2:
- What application domains have benefited from having this initiative type? This question provides evidence of application domains that have benefited from such initiatives. The existence of such evidence can facilitate a deeper comprehension of the necessity for these applications and the features they require, which can vary according to each domain or subdomain.
- RQ3:
- How were these initiatives evaluated? The objective of this question is to provide evidence of the validation procedures adopted in these initiatives, such as proof of concepts, case studies, and experiments. Thus, a comprehensive overview of the rigor and efficacy of these initiatives can be obtained.
- RQ4:
- What evidence motivates the adoption of these solutions? This question summarizes evidence of the maturity of these initiatives. The information from this question can provide insights concerning the nature of these initiatives (e.g., academic, industrial, or mixed). Thus, an overview of the maturity of these initiatives among practitioners and researchers can be outlined.
- RQ5:
- What are the quality attributes addressed by these initiatives? The goal of this question is to identify which quality attributes have been used in a microservice-based application during modernization.
- RQ6:
- What activities are conducted by these initiatives? This question aims to provide evidence of activities used to modernize a legacy system based on MSA.
3.1.2. Selection Criteria
- EC1: The study did not present any initiative that can support the modernization of legacy systems with the implementation of MSA;
- EC2: The study was an editorial, position paper, keynote speech, opinion, tutorial, poster, or panel;
- EC3: The study was not written in English;
- EC4: The study only provided a summary or was not available in full length;
- EC5: The study was similar to previous work developed by the same author. In this case, only the most recent study or the most complete version was considered;
- EC6: The study was a secondary study.
3.1.3. Data Extraction and Synthesis Strategy
3.2. Search Process
3.3. Threats to Validity
4. Results
4.1. Overview of Primary Studies
4.2. Taxonomy of Initiatives
- Approach. This initiative is characterized by its theoretical orientation, research methodology, and strategies employed to investigate, analyze, and present results. It offers a structured framework for the selection of suitable methods and provides a rationale for the execution of an activity.
- Framework. This initiative encompasses a reusable design, whether in the form of a model or code, that can be refined, specialized, and extended to provide a portion of the overall functionality of numerous applications.
- Method. This initiative represents a specific technique used to execute a process, activity, or task. This initiative represents a methodical series of steps to be undertaken in order to complete a process, activity, or task.
- Methodology. This initiative can be defined as a systematic approach that is centered on the orderly application of a specific collection of tools, techniques, and guidelines to the design of software.
- Pipeline. This initiative represents a software or hardware design technique in which the output of one process serves as the input to a second process, which in turn serves as the input to a third process, and so on. This information flow can frequently occur in parallel within a single cycle time.
- Process. This initiative encompasses a series of interrelated or interactive activities that are designed to transform the input(s) into one (or more) anticipated output(s). A process can have multiple starting points, a set of activities that can be a partially ordered sequence, and multiple endpoints, as a workflow specification.
4.3. Application Domains
4.4. Evaluation Strategies and Maturity Level
- Case study. This strategy enables an initiative for software modernization to be analyzed in a scenario closer to a real-world application. Thus, it is possible to identify particularities of an application domain and gather more precise, exploratory, and qualitative data. On the other hand, some studies used a “toy example” as a case study, which can be considered insufficient because of their lack of real-life context;
- Experiment. This strategy involves a process with a well-defined sequence of steps based on an execution protocol that enables future replications. In short, experiments are elaborated when it is intended to control the situation and manipulate behavior directly, precisely, and systematically.
- Proof of concept. This strategy represents a test or demonstration that aims to define the feasibility of an initiative so that it can be explored usefully. Therefore, it can be said that when successful, this strategy represents an important step in the process of creating a truly operative prototype.
- Academic. Studies categorized as academic focus on a theoretical and experimental presentation of the investigated issue. Therefore, when evaluating such studies, experiments, simulations, comparisons with other algorithms, and examples of case studies are considered.
- Industrial. Studies that adopt an industry-oriented approach primarily focus on operational aspects. They might not include an in-depth analysis of the adopted resource (e.g., algorithm or technique), as they mainly address the applicability in specific cases directed to industrial cases.
- Mixed. This category encompasses studies that combine the benefits derived from both industrial and academic approaches. For instance, a software modernization initiative was formulated considering both academic research and practical applicability in industry.
4.5. Quality Attributes
4.6. Main Activities
- Cyclical nature. The cyclical nature of software development has been a subject of considerable interest in modern software engineering. According to the principles outlined by Pressman [66], incremental processes tend to be more effectively managed and monitored by development teams and stakeholders who have a vested interest in the outcome. Furthermore, the evidence gathered in this SMS reveals that the gradual advancement of modernization also favors the transition between the legacy system and the modernized system, allowing them to act concurrently.
- Starting point. Since the process aims to support the modernization of legacy systems based on MSA, the starting point for conducting the process can be (i) a binary system, (ii) a binary system and its respective source code repository, or (iii) the content of the second item with the input of documentation artifacts and manuals, among others. The time required to conduct the process can be significantly reduced, depending on the value of the legacy system and the availability of artifacts. The rationale underlying this approach is that such artifacts can be reused in the development of microservices.
- Planning. This activity was identified in five studies included in our mapping (i.e., S6, S15, S16, S21, and S33). In essence, planning entails the definition of the objectives, strategies, and resources required to attain the desired outcome, which, in this case, is the modernization of the system. The evidence obtained from our investigation indicates that when planning modernization activities, organizations and development teams are more likely to succeed if they anticipate potential challenges and ensure that objectives are achieved within the specified timeframe and resources. From the perspective of the organization, the evidence suggests that a suitable methodology and appropriate infrastructure must be adopted to conduct modernization practices. With regard to development, the findings of our mapping recommend that teams have cultures around development (e.g., unit testing). In this sense, training can be an effective measure to align the interests of organizations with development practices and facilitate the development and modernization of applications based on microservices.
- Analysis. Of the 43 studies included in our mapping, 35 (i.e., S2 to S8, S10 to S13, S16, S18 to S38, S40, S41, and S43) presented concrete evidence related to this activity. In other words, the analysis activity can be considered the initial phase of modernization, as it is during this process that the development team will gain insights into the artifacts of the legacy system, including the binary system, source code repository, and documentation, which can serve as a source of information. Consequently, it is anticipated that a sufficient quantity of information will be amassed to facilitate the formulation of an appropriate starting point for the decomposition process. This encompasses the identification of the disparate components and functionalities of the legacy system, an understanding of its business domain boundaries, and an analysis of the dependencies between the aforementioned components. In summary, this step is of paramount importance to the successful migration of the legacy system to microservices, as it establishes the foundation for the design and implementation of this architectural style.
- Decomposition. This activity was addressed in five studies (i.e., S3 to S5, S18, S27, and S31) of our mapping. This activity plays a fundamental role in the modernization of legacy systems based on MSA, as it directly influences the decomposition of the legacy system into microservices, thereby giving rise to a novel architectural configuration for the system. From a design perspective, the evidence gathered from our investigation suggests that each microservice should be designed based on the organizational and business aspects that will be offered to users. Furthermore, the evidence indicates that the primary challenge associated with this activity is determining the optimal size for microservices. This is because the legacy system must be divided into smaller units that present low coupling and high cohesion. In other words, each microservice must be responsible for a delimited context, providing a cohesive set of functionalities with a well-defined scope to meet a specific business capability. Although (semi)automated techniques can be employed to assist with the decomposition into microservices, the primary recommendation is to initially prioritize features with minimal impact or risk for the transition from the legacy system to the modern system. In essence, this process entails the identification of prospective microservices that offer the greatest value and exhibit minimal external dependencies. While there is no singular methodology for microservice decomposition, Domain-Driven Design (DDD) is a prevalent approach utilized to facilitate the transformation of legacy systems into MSA.
- Development. This activity is the second most recurrent in our mapping, with 26 studies (i.e., S1, S6, S7, S12 to S18, S20, S21, S24, S26 to S29, S31, S32, S34 to S38, S41, and S43). Once the scope of the legacy system has been fully understood and a preliminary solution has been outlined, development teams can proceed with the development of microservices. In terms of development, two principal approaches to migrating a legacy system to a microservice-based architecture can be highlighted. The first of these is to rewrite the legacy system from scratch, while the second is to extract the microservices (i.e., functionalities) from the legacy source code. The evidence from our mapping suggests that the second option is the most recommended approach for legacy systems with high-value legacy code. In parallel, it is also crucial to highlight that the previous iteration of the legacy system must be terminated as the development of microservices progresses to prevent the emergence of maintenance issues stemming from the coexistence of functionalities in two distinct locations. Moreover, these findings also indicate that microservice development should be guided by the principle of one microservice per team to ensure that each microservice addresses a single, specific problem. Therefore, after this activity, the microservice-based system must be fully functional and ready for release.
- Integration. This activity was identified in 13 studies (i.e., S1, S13, S17, S18, S20, S21, S26 to S28, S31, S35, S41, and S43) of our mapping. In the integration activity, microservices must be combined and synchronized to form a functional and cohesive application. Throughout this activity, microservices establish connections via APIs or alternative communication mechanisms, ensuring the exchange of data and information essential to the overall functioning of the system. In addition, this activity may also involve the integration of the modernized system (i.e., microservices) with other external systems or components. The integration of microservices enables the verification of interactions between microservices and the acquisition of communication parameters with external systems. At this stage, any incompatibilities or inconsistencies can be identified and corrected, ensuring that the integrated application is stable and reliable. Finally, evidence from our investigation suggests that integration can also entail the establishment of continuous deployment pipelines and process automation to facilitate the distribution of microservices across disparate environments, such as development, testing, and production. Upon completion of this activity, the modernized software is expected to be ready for deployment and available for use by end users.
- Monitoring. This activity is the least common in our mapping, as evidenced by four studies (i.e., S7, S15, S20, and S21). In the context of MSA, monitoring is a first-class task due to the distributed and complex nature of these systems. Our findings suggest that given the interactions among multiple microservices and their deployment in disparate environments, it is imperative to possess comprehensive visibility of the status of each component and its interactions with other microservices. Therefore, monitoring in microservices environments typically involves the collection and analysis of performance-related metrics, including response time, error rate, resource utilization (e.g., CPU, memory, and network), and availability. These metrics are monitored in real time and can be viewed through dashboards and reports, thereby providing valuable insights into the health of the system and facilitating the identification of bottlenecks, failures, and optimization opportunities. In addition, monitoring can include the detection and early warning of anomalies and potential problems, enabling operations and development teams to take corrective action to minimize the impact on end users. Finally, the findings of our study indicate that tools and platforms that specialize in collecting, storing, and analyzing monitoring data, as well as observability practices that aim to make the system more understandable and diagnosable in the event of problems, must be used to implement an effective monitoring system in microservice environments.
5. Discussion of Results
6. Conclusions and Future Work
Author Contributions
Funding
Institutional Review Board Statement
Data Availability Statement
Conflicts of Interest
References
- Taibi, D.; Lenarduzzi, V.; Pahl, C. Processes, Motivations, and Issues for Migrating to Microservices Architectures: An Empirical Investigation. IEEE Cloud Comput. 2017, 4, 22–32. [Google Scholar] [CrossRef]
- Silva Filho, H.C.d.; Carneiro, G.d.F. Strategies Reported in the Literature to Migrate to Microservices Based Architecture. In Proceedings of the 16th International Conference on Information Technology—New Generations (ITNG 2019), Las Vegas, NV, USA, 1–3 April 2019; Latifi, S., Ed.; Springer International Publishing: Cham, Switzerland, 2019; pp. 575–580. [Google Scholar] [CrossRef]
- Silva, H.H.S.d.; de F. Carneiro, G.; Monteiro, M.P. An Experience Report from the Migration of Legacy Software Systems to Microservice Based Architecture. In Proceedings of the 16th International Conference on Information Technology—New Generations (ITNG 2019), Las Vegas, NV, USA, 1–3 April 2019; Latifi, S., Ed.; Springer International Publishing: Cham, Switzerland, 2019; pp. 183–189. [Google Scholar] [CrossRef]
- Hassan, S.; Bahsoon, R.; Kazman, R. Microservice transition and its granularity problem: A systematic mapping study. Softw. Pract. Exp. 2020, 50, 1651–1681. [Google Scholar] [CrossRef]
- Di Francesco, P.; Lago, P.; Malavolta, I. Migrating Towards Microservice Architectures: An Industrial Survey. In Proceedings of the 15th International Conference on Software Architecture, ICSA 2018, Seattle, WA, USA, 30 April–4 May 2018; Institute of Electrical and Electronics Engineers Inc.: Piscataway, NJ, USA, 2018; pp. 29–38. [Google Scholar] [CrossRef]
- Kalske, M.; Mäkitalo, N.; Mikkonen, T. Challenges When Moving from Monolith to Microservice Architecture. In Current Trends in Web Engineering; Lecture Notes in Computer Science (Including Subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics); Springer: Berlin/Heidelberg, Germany, 2018; Volume 10544 LNCS, pp. 32–47. [Google Scholar] [CrossRef]
- Almeida, N.R.; Campos, G.N.; Moraes, F.R.; Affonso, F.J. Modernization of Legacy Systems to Microservice Architecture: A Tertiary Study. In Proceedings of the 26th International Conference on Enterprise Information Systems–Volume 2: ICEIS, Angers, France, 28–30 April 2024; INSTICC: Lisboa, Portugal; SciTePress: Setúbal, Portugal, 2024; pp. 581–592. [Google Scholar] [CrossRef]
- Petersen, K.; Vakkalanka, S.; Kuzniarz, L. Guidelines for conducting systematic mapping studies in software engineering: An update. Inf. Softw. Technol. 2015, 64, 1–18. [Google Scholar] [CrossRef]
- Fávero, L.F.; Mário, G.S.; Affonso, F. Micro4Delphi: A Process for the Modernization of Legacy Systems in Delphi to Microservice Architecture. In Proceedings of the 27th International Conference on Enterprise Information Systems, Porto, Portugal, 4–6 April 2025; ICEIS: Setúbal, Portugal; INSTICC: Lisboa, Portugal; SciTePress: Setúbal, Portugal, 2025; Volume 2, pp. 328–339. [Google Scholar] [CrossRef]
- Lewis, J.; Fowler, M. Microservices Guide. 2019. Available online: https://martinfowler.com/microservices/ (accessed on 26 March 2025).
- Tserpes, K. stream-MSA: A microservices’ methodology for the creation of short, fast-paced, stream processing pipelines. ICT Express 2019, 5, 146–149. [Google Scholar] [CrossRef]
- Newman, S. Building Microservices, 2nd ed.; O’Reilly Media: Sebastopol, CA, USA, 2021. [Google Scholar]
- IBM. What Is Service-Oriented Architecture (SOA)? 2024. Available online: https://www.ibm.com/topics/soa (accessed on 26 March 2025).
- Amundsen, M.; Mclarty, M. Microservice Architecture; O’Reilly Media: Sebastopol, CA, USA, 2016. [Google Scholar]
- Krause, A.; Zirkelbach, C.; Hasselbring, W.; Lenga, S.; Kroger, D. Microservice Decomposition via Static and Dynamic Analysis of the Monolith. In Proceedings of the IEEE International Conference on Software Architecture Companion, ICSA-C 2020, Salvador, Brazil, 16–20 March 2020; Institute of Electrical and Electronics Engineers Inc.: Piscataway, NJ, USA, 2020; pp. 9–16. [Google Scholar] [CrossRef]
- Passini, W.F.; Lana, C.A.; Pfeifer, V.; Affonso, F.J. Design of frameworks for self-adaptive service-oriented applications: A systematic analysis. Softw. Pract. Exp. 2022, 52, 5–38. [Google Scholar] [CrossRef]
- Dyba, T.; Dingsoyr, T.; Hanssen, G.K. Applying Systematic Reviews to Diverse Study Types: An Experience Report. In Proceedings of the First International Symposium on Empirical Software Engineering and Measurement (ESEM 2007), Madrid, Spain, 20–21 September 2007; pp. 225–234. [Google Scholar] [CrossRef]
- Kitchenham, B.; Pretorius, R.; Budgen, D.; Brereton, O.P.; Turner, M.; Niazi, M.; Linkman, S. Systematic literature reviews in software engineering—A tertiary study. Inf. Softw. Technol. 2010, 52, 792–805. [Google Scholar] [CrossRef]
- Kitchenham, B.; Charters, S. Guidelines for Performing Systematic Literature Reviews in Software Engineering; Technical Report; Keele University and Durham University Joint Report; Keele University: Keele, UK; Durham University: Durham, UK, 2007. [Google Scholar]
- Kitchenham, B.; Sjøberg, D.I.K.; Brereton, O.P.; Budgen, D.; Dybå, T.; Höst, M.; Pfahl, D.; Runeson, P. Can we evaluate the quality of software engineering experiments? In Proceedings of the 4th International Symposium on Empirical Software Engineering and Measurement (ESEM 2010), Bolzano, Italy, 16–17 September 2010; pp. 1–8. [Google Scholar]
- Fávero, L.F.; Almeida, N.R.; Affonso, F.J. Quality Criteria Spreadsheet. 2024. Available online: https://docs.google.com/spreadsheets/d/1ZG-NywAOctA_MNb3aNL0s2Uan9TlHqb1P_32D1l6mQ8/edit?usp=sharing (accessed on 26 March 2025).
- Wohlin, C.; Runeson, P.; Hst, M.; Ohlsson, M.C.; Regnell, B.; Wessln, A. Experimentation in Software Engineering; Springer Publishing Company, Incorporated: Berlin/Heidelberg, Germany, 2012. [Google Scholar]
- Buchgeher, G.; Ramlerf, R.; Stummer, H.; Kaufmann, H. Adopting Microservices for Industrial Control Systems: A Five Step Migration Path. In Proceedings of the 26th IEEE International Conference on Emerging Technologies and Factory Automation (ETFA), Vasteras, Sweden, 7–10 September 2021; Institute of Electrical and Electronics Engineers Inc.: Piscataway, NJ, USA, 2021; pp. 1–8. [Google Scholar] [CrossRef]
- Lenarduzzi, V.; Lomio, F.; Saarimäki, N.; Taibi, D. Does migrating a monolithic system to microservices decrease the technical debt? J. Syst. Softw. 2020, 169, 110710. [Google Scholar] [CrossRef]
- Trabelsi, I.; Abdellatif, M.; Abubaker, A.; Moha, N.; Mosser, S.; Ebrahimi-Kahou, S.; Guéhéneuc, Y.G. From legacy to microservices: A type-based approach for microservices identification using machine learning and semantic analysis. J. Software: Evol. Process 2022, 35, e2503. [Google Scholar] [CrossRef]
- Sellami, K.; Ouni, A.; Saied, M.A.; Bouktif, S.; Mkaouer, M.W. Improving microservices extraction using evolutionary search. Inf. Softw. Technol. 2022, 151, 106996. [Google Scholar] [CrossRef]
- Mazzara, M.; Dragoni, N.; Bucchiarone, A.; Giaretta, A.; Larsen, S.T.; Dustdar, S. Microservices: Migration of a Mission Critical System. IEEE Trans. Serv. Comput. 2021, 14, 1464–1477. [Google Scholar] [CrossRef]
- Freire, A.F.A.A.; Sampaio, A.F.; Carvalho, L.H.L.; Medeiros, O.; Mendonça, N.C. Migrating production monolithic systems to microservices using aspect oriented programming. Softw. Pract. Exp. 2021, 51, 1280–1307. [Google Scholar] [CrossRef]
- Kalia, A.K.; Xiao, J.; Krishna, R.; Sinha, S.; Vukovic, M.; Banerjee, D. Mono2Micro: A practical and effective tool for decomposing monolithic Java applications to microservices. In Proceedings of the 29th ACM Joint Meeting European Software Engineering Conference and Symposium on the Foundations of Software Engineering, Athens, Greece, 18 August 2021; Spinellis, D., Ed.; Association for Computing Machinery, Inc.: New York, NY, USA, 2021; pp. 1214–1224. [Google Scholar] [CrossRef]
- Wang, Y.T.; Ma, S.P.; Lai, Y.J.; Liang, Y.C. Qualitative and quantitative comparison of Spring Cloud and Kubernetes in migrating from a monolithic to a microservice architecture. Serv. Oriented Comput. Appl. 2023, 17, 149–159. [Google Scholar] [CrossRef]
- Zaragoza, P.; Seriai, A.D.; Seriai, A.; Bouziane, H.L.; Shatnawi, A.; Derras, M. Refactoring monolithic object-oriented source code to materialize microservice-oriented architecture. In Proceedings of the 16th International Conference on Software Technologies, ICSOFT 2021, Virtual Event, 6–8 July 2021; SciTePress: Setúbal, Portugal, 2021; pp. 78–89. [Google Scholar] [CrossRef]
- Löhnertz, J.; Oprescu, A.M. Steinmetz: Toward automatic decomposition of monolithic software into microservices. In Proceedings of the CEUR Workshop Proceedings, Uzbekistan, Tashkent, 7–9 October 2020; Constantinou, E., Ed.; CEUR-WS. Volume 2754, pp. 1–8. [Google Scholar]
- Mishra, R.; Jaiswal, N.; Prakash, R.; Barwal, P.N. Transition from Monolithic to Microservices Architecture: Need and proposed pipeline. In Proceedings of the 2022 International Conference on Futuristic Technologies, INCOFT 2022, Belgaum, India, 25–27 November 2022; Institute of Electrical and Electronics Engineers Inc.: Piscataway, NJ, USA, 2022; pp. 1–6. [Google Scholar] [CrossRef]
- Dehghani, M.; Kolahdouz-Rahimi, S.; Tisi, M.; Tamzalit, D. Facilitating the migration to the microservice architecture via model-driven reverse engineering and reinforcement learning. Softw. Syst. Model. 2022, 21, 1115–1133. [Google Scholar] [CrossRef]
- Osman, M.H.; Saadbouh, C.; Sharif, K.Y.; Admodisastro, N.; Basri, M.H. From Monolith to Microservices: A Semi-Automated Approach for Legacy to Modern Architecture Transition using Static Analysis. Int. J. Adv. Comput. Sci. Appl. 2022, 13, 907–916. [Google Scholar] [CrossRef]
- Colanzi, T.; Amaral, A.; Assunção, W.; Zavadski, A.; Tanno, D.; Garcia, A.; Lucena, C. Are we speaking the industry language? The practice and literature of modernizing legacy systems with microservices. In Proceedings of the ACM International Conference Proceeding Series. Association for Computing Machinery, Joinville, Brazil, 5 October 2021; pp. 61–70. [Google Scholar] [CrossRef]
- Auer, F.; Lenarduzzi, V.; Felderer, M.; Taibi, D. From monolithic systems to Microservices: An assessment framework. Inf. Softw. Technol. 2021, 137, 106600. [Google Scholar] [CrossRef]
- Zaragoza, P.; Seriai, A.D.; Seriai, A.; Shatnawi, A.; Bouziane, H.L.; Derras, M. Materializing Microservice-oriented Architecture from Monolithic Object-oriented Source Code. Commun. Comput. Inf. Sci. 2022, 1622, 143–168. [Google Scholar] [CrossRef]
- Kyryk, M.; Tymchenko, O.; Pleskanka, N.; Pleskanka, M. Methods and process of service migration from monolithic architecture to microservices. In Proceedings of the 16th International Conference on Advanced Trends in Radioelectronics, Telecommunications and Computer Engineering, TCSET 2022, Lviv-Slavske, Ukraine, 22–26 February 2022; Institute of Electrical and Electronics Engineers Inc.: Piscataway, NJ, USA, 2022; pp. 553–558. [Google Scholar] [CrossRef]
- Stranner, H.; Strobl, S.; Bernhart, M.; Grechenig, T. Microservice decomposition: A case study of a large industrial software migration in the automotive industry. In Proceedings of the 15th International Conference on Evaluation of Novel Approaches to Software Engineering, Online, 5–6 May 2020; SciTePress: Setúbal, Portugal, 2020; pp. 498–505. [Google Scholar]
- Ma, S.P.; Li, C.Y.; Lee, W.T.; Lee, S.J. Microservice Migration Using Strangler Fig Pattern and Domain-Driven Design. J. Inf. Sci. Eng. 2022, 38, 1285–1303. [Google Scholar] [CrossRef]
- Li, C.Y.; Ma, S.P.; Lu, T.W. Microservice Migration Using Strangler Fig Pattern: A Case Study on the Green Button System. In Proceedings of the 2020 International Computer Symposium, ICS 2020, Tainan, Taiwan, 17–19 December 2020; Institute of Electrical and Electronics Engineers Inc.: Piscataway, NJ, USA, 2020; pp. 519–524. [Google Scholar] [CrossRef]
- Ma, S.P.; Lu, T.W.; Li, C.C. Migrating Monoliths to Microservices based on the Analysis of Database Access Requests. In Proceedings of the IEEE International Conference on Service-Oriented System Engineering, SOSE 2022, Newark, CA, USA, 15–18 August 2022; Institute of Electrical and Electronics Engineers Inc.: Piscataway, NJ, USA, 2022; pp. 11–18. [Google Scholar] [CrossRef]
- Salii, S.; Ajdari, J.; Zenuni, X. Migrating to a microservice architecture: Benefits and challenges. In Proceedings of the ICT and Electronics Convention, MIPRO 2023, Opatija, Croatia, 22–26 May 2023; Institute of Electrical and Electronics Engineers Inc.: Piscataway, NJ, USA, 2023; pp. 1670–1677. [Google Scholar] [CrossRef]
- Carvalho, L.; Garcia, A.; Colanzi, T.E.; Assuncao, W.K.G.; Pereira, J.A.; Fonseca, B.; Ribeiro, M.; De Lima, M.J.; Lucena, C. On the Performance and Adoption of Search-Based Microservice Identification with toMicroservices. In Proceedings of the 2020 IEEE International Conference on Software Maintenance and Evolution, ICSME 2020, Adelaide, SA, Australia, 28 September–2 October 2020; Institute of Electrical and Electronics Engineers Inc.: Piscataway, NJ, USA, 2020; pp. 569–580. [Google Scholar] [CrossRef]
- Gomes Barbosa, M.H.; Maia, P.H.M. Towards Identifying Microservice Candidates from Business Rules Implemented in Stored Procedures. In Proceedings of the 2020 IEEE International Conference on Software Architecture Companion, ICSA-C 2020, Salvador, Brazil, 16–20 March 2020; Institute of Electrical and Electronics Engineers Inc.: Piscataway, NJ, USA, 2020; pp. 41–48. [Google Scholar] [CrossRef]
- Bamberger, B.; Körber, B. Migrating Monoliths to Microservices Integrating Robotic Process Automation into the Migration Approach. J. Autom. Mob. Robot. Intell. Syst. 2022, 2022, 72–82. [Google Scholar] [CrossRef]
- Parikh, A.; Kumar, P.; Gandhi, P.; Sisodia, J. Monolithic to Microservices Architecture—A Framework for Design and Implementation. In Proceedings of the International Conference on Computer, Power and Communications, ICCPC 2022, Chennai, India, 14–16 December 2022; Institute of Electrical and Electronics Engineers Inc.: Piscataway, NJ, USA, 2022; pp. 90–96. [Google Scholar] [CrossRef]
- Kuryazov, D.; Jabborov, D.; Khujamuratov, B. Towards Decomposing Monolithic Applications into Microservices. In Proceedings of the IEEE International Conference on Application of Information and Communication Technologies, AICT 2020, Tashkent, Uzbekistan, 7–9 October 2020; Institute of Electrical and Electronics Engineers Inc.: Piscataway, NJ, USA, 2020; pp. 1–4. [Google Scholar] [CrossRef]
- Freitas, F.; Ferreira, A.; Cunha, J. A methodology for refactoring ORM-based monolithic web applications into microservices. J. Comput. Lang. 2023, 75, 101205. [Google Scholar] [CrossRef]
- Yang, Z.; Wu, S.; Zhang, C. A Microservices Identification Approach based on Problem Frames. In Proceedings of the IEEE International Conference on Software Engineering and Artificial Intelligence, SEAI 2022, Xiamen, China, 10–12 June 2022; Institute of Electrical and Electronics Engineers Inc.: Piscataway, NJ, USA, 2022; pp. 155–159. [Google Scholar] [CrossRef]
- Kazanavičius, J.; Mažeika, D. An Approach to Migrate from Legacy Monolithic Application into Microservice Architecture. In Proceedings of the IEEE Open Conference of Electrical, Electronic and Information Sciences, eStream 2023, Vilnius, Lithuania, 27–27 April 2023; Institute of Electrical and Electronics Engineers Inc.: Piscataway, NJ, USA, 2023; pp. 1–6. [Google Scholar] [CrossRef]
- Volynsky, E.; Mehmed, M.; Krusche, S. Architect: A Framework for the Migration to Microservices. In Proceedings of the 2022 International Conference on Computing, Electronics and Communications Engineering, ICCECE 2022, Southend, UK, 17–18 August 2022; Institute of Electrical and Electronics Engineers Inc.: Piscataway, NJ, USA, 2022; pp. 71–76. [Google Scholar] [CrossRef]
- Laigner, R.; Kalinowski, M.; Diniz, P.; Barros, L.; Cassino, C.; Lemos, M.; Arruda, D.; Lifschitz, S.; Zhou, Y. From a Monolithic Big Data System to a Microservices Event-Driven Architecture. In Proceedings of the 46th Euromicro Conference on Software Engineering and Advanced Applications, SEAA 2020, Portoroz, Slovenia, 26–28 August 2020; Institute of Electrical and Electronics Engineers Inc.: Piscataway, NJ, USA, 2020; pp. 213–220. [Google Scholar] [CrossRef]
- Santos, A.; Paula, H. Microservice decomposition and evaluation using dependency graph and silhouette coefficient. In Proceedings of the ACM International Conference Proceeding Series, Joinville, Brazil, 27 September–1 October 2021; Association for Computing Machinery: New York, NY, USA, 2021; pp. 51–60. [Google Scholar] [CrossRef]
- Prasandy, T.; Titan; Murad, D.F.; Darwis, T. Migrating application from monolith to microservices. In Proceedings of the 2020 International Conference on Information Management and Technology, ICIMTech 2020, Bandung, Indonesia, 13–14 August 2020; Institute of Electrical and Electronics Engineers Inc.: Piscataway, NJ, USA, 2020; pp. 726–731. [Google Scholar] [CrossRef]
- Haugeland, S.G.; Nguyen, P.H.; Song, H.; Chauvel, F. Migrating Monoliths to Microservices-based Customizable Multi-tenant Cloud-native Apps. In Proceedings of the 2021 47th Euromicro Conference on Software Engineering and Advanced Applications, SEAA 2021, Palermo, Italy, 1–3 September 2021; Institute of Electrical and Electronics Engineers Inc.: Piscataway, NJ, USA, 2021; pp. 170–177. [Google Scholar] [CrossRef]
- Goncalves, N.; Faustino, D.; Silva, A.R.; Portela, M. Monolith Modularization towards Microservices: Refactoring and Performance Trade-offs. In Proceedings of the 2021 IEEE 18th International Conference on Software Architecture Companion, ICSA-C 2021, Stuttgart, Germany, 22–26 March 2021; Institute of Electrical and Electronics Engineers Inc.: Piscataway, NJ, USA, 2021; pp. 54–61. [Google Scholar] [CrossRef]
- Preti, J.P.D.; Souza, A.N.A.; Freiberger, E.C.; De Almeida Lacerda, T. Monolithic to Microservices Migration Strategy in Public Safety Secretariat of Mato Grosso. In Proceedings of the 3rd International Conference on Electrical, Communication and Computer Engineering, ICECCE 2021, Kuala Lumpur, Malaysia, 12–13 June 2021; Institute of Electrical and Electronics Engineers Inc.: Piscataway, NJ, USA, 2021; pp. 1–5. [Google Scholar] [CrossRef]
- Vera-Baquero, A.; Phelan, O.; Slowinski, P.; Hannon, J. Open Source Software as the Main Driver for Evolving Software Systems Toward a Distributed and Performant E-Commerce Platform: A Zalando Fashion Store Case Study. IT Prof. 2021, 23, 34–41. [Google Scholar] [CrossRef]
- Bajaj, D.; Bharti, U.; Goel, A.; Gupta, S. Partial Migration for Re-architecting a Cloud Native Monolithic Application into Microservices and FaaS. Commun. Comput. Inf. Sci. 2020, 1170, 111–124. [Google Scholar] [CrossRef]
- Michael Ayas, H.; Leitner, P.; Hebig, R. The Migration Journey Towards Microservices. In Product-Focused Software Process Improvement; Lecture Notes in Computer Science (Including Subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics); Springer: Berlin/Heidelberg, Germany, 2021; Volume 13126, pp. 20–35. [Google Scholar] [CrossRef]
- Batista, C.; Proença, B.; Cavalcante, E.; Batista, T.; Morais, F.; Medeiros, H. Towards a Multi-Tenant Microservice Architecture: An Industrial Experience. In Proceedings of the IEEE 46th Annual Computers, Software, and Applications Conference, COMPSAC 2022, Los Alamitos, CA, USA, 27 June–1 July 2022; Institute of Electrical and Electronics Engineers Inc.: Piscataway, NJ, USA, 2022; pp. 553–562. [Google Scholar] [CrossRef]
- Bandara, C.; Perera, I. Transforming monolithic systems to microservices—An analysis toolkit for legacy code evaluation. In Proceedings of the 20th International Conference on Advances in ICT for Emerging Regions, ICTer 2020, Colombo, Sri Lanka, 4–7 November 2020; Institute of Electrical and Electronics Engineers Inc.: Piscataway, NJ, USA, 2020; pp. 95–100. [Google Scholar] [CrossRef]
- SEVOCAB. IEEE Computer Society. Software and Systems Engineering Vocabulary. 2023. Available online: https://pascal.computer.org/sev_display/index.action (accessed on 26 March 2025).
- Pressman, R.; Maxim, B. Software Engineering: A Practitioner’s Approach, 9th ed.; McGraw-Hill Education: New York, NY, USA, 2019. [Google Scholar]
- Camargo, M.P.d.O.; Pereira, G.d.S.; Almeida, D.; Bento, L.A.; Dorante, W.F.; Affonso, F.J. RA4Self-CPS: A Reference Architecture for Self-adaptive Cyber-Physical Systems. IEEE Lat. Am. Trans. 2024, 22, 113–125. [Google Scholar] [CrossRef]
(“decomposing” OR “decoupling” OR “migrating” OR “migration” OR “modernization” OR “modernizing” OR “re engineering” OR “re-engineering” OR “reengineering” OR “reverse engineering” OR “transition”) AND (“micro service” OR “micro services” OR “micro-service” OR “micro-services” OR “microservice” OR “microservices”) |
Data Item | Value | RQ |
---|---|---|
Study ID | Integer | – |
Article title | Name of the article | – |
Author name | Set of names of the authors | – |
Venue | Name of publication venue | – |
Year | Calendar year | – |
Initiative name | Approach, methodology, process, etc. | RQ1 |
Application domain | Domain in which the initiative was applied | RQ2 |
Evaluation method | Proof of concepts, case studies, experiments, etc. | RQ3 |
Adoption evidence | Maturity level (industrial, academic, or mixed) | RQ4 |
Quality attributes | List of reported quality attributes | RQ5 |
Activities | Steps for modernization | RQ6 |
Publication Database | Step 1 | Step 2 | Step 3 | Step 4 |
---|---|---|---|---|
ACM Digital Library | 83 | 639 | 98 | 43 |
IEEE Xplore | 268 | |||
ScienceDirect | 58 | |||
Scopus | 628 | |||
Total | 1.037 |
ID | Description | Score |
---|---|---|
C1 | Are research objectives clearly presented? | 0: No; 1: Partially; 2: Yes. |
C2 | Are study limitations discussed? | 0: No; 1: Partially; 2: Yes. |
C3 | Are findings clearly presented? | 0: No; 1: Partially; 2: Yes. |
C4 | Is there evidence that the results of the study can be used by other researchers/practitioners? | 0: No; 1: Partially; 2: Yes. |
C5 | Does the content of the study fully address the questions set out in the abstract? | 0: No; 1: Partially; 2: Yes. |
C6 | Are the proposals presented empirically evaluated? | 0: No; 1: Partially; 2: Yes. |
C7 | How was the study evaluated? | 0: Not evaluated; 0.5: Illustrative example; 1: Case study; 1.5: Assessment by researchers and specialists; 2: Application in industry. |
C8 | Are ideas for future research presented? | 0: No; 1: Partially; 2: Yes. |
ID | Reference | Year |
---|---|---|
S1 | Buchgeher et al. [23], Adopting Microservices for Industrial Control Systems: A Five Step Migration Path. | 2021 |
S2 | Lenarduzzi et al. [24], Does migrating a monolithic system to microservices decrease the technical debt? | 2020 |
S3 | Trabelsi et al. [25], From legacy to microservices: A type-based approach for microservices identification using machine learning and semantic analysis. | 2022 |
S4 | Sellami et al. [26], Improving microservices extraction using evolutionary search. | 2022 |
S5 | Krause et al. [15], Microservice Decomposition via Static and Dynamic Analysis of the Monolith. | 2020 |
S6 | Mazzara et al. [27], Microservices: Migration of a Mission Critical System. | 2021 |
S7 | Freire et al. [28], Migrating production monolithic systems to microservices using aspect oriented programming. | 2021 |
S8 | Kalia et al. [29], Mono2Micro: A practical and effective tool for decomposing monolithic Java applications to microservices. | 2021 |
S9 | Wang et al. [30], Qualitative and quantitative comparison of Spring Cloud and Kubernetes in migrating from a monolithic to a microservice architecture. | 2023 |
S10 | Zaragoza et al. [31], Refactoring monolithic object-oriented source code to materialize microservice-oriented architecture. | 2021 |
S11 | Löhnertz and Oprescu [32], Steinmetz: Toward automatic decomposition of monolithic software into microservices. | 2020 |
S12 | Mishra et al. [33], Transition from Monolithic to Microservices Architecture: Need and proposed pipeline. | 2022 |
S13 | Dehghani et al. [34], Facilitating the migration to the microservice architecture via model-driven reverse engineering and reinforcement learning. | 2022 |
S14 | Osman et al. [35], From Monolith to Microservices: A Semi-Automated Approach for Legacy to Modern Architecture Transition using Static Analysis. | 2022 |
S15 | Colanzi et al. [36], Are we speaking the industry language? The practice and literature of modernizing legacy systems with microservices. | 2021 |
S16 | Auer et al. [37], From monolithic systems to Microservices: An assessment framework. | 2021 |
S17 | Zaragoza et al. [38], Materializing Microservice-oriented Architecture from Monolithic Object-oriented Source Code. | 2022 |
S18 | Kyryk et al. [39], Methods and process of service migration from monolithic architecture to microservices. | 2022 |
S19 | Stranner et al. [40], Microservice decompositon: A case study of a large industrial software migration in the automotive industry. | 2020 |
S20 | Ma et al. [41], Microservice Migration Using Strangler Fig Pattern and Domain-Driven Design. | 2022 |
S21 | Li et al. [42], Microservice Migration Using Strangler Fig Pattern: A Case Study on the Green Button System. | 2020 |
S22 | Ma et al. [43], Migrating Monoliths to Microservices based on the Analysis of Database Access Requests. | 2022 |
S23 | Salii et al. [44], Migrating to a microservice architecture: benefits and challenges. | 2023 |
S24 | Carvalho et al. [45], On the Performance and Adoption of Search-Based Microservice Identification with toMicroservices. | 2020 |
S25 | Gomes Barbosa and Maia [46], Towards Identifying Microservice Candidates from Business Rules Implemented in Stored Procedures. | 2020 |
S26 | Bamberger and Körber [47], Migrating Monoliths to Microservices Integrating Robotic Process Automation into the Migration Approach. | 2022 |
S27 | Parikh et al. [48], Monolithic to Microservices Architecture—A Framework for Design and Implementation. | 2022 |
S28 | Kuryazov et al. [49], Towards Decomposing Monolithic Applications into Microservices. | 2020 |
S29 | Freitas et al. [50], A methodology for refactoring ORM-based monolithic web applications into microservices. | 2023 |
S30 | Yang et al. [51], A Microservices Identification Approach based on Problem Frames. | 2022 |
S31 | Kazanaviˇcius and Mažeika [52], An Approach to Migrate from Legacy Monolithic Application into Microservice Architecture. | 2023 |
S32 | Volynsky et al. [53], Architect: A Framework for the Migration to Microservices | 2022 |
S33 | Laigner et al. [54], From a Monolithic Big Data System to a Microservices Event-Driven Architecture. | 2020 |
S34 | Santos and Paula [55], Microservice decomposition and evaluation using dependency graph and silhouette coefficient. | 2021 |
S35 | Prasandy et al. [56], Migrating application from monolith to microservices. | 2020 |
S36 | Haugeland et al. [57], Migrating Monoliths to Microservices-based Customizable Multi-tenant Cloud-native Apps. | 2021 |
S37 | Goncalves et al. [58], Monolith Modularization towards Microservices: Refactoring and Performance Trade-offs. | 2021 |
S38 | Preti et al. [59], Monolithic to Microservices Migration Strategy in Public Safety Secretariat of Mato Grosso. | 2021 |
S39 | Vera-Baquero et al. [60], Open Source Software as the Main Driver for Evolving Software Systems Toward a Distributed and Performant E-Commerce Platform: A Zalando Fashion Store Case Study. | 2021 |
S40 | Bajaj et al. [61], Partial Migration for Re-architecting a Cloud Native Monolithic Application into Microservices and FaaS. | 2020 |
S41 | Michael Ayas et al. [62], The Migration Journey Towards Microservices. | 2021 |
S42 | Batista et al. [63], Towards a Multi-Tenant Microservice Architecture: An Industrial Experience. | 2022 |
S43 | Bandara and Perera [64], Transforming monolithic systems to microservices—An analysis toolkit for legacy code evaluation. | 2020 |
# | PLA | ANA | DEC | DEV | INT | MON | |
---|---|---|---|---|---|---|---|
S6 | ✔ | ✔ | – | ✔ | – | – | 3 |
S7 | – | ✔ | – | ✔ | – | ✔ | 3 |
S13 | – | ✔ | – | ✔ | ✔ | – | 3 |
S15 | ✔ | – | – | ✔ | – | ✔ | 3 |
S16 | ✔ | ✔ | – | ✔ | – | – | 3 |
S18 | – | ✔ | ✔ | ✔ | ✔ | – | 4 |
S20 | – | ✔ | – | ✔ | ✔ | ✔ | 4 |
S21 | ✔ | ✔ | – | ✔ | ✔ | ✔ | 5 |
S26 | – | ✔ | – | ✔ | ✔ | – | 3 |
S27 | – | ✔ | ✔ | ✔ | ✔ | – | 4 |
S28 | – | ✔ | – | ✔ | ✔ | – | 3 |
S31 | – | ✔ | ✔ | ✔ | ✔ | – | 4 |
S35 | – | ✔ | – | ✔ | ✔ | – | 3 |
S41 | – | ✔ | – | ✔ | ✔ | – | 3 |
S43 | – | ✔ | – | ✔ | ✔ | – | 3 |
4 | 14 | 3 | 15 | 11 | 4 |
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content. |
© 2025 by the authors. Published by MDPI on behalf of the International Institute of Knowledge Innovation and Invention. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (https://creativecommons.org/licenses/by/4.0/).
Share and Cite
Fávero, L.F.; Almeida, N.R.d.; Affonso, F.J. A Systematic Mapping Study on the Modernization of Legacy Systems to Microservice Architecture. Appl. Syst. Innov. 2025, 8, 86. https://doi.org/10.3390/asi8040086
Fávero LF, Almeida NRd, Affonso FJ. A Systematic Mapping Study on the Modernization of Legacy Systems to Microservice Architecture. Applied System Innovation. 2025; 8(4):86. https://doi.org/10.3390/asi8040086
Chicago/Turabian StyleFávero, Lucas Fernando, Nathalia Rodrigues de Almeida, and Frank José Affonso. 2025. "A Systematic Mapping Study on the Modernization of Legacy Systems to Microservice Architecture" Applied System Innovation 8, no. 4: 86. https://doi.org/10.3390/asi8040086
APA StyleFávero, L. F., Almeida, N. R. d., & Affonso, F. J. (2025). A Systematic Mapping Study on the Modernization of Legacy Systems to Microservice Architecture. Applied System Innovation, 8(4), 86. https://doi.org/10.3390/asi8040086