By: Iris Boers
The only constant in life is change and especially those responsible for IT know this all too well. Corporate IT is caught in a permanent state of change - currently microservices and containers, programming languages such as Python, R and Ruby, blockchains, artificial intelligence (AI) and an ominous Facebook currency are stirring up the scene. Just in the digital era, in which the society seems to be obsessed by technical innovations, IT is forced to keep up with the speed and constantly support the new, even the disruptive, to keep the economy running. Everything must change so that new projects and products can take their place. This is the way business works! But some things are so important and indispensable that it is better never to change them, or even better not to touch them. Even as we have just jumped into a new decade of our millennium, 80% of the world’s corporate data lives on a mainframe. Ninety-six of the world’s top 100 banks, 23 of the top 25 US retailers and nine of the world’s 10 largest insurance companies use mainframe technology. There’s a lot of old code, often COBOL-based code, out there that provides value. But what does that mean exactly for the business or for our lives? Let’s take a closer look….
COBOL is still alive and kicking
We use COBOL every day and it will continue to touch our lives, whether we know it or not. There are still more COBOL transactions than Google searches each day. Any time we phone a call center, any time we transfer money, or check our account, or pay a mortgage, or renew or get an insurance quote, or when contacting a government department, or shipping a parcel, or ordering some flowers, or buying something online at a whole range of retailers, or booking a vacation, or a flight, or trading stocks, or even checking your favorite baseball team's seasonal statistics, we’re talking to a COBOL app.
So why would one want to change them?
Well, one reason is: It’s not Java. COBOL was created in an era where IT didn’t have the meaning it has today. A program was mainly designed to replace simple repetitive tasks such as retrieving data from a database, performing a couple of operations and generating a report or updating some other data. Today’s programs have to present a front-end to thousands of users, go through different layers of security, logic and quick data retrieving before accessing the back-end to ultimately alter data and send some information back to the user. There are also a number of other problems that cause headaches for IT departments when looking to the future such as:
- Growing business needs must be met by increased system capacity and performance
- High cost of maintaining legacy applications
- And a shortage of employees that are skilled in legacy languages
And with digital change, IT departments are under increasing pressure to deliver enterprise applications at ever-faster development times. To successfully drive the digital transformation, new technologies and target-oriented techniques are needed to adapt IT systems accordingly to meet market and competitive requirements, as well as agile concepts for application delivery to make the software development process faster and more efficient.
Thinking of replacing your COBOL…. There is a better way to do
The question therefore arises whether COBOL applications, which are more vital than ever, can meet the needs of the new digital era too? Because what has worked well for years and could continue to be very valuable may not meet the requirements of tomorrow. Change is unavoidable, but how exactly can it be accomplished?
Thinking of replacing your COBOL?
Be careful and don't dismiss legacy applications without understanding the technology or the value of the investment in the applications your organization has developed. And you certainly shouldn't dismiss critical applications as they are the company’s beating heart - and no one would suggest a heart transplant lightly. So this option is far too risky to lose decades of competitive advantage and IP.
Should I re-write the old COBOL application?
For one thing it’s far too expensive and risky to rewrite legacy applications along newer architectural lines. And another we're in a world where it doesn't make sense to keep rewriting things over and over, because rewriting isn't the best value of the intellect of our software engineers. Today, enterprise architects don't care what language an application is written in; they care about how to decompose the application into services that they can integrate and reuse. The building block is no longer a subroutine or library - it's a microservice, probably running in a container.
Should I re-use it? Absolutely! COBOL is modern technology
Today’s modern COBOL is far from the days of green screen development consoles and proprietary, locked-in value. As a modern language, COBOL supports all contemporary deployment architectures, leading edge technology and composite applications. It integrates with Java, C#, Docker containers, mobile, .NET and JVM as well as Azure and AWS cloud environments, and runs across established operating environments like Linux, mainframes, Windows and UNIX. Today’s COBOL can work within SOA or RESTful web services, applications can run in the cloud or be deployed to mobile devices and can be developed in open environments. Today’s COBOL is agile, it escapes the silos and banishes the barriers with DevOps. COBOL can be used to build cloud, containerized and managed code apps with the language’s continued evolution of support that ensures that applications can not only meet the requirements of today, but also tomorrow
The path to modernization - bridging the gap between established (COBOL) and newer (digital)
Thriving in a competitive digital landscape means transforming the systems hosting core business processes with the lowest cost and risk through a comprehensive solution across three key pillars of modernization: application, process, and infrastructure. The key is in retaining the tried, tested, durable fundamentals and future proofing them for tomorrow’s requirements.
Join the COBOL SIG Community
And if you want to hear even more about COBOL, how other application developers are working with COBOL systems or you would like to meet other like-minded COBOL developers or perhaps expand your network and build new skills and the possibilities of how to make your applications fit for the digital age, we have a tip for you: Join the COBOL SIG Community, it is the place to be for you.