August 11, 2021 By: Sumit Kothiyal
Do you know: 80% of the US federal IT budget of $ 90 billion is spent on Operations & Maintenance of legacy IT systems.
Most software businesses that sell/support applications built over the past few decades, often with the same code base and technology stack, actually run mission and business-critical processes with such software are termed legacy, not actually a negative connotation, but in reality, if you are using it for your IT infrastructure it is a ticking time bomb. Most of the business and technology stakeholders agree that legacy is no longer a choice, but a vital business imperative, but are unsure of the right approach.
The obstacles that cause businesses to postpone or even abandon modernization projects, vary from one organisation to another and can occur at different stages during the process such as the kind of programming languages used, application architecture, mode of deployment, etc. Few examples that can help clarify:
- Software built with 3G/4G programming languages which are difficult to support.
- Monolithic architectures with tight bonding between UI, data, and application logic, making them inflexible and difficult to change.
- Primarily deployed as on-premises-based applications, designed to solve a narrow business problem in each domain.
“If you can’t do business differently then, do different business.”
Very often the businesses have a dual challenge of continuing to support an existing base of customers for survival, and at the same time, pursue growth and acquisition of new customers. And this is where it gets tricky, as there is always a conflict in balancing the priorities and needs of short-term vs long-term goals.
Let’s take a look at some of the major challenges of modernization that organisations face when taking on the task:
- Heavy Legacy Ecosystem: In most enterprises, that have been running their IT for over two decades, there would be a vast array of applications that exist in legacy technologies. In such scenarios, when the management takes the decision of modernizing the entirety of the legacy footprint, it ends up having a monumental business impact. Taking out even a single application onto the modernization route, the upstream and downstream applications would still continue to exist legacy technologies which also have a lot of legacy protocols, file formats, etc. Hence it becomes quite risky to take them out into a modern platform in one go.Using a re-factoring approach, wherein the selective sections are taken first in order to re-structure and optimize existing code without changing its external behaviour, followed by the rest, is generally the plan of action that needs to be followed. This ensures that once all the applications have been modernized and re-platformed, the support for the legacy footprint could eventually be turned off.
- Data Migration: Businesses today, have a lot of data which includes their business transactions. Even if you are a new business, most of this data will run into gigabytes if not petabytes or terabytes, and would generally be organised across various database and file formats, etc. Apart from this, there also might be older encoding being used, which ends up adding another dimension of difficulty in data migration, if not planned well. Overcoming these challenges, and looking at re-hosting via cloud enablement, by deploying existing applications or build new components in the cloud or hybrid environment and cloud become quite a task to undertake when dealing with such scenarios.
- Ensuring Business Continuity: Another thing that businesses need to look at while undergoing a modernization process is that they need to ensure that the new platform has similar functionalities that match the existing data formats so that the switch does not end up interrupting business. Business continuity is quite crucial, hence it is essential for platform modernization processes to ensure that a seamless transition takes place with clean data from the legacy app to the new platform.
- Data Security and In House Expertise: One of the biggest challenges that businesses face today is data security. It could be high risk or low-risk, there are many kinds of security challenges that generally have to be checked upon and taken care of. In today’s world, the risk of cyber-attacks is quite high for cloud data platforms, when compared to on-premise, hence solid data security measures need to be in place.Having talked about data security, another issue that plagues many data modernization projects is the lack of in-house expertise. Generally, operation teams are quite adept at handling problems that are related to either infrastructure or are application-specific and it is quite difficult to have command over both domains, in a way that can build a cohesive application. Having access to experts, that can tailor-make processes and applications for your business thus becomes quite crucial to your data modernization project.
To sum up, organizations today need to continue evolving the data architecture and look at industry trends and newer technologies that can help them compete. Making modernization a priority for your legacy software applications is a multi-dimensional approach and one must choose the right strategy, based on the current state of the legacy software, competitive drivers, and broad business context. Irrespective of the chosen strategy, we should aim for some or all of the following goals, and the modernized software applications must support:
- IoT and Edge supported infrastructure.
- Real-time advanced analytics to support decision making.
- Scalable, Secure and Private for mass market.
- Interoperability, seamless integration, data exchange through APIs and microservices.
- A future-ready application built with modern programming languages, using a flexible and modular architecture.
- Process and Deployment modernization to leverage modern DevOps approaches.
- Omni-channel customer experience.
Keep in mind, be aware of the limitations of the conventional approach and do resist any temptation of short-sighted strategies.
Remember, it is not a value add but a definitive “best fit” into our scheme of things and something which is imperative. For Geek (technology enthusiasts) like you, I and most of us, it is greatly important that we participate in technology creation in its purest form and continuously improve from the existing conditions after exploiting every stage of it. Past and Future are subtle factors for creating technology and not the decisive ones and a leap into the future will never make sense unless you have gained the experience of “all” the present.