Who would go mountaineering in stiletto heels, or drive off-road in a Ferrari? Let’s face it, there are some tools that are just plain wrong for the task in hand. This is especially true in IT. Business applications need to be built in something that is robust and reliable. Who wants to face a user revolt when systems keep crashing or the wrath of the CFO when numbers don’t add up?
At the high end of enterprise computing there are key criteria that describe the technological requirements of the business systems.
The criteria can be summed up as: Robustness and validity, strong data manipulation, accuracy, speed and accessibility.
As you would expect from a Micro Focus blog, our assertion is that COBOL is the only language that meets all these criteria. It makes sense for us to take each one and show you how COBOL fits it.
Robustness and validity
The language used to create and support applications needs to be as low-risk and error-free as possible to support the business.
COBOL’s type-rich language allows data to be described accurately with explicit scope and limits. This richness means you can meet your corporate coding standards, ensuring consistency and accuracy across your organization and third parties, including partners and industry specific compliance requirements such as Basel II and (Insurance one). This applies to data management in the same way.
For example – a MOVE of number-a of PIC 999 to alpha-a of PIC AAA will invoke a warning.
The need to write robust code is addressed by type checking when you come to compile. This improves the effectiveness of the application creators, helping them avoid any unnecessary pitfalls and deliver more robust applications.
As you run the code, you can set switches to validate the running of the code, heading off any serious errors that may have crept in.
As the language lends itself to error-free coding there’s no need for you to write huge error checking routines.
Types are applicable to the business user, they reflect the concepts of the data the user needs, in the right format. So, numeric-edited types for even stronger formatting and type management, such as blank when zero, decimal point etc. This is taken care of by typing rules in the language so you don’t have to spend time formatting what gets displayed on the screen.
Here are a couple of examples:
|Input Value||Output Value|
With these output items defined as:
77 numeric-edited-date-field PIC 9999/99/99
77 numeric-edited-bwz-negative-field PIC –ZZZ,ZZZ.99
Numeric arithmetic accuracy
Essential for robust business applications, COBOL delivers arithmetic accuracy to 38 digits – that’s more than any other language.
An 18 integer number is defined simply as number-1 PIC 9(18).
Micro Focus supports 38 significant digits (i.e. both sides of the decimal point) in a numeric field.
You’ll get an idea of how COBOL trounces Java when it comes to the accuracy needed in financial applications in this blog.
Strong data manipulation
COBOL comes equipped with a range of capabilities to deliver stronger data manipulation, these include:
- Faster data access than any RDBMS
- Data files of a variety of formats �
- File size limits set by the operating system. In fact, the Micro Focus file handler has no limit on what it can read (the OS limit is a sizeable 2 ^ 64)
- Data manipulation and reporting built in to the language with the SORT capability. This uniquely enables you to SORT and filter within COBOL without having to engage another tool or any extra steps.
- Any element of any definition in any record can be used as the SORT ‘key’
- Multiple file merging and record-level manipulation (even re-arranging the order)
- Multiple output data sets to automate complex data processing with simple language controls
- Massively faster than the alternatives
Speed is a key criteria for any business applications, they need horsepower to deliver both computational speed and batch support.
Portable across a wide variety of platforms, COBOL offers deployment flexibility and can also be optimized for specific hardware, increasing performance and throughput. COBOL’s “code generator” exploits target platform technology to deliver optimal performance, at the same time the technology also enables the creation of fully portable executable code.
While the coding language has to deliver against all of these criteria, it has to be accessible and meet the demands of business. Programming languages don’t exist in isolation. They only deliver value in the hands of the coders, who in turn are only as good as their ability to align the application to a business need. To make a valuable business contribution, the language should also combine a state of the art environment for building robust apps, including latest features (Intellisense, rapid code/debug, UI builder) and be built on the latest frameworks (Visual Studio and Eclipse).
Figure 1- state of the art COBOL IDE based on industry-standard Eclipse and Visual Studio frameworks
Figure 2 – undefined items are automatically highlighted (red underline)
Figure 3 – Right-click to see options of likely statement or variable names (“Intellisense”)
Not only does this make the language more relevant to the business context, it makes it easier to learn and maintain. More discussion of which can be found in this blog post
In short, COBOL is the language of business because it is designed with business in mind. Business relies upon and trusts technology that most closely reflects and supports how it sees the world. COBOL has been consistently developing and evolving to meet the changing demands of business for the last fifty years. Investment in the technology by Micro Focus over the last thirty-six years has ensured that COBOL continues to deliver against the criteria that business applications require, and will continue to do so for decades to come.