By Eric Roch, National Practice Director, Perficient
There are many ways to integrate distributed systems with the mainframe. The mainframe is an odd creature to integrate with because legacy applications were build on proprietary systems (like CICS) and protocols (like SNA). Open systems and more recently Service Oriented Architecture (SOA) make recently developed systems more interoperable.
To understand mainframe integration, you have to understand the underlying data structures. We then can discuss integration techniques and patterns. The data structures are represented in the existing programs written for the mainframe, which are mostly COBOL programs.
COBOL Metadata Primer
COBOL is a structured language with a data division that defines data structures including external files (file description) and internal program storage (working storage). The file description defines the file structure to the COBOL program so we can use this COBOL definition to understand the existing data for integration purposes. We essentially use the COBOL file definition as a map to the mainframe data that is external to the distributed systems.
When working with mainframe data you will hear the term copybook used to describe file structures. The copybook is a reusable file description that the COBOL complier copies into the code at compile time – there is no late binding of file structures. Since files are used over and over the copybook was created as a means to allow the COBOL definition to be done once and copied into all the programs the access the file. If the file structure changes, all the programs using the copybook generally must be recompiled – some changes do not affect the data structure and might not affect other programs.
The copybook therefore becomes a source of metadata describing file structures on the mainframe. Since flat file structures do not have a data dictionary or system catalog description (like a database would), at times the copybook is the single source of metadata about the file structure. Mainframe databases may also have a data dictionary as a source of more metadata, but the copybook is still required for COBOL and can be used for integration purposes.
The copybook is hierarchical in structure. Data definitions can be elementary (with only one level) or grouped. Grouped structures are numbered with the super-group having a lower level number (such as the 01 and 05 levels below) and subgroups higher numbers.
Originally, service-oriented architecture (SOA) concepts arose in response to demands for better ways to cost-effectively integrate large-scale...Learn More