AI: The missing piece for Cobol modernisation in finance
After years without a clear path forward, advancements in artificial intelligence (AI) supporting the Common Business-Oriented Language (Cobol) translation efforts are finally making digital transformation possible and giving an edge back to the leading businesses that defined financial services.
Here, professor of computer science at the University of Oxford and co-founder of Diffblue, Daniel Kroening, discusses his thoughts and solutions for businesses struggling with the Cobol translation efforts.
Cobol first appeared in 1959 as a language meant for corporate use, and ever since, it has done its job undeniably well. Although it predates the moon landing by a decade, Cobol still underpins many of the finance and administrative systems used by established banks and government agencies. In fact, an estimated $3 trillion in commerce goes through Cobol systems every day.
The potential issue? The inability for traditional banks to update core Cobol applications or integrate them with new tools is unsustainable for any financial organisation that aims to compete with agile newcomers in fintech. New development in Cobol are limited, and many of the businesses built on this language know they need to modernise, but practical solutions to date have been elusive.
After years without a clear path forward, advancements in artificial intelligence (AI) supporting Cobol translation efforts are finally making digital transformation possible and giving an edge back to the leading businesses that defined financial services.
Cobol gridlock
The truth is that Cobol programs still work. In fact, in most cases, they work too well. To justify going through the significant pain of replacing them outright, entire teams of engineers within financial organisations would have to spend years completely rebuilding the business’ core tech in parallel—at a price tag in the potentially hundreds of millions of dollars. Only then would they attempt to transition to the new system, with a high risk of downtime. Seamless? Hardly. This is not an option for most businesses, so they continue to maintain the status quo while missing out on opportunities, such as adopting new customer-facing applications or moving to the cloud—all fundamental steps financial institutions need to make in order to stay competitive.
But with each passing year, the billions of lines of Cobol code currently in use are becoming increasingly unsupported. The majority of engineers who worked with Cobol in their early careers are now retired, and new developers aren’t interested in learning it. Even if they were, most universities no longer offer Cobol courses. As a result, the banking industry is quickly running out of junior engineers with mainframe experience who can carry these applications forward. In a few extreme cases, experts in their 50s and 60s have even been called out of retirement to maintain applications in the companies they used to work for.
The longer it takes to address this issue, the harder it will be to modernise while trying to attract the few remaining developers with mainframe experience. So what can be done?
Lost in translation
Replacement of Cobol isn’t the only option: tools now exist that can translate COBOL code into more common, modern languages like Java, Javascript, Python and C#, without losing any functionality. Transitioning from Cobol to a well-supported modern language such as Java gives engineering teams the ability to write in a language that most developers can work with, allowing access to a much larger pool of talent and closing the Cobol skills gap.
However, it comes with a catch: brand new code bases are converted without tests. For risk-averse industries like financial institutions, which offer services that depend on stability, reliability, and sustained customer service, this is unacceptable. If newly translated code can’t be reliably edited, it’s not much of an improvement. Manually writing tests for millions of lines of code takes almost as long as rewriting the entire application from scratch.
AI-assisted modernisation
Businesses that have been holding out for a solution are in luck. AI technology has made great strides in recent years, and has actually reached the point of being able to write new code. For example, AI for code can automatically generate the unit tests that were lost in the translation process (or never existed at all). These unit tests reduce the risk of errors and bugs resulting from changes to the source code once a system has been migrated into another language, completing the second part of the modernisation puzzle.
The automated nature of these processes makes them fit to tackle the huge scale of the Cobol problem across financial services: Millions of lines of code can be quickly translated, and AI-generated unit tests can be created for entire code bases overnight. Modernisation for mission-critical software is in sight for the first time, finally making it possible for companies with decades-old tech stacks to shed their legacy code and look to the future.
Id like to receive more info regarding the AI assisted modernisation for Cobol based programs. Currently have about 460 frontend screens programmed in Cobol WOW.
Our source code is on RM Cobol.
Looking to take this to either PHP or Java or any of the others – so Looking to hear also about advice to which one could be better.