Cobol on the mainframe: Does it have a future?
All that legacy code has to have skilled engineers to maintain it
By Robert L. Mitchell | Computerworld US | Published: 14:12, 15 March 2012
That's the situation faced by Jim Gwinn, chief information officer for the USDA's Farm Service Agency. The USDA's System/36 and AS/400 systems run Cobol programs that process $25 billion (£16 billion) in farm loans and programmes.
"We have millions of lines of Cobol and there's a long history of it being rewritten," he says. "It has become increasingly difficult to change the code because of the complexity and the attrition of the knowledge base that wrote it." That's a big problem because laws that govern farm programmes change every year, driving a need to update the code to reflect those changes.
Gwinn hired consultants from IBM, who concluded that rewriting the programs in a different language or rehosting them on a distributed computing platform would be complicated and costly. But the System/36 hardware had to go, so Gwinn decided to bite the bullet: FSA will move off of its end-of-life mainframe systems by rewriting some of the code in Java and replacing the rest with packaged software from SAP.
But Gwinn says he'll miss Cobol. "It has been very stable and consistent, with little breakage due to code changes, which you see with Java-based changes," he says. "And in a distributed environment you have to balance your workloads a little more carefully."
Going for a rewrite
The anticipated exit of institutional knowledge and shortage of Cobol programmers were also primary drivers behind NYSE Euronext's decision to reengineer one million lines of Cobol on a mainframe that ran the stock exchange's post-trade systems. While Cobol was dependable, it wasn't viewed as maintainable in the long run.
Steven Hirsch, chief architect and chief data officer, cites the need to make changes very rapidly as another key reason the NYSE abandoned Cobol. "Ultimately, the code was not easily changeable in terms of what the business needed to move forward. We were pushing the envelope of what it took to scale the Cobol environment," he says.
So NYSE rewrote Cobol programs that run its post-trade systems for Ab Initio, a parallel-processing platform that runs under Linux on high-end HP DL580 servers. The new environment allows for more rapid development, and the rewrite also eliminated a substantial amount of unnecessary and redundant code that had crept into the original Cobol programs over the years.
If the business' Cobol code doesn't need to change much, and many batch and transaction processing programs don't, it can be maintained on or off of the mainframe indefinitely. But that philosophy wouldn't work for NYSE. "We are a rapidly changing business and we needed to move faster than our legacy code," Hirsch says.
As for trading, that's all proprietary NYSE Euronext software. "There's no Big Iron or Cobol," Hirsch explains. "There's been no use of mainframes in the trading environment for many years."
Rehosting: Lift and shift
When it comes to hiring new Cobol programmers, Jonathan J. Miller, director of information systems and services for Saginaw County, is struggling. "We've lost our systems programming staff," he says. And like many government IT organisations that have suffered from budget cuts, he doesn't have much to offer those in-demand Cobol programmers.
Generous government benefits used to attract candidates even when salaries were lower than in private business. Now, he says, "Our pay hasn't increased in eight years and benefits are diminished."
To fill in the gap, the county has been forced to contract with retired employees and outsource Cobol maintenance and support to a third party, something that just 18% of Computerworld readers say they are doing today.
The Cobol brain drain is starting to become critical for many government organisations, says Garza. "It's a high risk problem in many countries we are doing work in. The people have retired. Even the managers are gone. There's no one to talk to."
Saginaw County found itself hemmed in by the complexity of its Cobol infrastructure. It has four million lines of highly integrated Cobol programs that run everything from the prosecutor's office to payroll on a 46 MIPS Z9 series mainframe that is at end of life. With mainframe maintenance costs rising 10% to 20% each year, the county needs to get off the platform quickly.
But commercial software packages lack the level of integration users expect, and Miller's team doesn't have the time and resources to do a lot of integration work or re-engineer all of the program code for another platform.
So the county is starting a multi-phase project to recompile the code with Micro Focus Visual Cobol and re-host it on Windows servers. An associated VSAM database will also be migrated to SQL Server. Miller hopes that the more modern graphical development suite will make the Cobol programming position, which has gone unfilled for two years, more attractive to prospective programmers. But he acknowledges that finding talent will still be an uphill battle.
A legacy continues
Is there a role for Cobol off the mainframe? "I don't believe there is. Cobol and the mainframe run well together, and that's where I want to keep it," BNY Mellon's Brown says. But the bank is still creating new Cobol components on the mainframe, and will continue to do so.
That's a common sentiment among Accenture's large corporate customers, says Burden. Cobol will continue its gradual decline as midrange systems are retired and businesses continue to modernize legacy Cobol code or move to packaged software. Today Cobol is no longer the strategic language on which the business builds new applications. But it still represents the "family jewels" of business, Burden says. "They're enhancing existing applications and adding functionality to them. I've seen no slowdown in those activities."
If companies can't find talent to keep that infrastructure going, outsourcing firms such as Accenture are ready, says Burden. The scale of Accenture's support operation is large enough to provide a career track for Cobol programmers, and he says it's easy to cross-train programmers on the language. "We can turn out new programmers quickly. So if clients can't support Cobol, we will."
"People make too much of that trend that we're not graduating enough Cobol programmers," says IBM's Stoodley. Preserving the institutional knowledge is what's critical. "You can make a problem for yourself if you don't keep your team vibrant," he says. But as long as there's a demand for it, "businesses will find people willing to work on Cobol."
"You have to respect the architecture of Cobol," Burden says. It may have been created for simpler times in application development, but it remains the bedrock of many IT infrastructures. "I don't see that changing for another 10 years, or even longer."