When migrating a monolith to a composable architecture, architects must evaluate the existing system and identify the hot spots or the essential components candidates for modernization. Then, appropriate tools and technologies are identified for each component or packaged business capability. Also, a roadmap for implementing the new architecture using a modular and componentized approach is designed. Finally, a migration approach is utilized, such as the Strangler pattern, Parallel Run, Blue-Green Deployment, Big Bang, Event-Driven, or Lift and Shift.
The Strangler pattern involves gradually replacing the components of the existing system with new ones. The new PBCs are developed separately and integrated into the current system over time until the entire system is replaced.
The Strangler pattern is a good option when the existing system is too complex to replace all at once and requires incremental changes. It's also an appropriate approach when the business needs to keep the current system operational while the new system is being developed and tested.
The Parallel Run pattern involves running the old and new systems in parallel until the new system is fully operational. Then, both applications are maintained and updated until the new system is fully functional.
Parallel Run is a good option when the business must ensure that the new system works well before fully transitioning from the old one. It's also a suitable approach when the organization needs to minimize the risk of data loss or transaction issues.
The Blue-Green Deployment pattern involves creating two identical environments: active (blue) and inactive (green). The new system is deployed in the inactive environment (green), and once the testing is complete, traffic is switched over from the old system (blue) to the new system (green).
Blue-Green deployment is a good option when the business requires zero-downtime deployment and testing. It's also an appropriate approach when the organization must ensure the new system is fully functional before switching from the old one.
The Big Bang approach involves replacing the old system with the new one. This approach requires careful planning and execution to operationalize the new application fully.
The Big Bang approach is a good option when the existing system is outdated and needs to be replaced quickly. It's also an appropriate approach when the business has a limited budget or resources and needs help to afford a more gradual migration.
The Event-Driven architecture replaces legacy systems with microservices, where each microservice handles specific business functions. This approach provides businesses with a modular, flexible system that enables faster development and deployment cycles.
Event-Driven architecture is a good option when the business requires a more modular and flexible system. It's also an appropriate approach when the organization needs to develop and deploy functionalities faster.
The Lift and Shift approach involves migrating the existing system to a cloud-based infrastructure and simplifying, updating, and maintaining the platform. This approach is relatively simple but may need to address the underlying issues with the legacy system.
Lift and Shift is a good option when the business needs to modernize the existing system but needs to afford a complete overhaul. It's also an appropriate approach when the organization needs to reduce costs by moving to a cloud-based infrastructure.
In summary, each approach has advantages and disadvantages, and the approach selection depends on several factors. Therefore, Architects should help businesses carefully evaluate the needs, the project's scope and goals, and the available resources before selecting an approach for modernizing their legacy systems.