app mod

Modernizing to bridge the generation gap between applications

30 April 2019

cloud

Many of the key applications in your organization have probably been running for quite a while. To be able to respond swiftly to disruptive situations, every lever in your business needs to be set to full steam ahead. That's why it is high time to give older applications a revamp in order to reduce the generation gap between old and new and improve response times.

Dated application landscapes

Software is overtaken by new technology as time goes on. The same is true of the infrastructure on which the applications are running. Nevertheless, these are key applications that are mission-critical if your organization is to function properly. Their history of ongoing development means they are often overly complex, which negatively affects productivity and prevents businesses from being able to adapt as quickly as they need to.

Walking away from a whole family of applications is not a decision to be taken lightly. You may well have invested 20 or 30 years in them. In a setup like this, you may sometimes find 3 or 4 generations of applications that demand a great deal of maintenance, with fewer and fewer developers still around with the essential knowledge. Along with the rigidity of an old application, this means it costs a lot of money just to keep it running, and there is a constant risk that the knowledge you need to support it will disappear.

You can compare an old application to a house built in 1950 that has been extended several times. They demand a lot of maintenance, are poorly structured and no longer reflect what is expected nowadays.

Bridging the generation gap by modernizing applications

Cisco notes that companies spend about 78 per cent of their budget on running costs alone, which leaves very little room for new development and innovation. These legacy applications and aging infrastructures can absorb all your cash flow. It becomes critical to modernize these applications. Strategically speaking, most people will turn to the cloud because it offers a large number of additional benefits.

There are various strategies available, and a range of approaches for different requirements and situations.

  • Rehosting

The aptly named Lift & Shift – this is purely about infrastructure. The servers are moved to the cloud, but the applications themselves remain untouched. While this is a good first step, many of the benefits of the cloud are typically ignored. For example, you still need to maintain enough capacity to cover peak times: the elasticity of the cloud is not exploited. Furthermore, much of the infrastructure management continues to fall to you.

  • Re-platforming

Classic infrastructure components are replaced by Platform as a Service (PAAS) components, e.g. the database, identity and application servers. The added value on the application level is still very limited, but a re-platforming strategy does deliver an immediate significant reduction in costs in terms of infrastructure and its management.

  • Refactoring

The existing code is reviewed in detail, and changes are made in order to bring the code up to today's level. The application is usually split into several parts for this task, and refactoring is carried out one module at a time. The previous giant spider's web where you lost your way is cut down into digestible pieces.

  • Rebuilding

This means rewriting applications, i.e. effectively starting all over again. This allows you to create architecture that delivers a higher level of quality. The well-known benefits of the cloud (scalability, security, pay-per-use, automation of the PAAS components) are exploited to the fullest possible extent.

  • Retirement

If the undertaking is no longer worth the effort, then nothing is done and the application is quietly killed off.

Modernizing top to bottom

By opting for the cloud instead of continuing to run the updated applications on your own servers, you can also take advantage of some low-hanging fruit. The public cloud offers a number of benefits that can make older-generation applications cost effective and fresh again.

The possibilities in the area of security and other operational qualities are much more extensive that anything you can do when managing your own systems. Many things can be automated and performing updates becomes a thing of the past, because you are always working with the latest updates. This comes with the added benefit that you only pay for the capacity you actually use. This contrasts with investing in your own infrastructure, which always cost more than it should: the dimensions are set according to the capacity you will need in about 5 years' time. In addition, you are buying the hardware at today's prices. In 5 years' time – when you actually need to use the full capacity – these prices will have fallen. There are many more options available in the cloud. You have more choices available to you, e.g. regarding the type of storage, and virtually everything you need to rapidly adapt becomes instantly available. This means you can give developers greater autonomy. They have the freedom to do their own thing, because major investments are no longer required. This, in turn, increases the speed and agility with which your development team will be able to work.

That's why it is essential for application modernization that you avail yourself of all the benefits of the cloud. While the cloud may sometimes appear more costly at first sight if you compare it to having your own hardware, you are getting much more in terms of value and potential, which means that in the end you can easily save up to 40%.

The TCO evaluation often yields a positive result. By adopting the cloud and the right approach, you can harvest the benefits in multiple domains.

Get started together

Join us and Microsoft for a 1-day technical session, targeted at architects and developers, on how to modernize your existing applications leveraging current developer services available on Microsoft Azure.