Table of Contents
Fetching ...

Microservices-based Software Systems Reengineering: State-of-the-Art and Future Directions

Thakshila Imiya Mohottige, Artem Polyvyanyy, Rajkumar Buyya, Colin Fidge, Alistair Barros

TL;DR

This survey synthesizes state-of-the-art research on reengineering monolithic software into microservice architectures, focusing on microservice identification through static, dynamic, artifact-driven, and hybrid analyses. It catalogues inputs, outputs, and algorithms across graph- and matrix-based modeling, domain/semantic methods, and clustering/optimization techniques, while evaluating migrated systems via runtime performance, modularity, coupling, cohesion, and decomposition quality. Key findings show static/artifact-driven approaches dominate the literature, with growing attention to dynamic and hybrid methods, yet a lack of standard migration/evaluation baselines and limited cross-system validation. The work highlights gaps and proposes future directions, including richer runtime, data-consistency, and security considerations, enabling more reliable and scalable migration of legacy systems to microservice-based deployments.

Abstract

Designing software compatible with cloud-based Microservice Architectures (MSAs) is vital due to the performance, scalability, and availability limitations. As the complexity of a system increases, it is subject to deprecation, difficulties in making updates, and risks in introducing defects when making changes. Microservices are small, loosely coupled, highly cohesive units that interact to provide system functionalities. We provide a comprehensive survey of current research into ways of identifying services in systems that can be redeployed as microservices. Static, dynamic, and hybrid approaches have been explored. While code analysis techniques dominate the area, dynamic and hybrid approaches remain open research topics.

Microservices-based Software Systems Reengineering: State-of-the-Art and Future Directions

TL;DR

This survey synthesizes state-of-the-art research on reengineering monolithic software into microservice architectures, focusing on microservice identification through static, dynamic, artifact-driven, and hybrid analyses. It catalogues inputs, outputs, and algorithms across graph- and matrix-based modeling, domain/semantic methods, and clustering/optimization techniques, while evaluating migrated systems via runtime performance, modularity, coupling, cohesion, and decomposition quality. Key findings show static/artifact-driven approaches dominate the literature, with growing attention to dynamic and hybrid methods, yet a lack of standard migration/evaluation baselines and limited cross-system validation. The work highlights gaps and proposes future directions, including richer runtime, data-consistency, and security considerations, enabling more reliable and scalable migration of legacy systems to microservice-based deployments.

Abstract

Designing software compatible with cloud-based Microservice Architectures (MSAs) is vital due to the performance, scalability, and availability limitations. As the complexity of a system increases, it is subject to deprecation, difficulties in making updates, and risks in introducing defects when making changes. Microservices are small, loosely coupled, highly cohesive units that interact to provide system functionalities. We provide a comprehensive survey of current research into ways of identifying services in systems that can be redeployed as microservices. Static, dynamic, and hybrid approaches have been explored. While code analysis techniques dominate the area, dynamic and hybrid approaches remain open research topics.
Paper Structure (28 sections, 4 figures, 22 tables)