We assist organizations who wish to take a strategic approach to modernization, moving from legacy applications to those which better support the needs of modern business users. Coming from 25+ years of enterprise software development, and working daily to transform, develop further, add integrations, and automate monolith applications, we designed a robust process to containerize and refactor a monolith enterprise application.
Application Modernization Methodology
Most of the legacy applications we have modernized are based on a classic three-tier monolithic architecture. The optimal approach we would agree on with customers has most often been a migration to a service-oriented architecture (SOA). The four stages of the legacy application modernization process that we go through are:
Proof of Concept
Production and Support
Application Containerization and Refactoring
In the feasibility assessment phase, we will identify if the legacy monolith application can be containerized and what this implies. This first step will result in a recommendation for the most cost-efficient containerization path – and whether a refactoring of some components will be required or not. Depending on the application size and complexity, this phase requires a detailed analysis of the architecture, dependencies, frameworks, databases, caching, APIs, etc of the old monolith application.
Services Oriented Architecture
The optimal approach we would agree on with customers has most often been a migration to a service-oriented architecture (SOA). Here, we will analyze the application to identify the dependencies, frameworks, databases, caching, subsystems, APIs, and IAM architecture. Still in this first step, we will identify the necessary open source containerization technologies, and identify the “must-do”, minimally required refactoring of some components. As a second step, we will propose and agree on the SOA target architecture of the future containerized application. This architecture will comprise the optimal number of application components to transform to containers – examples can be the IDP / SSO, Caching, database, LDAP, etc. The resulting architecture will be the shortest and most cost-effective modernization path.