Modernize to maximize: Unleash cloud’s potential
February 23, 2021
February 23, 2021
This video is a visual representation of the benefits of modernising your mainframe and details the 7Rs framework.
View TranscriptGetting your organization to cloud is only the first part of the journey. Once there, you need to capitalize on the huge efficiency and innovation potential it offers. This means building applications and services specifically to maximize the value of a cloud environment.
For new greenfield developments this shouldn’t be a problem. But what about your legacy estate? If you’re a large organization, you’ll likely have hundreds, thousands, maybe even tens of thousands of applications in your portfolio, many of which will be mission critical.
To capture long-term value, you’ll need to carefully decide which of these applications need to be modernized, and to what extent. You’ll also need to consider your infrastructure and data architecture choices, whether you’ve already “lifted and shifted” your applications or are just starting out on a cloud migration.
Modernize applications: Simply rehosting your applications in the cloud will likely cut some costs and solve some technical debt issues. But how much difference will your business users actually see and how much additional business value will it actually unleash? To truly maximize the value of the new environment, you must modernize your applications for the cloud.
Modernize infrastructure: As the world moves towards software-defined infrastructure, systems that can operate in the new “infrastructure as code” paradigm are becoming essential. Modernizing your infrastructure for this kind of environment—enabling much more automation and intelligence-driven management—can significantly optimize not only your costs, but also your business agility and flexibility.
Modernize data: Data is the third key pillar of a modernization strategy. In many enterprises today, legacy on-premises data architectures are complex, expensive, inflexible and hard to maintain. In contrast, modern data architectures in the cloud allow you to spin up advanced hyperscaler analytics services—including machine learning and deep learning—at a speed and with a level of simplicity that would be impossible in your own data center.
There’s a wide spectrum of modernization approaches to choose from, with varied levels of cost, complexity and ultimate value to the business.
Accenture’s “7Rs” framework breaks down this spectrum into a clearly defined set of migration options. As you go across the scale, the degree of modernization increases from zero (i.e. rehosting and replacing) to comprehensive (i.e. refactoring and reimagining).
Here are some questions to ask as you sort through which of the 7Rs are most suitable:
Is where you know replatforming or refactoring an application will deliver better functionality and more value, but it’s not essential.
Where some aspect of your application is not compatible with cloud operations. You must modify it to get it to cloud. You cannot simply rehost it.
When you replatform an application, you’ll typically look to make minimal changes to the code—just enough to ensure it can deliver the same functionality in the new cloud platform.
With refactoring, you’ll be effectively breaking the application apart and reconstructing it in a new cloud native architecture. You may also be using a new programming language. The degree of code change—and subsequent testing required—will be significant.
For some applications it could make sense to go even further and consider service decomposition. This is where you decompose your application into a series of reusable components or microservices, expose them via APIs, and use an orchestration layer like Kubernetes. You may even decide your application warrants a serverless architecture, in which you run code in the cloud without managing infrastructure at all.
Digital decoupling is an advanced technique for modernizing large legacy applications, such as mainframe software.
Older applications can be challenging to rebuild in the cloud, especially when it comes to replicating their embedded business logic and data. With digital decoupling, you build a new system alongside a as a greenfield cloud-native development. By synchronizing data in your new and old systems in close to real time, both can run in parallel. This means you can modernize the application a piece at a time, using cloud-native architectures, modern techniques like DevSecOps and high levels of automation.
Think of it like building a new house right next to your existing home. You get to live in both buildings, while you gradually connect up each room and transfer your furniture across. Eventually you’re ready to live only in the new, without ever having had to renovate the old.
Sidestepping the pitfall
Modernization is the key to reducing technical debt and ramping up organizational speed and agility in the cloud. But full-scale modernization won’t be right for every application, every circumstance or even every company. There may be good business reasons for focusing initially on rehosting as a means to get to cloud quickly, but even if you choose to defer modernization for now, it needs to be on your agenda for the future.
Ultimately, if you want to benefit from the full value of cloud, you need to be working towards cloud native applications, infrastructure and data. A carefully considered modernization program is how you get there.