Dismiss
InnovationQ will be updated on Sunday, Oct. 22, from 10am ET - noon. You may experience brief service interruptions during that time.
Browse Prior Art Database

Dynamic interface definition, construction and use in Enterprise Applications

IP.com Disclosure Number: IPCOM000033631D
Original Publication Date: 2004-Dec-20
Included in the Prior Art Database: 2004-Dec-20
Document File: 2 page(s) / 42K

Publishing Venue

IBM

Abstract

This article presents a new concept in the CICS* application programming interface that will enhance the facilities to componentize applications implemented in the major procedural programming languages in that environment.

This text was extracted from a PDF file.
This is the abbreviated version, containing approximately 52% of the total text.

Page 1 of 2

Dynamic interface definition, construction and use in Enterprise Applications

Many Enterprise business applications have been written using procedural languages such as COBOL or PLI and these applications are still being maintained and extended today - it will be many years before COBOL application programming ceases to be a major activity in many businesses.

    Today's mechanisms for structuring the interfaces between modules in a COBOL program are very static and brittle. This makes it difficult to evolve the modules at the rate demanded by the business environment. As well as being static, the interface definition mechanisms do not provide useable techniques to structure the interfaces to promote modularity.

    Today, a COBOL service module, particularly when hosted in CICS*, often has a single flat structure defining its interface (in CICS called a COMMAREA). This results in a very tight coupling between the calling logic and the service module.

    In CICS, such an interface is also limited to passing less than 32K of data across the interface. Increasing the volume of data passed across the interface without introducing further structuring is likely to increase the complexity of the application design and implementation since how to structure the larger amount of data will be an application developer task.

    The invention described provides a simple, yet powerful, structuring mechanism that can be used to describe interfaces to modules in any procedural language. The mechanism is a simple evolution of the existing techniques which will make it easy for current application developers to adopt.

    The new mechanism introduces a collection of named flat structures to carry the data across the module interface boundary. Each flat structure is named and the collection is named. (In the current CICS implementation in CICS Transation Server V3.1, the flat structures are called containers and the collection a channel).

    The interface can be defined in a file (a copybook in COBOL parlance) in the same fashion as a COMMAREA. The file defines the names of the containers and the type declarations of the structures to be placed in the containers. An interface may also define multiple channel names for...