Ignore legacy software at your own risk

Software might be the most important piece of legacy technology your company has. It can be a competitive advantage, but if not handled correctly, legacy code could also could be your biggest weakness.

Of all the legacy technology running behind the scenes in your business, software might be the most important. But it's also the technology with the greatest potential for failure. Your legacy software can be a great organizational asset, or it can be your biggest weakness.

The quality of legacy software code is a topic most CIOs like to avoid -- as long as it's still running, there's no reason to worry about it, right? "It's really hard to rally an organization around this, because there's a bit of a learned helplessness, and a vested interest in the status quo says Lev Lesokhin, executive vice president of Strategy and Analytics, CAST Software.

Even CIOs who are "change agents," warns Lesokhin, who come in to try to address these issues don't tend to last very long. "They'd rather think short-term success and cross their fingers and hope that this is a long-term issue that's not going to affect them during their tenure," he says.

Under pressure

CIOs, too, are under tremendous pressure to devote the majority of IT budgets toward research and development and towards new initiatives, applications and features based on customer demands than on shoring up existing resources, even though both are in service of the larger goal -- measuring outcomes and addressing customer requirements.

That's all good, until a catastrophic failure happens. "The dirty little secret of IT is that most organizations -- based on our own research and anecdotes from our own customer base -- have something in the range of 15 to 20 incidents related to legacy software problems or failures each week. They're usually not big enough to capture media attention, and businesses are really good at covering them up. But don't worry - you'll get your turn on the cover of the Wall Street Journal soon enough if the issue's not addressed," Lesokhin says.

Tackling the issue requires a steady, firm hand and a lot of leadership from C-level management. It's a pretty sure bet your IT department and your developers are aware of the problems, and so are your customers.

Making sure the entire organization is on board with fixing issues of software quality should be a big priority for a savvy CIO. "CIOs walk a fine line of needing to balance the old, existing problems with software and delivering new products, services and initiatives. But there's a reluctance on the part of developers to speak up to management and say, 'Look, let's take a sprint and go back and fix these legacy, foundational issues so we can move faster on these new, emerging apps,'" says Lesokhin. Then the issue becomes a hot potato, bouncing back and forth between the CIO, IT, QA, with no one stepping up to actually address the underlying problems until it's too late, he says.

Invest in long-term quality

Savvy CIOs will understand that their role is something akin to that of a small business owner -- and that investments in the "overhead" of your legacy code and systems can contribute just as much to profitability, security and even customer satisfaction outcomes as new applications, new features and new projects. "You can look at this like investing in a house versus investing in a car. With a car, you maintain it so it's not dangerous, but no matter what, it's always depreciating and you'll always have to replace it with something newer and better. With a house, you make investments on structural improvements and upgrades because over time it will continue to retain its value and deliver a steady return," says Lesokhin.

Vary your portfolio

Having this varied and balanced IT investment portfolio allows you to address both the shorter term new, fast and quick apps and projects as well as keeping up with quality and security of legacy code and getting as much value as possible out of those investments.

One major financial firm, for example, uses a mainframe solution to run backend batch processing for all their checking accounts. The user interface, however, was designed and built as an application that runs on top of the legacy code from the mainframe. This type of deployment uses stable, secure legacy code and technology to power a newer, faster and more responsive user interface with very few bugs. "Now, all they have to do is keep up with the regulatory and compliance changes to the front-end user interface while leaving the legacy code on the mainframe alone," says Bobby Cameron, vice president and principal analyst, CIO practice, at Forrester Research.

"Yes, trying to modernize, that's important, but I'm not convinced you have to abandon the old stuff unless you just cannot make it work anymore. Chances are, given a little time, some effort and a budget priority, you can make it work," Cameron says.