We see it all the time: a company has a long-established software system that’s either fully custom or has been customized to fit just right. It’s perfect, or as nearly perfect as software can be. And then the company grows. It evolves with the changing marketplace. Little by little, that perfect fit starts to pinch here and sag there. You know you’ll need to do something about that legacy software eventually, but not now. When does “eventually” become “now”? How can you tell when it’s time to overhaul your legacy system?
What is legacy software?
Nobody likes to think of their mission-critical software systems as “legacy”. What is a legacy system, anyway?
Merriam-Webster defines “legacy” as “of, relating to, or being a previous or outdated computer system“. But if a system is in daily use and pretty much does the job it’s expected to do, does it qualify as “legacy”? How can you tell?
Here, in no particular order, is a top-ten list (with lagniappe) of signs to look for.
When should I consider overhauling my legacy software?
1. It requires old hardware.
Green-screen systems, anyone? Yes, there are plenty of them still going strong. As long as the components, network, and personnel to support these systems are readily available, this sign alone isn’t enough reason to overhaul your legacy system. However, if you have a critical system using hardware that’s a couple of generations old, you should take a closer look.
2. It uses old software tools or operating systems.
Does your legacy system depend on older tools that have entered end-of-life? That sweet old Flash animation or spiffy Silverlight system is a security liability now. And don’t even get me started on systems that require Windows XP, which is long, long past end of life and has been a popular target for the bad guys.
3. Its vendor no longer supports it.
Speaking of end-of-life, if your legacy software came from a third-party vendor who no longer supports it, it’s a ticking time bomb. It may be rock solid now, but your options will be severely limited if any problems should crop up.
4. It requires specialized training to use and/or maintain.
Another aspect of older technology is that, the older it is, the fewer people know how to use it well. Modern user interface standards make newer software far more intuitive than the old applications. If training users is time-consuming, that’s another red flag.
You may also have some trouble finding people who have the right skills to maintain your system if it’s based on older technology. Your talent pool will only dwindle over time.
5. It cannot integrate with other, more modern software systems.
Older hardware, software, and networking systems often have compatibility problems when you try to connect them with newer systems. Suppose you upgrade your CRM, for example, and find that your shiny new system just can’t communicate with your legacy software? Again, this is a sign that it’s time to update.
6. It is slow and/or unstable.
Your system runs. It does what you need it to do. But it does these things slowly now, when your hardware team promised that these new machines would make everything faster.
Or maybe it runs on the new machines but crashes often. Users complain that they have to reboot too often. This is another strong sign that there are problems under the hood.
7. It lacks mobile support.
Users aren’t necessarily tied to desktops or laptops anymore. Both customers and internal users value the ability to work while on the go. If your system doesn’t support mobile use, take another look at your company’s needs. Mobile capabilities may be the tipping point for you to overhaul your legacy system.
8. It doesn’t provide all the features your team needs.
How many new feature requests do you receive from users? As your company evolves to thrive in a changing marketplace, your tools need to evolve with you. Does your system do everything you need it to do?
9. It’s too hard to add new features.
If you have lots of new feature requests, how hard is it to fulfill them? Is it even possible? If a new feature that will help your team work more efficiently takes a ton custom code development, this is a red flag.
10. It’s close to full capacity, but your workload is growing.
Sometimes, older software is limited in its ability to store data. For instance, there are some internal business applications built on MS Access. In older versions of Access, the application will become unstable if its data file gets too big. There was a hard limit of 2GB, but stability was a problem for files larger than about 1GB. This is just one example, but you get the idea. Check your documentation and your current usage to make sure you’re not approaching capacity.
11. Your team has developed manual processes to work around its limitations.
And now for a little lagniappe: you don’t always have to look at the software itself to tell when it’s time to overhaul your legacy software. Just look at your team’s work flow and processes.
Are there any routine tasks that your users perform outside the application? For instance, you may receive information from vendors that you need to include in reports but don’t have a way to import into your system.
Any time your team talks about printing hard copies and keying in data, you should look closely at why they need to do these manual tasks.
You don’t have to modernize everything at once.
Replacing a core software application can be scary, even when you know it’s necessary or even urgent. Just remember that, unless it’s a blazing emergency, you can almost always do it gradually. This gives your team the time to validate each piece and make sure your data is solid.
Susco has modernized quite a few legacy systems. You can learn from some of our experience in John McCawley’s post on Monolithic Rollouts of Legacy System Replacements.
Legacy software systems are surprisingly common. Sometimes they get the job done, and it’s not worthwhile to change the status quo. There may come a time, though, when the best systems outlive their usefulness. How can you tell when it’s time to modernize your legacy system?
To learn more about Susco and how we can help overhaul your legacy system, click here.