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
David Brown is worried. As managing director of the IT transformation group at Bank of New York Mellon, he is responsible for the health and welfare of 112,500 Cobol programs, 343 million lines of code, that run core banking and other operations. But many of the people who built that code base, some of which goes back to the early days of Cobol in the 1960s, will be retiring over the next several years.
"We have people we will be losing who have a lot of business knowledge. That scares me," Brown says. He's concerned about finding new Cobol programmers, who are expected to be in short supply in the next five to ten years. But what really keeps him up at night is the thought that he may not be able to transfer the deep understanding of the business logic embedded within the bank's programs before it walks out the door with the employees who are retiring.
More than 50 years after Cobol came on the scene, the language is alive and well in the world's largest corporations, where it excels at executing large scale batch and transaction processing operations on mainframes. The language is known for its scalability, performance and mathematical accuracy. But as the Boomer generation prepares to check out of the workforce, IT executives are taking a fresh look at their options.
Related Articles on Techworld
In a Computerworld survey of 357 IT professionals conducted recently, 46% said they are already noticing a Cobol programmer shortage in the market, while 50% said the average age of their Cobol staff is 45 or older; 22% said the age is 55 or older.
"Organisations are trying not to get backed into a corner because of the skills issue," says Paul Vallely, mainframe sales director at software vendor Compuware. "I haven't seen companies move off mainframes due to the Cobol skills shortage yet, but it's looming."
For Bank of New York (BNY) Mellon, which bought its first mainframe in 1955, keeping the core Cobol applications that run the business on the mainframe makes sense. Modernisation efforts have made those programs more accessible through the use of web services and more up-to-date user interfaces.
But for other types of non-core applications, and for smaller workloads, organisations have been gradually migrating off of mainframes and away from Cobol. In some cases those Cobol programs are simply re-hosted on Linux or Windows servers; in other cases they're rewritten in other, object oriented languages and some programs are being replaced with packaged software.
"Over the past five years there has been an acceleration of businesses moving off host platforms," says Adam Burden, global application modernisation lead at Accenture. Often that means leaving Cobol behind by either rewriting it for J2EE or .Net or moving to packaged software.
Over the last few years, Gartner estimates that the world has seen about a 5% decline in total Cobol code, says analyst Dale Vecchio. Much of that involved migrations by small and medium-sized mainframe shops that move off what they see as a legacy language when they retire the hardware.
It's declining because the functions can be developed by some other building block. "Cobol is no longer needed," Vecchio says. "There are alternatives."
While rehosting can get code off the mainframe quickly, Micro Focus sells a platform that will support it on a Microsoft Azure cloud, that is often seen as an intermediate step. It can be used as a way to get Cobol off the mainframe quickly, before eventually completely modernising and transforming those legacy programs.
Cobol's image problem
Cobol, as a procedural language, is not perceived to be as agile as object-oriented languages for modern programming needs such as mobile apps and the web. And despite the availability of state-of-the-art Cobol development environments, including IBM's Enterprise Cobol on the mainframe and Micro Focus' Visual Cobol, which integrates well with Microsoft's Visual Studio development suite for .Net, Cobol is widely viewed as a legacy language.
Nearly half (49%) of survey respondents whose organisations don't use Cobol say the reason is that the language is simply outdated.
Not everyone agrees, of course. "Cobol has had lasting value, and it's not broken," says Kevin Stoodley, IBM Fellow and chief technology officer of enterprise modernisation tools, compilers and security at IBM.
In the more recent survey, over 50% of respondents say Cobol represents more than half of all internal business application code.
"There has been no renaissance for Cobol," says Accenture's Burden. "There's not a whole lot of new development going on. But our clients are enhancing their core applications and continue to maintain them." Indeed, 53% of readers say they're still building at least some new business applications in Cobol. The vast majority of that code is still being written for the mainframe.
But IT organisations also don't have much choice. Migrating large scale systems built in Cobol is just too costly and risky a proposition. "They might want something more flexible but they just can't do it. They're captive to Cobol," Burden says.
The down economy has helped put off the inevitable, Compuware's Vallely says. "Economic issues provided everyone with a hall pass because not as many folks were looking to retire," he says. But as the economy improves, retirement plans may pick up too. "Organisations are trying to be more proactive," he predicts.
"No other language has seen as big an impact from changes in the demographics of the workforce as has Cobol," Vecchio says. Going forward it will become more difficult to maintain a Cobol portfolio. "The inflexion point will come when enough Cobol programmers have retired that an organisation can no longer tolerate the risk," he says. At that point, most of those programs will migrate, but not all.