From monolith to microservice: Measuring architecture maintainability - Hasan, Muhammad Hafiz; Osman, Mohd. Hafeez; Admodisastro, Novia Indriaty; Muhammad, Muhamad Sufri (The Science and Information Organisation, 2023)
The migration of monolithic applications to the cloud is a popular trend, with microservice architecture being a commonly targeted architectural pattern. The motivation behind this migration is often rooted in the challenges associated with maintaining legacy applications and the need to adapt to rapidly changing business requirements. To ensure that the migration to microservices is a sound decision for enhancing maintainability, designers must carefully consider the underlying factors driving this software architecture migration. This study proposes a set of software architecture metrics for evaluating the maintainability of microservice architectural designs for monolith to microservice architecture migration. These metrics consider various factors, such as coupling, complexity, cohesion, and size, which are crucial for ensuring that the software architecture remains maintainable in the long term. Drawing upon previous product quality models that share similar design properties with microservice, we have derived maintainability metrics that can help measure the quality of microservice architecture. In this work, we introduced our first version of structural metrics for measuring the maintainability quality of microservice architecture concerning its cloud-native characteristics. This work allows us to get early feedback on proposed metrics before a detailed evaluation. With these metrics, designers can measure their microservice architecture quality to fully leverage the benefits of the cloud environment, thus ensuring that the migration to microservice is a beneficial decision for enhancing the maintainability of their software architecture applications.