The Evolution of CICS: CICS/VS 1.4 and Distributed Systems (1978)

Client/Server? Remote Procedure Calls (RPC)? A rose by any other name, is still a rose. Depending on what you read or who you listen to, a CICS user could participate in a client/server or distributed system beginning in 1978. CICS/VS 1.4, for OS and DOS environments enabled the CICS user to distribute his data and workload across multiple CICS-based systems.

CICS/VS 1.4 provided access to remote resources (files, queues, data bases, etc) by way of a newly introduced facility known as Intersystem Communication (ISC). With ISC, a CICS command level application could cause functional requests (i.e. function shipping) to be sent transparently or explicitly to a remote system. User file, queue or data base data could be retrieved from or sent to a remote system. Remote CICS programs or transactions could be executed and their results returned to the requesting CICS system.

Access was provided for VSAM and BDAM files, transient data and temporary storage queues, and for DL/I data base data. The requesting system and the target system could be any combination of CICS/OS/VS and CICS/DOS/VS, including a mixture of DL/I data. Remote transactions could be scheduled using the CICS START command, or individual programs could be LINKed to (better known as Distributed Program Link or DPL).

Function shipping could be described as a remote procedure call (RPC), by which data could be retrieved from a remote node or sent to a remote node. Granted, with CICS/VS 1.4, this new facility could correctly be described as being proprietary code, but in concept it represented client/server and/or RPC types of applications.

CICS/VS 1.4 also complemented CICS/VS 1.3 with the addition of command level programming support for Assembler application programs. The command level debugging facility, known as the Execution Diagnostic Facility (EDF) was introduced with CICS/VS 1.4. EDF became popular very quickly because it enabled programmers to stop before and after CICS commands while debugging applications.

Batch access to DL/I data bases which were online to CICS/OS/VS was now supported (as ugly as it was, a very poor performer because of DL/I Batch being the only DL/I available for use with CICS). CICS/OS/VS 1.4 also introduced support for Program Isolation (PI) for use with DL/I data bases, giving greater data integrity with shared data bases.

CICS/VS 1.4 was announced on March 7, 1978 (P78-44). Additional enhancements were announced for CICS/VS 1.4 with the availability of the CICS/DOS/VS 1.4 product on July 12, 1978 (P78-119). CICS/OS/VS 1.4 shipped on October 17, 1978 (P78-183).

The additional enhancements included a CICS good morning message, dynamic open of the VTAM ACB, transient data on VSAM, user requested rollback and much more. For CICS/DOS/VS 1.4, command level RPG was added. CICS/OS/VS 1.4 added a dynamic allocation sample program.