Legacy Applications Part 1: Business & Technical Drivers
How to create a legacy applications modernization strategy? ArkusNexus can help: Nearshore software development. We are your IT company.
Executive Overview
All of us in our Careers as Executives have encountered Software Applications and systems that over time have degraded in their capabilities, can no longer support the business in its current state, becomes too slow and costly to maintain, or worse is mission critical but very few people know how to support it.
The question that always comes up is, do we:
Fix It?
Replace It?
Re-Architect It?
Or “Pray” that nothing Bad happens… and that we can hold out just one more year.
Of course, any of the above Options may work and they all have some costs and risks associated with them, especially if the system suddenly stops working at an inopportune time. In this Blog Article, we will discuss the primary Business Drivers, Technical Considerations, Decision Criteria, as well as several real world Examples.
Business Drivers for Tackling Legacy Applications
In nearly all cases there is some sort of Business Impact, Risk, or Impediment that is driving the decision to either Fix, Replace, or Re-Architect an existing Legacy Application. Frequently these may include one or more of the following factors:
Revenue Impact & Loss of Clients due to:
Slow Performance
“Old” or Clunky User Interface
No Mobile Application component
Data Loss
System Failures
Brand Reputation due to:
Inadequate Security
Data Loss
System Failures
Reduced Productivity, Business Rework, & Morale of Staff due to:
Slow Performance
“Old” or Clunky User Interface
No Mobile Application component
Data Loss
System Failures
Regulatory & Compliance / Audit Risks due to:
Data Loss
Inadequate Security
Inadequate Logging & Tracing of Transactions
System Failures
Loss of Confidence from Business Executives due to:
Data Loss
Incorrect Reporting and distrust in the “Numbers”
Inadequate Security
System Failures
And if you happen to be a Publicly Traded company and you are the CEO or President, the last thing you want to have happen is for your Company to be on the Front-Page of the Wall Street Journal for a Technology Failure.
Equifax Security Breach - May - July 2017
Over 163 Million (mainly in the US & UK) - Customer Records were stolen, including credit card numbers
Cost to Equifax - $ 1.3 Billion is settling Consumer Claims with the FTC
Turnover of nearly all of the Key Executives
$ 1.4 Billion in upgrading Security systems alone
Technical Drivers and Considerations
In Today’s World, technology is constantly changing and improving. Technologies that were leading edge when they came out are replaced by newer, better, faster, and more productive solutions in the decades to come.
This doesn’t mean that you must be a Leading Adopter of new technology or applications. For many businesses that isn’t necessary, you can wait until a given technology matures a bit. At the same time, you do have to look at what technology solutions, applications and components are being a drag on your business from moving forward - like an anchor at the bottom of the sea, holding your ship back from moving forward.
As a IT Executive some of the areas that you want to look for, from a Technical perspective include Systems:
Deprecated: The Vendor has dropped Support for the entire Application(s)
No Future Upgrades: The Vendor is no longer offering Upgrades, even though they may still be offering Support & Patches, this is a sign that this version or the product as a whole is on its way out.
Component Libraries, Coding Method, Connectors, etc. that are Deprecated: This can occur when a small portion of the overall System uses a specific Component Library, Coding Method, etc. which is either no longer Supported or will not work on the latest Mobile Device or Web Browser. Examples:
In the early 2000’s Microsoft implemented their own version of JavaScript for Internet Explorer. Any Web Application built originally to run on Internet Explorer had a lot of difficulties even working on any other Web Browser because of this, and many Web Applications had to be completely rewritten.
There was a time when Adobe Flash was used to display video content and interactive graphics within an Application. However, several major security flaws were discovered and could not be fixed, which led to most companies removing Adobe Flash entirely from the Applications.
Extreme Difficulty in Finding IT Resources to Support: With older systems, it becomes increasingly difficult (and expensive) to find anyone who either knows the technology or wants to work with it. Some examples:
COBOL Developers
Progress 4GL Developers
Etc.
Significant Technical Debt: It is very common for any Custom Application or Integration to incur some amount of Technical Debt over time. This is typically caused by the Development Team having either time or resource constraints, which forces them to do things quickly instead of the right way. And the longer an Application exists over time the more Technical Debt it will incur.
Known Security Vulnerabilities: Depending upon the severity and risk, this is an area that may need to be addressed immediately, or as quickly as feasibly possible.
Known Compliance / Audit Weaknesses: Depending upon the severity and risk, this is an area that may need to be addressed immediately, or as quickly as feasibly possible.
Conclusion
In this Blog Article we’ve covered the main Business Drivers, Technology Considerations, and Options that you might take as an Executive or Organization. Which approach you take in either Fixing, Replacing, or Re-Architecting your System / Application, will depend greatly upon your individual situation and business needs, we have also provided you with several real world examples, including the challenges and considerations which we took into account.
We hope that this Blog Article has been valuable to you.
David is a VP and Agile Coach within ArkusNexus, having served in multiple CIO, VP of Software Development roles. He assists our Sales, Marketing, and Operations Teams on critical initiatives.