We have the answers to your questions! - Don't miss our next open house about the data universe!

COBOL: All about the historic data management language

 m de lecture

COBOL (Common Business-Oriented Language) is a programming language developed in the 1950s for commercial and administrative applications, and still widely used today for database management. Find out all you need to know!

From the 1950s onwards, with the emergence of commercial computing, companies began to use computers on a massive scale to process their data.

However, there was still no standardized programming language for commercial applications.

In 1959, concerned about the incompatibility of the many languages in use, the U.S. Department of Defense decided to fund the development of a universal language.

One of the pioneers of computer science, Grace Hopper, was commissioned to design this language: COBOL.

What is COBOL?

COBOL (Common Business-Oriented Language) is a standard programming language developed by the CODASYL (Conference/Committee on Data Systems Language) consortium in 1959.

It is designed to be easily understood by management professionals, and to allow programs to be ported to different computers.

Dedicated to the creation of corporate or financial applications, it is a language primarily designed for mainframe computers. It does not depend on a specific operating system.

Highly intuitive, COBOL uses English words and phrases as syntax for keywords and constructs.

This natural language-inspired syntax structure is based on Grace Hopper’s work in the 1940s on FLOW-MATIC: a text-based data processing language.

Languages such as COMTRAN and FACE had a strong influence on the design of COBOL.

Previously, each operating system had its own programming language. This could be a hassle for companies working with multiple OSes.

It was to remedy this problem that the COBOL project was born. Its portability and ease of use have made it a widely-used tool for companies in many sectors.

Since its appearance in the 1950s, COBOL has gone through several versions. The first was COBOL 60, followed by COBOL 61, COBOL 65, COBOL 68, COBOL 74, COBOL 85, COBOL 2002 and COBOL 2014.

Over the years, COBOL has evolved to meet the changing needs of computing. Features such as file processing, data management or complex arithmetic and string manipulation have been added.

This language has become very popular in business management systems, notably for financial transaction processing applications, payroll systems and databases.

COBOL also played a crucial role in the computer industry because of its backward compatibility. Older COBOL programs could be easily adapted to new versions of the language without the need for major modifications.

This feature enabled companies to maintain their existing systems while gradually integrating new functionalities.

However, with the emergence of new programming languages and technologies, COBOL lost popularity from the 1990s onwards.

More modern, object-oriented languages began to dominate the programming landscape, while COBOL was often perceived as an obsolete language.

Nevertheless, it hasn’t disappeared completely. Many companies and financial institutions continue to use COBOL-based systems because of their reliability and ability to handle massive volumes of data.

Some of the most critical infrastructures, such as payment systems and social security systems, are still based on COBOL programs.

COBOL’s development is now complete, but its programs are still in use and may continue to exist until software is ready to migrate to a new alternative.

How does COBOL work?

A typical COBOL program follows a hierarchical structure comprising multiple interrelated components.

Firstly, the language has 78 characters. This includes letters of the alphabet, numbers and special characters.

Declarations are made up of verbs, words, keywords and operands. They indicate the action performed on data to accomplish conditional or unconditional tasks.

A sentence, on the other hand, combines two or more statements and ends with a period. A paragraph is an extract of code combining sentences or declarations.

It begins with a paragraph name and ends with the paragraph scope terminator. A section combines a set of sentences, blocks of sentences or paragraphs.

Similarly, divisions are combinations of sentences, statements and paragraphs. A typical COBOL program has four divisions.

The identification division identifies the program by its name PROGRAM-ID, and the environment division defines its inputs and files.

Data used by COBOL programs, such as variables, are defined by the Data division. Finally, the procedure division contains the program logic, including declarations and variables from the Data division.

Users define paragraph and section names here. It must contain at least one declaration, and ends with the commands “STOP RUN” and “EXIT RUN” in the calling and called programs.

The benefits of COBOL

A number of features have set COBOL apart from its rivals and kept it popular to this day.

A global language

First of all, it’s a business language used the world over. Many large corporations, banks, insurance companies and industrial sectors such as healthcare, automotive, transport and retail use COBOL.

These include world-renowned companies such as IBM, UPS, Fiserv, Bank of America, JPMorgan Chase and Cigna. As a result, the language continues to play a crucial role for organizations driving the global economy.

Despite the halt in its development, it remains the language of choice for many sectors. A survey conducted in early 2022 by Micro Focus revealed that 92% of software engineers and developers confirm that COBOL applications are being developed today to meet the strategic needs of their organizations.

Syntax close to natural English

What’s more, the readability of this language has made it very popular in a wide variety of industries. Non-technical profiles can learn to master it with the right training.

It is accessible to anyone with a command of English grammar. What’s more, its self-documentation feature facilitates maintenance by synchronizing code and documentation.

What’s more, COBOL doesn’t use user-defined pointers, functions or data types. This makes it a very simple language to understand.

Flexible and portable

This language supports most traditional architectures and deployments, as well as modern technologies and complex applications.

It is compatible with Java, C# and Docker containers, and can also run on newer platforms such as .NET and JVM. It also runs on various cloud environments such as Azure and AWS.

With the rise of service-oriented architectures (SOA), REST and web services, new protocols and methods have emerged, such as XML, HTML, WDSL, JSON and SOAP. However, COBOL integrates and connects seamlessly with modern applications, and extends its functionality to the web, mobile and cloud.

Another major advantage of COBOL is its portability. The language is compatible with most OS such as Windows, Linux or Unix.

The programming community can therefore develop applications without worrying about operating system compatibility.

This agnostic aspect also enables developers to build, test and deploy COBOL programs on the different platforms supported. This speeds up application development and execution processes.

Finally, the use of standard Integrated Development Environments (IDEs) prevalent in most industries means that teams can easily evaluate and amend COBOL programs as required.

Its adaptive and evolutionary nature has enabled the language to stand the test of time and merge with modern APIs, microservices and cloud applications.

Weaknesses and drawbacks

Despite its advantages, this language also has its weaknesses. One problem is the lack of qualified programmers in the workforce. According to a 2021 study by Advanced Software, 89% of large companies report a shortage of professionals capable of managing COBOL-based mainframe computers.

These legacy systems are difficult to operate and maintain, and querying for data extraction or analysis is a complex task.

Following the cessation of development after COBOL 2014, all resources such as compilers, debugging tools and interpreters have ceased to evolve and have not always been replaced.

Most COBOL compilers, such as those from Micro Focus or IBM, are also relatively expensive, although there are some free open source alternatives, such as GnuCOBOL.

Main uses of COBOL

Thanks to the COBOL language, mainframe computers are used for large-scale data processing tasks. These machines are renowned for their speed, security and storage capacity, making them ideal for modern applications.

A foundation for the finance industry

The entire financial services industry is based on COBOL, which was used to write its founding system code. Today, it is still used to process large volumes of data by banks, insurance companies and other financial institutions.

Systems in this industry process large volumes of transactions and serve many users simultaneously. This calls for a robust and secure language like COBOL, capable of handling, processing and managing large amounts of data while operating at high speed.

A historic language for data management and processing

As an ancient programming language for enterprise systems, COBOL has long been used to create, manipulate and manage databases.

It provides functionality for defining data structure, creating tables, inserting, updating and deleting records, and performing database queries.

It can also be used to read, write and manipulate structured data files. COBOL programs can be developed to extract specific information from files, sort and filter data to perform calculations and generate reports.

Another use case is the integration of different systems through data exchange. This language enables data to be read and written in formats compatible with other systems, facilitating the exchange of information between applications.

Finally, COBOL can be used to implement data security functions such as access control, authorization checking and encryption.

Conclusion: COBOL, an old language that's still relevant today

Almost six decades after its creation, COBOL is still used worldwide. This reliable, flexible language continues to meet the needs of organizations and financial institutions where accuracy is a priority, such as banks.

It is a historic tool for data management and processing, and many enterprise applications still rely on it. According to a Micro Focus study dated February 2022, almost 850 billion lines of COBOL code are still in use.

Nevertheless, new programming languages and technologies have emerged and are increasingly being adopted: Python, Java, JavaScript, Ruby, Hadoop or cloud platforms are just a few examples.

To learn how to handle programming languages and data analysis tools, you can choose DataScientest.

Our Data Engineer, Data Analyst, Data Scientist, Data Product Manager or ML Engineer training courses enable you to master Python, databases, business intelligence solutions, DataViz and Machine Learning tools.

All these courses are entirely distance learning, eligible for state funding and leading to professional certification. Discover DataScientest now!


DataScientest News

Sign up for our Newsletter to receive our guides, tutorials, events, and the latest news directly in your inbox.

You are not available?

Leave us your e-mail, so that we can send you your new articles when they are published!
icon newsletter


Get monthly insider insights from experts directly in your mailbox