Updating Legacy Systems? Ask Yourself These 5 Questions First
Maurice Orlando Hamilton Sr.
President & CEO | Business Entrepreneur | Digital Transformation | Cybersecurity | Artificial Intelligence | TV Contributor | MBE Certified | Public Speaker | Podcast Host | NSBA Leadership Council Member | SBTC
Updating legacy systems isn’t easy. If it were, every organization would have already done it. That said, there are steps you can take and factors you can consider to make your legacy updates as smooth and as manageable as possible.
Here are the five most important questions to bear in mind when updating your legacy systems.
What’s Your Approach to the Update?
One of the first things your organization needs to consider is exactly how you are going to update your legacy system. Ask whether these updates are IT migrations or business transformations, writes Mendix’s Danielle Goodman.
In some cases, legacy updates will be initiated by IT departments who need to update or replace a part of the organization’s underlying infrastructure. When this occurs, it normally doesn’t have an impact on the business side of operations, and most employees won’t notice the difference.
The most common — and most robust — legacy updates are business transformations, however. “Driven by the business, these apps are meant to replace legacy systems that don’t sufficiently support business processes, whether new or existing or provide the right user experience,” Goodman writes. “While these legacy migration projects require new functionality, they often must support current processes as well.”
Naturally, these are much harder to get right and need a lot more consideration.
When it comes to transformational updates, Anna Frazzetto, president and CDTO at Harvey Nash, believes there are two main strategies: rewrite what you have or start fresh and replace everything entirely. The strategy you choose will depend on several factors such as system security, customer retention and future potential downtime.
Gartner Research Director Stefan van der Zijden takes things a little further, breaking the rewrite-and-rebuild process down into the following seven strategies:
- Encapsulate. Make application data and features available as services using an API.
- Rehost. Move an existing application to a different physical or cloud infrastructure.
- Reprogram. Move an application or one of its components to a new platform.
- Refactor. Improve an application’s code without changing features or structure.
- Rearchitect. Reengineer an application’s code to better exploit features of a new platform.
- Rebuild. Rewrite an application from scratch.
- Replace. Remove the application completely and replace it with something else that meets new requirements.
This menu of options may appear daunting at first blush, but the vast majority of organizations will choose to rebuild or replace legacy systems.
How Are You Handling Costs?
Costs can be a big inhibitor to legacy system updates. Even though organizations spend significant sums keeping legacy systems afloat, it can sometimes be hard to justify the costs of making upgrades.
But this shouldn’t be the reason that businesses fail to update systems, says speaker and author Mike Saunders. Yes, IT is expensive, but avoiding issues with legacy systems is even more important. “If a concern over price is the driving factor of your reasons for continuing with legacy systems, then it may be worth looking to see if you can reduce IT costs elsewhere in order to finance legacy system upgrades,” Saunders says. Even if this delays upgrades, it is better that they happen slowly than not happen at all.
Daniel Newman, principal analyst at Futurum Research, recommends that organizations only update what is necessary in order to reduce the time and money spent. If something isn’t mission-critical, it should be retired rather than updated.
In a similar vein, you don’t want to start by upgrading technologies that don’t immediately improve your bottom line. David Murray, co-founder and president of HR software company Confirm, suggests businesses analyze which systems are causing them to lose the most money and start by updating these first. That way, organizations can use the resulting cost savings to devote more resources into legacy updates.
How Are You Prioritizing Upgrades?
Chances are you have several legacy systems that need updating, and you’re unlikely to want to update them all at once. For most organizations, that approach is simply too big a project to take on.
That’s why Audacia Managing Director Philip White recommends that businesses upgrade one application at a time. “This makes the task much less complex and lets you to review your business needs against the module during the rebuild.”
The same is true when you phase out legacy systems. These, too, must be phased out one at a time to avoid major disruptions, writes the team at Lollypop Design.
When you take an application-by-application approach to legacy system upgrades, you’ll want to prioritize the ones you stand to gain the most from.
Martin Gontovnikas, VP of marketing and growth at Auth0, recommends finding your pain points to start. You'll want to find which parts of your system are no longer supported by vendors, which are performing poorly and how each part works together. Once you know which parts need replacing, you'll then be able to run a cost-benefit analysis on each of the pain points.
Gontovnikas suggests looking at what your organization stands to gain from an update, how much time that update will take and whether you can patch it in the long-run. This will help you identify the applications that can be updated quickly and benefit the business the most.
How Are You Going to Get Employees On Board?
Nobody knows your legacy applications like your employees. Many will have even figured out their own system workarounds.
That’s why the biggest hurdle to legacy updates is very often employees themselves. While some employees are going to be on board with the updates, others are going to be hesitant at the prospect of learning a new system. How well you get them on board with the new technology is going to be indicative of your success.
One way to encourage uptake is to seek out employee feedback during the planning stages of legacy updates, says the team at Next Pathway. “Find out what works, what doesn’t, what is redundant, and what is missing,” the team writes. “They will not be shy to tell you—especially if they know that it might make their jobs easier when the new system is implemented.”
Getting feedback from employees is a start. But that strategy alone could invite employee after employee to let you know they don’t want to update systems at all. That’s why it’s your job to educate them on why the changes are happening and to teach them how to use new systems, writes Zibtek Founder Cache Merrill. If you don’t, productivity is going to decrease, and legacy creep is going to occur.
Getting team members on board is one of the toughest parts of updating legacy applications, writes Stuart McLeod, CEO and co-founder of Karbon. To make a success of it, you need to plan how you are going to encourage employees to adopt the new technology well ahead of time.
"If you can forecast the areas of complexity and difficulty and overcome them early on, the likelihood of success improves dramatically," he says.
One way to do this is to carry out acceptance testing, McLeod says. This is where new software is validated by testing it against business requirements. It's the last step before the technology goes live and can help ensure that your organization gets the expected productivity gains from day one.
What Will Updates Look Like in the Future?
For your legacy update to be as successful as possible, it’s important that you take a long-term view. That means thinking about how your systems are going to be updated in the future.
The last thing you want is to get caught in the custom hardware and software trap, warns tech journalist Madeline Bennett. It’s why taking a modular and SaaS-based approach can prove so successful. Moving core parts of your organization into the cloud can also negate the need for managed hardware services that don’t age well.
Investing in open standards is a huge part of this, says Chris Rommel, executive vice president at VDC Research. In doing so, your company can move away completely from legacy technology. "This generally then maximizes the ability to port existing assets as well as ensures the future extensibility and portability of future software that you develop." By integrating open-source technology, you'll never be locked in again.
It’s not just the technology that you need to be mindful of; the way that you update your legacy technology matters, too.
As part of your legacy update, you should be documenting all changes, writes the team at RTS Labs. “Software documentation is not simple, but it is certainly important if you wish to avoid the same pitfalls you experienced with your enterprise legacy system.” When you need to update your new system in the future — as you surely will — you’ll have the documentation on-hand to help.
You’ll also want to create a plan for future updates, the team adds. By creating a roadmap ahead of time, you’re much less likely to miss updates and repeat the same mistakes that got you here in the first place.
It's important to spend the time and resources now to make your legacy updates a success in the long-term as well as in the short-term. The last thing you want to do is to rush into updates and have to reevaluate things one or two years down the line.
Images by: You X Ventures, Helloquence, Dylan Gillis