This article investigates software migration from monolithic architectures to microservice-based designs, highlighting the gains and the trade-offs accompanying such a shift. Our principal goal is to identify decomposition techniques that shorten time-to-market for new functionality while preserving system agility under heavy load. The methodological framework surveys established strategies – clustering analyses, functional-dependency mapping, and machine-learning – driven partitioning – drawing on peer-reviewed publications and freely available industry sources to ensure a well-rounded perspective. The study shows that a microservices approach can accelerate development cycles, permit autonomous scaling of discrete modules, and improve alignment with evolving business needs. At the same time, it introduces extra monitoring overhead and elevates the security requirements inherent in distributed deployments. These insights should prove valuable to developers and software architects assessing contemporary architectural patterns. We conclude that successful adoption hinges on meticulous migration planning that balances the clear benefits of microservices against their attendant complexities.
Matteo CamilliCarmine ColarussoBarbara RussoEugenio Zimeo
Giovanni QuattrocchiDavide CoccoSimone StaffaAlessandro MargaraGianpaolo Cugola
Simone StaffaGiovanni QuattrocchiAlessandro MargaraGianpaolo Cugola