Realizing that CICS assets can be SOA solutions IBM-CICS

Part of the hesitation in using new technology to transform existing assets in the form of heritage applications into an SOA solution is the seemingly complex relationship between all the components involved or even in knowing what components need to be invoked.

The scenario we are using in this publication is by no means the only solution; instead, it provides one way of using some of the technology to achieve a robust SOA implementation. More of this is discussed in the chapters that follow, but there is first a need for the application programmer to recognize the types of CICS assets that can be transformed.

CICS programs are typically grouped into application suites or components for performing a common set of business actions. Identifying the CICS programs that provide flexible public interfaces and understanding these interfaces is the first key step for re-use.

Over the past 36 years, developers have created three major types of CICS applications or assets:

1. CICS COMMAREA programs

These programs receive requests and send responses through an area of storage called the COMMunications AREA (COMMAREA). The programs themselves can be written in COBOL, PL/I, C, C++, Assembler, or Java. These programs are akin to subroutines as they are unaware of how they were invoked. Their state, transactional scope, and security context are managed by CICS itself.

2. CICS terminal-oriented programs

These programs are sometimes referred to as 3270 programs because they were designed to be invoked directly from an IBM 3270 Display Station or similar buffered terminal device. Invocation usually corresponds to a single interaction in a user dialog, starting with the receipt of a message from the terminal and ending with the transmission of a reply message to the same device.

Input data from the terminal device is carried in a datastream, which the application acquires through a RECEIVE command. After processing, an output datastream is transmitted back to the terminal device through a SEND command.

Terminal-oriented programs must be capable of analyzing device-specific input data streams and building the output data streams that are to be transmitted to the terminal.

With the introduction of basic mapping support (BMS), the programmer only needed to be concerned with the static layout of the panel to be displayed. Device-specific information and terminal datastreaming was handled by BMS, thus enabling applications to be more device independent.

3. CICS programs that use channels and containers

Channels and containers are new resources in CICS TS V3.1 that provide the capability to pass data from one application to another application.

  • A channel is a logical resource that must contain one or more containers.
  • A container is a named block of data designed for passing information between programs.

The major advantage of using channels and containers compared to using a COMMAREA is that the length of a container can exceed the 32 KB limit for COMMAREA data. CICS uses channels and containers to pass data between the message handlers of a pipeline.

All rights reserved © 2018 Wisdom IT Services India Pvt. Ltd Protection Status