A large federal agency needed to migrate a mission-critical, on-premises application to the cloud. The outdated infrastructure and increased licensing costs of mainframe databases were major obstacles. The complex migration required maintaining functionality while modernizing the system.
The agency partnered with our company due to our strong track record in migrating critical applications and data to the cloud. We used cloud-native best practices for scalability, resilience, and high availability, offering innovative solutions to meet the agency's goals.
The migration of a critical application with 1 million lines of code, 100GB of data, along with 12 interdependent applications, to the cloud presented substantial challenges due to its intricate interdependencies with existing on-premises systems. Additionally, its reliance on mainframe data, managed by systems not slated for migration, made a conventional lift-and-shift approach unfeasible and necessitated a sophisticated data synchronization strategy.
Furthermore, the direct migration of mainframe data to the cloud was hindered by a scarcity of modern tooling. Lastly, the tightly coupled legacy code, with its reliance on antiquated server and database functions, presented significant risks, potentially leading to costly modifications and compromising the application's reliability and resilience in a cloud environment.
We adopted a multistage strategy to overcome these challenges. This involved close collaboration with business partners to set realistic expectations regarding scope and time, maintaining regular communication with all stakeholders, integrating change-management and risk-handling mechanisms from the project's inception, developing systems and interfaces for seamless operations during the transition allowing on-premises environments to operate while cloud development and testing proceeded, minimizing code changes, and implementing a cutting-edge data migration and synchronization strategy.
A scarcity of industry-standard modern tooling hindered the direct migration of the 250 mainframe table structures with 100GB of data, and the bi-directional synchronization of over 400 data points across more than 40 table structures between mainframe and cloud environments. Our team developed a two-stage data extraction process: Initially, data was securely moved to an intermediate industry-standard database, then transformed and migrated to the cloud database using cloud-native tools. Data synchronization from on-premises to cloud was established through this process. To maintain data synchronization from cloud to on-premises, new integration APIs were developed for four classes of data based on data ownership and read/write access.
This project leveraged a previously Booz Allen-built, fully managed multi-tenant cloud platform at the agency for hosting application containers. The aim was to accelerate development, reduce the time needed to achieve Authority to Operate (ATO), and demonstrate the platform's viability for a lift-and-shift approach for our customer. The platform team managed infrastructure, security, and other critical tasks, allowing tenant application teams to focus on their products. Services offered included logging, analytics, container hosting, cloud databases, network integration, and inheritable security controls.
Containerizing the application expedited the timeline and enabled cloud deployment before all modernization challenges were addressed. This allowed legacy code to run with minimal changes, replicating the original hosting setup, and deferring costlier modifications until after migration to deliver the application sooner and save on-premises costs.
The agency is saving about $1.25 million annually by moving the application off their mainframe, based on the reduction in the number of MIPS (millions of instructions per second) the application was using. By taking a phased approach, as opposed to overhauling the application all at once, we gave the agency the flexibility to migrate the application progressively over time and remain on time and on budget. Moving to the cloud has reduced application downtime by 70%, lowering the time required to take the application offline to perform maintenance. Where it used to take 8–10 hours a month on premises, it now only takes 1–2 hours a month in the cloud.
Application response times have risen to 50%, as seen in a recent sampling of 12 test screens and some core backend jobs. Migrating the application to an agency-managed set of cloud services has also led to much faster deployment cycles, around 85% faster, since it now takes less than an hour to deploy the application compared to the 6–8 hours it used to take on-premises, allowing us the flexibility to perform more frequent deployments and reducing the time-to-market for user functionality. The migration also cut the reliance on manual failure recovery backups, leading to a more dependable and resilient infrastructure, ultimately enhancing customer satisfaction and confidence.