COBOL stands for Common Business Oriented Language. It is imperative, procedural, and object-oriented. A compiler is a computer program that takes other computer programs written in a high-level (source) language and converts them into another program, machine code, which the computer can understand. COBOL takes data from a file or database, processes, and outputs it. In short: COBOL takes data in, computes it, and outputs it afterwards.
In the context for this guide, we assume compilers are translating from a high-level programming language, such as COBOL, to create an executable program for use on mainframe-hosted application, perhaps to run large-scale batch or transaction processing jobs. This OpenText Supportline tutorial explains how to compile a COBOL program for the mainframe.
One source lists more than 29,010 companies as still using COBOL, about 0.8% market share. Another estimates that 200 billion lines of COBOL code are still active, and that 90% of Fortune 500 companies, most notably big finance, insurance companies, airlines and retail point-of-sale systems rely on COBOL.
A 2017 Reuters study lists 43% of banking systems still use COBOL, while COBOL applications still power more than 65% of enterprise software and 70% of business transaction processing, including 95% of ATM swipes. One live government system is 60 years old.
Created for transaction processing, COBOL applications help run payroll programs, manage government pension funds, operate banking systems, manage hotel bookings, book airline tickets, and much more. Estimates largely agree COBOL systems support more than $3 trillion in daily commerce.
COBOL is a domain-specific, or specialist, language. In this case, the specialism is business programming. It is this specificity, portability, and the relatable syntax that has helped keep the COBOL story going.
This portability, the means to move core applications and systems from where they are to the platforms that will best support future innovation, that form a key plank of many digital transformation strategies.
Other mainframe modernization plays will be different. Mainframe to cloud is just one option; physical to virtual is another. Others may want to embrace open source by taking their UNIX operating system to Linux. The key is to look where the market is going; new platforms such as Docker, automation through Kubernetes; maybe .NET, JVM, Windows, zLinux, AWS, Azure, or GCP is where you want to be.
These tools bridge the gap between established technologies that have served the enterprise well, and innovation to support the business going forward. Using Visual COBOL, enterprises can harness the flexibility of the cloud, and improve responsiveness to future demand, while enabling efficient infrastructure management.
Sometimes, technology is a reasonable excuse for a holdup. But in the case of the unemployment benefits that are part of the $2.2 trillion CARES Act, processing delays are not due to a glitch, but the inadequacy of ancient computer systems. Specifically, a half-century old programming language, COBOL (which stands for Common Business-Oriented Language), can't handle the demand.
"It is the largest issue with regards to implementation in the CARES program," Robin Roberson, executive director of the Oklahoma Employment Security Commission, told Bloomberg News. "Our mainframe is literally over 30 years old. It's very difficult to program, it doesn't do much. COBOL programmers are somewhat scarce."
The lack of COBOL programmers is partly because it was one of the first computer programmer languages to be created in the United States. COBOL was innovative at the time, in 1959, because it could run its program on multiple manufacturer's computers. According to the National Museum of American history's website:
Written initially for the short range, COBOL proved so useful that it dominated much of government and business data processing for decades. Millions of banking transactions are still processed daily with COBOL programs. As the use of common programming languages became standard, a flourishing independent computer software industry emerged.
According to a survey conducted by The Verge, at least 12 states use COBOL in their unemployment systems including New Jersey, Alaska, Connecticut, California, Iowa, Kansas, Rhode Island, and Colorado. According to Reuters, COBOL programmers are most likely to be between 45 to 55 years old on average. Interestingly, an estimated 43 percent of banks are built on COBOL.
Consequently, there is now a scramble for various government agencies to hire COBOL programmers. For example, Governor Phil Murphy (D-N.J.) put out a call for volunteers who know the ancient programming language, something government officials have admitted that they aren't necessarily proud of doing.
"Literally, we have systems that are 40 years-plus old, and there'll be lots of postmortems. And one of them on our list will be how did we get here where we literally needed COBOL programmers?" New Jersey's commissioner of labor Rob Asaro-Angelo asked.
IBM has vowed to build a free COBOL training course, and posted manuals and tutorials to Github to speed up training new COBOL programmers. The company's announcement explained that the material "will be made into a self-service video course with hands-on labs and tutorials available via Coursera and other learning platforms next month."
"It's a disaster," Mahmoud Ezzeldin, who worked on COBOL computer systems for insurer Blue Cross Blue Shield and the Internal Revenue Service, told Bloomberg News. "COBOL is difficult to learn and was not designed for the internet. College graduates like to learn something easier. I cannot blame them."
Government watchdog agencies have seen this coming. In a 2019 report, the U.S. Government Accountability Office outlined federal computing systems that were in need of updating; COBOL was one of them. At the turn of the century, amid the fear of the Y2K bug, the government hired programmers who knew COBOL to fix various codes.
Copyright 2024 Salon.com, LLC. Reproduction of material from any Salon pages without written permission is strictly prohibited. SALON is registered in the U.S. Patent and Trademark Office as a trademark of Salon.com, LLC. Associated Press articles: Copyright 2016 The Associated Press. All rights reserved. This material may not be published, broadcast, rewritten or redistributed.
COBOL stands for Common Business Oriented Language.The US Department of Defense, in a conference, formed CODASYL (Conference on Data Systems Language) to develop a language for business data processing needs which is now known as COBOL.
COBOL is used for writing application programs and we cannot use it to write system software. The applications like those in defense domain, insurance domain, etc. which require huge data processing make extensive use of COBOL.
This tutorial is designed for software programmers who would like to learn the basics of COBOL. It provides enough understanding on COBOL programming language from where you can take yourself to a higher level of expertise.
Before proceeding with this tutorial, you should have a basic understanding of computer programming terminologies and JCL. A basic understanding of any of the programming languages will help you understand the concepts of COBOL programming and move fast on the learning track.
What is COBOL?
A brief introduction to the COBOL programming language. A historical overview. COBOL's dominance in the business computing domain. Characteristics of COBOL applications. Some reasons for COBOL's success.
Introduction to Programming
This section provides a gentle introduction to programing in general and to programming in COBOL in particular by means of writing some simple COBOL programs.
COBOL basics
This section presents the fundamentals of constructing COBOL programs. It explains the notation used in COBOL syntax diagrams, enumerates the COBOL coding rules, and examines the hierarchical structure of COBOL programs.
The word COBOL is an acronym that stands for COmmon Business Oriented Language. As the the expanded acronym indicates, COBOL is designed for developing business, typically file-oriented, applications. It is not designed for writing systems programs. For instance you would not develop an operating system or a compiler using COBOL.
For over four decades COBOL has been the dominant programming language in the business computing domain. In that time it it has seen off the challenges of a number of other languages such as PL1, Algol68, Pascal, Modula, Ada, C, C++. All these languages have found a niche but none has yet displaced COBOL. Two recent challengers though, Java and Visual Basic, are proving to be serious contenders.
In 1997 they estimated that there were about 300 billion lines of computer code in use in the world. Of that they estimated that about 80% (240 billion lines) were in COBOL and 20% (60 billion lines) were written in all the other computer languages combined [Brown].
In 1999 they reported that over 50% of all new mission-critical applications were still being done in COBOL and their recent estimates indicate that through 2004-2005 15% of all new applications (5 billion lines) will be developed in COBOL while 80% of all deployed applications will include extensions to existing legacy (usually COBOL) programs.
People are often surprised when presented with the evidence for COBOL's dominance in the market place. The hype that surrounds some computer languages would persuade you to believe that most of the production business applications in the world are written in Java, C, C++ or Visual Basic and that only a small percentage are written in COBOL. In fact, the reverse is actually the case.
In the vertical software market (sometimes called "bespoke" software) applications cost many millions of dollars to produce, are tailored to a specified company, encapsulate the business rules of that company, and only a limited number of copies of the software may be in use. A good example of this kind of application is the DoD MRP II system. This system is "used to manage almost 550,000 spare and repair parts and equipment items with an inventory value of $28 billion. The system runs on Amdahl mainframes at multiple locations throughout the U.S. and contains over 4,000,000 lines of COBOL code." [ _capabilities.htm]
c80f0f1006