Application modernization requires new ways of building and operating infrastructure whether on-premises or in the cloud. Organizations have a choice between application modernization on-premises, application modernization in the public cloud, application modernization in hybrid clouds, or application modernizing with containers. In this blog post we'll explore how to choose the right application modernization approach for your organization based on where you are now and where you want to go!
Baseline and Inventory - Where Do We Begin?
The first critical step is understanding the current state of your application environment. Not just from the infrastructure and design side, but the importance of those applications to the growth and operations of the business.
I ran business continuity practices for 20 years and the biggest surprises came from doing BIA (Business Impact Analysis) of the apps before defining their recovery processes. You may be surprised what is critical to the business and what can wait a few weeks or months for even being thought about for modernization.
A comprehensive application inventory will help you understand your dependencies and potential risks. You need to know which applications are running on-premises, in the public cloud, or in hybrid clouds. You also need to identify which applications are data-bound and have other dependencies that will develop during modernization. This is where we get to step two.
Mapping the Modernization Journey
Now that you know where your applications are and what dependencies they have, it's time to start the modernization journey.
There are four basic steps in application modernization: assess, design, build, and operate. You can do these steps in any order but it is important to complete all of them for a successful outcome. This is now where we enter the arena of designing and deciding on which apps need to be modernized, refactored, retired, etc. Many apps won't even need to move or change, and that's all good.
Mapping the transitional journey for applications also creates new dependencies and links. If you are modernizing your application on a cloud-native architecture and your plan is to only use managed Kubernetes on a public cloud, you have to deal with the other data and services that application requires and include those in the dependencies during and after the modernization process.
Now that we have our apps mapped out for how and when (and if) we will transition to new platforms and designs, it's time to build and operate the new infrastructure to support them.
Hybrid Cloud is the New Cloud
Your application modernization plan will mean building and operating a hybrid infrastructure to support during the transition and potentially forever. Hybrid architectures are the most popular because some applications either can't or shouldn't make the move to public cloud and cloud-native deployments.
The challenge we continue to see in our customers and across the entire community is that knowing what to run where, when, and why are a combination of business decisions, design decisions, and then data-driven decisions.
Business dependencies like data locality, contracts with providers, infrastructure lifecycle, and much more will set the tone for a lot of high-level strategy. Design of the apps themselves will create pattern dependencies like data gravity, security posture, and more. Then where we have been most connected with the process, what is the right style and size of the resource needed to support each application before, during, and after modernization?
Journeys are Continuous - This One is No Different
The application modernization journey is a continuous process that never really ends. You are always assessing, designing, building, and operating your applications in some way or another.
As business needs change so will the applications and their dependencies. As you move more to cloud-native deployments, new patterns and designs will emerge that need to be supported by the operations and application teams.
Welcome to the continuous and exciting journey. We are here to help you all along the way!