Microsoft: Application Modernization is a journey
I’ve recently been working with many customers who find themselves at a crossroads when it comes to legacy applications. They have several hundred or thousands of applications running in what was once a modern approach, but in today’s world lack the ability to gain all the benefits available in modern architectures. In the customer engagements I’ve been working on, I’m starting to see paradigms. Like with any journey it is important to understand the destination before you set off. The destination may be a serverless microservices pattern in which applications are architected to offer the greatest flexibility in scale and repeatability at high speed. The goal in a modern approach is to be able to iterate against the components without impacting all the services that depend on them but allow for new business functionality at a rapid pace while increasing the ability scale easily. Once we have a destination, we need to map the possibilities and process required to achieve short-term objectives that gain some of the benefits of the more modern approach. Moving to a devops approach is necessary, in order to take full advantage of the benefits.
The basic steps I find work well for customers are: 1) Document the destination; 2) Map the journey and find low hanging fruit; 3) Validate the different stops in the journey; 4) Take the first step
Document the destination
The final destination or architecture doesn’t need to be complete or an in-depth architecture but there are some very basic questions to answers. First, it’s necessary to determine what you’d like to use as a starting point, is Windows Server 2016 with a container service enough to get you started? Is your project more elaborate in nature and would benefit from using a platform as a service? A starting point is to consider your depth of capabilities and design a pattern that will utilize this knowledge base. For example, your operations team may be focused and excellent at managing Linux and your development team may be made up of primarily .Net developers. We then look at modern application patterns like microservices and serverless development and decide, how and if the applications should be architected in this way. As part of this design and implementation exercise some packaging and deployment options will be required and containers may be a fit for the microservices we will develop and allow us the ability to increase scale and agility of our continuous integration and deployment process. There are other considerations to look at like the actual tooling that will be used and if other solutions like messaging or documents storage make sense.
Read the entire article here, Application Modernization is a journey – Hybrid Cloud Blog
via the fine folks at Microsoft.