What if you had a solid path from system legacy burden to a modern and scalable digital service factory that enables agile development of services and business acceleration?
Modernisation path to support decision-making
The modernisation path proceeds step by step. You do not have to do everything at the same time and place. This three-step process model will help you on your modernisation path, from defining the need and understanding the requirements to making the final decision.
Step 1: Evaluate the system
Evaluate problems, concerns, or obstacles an ageing system poses due to technology, architecture, or functionality. There are two perspectives to assess the need for modernisation: business and technology.
From a business perspective, it is essential to assess the overall suitability of the system for the organisation. Does the service meet the new requirements of the digital business? In addition, important assessment points are the value and agility produced by the system. Will the service enable business value growth in the future, and can the organisation keep up with the demands of digital business? Applications that lack the agility to keep up can be costly or risky.
From a technology perspective, you should evaluate the system in terms of cost, complexity, and risk. Is the cost of the system reasonable compared to the benefits it provides? Can the system be maintained and scaled sensibly, or is the technology too complex? Will the system remain secure, compliant and supported also in the future?
Step 2: Evaluate the required modernisation path
View the current state and future of the organisation from the perspectives of business and technology. There are seven options for assessing the required modernisation path. The categorisation is based on the ease of implementation and the scope of the renewal. Thus, your renewal options, listed from the easiest and narrowest to the most challenging and extensive, are:
- Encapsulate the data: Take advantage of and expand the application’s features by encapsulating its data and functions. This way they are available as services through the API.
- Renew the environment: Reinstall the application component to another infrastructure (physical, virtual, or cloud) without changing its code, features, or functionality.
- Modernise the platform: Move to a new runtime platform by making only minor changes to the code but not to the code structure, features, or functions.
- Refactor the system: Reorganise and optimise existing code (though not its external operation) to eliminate technical debt and improve non-functional requirements.
- Redesign the architecture: Change the code substantially to move it to the new application architecture and take advantage of new and better features.
- Rebuild from scratch: Redesign or develop an application component, considering the current scope and technical requirements.
- Replace with a new one: Completely replace the former application component with one that considers new requirements and future needs.
The more complex the implementation, the greater the risks and the more significant the impact on the system and business processes it will have.
Step 3: Choose a suitable modernisation path
The most important thing in choosing a modernisation path is weighing different options and relating them to one’s business. Ultimately, you should select the mode of modernisation with the most significant positive effect and value, with minimal effort and as few sacrifices as possible.
Architectural redesign generally has moderate costs and risks. Rebuilding or replacement produces the best and most far-reaching results with higher costs and risks. The first four options are life-cycle-prolonging modes of operation, which may be sufficient for several functionally unaltered systems. In practice, progress will happen in small steps towards integrated systems and, thus, more cost-effective maintenance and development. We call this cost-effective artificial respiration. Ultimately, however, modernising old applications means choosing a modernisation path between the last three options; redesigning the architecture, rebuilding the application, and replacing it with an entirely new one.