Imagine you run a century-old family business worth millions, and the hard-earned algorithms — the ones that power your 56 greenhouses — are trapped in a 30-year old application. A legacy system, some say.
The legacy app is written with a programming language that lost support over a decade ago. The team that built it is long gone. The app works only on Windows machines. You can’t access it from your phone or browser. It sits on an unprotected server. And you keep asking, “How much longer can this setup work?”
In theory, you are good to last for another thirty years: those algorithms have gotten you through almost half a century and made your business a success. But in practice, your competition will probably oust you by then. So how do you deal with this?
Read on to learn how we helped this plant growing company and other businesses deal with digital transformation and make sense of legacy system modernization.
What is a Legacy System?
It’s not like there is a strict dictionary definition of a legacy system or software. Still, you know when you’re dealing with one, right?
As a CIO, VP of Technology, or CTO, you’ve probably inherited a software platform that serves as the backbone for nearly all business processes at your place. And you know it’s legacy by definition because you did not architect it — your predecessors did.
But what if you are a CEO or a Product Executive trying to figure out if your company runs on a legacy system? Well, the first sign is you and your employees become grampy about using the software. But let’s look at some other symptoms that give away a legacy system.
Legacy System Symptoms
Software hinders productivity and innovation.
If the market demands a new product or service that your software doesn’t support, or if you can’t upscale an existing offering or optimize processes in your system — that’s a sign of legacy.
Somebody in the business does not own the system.
If there’s no single department or executive in the company that’s responsible for the system, even if it’s mission-critical, then the chances are it’s a legacy solution asking for modernization.
The cost of customer support escalates all of a sudden.
When you notice that you spend more and more on maintenance instead of investing in new products, you know it’s time to take a critical review of your software.
The vendor has ceased the support of the software.
No support immediately means less security. Let’s say your system runs only on Windows XP, which has been discontinued by Microsoft since 2014. What are your chances against a security breach in 2020?
It takes too long to hire IT staff to maintain or upgrade the system.
The industry is changing, and every so often, it’s time to take the leap because there are no adequate resources to continue working on your system. Or they may become increasingly scarce and expensive.
It takes too long to train new hires to use the system.
Similarly, if you notice that new employees struggle with using the software and the staff training costs continue to rise without much positive feedback on the business, the system is legacy.
As you can see, our greenhouse owning company was right to identify their case as dealing with a legacy system. At the same time, they were very particular about their needs, wisely not seeking to over-optimize their solution.
At the same time, you should be aware of false positives: something that looks characteristic of a typical legacy system, but not necessarily defines one.
Legacy System False Positives
Even though conversations about legacy system modernization often starts with discussing UI, it should not be the main reason to drive digital transformation.
Case in point: the company operating greenhouses would be happy to continue using their legacy system. Despite the 80’s UI, the software had been helping the company to rake in millions of profit for over 30 years. Alas, the lack of modern design was only one of the system’s shortcomings.
Not in the cloud
I’m trodding a thin line here, but the cloud is not always great or, better, it’s not always a cloud. When IT chatterboxes are lecturing the enterprises on the cloud, they often mean SaaS solutions accessible from a browser. The thing is you can have an on-premise server (like a private cloud) running your system and access it via a browser too.
Not on mobile
Mobile is also not always a must-have element of a modern system. I have worked at six successful software development companies, and none of them relied on a mobile app for their day-to-day activities.
As you understand, the efficacy of extending a legacy system into mobile apps depends on a business’s specifics. For instance, the plant growing company from our example did not need a mobile app as there were no relevant use cases.
Why Begin Legacy Software Modernization
Now that we’ve discussed the symptoms and false positives of legacy systems let’s iron out why your business might need legacy software modernization.
After all, such fundamental projects rarely go unnoticed for the company’s budget, and you need to line up all the facts and figures to convince stakeholders and investors.
Outrun the Competition
Well-run companies are always looking for ways to run their business more effectively. And in the age of digital disruption, when innovative technologies like blockchain, IoT, and AI abound, this pace only intensifies.
- Release superior products to market or update products and services faster
- Secure your IT infrastructure by implementing the latest cybersecurity best practices
- Increase your employees’ morale and customers’ satisfaction with better products
- Turn your legacy software into a future-proof solution by making it available for integration via APIs
Case in point: One of America’s Best Executive Recruiting Firms of 2019 (per Forbes), has been growing its database of candidates 3x faster after Velvetech completed a legacy software modernization project for them.
Cut Back Costs
Another distinct area of improvement for businesses is to slash operational costs. This practice helps them stay relevant in the marketplace longer, even if their products are not necessarily the most innovative ones.
- Package more into your offering for the same price point by optimizing business processes
- Regroup resources to make sure everyone is working on adding value
- Spend less on staff training
Case in point: A healthcare consulting company reduced its operational costs by 30 percent after Velvetech modernized their legacy software and migrated them to a new CRM platform.
Address Organizational Changes
It’s quite often the case when companies need to embrace new processes due to an acquisition or a merger. This environment is probably the optimal position for newly appointed CEOs or VPs of Technology to take charge and spearhead the initiative of modernizing the existing legacy systems.
- Remove inefficiencies and optimize workflows
- Build on the strengths of the existing systems
- Align to changing market demands
Case in point: After IncreMedical acquired Medadept, Velvetech helped them extend their suite of apps with mHealth solutions so they could target a wider audience.
Legacy System Modernization
It’s not like there’s a textbook out there prescribing specific procedures for modernizing the legacy software at your firm. And you’re probably aware of the reason: each situation is unique. Still, we can single out several major approaches to how companies usually tackle legacy system modernization.
Replace with a New System
A radical overhaul of the company’s IT infrastructure and underlying software is the most common approach to legacy system modernization. And it’s pretty evident too: rebuild the whole thing from the ground up.
- Offers unlimited modernization potential
- Invites to rethink and optimize business processes
- Ensures substantial gains on ROI and other key metrics over the short and long term
- Takes longer to implement
- Requires significant investment
- Suggests running of two systems until the final switch
Replacing the legacy solution was what we did for the century-old family business operating greenhouses, except for the time-tested algorithms. We took their algorithms and put them into a modern, secure cloud application.
You may also choose to tackle your legacy software modernization with an app-by-app approach. In this scenario, you pick the most ROI-effective applications in the legacy solution and rebuild them one by one.
- Moderate modernization potential as remaining legacy parts will be holding back
- Requires less management and investment resources (compared to total system revamp)
- Makes the min negative impact on running business operations
- May involve too many integrations with the existing legacy system to ensure business continuity
- Does not work well when several components are being rebuilt simultaneously
That is exactly how we managed an epic insurance system overhaul for Insureon — Inc. 500’s #1 fastest growing insurance company.
And the least invasive strategy to undertake a legacy system modernization project is, of course, to reuse the existing software infrastructure as much as possible. You can choose from several ways to reuse a legacy system:
The legacy software remains the same, and some of its parts become available for integration with other systems or applications via an API layer.
Rehost / Replatform
The legacy system gets migrated to a new physical or virtual server. That’s when legacy software ends up in the cloud and becomes more accessible, but carries over its other limitations. This scenario may involve slight changes to make sure the legacy system runs error-free on a new platform.
Refactor / Rearchitect
With this scenario, a legacy system’s codebase gets substantial updated and modifications to speed up its performance and remove technical debt. But its core functionality remains the same.
- Lower cost
- Faster to implement compared to other modernization methods
- Minimum ROI value
Best Practices for Legacy Software Modernization
#1 Legacy Software Modernization Starts with People
Legacy system modernization is a perfect opportunity to adapt business processes to the changing realia. But remember that it’s employees who manage operations at your company. So get buy-in from across the board.
#2 Modernize Parts that Add Most Value First
Take a strategic approach — it makes no sense to revamp everything at once. Instead, start with the pieces that will make the most substantial impact on the ROI.
#3 Build to Scale
Your legacy system must remain current for as long as possible. So you should architect with this goal in mind. If your legacy software is a monolithic system, break it into independent microservices, transfer them to the cloud, and envision mobile apps to support its operations.
#4 Implement Continuous Integration and Delivery
CI / CD are indispensable components of ever-fresh platforms. As you modernize your legacy system, make sure to integrate DevOps practices into the process. This way, your no-longer-legacy system will be getting continuous improvements.
#5 Take Advantage of IoT, AI, and other Value-Driving Tech
As you start modernizing the processes powering your legacy system, explore opportunities to inject modern technologies like IoT, AI, and AR or VR to make it competitive.
Time to Review Your Legacy System?
Do you currently rely on a legacy system that could benefit from modernization? Are you not sure how to approach this task? Maybe you’re struggling to justify the investment in modernizing your legacy software and worry that the newly updated system becomes a legacy solution again in the future.
Reach out to us today, and we’ll help you find and implement the best legacy software modernization strategy. Like we already did for so many successful companies.