History

From CICS Wiki

Jump to: navigation, search

Contents

A Brief History of CICS

Hursley
Hursley

In 2009, CICS will celebrate its 40th anniversary as an IBM Program Product. IBM "Blue Letter" 269-44, dated July 8, 1969 announced the availability of the System/360 Customer Information Control System, Program Product 5736-U11, was "ready for shipment".

On June 23, 1969, IBM announced "unbundling", which basically said IBM would begin to charge separately for Systems Engineering services and program software. CICS was among the very first IBM software offerings to be packaged as a "Class A Program Product" (Class A PPs provided software defect support).

Free software

Prior to 1969, CICS had initially become available as a free "Type II Application Program", which was a common IBM software distribution prior to June 1969. IBM blue letter P68-66, dated April 29, 1968 announced that "Three New Type II Programs on Information Systems To Be Available Mid 1969". CICS was among the three programs announced at that time; the Generalized Information System (GIS) and Information Management System (IMS) being the other two. CICS was initially known as the Public Utility Customer Information Control System.

System 360

On April 7, 1964, IBM announced the System/360. The S/360 was a major event in the history of computers. Unlike its predecessors, large IBM binary computers such as the 7090 and the 7040, or the more commercial machines, the IBM 1401 and 1410, the S/360 could be used for a much wider range of applications, from the compute intensive university or scientific applications, to the bread-and-butter commercial applications such a billing and file management.

The S/360 introduced a wide range of processors and a whole host of peripheral devices, including tape, direct access and printers. New to many computer users was the idea of "teleprocessing", or using keyboard/printer devices, such as teletype or IBM 1050 or 2740, to communicate with "online" applications running on the S/360.

The initial customer acceptance of the IBM S/360 was very good, and customers began to migrate their previous systems to the new environment. Initial sales also included customers who expressed an interest in "going online" and enabling "terminals" to access their applications in "real time" and "online". All of this was 'good news' except few knew how to make it happen.

The need for Online processing

Between 1964-1967, sales of the S/360 continued, but a backlog began to develop, customers wanting to "go online" but needing help in doing so. Sample programs and "Type III Application Programs" began to appear, to assist customers with implementing their online, teleprocessing applications.

The Utilities Industry, in particular, had the most pronounced backlog of customers struggling to implement their online systems. The common motivation was to provide "customer service" where a customer could call or walk into a customer service location and conduct any type of transaction regarding their account with the service provider (gas, electric, water company, etc).

IBM recognized that unless something was done to accelerate the customer implementation of online systems, the risk was that customers would cancel some part of their order for hardware (transmission control units, terminals, additional memory or direct access devices, etc).

A ‘sample’ implementation

Many IBM people, as well as IBM computer users, were focused on the concern. What was needed was a good 'sample program' to show how online, teleprocessing systems could be designed and implemented. Major accounts such as Commonweath Edison of Chicago, and Consolidated Edison of New York, began to develop their strategies and software to support teleprocessing.

Ben Riggins

Within IBM, a number of Systems Engineers (SEs) began to write and contribute their sample code, showing how to implement online systems. Among them was Ben Riggins, formerly an IBM Customer Engineer (CE) but now an SE in the Richmond, Virginia branch office. Ben was assigned to work with the Virginia Electric Power Company (VEPCO). Ben had his ideas of how a general purpose program could help all utility accounts implement their vision of an online system.

IBM invited Ben to join the newly formed IBM Development Lab in Des Plaines, Illinois (a suburb northwest of Chicago) in 1968, and gave him the task of producing his idea for a general purpose sample program to implement online teleprocessing systems.

IBM's initial intent was to address the backlog of systems yet to be installed for utility industry accounts, however as soon as it became known that someone in IBM was working on a general purpose, transaction oriented system for the S/360, there were requests from all industry categories for more information.

CICS is born

In 1968, CICS became available as a free, Type II Application Program, with users in every industry category. Transamerica in Los Angeles, Northern Indiana Public Service Company (NIPSCO), Colorado Public Service of Colorado, United Airlines, and many others were early adopters of the software known as CICS. The other accounts which had begun to develop their own approach (Commonwealth Edison, ConEd, etc) continued with their proprietary software.

In 1969, IBM announced Program Products and CICS was no longer a free software offering. This did inhibit sales and customer acceptance. CICS enabled customers, in any industry, to quickly implement their online systems, most of which were inquiry only at that time.

Assembler only

The initial release of CICS supported only the Assembler programming language, because the perception was that high level languages, such as COBOL and PL/I were too costly in terms of machine resources and terminal response time. Users, however, demanded such support, and in 1970, CICS announced its first support for COBOL and PL/I.

The VSE factor

In 1971, the huge demand from smaller customers was heard and CICS for the Disk Operating System (precursor to VSE) was announced and delivered. There was the standard version of CICS/DOS but also a very small, entry level version called CICS/DOS Entry.

In 1972, the IBM 3270 was announced and delivered, and customers were ready to evolve from the hard copy terminals, such as the AT&T Teletype and the IBM 1050 or 2740/41 to video display terminals. CICS was an early supporter of the new technology.

CICS goes virtual

Also in 1972, IBM announced the notion of 'virtual systems' and a new operating systems would be introduced to support the new technology. Unlike the Primary Control Program (PCP), Multiprogramming with a Fixed number of Tasks (MFT) or Multiprogramming with a Variable number of Tasks (MVT) of the past, CICS was being asked to support the new VS environment.

In 1972-73, CICS moved quickly to support the new virtual system, for both the large MVS-class customer, but also for the smaller DOS/VS customer. By this time customers had made serious commitments to online systems, and a number of new technologies were added to CICS, including support for online update and recovery/restart. Support of new data management technology, such as DL/I was incorporated into both the MVS and DOS versions of CICS.

In the 1975-76 timeframe, IBM introduced VTAM and System Network Architecture, taking users from the previous, primitive support of BTAM into newer, more capable support of networking. CICS delivered its first support of VTAM/SNA in 1975/76.

Command Level

In 1977, CICS introduced its command level programming interface, a dramatic change in application programming which has had its positive effect to this day. Command level program isolates the application from its physical environment and has enabled customers to implement distributed systems (client/server).

Multiple Region Operation

In the 1978-1980 timeframe, CICS delivered its support for Multiple Region Operation (MRO) and Intersystem Communication (ISC), enabling the customer to easily distribute applications and data resources across multiple locations. This allowed customers to overcome the early storage limitations of virtual systems, and enabled the customer to have multiple, concurrent units of CICS-related work running on multiple machine processors (multi-processors).

High availability

The 1980s brought continued enhancements to CICS and more capability for the CICS customer. High availability was enhanced with the new XRF support, CICS was ported to new environments, such as the personal computer (CICS OS/2). More portability of CICS was offered with CICS running on UNIX machines, the AS/400 and non-IBM environments such as DEC or HP.

CICS Client software

The CICS Client was introduced in the early 1990s, which further complemented CICS' ability to support distributed systems and client/ server applications. A CICS client could be a PC/DOS machine, Macintosh or now, more modern desktop environments such as Windows 95/98/NT or IBM's AIX.

The CICS Client is an integral part of CICS' evolution to support web enablement, or the ability of web browsers to access CICS applications and conduct e-business and/or e-commerce. Customers in all industry categories have now web enabled their CICS systems.

the 1990’s we go parallel!

CICS had evolved its distributed architecture beginning in the 1978-1980 timeframe. This has served it well and the needs of its users as well, with the advent of parallel systems in the 1990s. CICS, with its MRO architecture, fits extremely well, with the concepts and goals of parallel systems. Parallel systems users are motivated to have higher system thruput and/or higher system and application availability. CICS support of parallel systems supports these goals. Work can be distributed across any number of MVS regions or systems within a sysplex, and applications can be cloned and data can be shared, such that if any single component becomes unavailable, its work can be carried out by the other system.

The Internet

In addition to CICS' support of parallel systems, the product was quick to provide support of the Internet. Beginning with the CICS Internet Gateway and the [[CICS Gateway for Java]], CICS has since evolved its support to now offer multiple ways for the user to web enable his applications. A web browser can access CICS directly or through an outboard server such as AIX or Windows NT, or via the operating system's web server. The CICS Transaction Gateway can be used either on an outboard server or in its own address space on MVS.

Java

Business applications, written in Java to work with CICS applications and data resources, can execute as applets on a desktop web browser, on an outboard server as a servlet, in a CICS Transaction Gateway region as a servlet, or even within the CICS address space. IBM's WebSphere Application Servers can be used as front-ends to CICS. CICS is very much on the forefront of e-commerce and e-business.

Open Transaction Environment

In order to enable the use of Java in a CICS region, CICS developed a facility known as the Open Transaction Environment. Since Java used operating system components such as Unix System Services, CICS OTE has been able to execute Java applications within a CICS region, but dispatched under a separate task control block (TCB).

The OTE support was later expanded to enable CICS DB2 applications to execute on uniquely dispatched TCBs, saving notable amounts of CPU cycles by avoiding highly repetitive TCB switches between the OTE allocated TCB and CICS's main TCB, the QR quasi-reentrant TCB. Virtually all CICS DB2 users have implemented this new support and increased transaction throughput while saving CPU cycles.

Most recently, CICS has further enhanced the OTE support by allowing the user to execute applications which may include Application Program Interfaces other than that provided by CICS. This enhancement enables the user to support more applications running within the CICS region.

The OTE support introduced the notion of applications being "THREADSAFE", which in simple terms means they're reentrant and serially reusable. Assuming the application meets the criteria for being THREADSAFE it can share CICS resources (files, data bases, queues, etc) with perhaps multiple copies of applications running concurrently on multiple and different TCBs (as well as MVS images and mainframe processors ("engines")). This support provides greater utilization of multiprocessors and increases the throughput of the user's overall workload.

In version 3.2 (2007) IBM enhanced the CICS-MQ interface to support the OTE environment. Also the IBM TCP/IP interface EZACIC01 support the OTE environment starting with z/OS R7 as well.

Roland 15:22, 21 October 2007 (CDT)

Integrated Compiler

Since serveral release of CICS we got support of integrated compiler and it save some working storage items. Starting with z/OS R8 C/C++ joined the family. Check out the latest APAR's about this

Roland 16:58, 22 October 2007 (CDT)


SOA

In addition to CICS's comprehensive support for Java and the Internet, the most recent releases of CICS now offer support for new environments through the use of [[Service Oriented Architecture]] (SOA). The goal of SOA is to enable applications, residing anywhere, can access other applications, with security understood and have the results of the called application returned to the requester. Reusability of existing applications is a major benefit of SOA, meaning applications and their services can be implemented on any system, not just the system of the requesting application.

CICS has increased its interoperability with IBM's Websphere Application Server (WAS) and Enterprise Java Beans (Java applications). A CICS EJB can invoke an EJB executing in a WAS environment and vice versa. CICS's Transaction Gateway is now the strategic interface for CICS applications to invoke WebSphere applications located in other operating systems environments (images).

XPLINK

Starting with version 3.1 (2006) IBM introduce an new X8/X9 TCB like the L8/L9 TCB for DB2 in order to support a C/C++ XPLINK enviroment.
Of course where are other new TCBs with CTS 3.1

Roland 15:22, 21 October 2007 (CDT)


the 2007 we go 64-bit!

Starting with CTS 3.2 (2007) we got 64bit support for CHANNELS/CONTAINER. A new feature is also Dynamic DFHRPL.

Roland 15:22, 21 October 2007 (CDT)


This concludes a brief history of CICS. For more information, feel free to contact Bob Yelavich, Yelavich Consulting, 4181 Talladega Drive, Sparks, Nevada 89436, 775-626-5506, bob@yelavich.com

Personal tools