Change or Die: The Case for Software Modernization
Inertia is an interesting thing. It can be both good and bad. An object in motion will stay in motion. For a business, that’s excellent news. Innovation leads to improved efficiency, which leads to more innovation. It’s a virtuous cycle that leads to success. On the flip side of the coin, however, what happens to an object at rest? There is no truer example of this than in software modernization.
Complacency. Risk. Irrelevance.
Every day it seems there are innovations, faster technologies, more efficient methodologies, and processes. The world has come a long way from the days of typing BASIC commands into a computer the size of a refrigerator to write a file.
Or has it?
In the age of quantum computing and artificial intelligence, who would have thought that some of the most fundamental systems we rely on for day to day living—finance, insurance, government databases—would still be running on a computer language developed in 1959 known as COBOL?
Many US State governments learned the lesson of inertia the hard way thanks to COBOL. As the Coronavirus Pandemic hit, millions flocked to unemployment websites and databases only to find broken and overloaded systems in need of urgent updates to handle the increased workloads. The problem, however, was twofold. Not only were the systems not equipped to address the needs of the modern world, but there was no one on hand still proficient in the language to make the needed changes. Picture trying to renovate a home and discovering that all the diagrams and blueprints for the house are written with Egyptian pictographs. This is inertia—resistance to change—at its most damaging.
Who does this affect?
In a growing world increasingly dependent on the internet while cyber attacks against critical infrastructure are becoming commonplace, this resistance to updating essential technology is not just frustrating—it’s dangerous.
The risk goes far beyond state unemployment offices. However, many critical institutions avoid updating their systems because they are so vital—they don’t want to risk any downtime spent upgrading and retraining on new technologies. Money never sleeps—financial systems need to be running around the clock. Governments don’t want to risk losing any sensitive data in a system overhaul. It’s a great paradox: The more critical a system is, the less you want to change it and risk disruption…even though change is precisely what’s necessary to keep the system reliable.
Dangers of Resisting Software Modernization
Aside from the fact that fewer people are proficient in managing older technologies, there are three additional risks that an organization is accepting if they do not modernize their software systems: end of life, security, and customer needs.
1. End of Life
Like milk, coupons, and leftover food, software has an expiration date. The companies that create these programs and systems have to spend time and resources maintaining and patching them as new technologies and vulnerabilities are developed and discovered. Eventually, it is no longer cost-effective for the provider to keep the platform updated, so they stop supporting it in favor of promoting their newer programs. Not updating software after it’s no longer being supported is like driving a Model T Ford. The manufacturer is no longer building replacement parts to service it; drive at your own risk.
The longer a software platform is out among the public, the more vulnerabilities threat actors will find. No software program is hacker-proof; it’s only regular security updates and patches that keep up with new exploits. This is why only using software that is still within its expiration date is so important. Out of date software is a hacker’s best friend. Just ask the Baltimore residents, Maryland, who, in 2019, suffered from significant cyberattacks against city infrastructure still using Windows XP and Vista. The exploit used, Eternal Blue, has been around for years, and patches have long since come out to eliminate the threat. Still, however, organizations are hesitant to change.
Finally, modernization means adding functionality. No one likes visiting a website on their phone to find that the company hasn’t invested in a mobile-friendly web format. Online ordering, tracking, and payment have become an expected standard rather than a nice to have feature. Functions and features that modern customers need often cannot be accomplished on older systems and programs. Modernizing software means adapting to changing consumer behaviors.
At the end of the day, any organization will have to modernize one way or another. The question is, do you do it on your terms? Or do you wait until a crisis forces your hand? This time, it was a scramble for COBOL developers to fix unemployment systems. Next time, it could be much worse. If we don’t learn from this pandemic, then we’ve suffered in vain.
Often, the hesitation in modernizing stems from a lack of funding. For this reason, we recommend setting aside a small part of an organization’s annual budget for modernization. Suppose it isn’t needed this year, great. That means you have double the amount next year for a rainy day and last-minute upgrades when the time comes.
Next, we recommend a simple, staged approach to implement software modernization: discovery, project, asset.
In discovery, the organization is looking for the latest and most remarkable technologies. Look for the industry-leading programs and see if they can be implemented into your company. Once a potential technology has been identified, turn it into a project. Test out a small scale implementation of it to see how well it works and integrates with your processes. Identify any changes that need to be made before scaling up. When that is accomplished, you are ready to move the modernization into production and proliferate it across the enterprise as appropriate.
It’s as simple as that. Software modernization can appear daunting and troublesome at first—no one likes downtime, retraining, or upgrading costs. However, the investment is worth it in every way. If the world is to move forward into a future where technology is a blessing rather than a curse, our mindset towards change needs to move on.