IBM has published a new coding assistant built on its watsonx enterprise AI platform. Called Code Assistant for Z, the generative AI product is designed to help developers translate COBOL applications into Java for IBM Z mainframe machines. 

IBM says its Code Assistant will be expanded to support modernisation of other products in the future (Photo: Nick N A / Shutterstock)
IBM says its Code Assistant will be expanded to support the modernisation of other products in the future (Photo by Nick N A/Shutterstock)

COBOL is the latest addition to the watsonx Code Assistant, which is built on a new 20 billion parameter foundation AI model. It was trained on 1.5 trillion tokens of data and has knowledge of 115 coding languages, making it the largest generative AI model for code automation and capable of outperforming the 15bn parameter community-built model, StarCoder.

IBM has been accelerating modernisation efforts for its Z architecture mainframes. This includes updating applications and logic processes to work in a cloud and interconnected data market. Part of this effort also involves translating older applications into more modern languages.

One of the bigger issues facing organisations with COBOL-based applications is a growing developer shortage. There are an estimated two million people working with COBOL globally, according to a 2020 estimate by IBM, but the number actively writing or modifying the code is much smaller. What’s more, much of the available code is missing its original source documentation.

Big Blue has been trying to encourage more people to learn the language, including offering classes at hundreds of colleges and universities. Its latest move, however, may be seen as providing a way for major enterprises to begin transitioning away from Cobol. The AI tools allow for improved testing, faster re-writing of functionality into Java, and lower costs associated with updating old code.

There are thought to be billions of lines of COBOL ripe for conversion to more modern languages such as Java. IBM says generative AI can help developers more quickly assess, update, validate and test the right code. This allows them to more efficiently modernise large applications and focus on higher-impact tasks.

Modernisation and unit testing

Once described as the “Rodney Dangerfield” of programming languages, critics fear that myriad critical infrastructure systems continue to be powered by old and vulnerable COBOL code. One reason for this may be mass inertia on the part of private companies to renovate their existing code architectures. A study by IBM Research recently found that organisations are 12 times more likely to use existing mainframe assets than rebuild an entire application estate from scratch. But there is a lack of resources and skills to utilise these existing assets and the issue is getting worse. 

Code Assistant will be able to work across the entire modernisation process including automated testing processes. Unit testing is a relatively new, and complex addition to COBOL and isn’t widely utilised. Transforming COBOL code to Java code results in cleaner, object-oriented output with unit testing.  

The company says there are a number of approaches to mainframe application modernisation available, including transitioning off the mainframe and onto the cloud, but many organisations often do not want to sacrifice the core capabilities of their mainframes. IBM says it has designed the output of Code Assistant to be optimised to interoperate with the rest of the mainframe architecture and applications.

“By bringing generative AI capabilities through watsonx to new use cases, we plan to drive real progress for our clients,” said Kareem Yusuf, PhD, Senior Vice President, Product Management and Growth, IBM Software. “It’s built to rapidly and accurately convert code optimised for IBM Z, accelerate time to market and broaden the skills pool. This can help enhance applications and add new capabilities while preserving the performance, resiliency, and security inherent in IBM Z.”

Watsonx Code Assistant for Z joins the previously announced Code Assistant for Red Hat Ansible Lightspeed which will launch later this year. While the underlying model has a broad knowledge of programming languages, IBM plans to launch new product-focused versions to address other languages and improve time-to-value for modernisation, as well as address the growing developer skills shortages facing the whole industry.

Steven Dickens, vice president and practice leader at the Futurum Group, an expert on the mainframe sector, told Tech Monitor that COBOL was experiencing something of a comeback. “After some bad press in 2021, the Open Mainframe Project created a COBOL working group and they have designed some free training courses,” says Dickens – which makes the drive for transition from IBM surprising, he added. “In part, it could help customers transition from their mainframe to alternative platforms. While the AI elements of the announcement are in line with IBM’s focus on AI, it will be interesting to see what the impact longer term is on mainframe revenues which are a core part of IBMs profitability.”

Read more: AI is helping to reduce data breach impact says IBM