Maintaining vs Replacing Legacy Systems: Advantages & Challenges
In many companies, legacy applications serve critical roles in driving business operations. Just take large banks, for example, legacy apps support retail operations and process information.
However, a spate of changes within the company — such as the introduction of new workflows or new software and hardware — are making the continued maintenance of legacy apps costlier and more difficult to sustain.
Internal changes aren’t the only sources of pressure against legacy apps. Factors such as a dwindling pool of new software developers well-versed in older programming languages or software vendors ending support for specific tools or APIs are also adding to the problem.
On the other hand, it’s no secret that replacing a legacy app that your business relies on is also difficult and very high-cost.
Granted, organizations that move to new apps can leverage new functionality, better security, tighter compliance standards and other benefits; but there are two major challenges involved.
First, there’s a lead-time to development, configuring, installing and deploying your new app that adds extra cost of maintaining legacy systems and can leave a gap in your operations.
There are a great many skill sets needed for the successful deployment of a new platform or core business app including SMEs (subject matter experts), project manager or delivery specialist, business analyst, QA specialists, developers, and more.
Second, some businesses might be interested in COTS (Commercial Off The Shelf) packages and/or SaaS (i.e. software-as-a-service) as a replacement for their legacy apps, but this can be limiting.
The SaaS provider decides on the UI, features and other aspects that leave you with all but an off-the-shelf solution. Then you have to configure the SaaS to work with your other systems and processes and support that configuration/integration going forward.
There are different reasons for replacing and maintaining legacy applications. Sometimes it takes a combination of both options. In this article, we look at how businesses can choose the right avenue for their needs.
Why Legacy Applications are a Challenge
Although legacy applications have formed process backbones in some companies for years — and decades in the case of some organizations — the longevity has its drawbacks.
As discussed above, proprietary software reliant on ageing or obsolete programming languages can be increasingly difficult to maintain due to a loss of aptly knowledgeable developers. Older software tools, APIs, and services may no longer be supported as well.
However, businesses change as well. The advent of mobile and the cloud have certainly altered the way people work, creating new workflows. In many cases, legacy apps don’t fit in those new workflows or, alternatively, user behavior might have made legacy apps obsolete.
For example, many field teams — such as sales — would prefer to use their mobile phones to view and input data.
However, a legacy app may not work on mobile, thus forcing the professional to use a laptop, which they may view as unproductive or inefficient on the field.
You Might Also Be Interested In:
- How to Manage the Costs of Your Outdated Legacy Applications
- Legacy Apps: When to Modernize & Transition to Web-Based Apps?
In addition to obsolescence and workflow issues, the need to support many different systems can overload internal IT teams, especially when efforts are made to achieve compatibility and interoperability between new and legacy systems.
Replacing Legacy Systems
One option for dealing with legacy applications is to basically replace them with new systems.
Benefits of Replacing Legacy Systems
With new custom or in-house developed applications, you have the opportunity to leverage today’s development tools to build a solution that fully aligns with your needs. You can incorporate many of your security and compliance requirements into the app as well.
In effect, a new app is a chance at a fresh start. You can develop the app based on your current workflows and, by using current tools (including containerization-based microservices), you can future-proof it against obsolescence.
Granted, there’s a high upfront cost involved, but leveraging a new application could enable you to save over the long-term through reduced maintenance and support costs.
Consider the graph of policy administration systems (PAS) in the insurance industry as an example of this effect.
There is a sharp upfront cost, but new PAS apps have enabled insurance agencies to save in the long-term. In contrast, incremental improvements to legacy apps fail to prevent long-term cost increases in maintenance and support.
Challenges of Legacy Systems Replacement
The challenge with replacing legacy applications, especially one that has been relied upon for years or decades, is that it’s a complex undertaking.
Putting the cost aspect aside, new apps require the business to carefully stage its deployment to ensure that staff are trained, that other systems are integrated properly and that there are no shortfalls in productivity or delivering services.
Neither one of these aspects is necessarily easy to achieve.
Firstly, planning, developing, and deploying a new application requires extensive expertise. Many businesses lack this expertise from the onset, leaving gaps in their ability to successfully deploy the new app.
Organizations also need to support their current app while going through the process of preparing to roll out the new one. This can take time and you effectively have to pay two teams: one for support and one for development.
Secondly, your new application may not be as effective in fulfilling a key function as your legacy application. This is especially true if you opt for a SaaS-based solution where you have limited control over defining features and capabilities.
You may need to change some of your business processes to match the capabilities of your new platform. This takes retraining staff and managing the change within your organization.
Finally, even if you do opt to replace your legacy app with a new app, you will still require your legacy app in the interim in order to prevent productivity or service gaps.
Don’t Let a Lack of Internal IT Expertise
Stop You from Keeping Your Apps Running Properly
Maintaining Legacy Systems
Be it as an interim step towards a new application or in lieu of a new app (e.g. your legacy app is fulfilling a specific process or task that can’t readily be done using a new one), maintaining a legacy app is far from uncommon.
In fact, Docker COO Scott Johnston (via TechCrunch) stated that businesses spent as much as 80% of their IT budgets on supporting legacy applications.
Through containerizing, rehosting or replatforming, you can make maintaining your legacy app a relatively easier and less costly process. According to Amazon, GE Oil & Gas achieved a total cost of ownership (TCO) savings of 52% by moving its legacy applications to the cloud.
In some cases, without so much as rewriting a single line of code in your legacy app, it’s possible to adjust your legacy app so that it can be deployed and maintained like a new app.
Through containerization, you can also add new functionalities (using code in a new language) and enhance its performance to cater for increased usage.
Thus, there are ways to make legacy apps work with new workflows and interoperate in mobile and cloud-driven work environments.
While you can change certain parts of your legacy app or add to it with new technology, the bulk of it will still be legacy code.
In other words, you might not achieve complete success in terms of functionality and interoperability, and a lack of developers skilled in older languages and/or tools no longer being supported are still factors.
As the chart by Accenture (about insurance agency PAS apps) above shows, you could risk end up spending more maintaining your legacy app over the long-term compared to a new app. This is a case-by-case issue as much of it will depend on the legacy app in question.
Application Management Services
Whether you choose to roll out a new platform or maintain a legacy application, the effectiveness of your move will depend on your company, e.g. its size, industry, cyber risks, compliance issues and others.
Even if you choose the app replacement direction, you will have to maintain your current legacy application while the new app is being developed, or acquired and configured/customized.
Therefore, you will have to run with several teams in parallel in order to achieve this i.e. a development or config and integration team, a support team (if go-live of the new app is in stages) and a legacy team.
In order to run with multi teams, it may be a prudent step to leverage an application management services (AMS) partner.
See How Application Management Services Help:
- How to Improve Legacy and Business Applications without Expensive Modernization
- Why You Need Application Managed Services
- Advantages and Disadvantages of Application Management Services
Transitioning To New Applications With AMS
By leveraging an AMS partner, there’s no need to retrain, hire or expand your internal IT team to maintain your new application(s). Capable AMS providers can readily support custom and SaaS based apps alike, thus freeing you to focus on deploying and optimally using the app.
In fact, by avoiding the costly and time-intensive process of hiring and building internal capacity for your new app, you can control some of the upfront cost (while also saving in the long-term).
Maintaining Legacy Applications
In order to re-platform, rehost, containerize or to properly maintain legacy apps via monitoring, optimization and fixes, AMS providers are best equipped to provide you support.
AMS providers already maintain the necessary development expertise and vendor relationships to effectively implement a legacy app maintenance project.
You can even have an AMS partner manage your current app while your internal IT team works on the new app, thus ensuring that your business functions properly during the transition process.
Getting Started Working With Legacy Apps
Resolute Technology Solutions has both the application management services team to handle the technically-heavy sides of legacy app maintenance and support and an experienced project delivery team to help guide you to a successful selection and deployment of a new platform.
Contact us today to discuss how we will keep your legacy app running properly amid changes in the IT industry’s technology as well as your evolving workflows and operational needs.