Cloud Source
Showing results for 
Search instead for 
Do you mean 

From application modernization to continuous update.

on ‎04-01-2014 01:04 AM

Source: syscon.comA couple weeks ago I was meeting with a customer regarding the modernization of his applications. One of the attendees in the meeting asked a simple question. It seemed that the modernization subject was raised roughly every five years. It turned into an expensive project, only to be raised again five years later. So, the question was, why do we do it, and if we do it, can we get rid of that five year cycle. I believe that application modernization can save you a lot of money and that today you can set-up an approach allowing you to update your applications on an ongoing basis. So, let me substantiate what I’m saying here.


Why modernize applications?

The first question to ask is why you are looking to modernize applications. There are a number of possible reasons:

  • Operating System, database or middleware support is stopping, making it highly recommended to migrate to a supported environment
  • You are looking to refresh your infrastructure platforms as the existing environment in which the application runs is reaching end of life. As the newer platform uses a newer version of the operating system and does not support your existing version, you’re forced to modernize
  • You may want to virtualize your environments to increase utilization
  • You want to move away from old technologies for which knowledge is becoming scarce in your organization (e.g. mainframe)
  • You want to migrate your application to the cloud (private or public) to facilitate provisioning or de-provisioning of the environment, hence reduce license and other running costs
  • You want to migrate your application to the cloud (private or public) to take full advantage of scale-up/scale-down of the application, hence becoming more responsive
  • You want to mobile enable your application to allow your users to bring their own device, or to allow your customers/partners to access your application directly from any device
  • You need to move, consolidate, replace your datacenter

And there are probably others. The result is always the same, your application should be modernized to take advantage of newer technologies, provide better user experience and reduce costs.


How to justify application modernization?

Justifications are always requested, and the financial ROI is the one that keeps people focused. What are the benefits of modernizing applications?


First, old middleware, databases and operating systems versions often have increased maintenance costs. And when the supplier stops the support, it becomes difficult and even more expensive to obtain the required support from third parties. Resources knowledgeable in old technologies are also often scarce and market prices are high. I’ve easily seen the maintenance cost of such environments to be between 25 and 50% higher. And I’m not even talking about the cost associated with developing new functionality for such applications.


Second, as companies have implemented applications over time, they often end-up with multiple versions of operating systems, middleware and databases. Not only does this increases the cost of maintenance, but also of operations. Each version has its own specificities requiring operators to ensure they perform their interventions correctly on each of the versions. This typically results in increased risk of error on the one hand, but also in extra costs. You need enough staff with knowledge of each of the versions so you can ensure smooth operations. Standardizing on a common software platform is beneficial. It however also requires the development team standardizes too. But that’s a whole other debate.


Third, the standardization of the software components bring with it an additional benefit, and that is related to license costs. Whether you have site, enterprise or seat licenses, reducing the number of versions you have in your license agreement mostly reduces the cost. And again, those reductions can be dramatic.


Fourth, operating old environments can be expensive. You need operators that know those environments and they are often rather scarce. You need hardware maintenance and this can be costly as parts may be less easy to find. So, migrating your applications to a modern infrastructure brings with it many benefits. Current infrastructures are typically cheaper, they use less space, consume less energy and generate less heat. They are also cheaper to maintain. You will probably tell me that has nothing to do with application modernization. But those benefits can only be achieved through the modernization of the applications.


Fifth, if your target is wither a virtualized environment or the cloud, you have additional benefits related to the better utilization of your infrastructure, the benefits of the pay-per-use approach for applications that are only used occasionally, and a number of non-tangible benefits related to increased agility, user experience and responsiveness.


How to standardize the process?

Application modernization will be a one-off exercise. It will get your applications on a platform that is current. In that process it will deliver the benefits highlighted above. If we then keep things going as usual, we will end up in a similar situation in five years from now. Could we automate the modernization process and perform it regularly so the software platform remains current all the time?


There are two aspects that need to be reviewed in this. First, when is a good time to modernize an application? I would argue it is when a bug needs to be fixed or additional functionality is developed. So, when the application has a new release (can be major or minor). The application will need to be tested anyway, so it makes sense to perform the two at the same time.


Second, what needs to be done and how can it be automated? Once you have done the application modernization exercise we discussed above, the modernization steps left are typically related to new versions of operating systems, databases or middleware (the software platform). So, the modernization is what is often being referred to as a “lift-and-shift”. Except if some features of the software platform are changing, no intervention in the code is required. That leaves us with the automation of the testing and the deployment.


Such approach implies clearly defined testing procedures, the availability of appropriate test data and automation scripts to perform the operations. Those may have to be adapted to the new functionality included, and should run smoothly to ensure a fast operation.


How do I get started?

First, take advantage of the application modernization exercise to develop the test scripts and test data (if not available yet). Automate the testing using an appropriate tool. Develop the scripts to automate the deployment on the target platforms (testing, QA and production) and train your personal on using those new tools.


Second, define an appropriate timing for a software platform refresh. In other words, how often will you decide to adapt your software platform, integrating newer versions of the operating system, the middleware and the databases? As software vendors speed-up the release roll-out, and as you don’t want to be more than one release behind, reviewing your software platform yearly is probably a good decision. That does not mean you need to change it yearly though.


Once that is defined and done, look at your application portfolio and map out the sequence in which you plan to modernize your applications to the latest software platform. And now, keep going.



Application modernization is not an expensive exercise you are doomed to execute every five years. It can be the starting point of a continuous update. And that is where you’ll get the best benefits. Interested in understanding how such transformation journey happens, listen to how you can experience such transformation journey and understand what lays ahead of you.  



Interested in knowing more about what we do in this space, go to our application modernization services page.

0 Kudos
About the Author


Nov 29 - Dec 1
Discover 2016 London
Learn how to thrive in a world of digital transformation at our biggest event of the year, Discover 2016 London, November 29 - December 1.
Read more
Each Month in 2016
Software Expert Days - 2016
Join us online to talk directly with our Software experts during online Expert Days. Find information here about past, current, and upcoming Expert Da...
Read more
View all