The Evolution of CICS:
Five Important Concepts (1968-2003)
Someone asked me to comment on what I thought might be the
five most important concepts embodied in the CICS product. The
following is my answer to that person.
If you have comment or question about this text
send me a note.
-
CICS is an "application server". That is, it provides services for
the given environment such that the user (application programmer) does
not have to code those functions.
The user issues a command to read a file or read from a terminal,
and CICS provides the code that performs that function.
-
The basic architecture of CICS has enabled it to evolve over a
period of 35 years (as of 2003), changing its internals to support
new technology, without impacting applications the user has already
implemented. This concept is called object level compatibility. The
user does not have to recompile or re-prepare his applications already
written in order to run in new and enhanced environments. CICS
changes, the user's applications need not. Many users today have
literally thousands of application programs written and they are able
to move to new releases of the operating system or CICS without change
to their existing code.
-
CICS enables the user to write applications in a variety of
languages (COBOL, PL/I, Assembler, REXX, RPG,etc) in a platform
independent manner. The use of CICS commands is the same on MVS, VSE,
UNIX, iSeries (AS/400), etc. CICS skills are highly transferrable to
different machine and operating systems environments.
-
CICS applications can be implemented in a two or three tiered manner,
separating presentation, business and data logic. All of the function
needed by an application need not reside in a single environment. The
presentation component could be located on a desktop computer,
presenting and/or accepting data from the user, and this could in turn
initiate a business process perhaps physically located elsewhere
(another computer). That business logic, can in turn, access business
data in one or more other computer environments. Much of this
interoperability is transparent to the application programmer. The
program asks to read some business data, and CICS can be set up to
route such requests to the data owning node, transparent to the
application making the request.
-
CICS provides internal function to use the given physical
environment in a more efficient manner than the services of that
environment can provide. For instance, on MVS or VSE, CICS provides
its own logic to carry out task, program and storage management with
considerably more capability than the host operating system. This
enables the user of CICS to achieve very high performance, with regard
to transaction processing (units of work per second, per hour, etc),
and also to more efficiently use the resources of the physical
environment (storage, cycles, etc).
Copyright © 2003 - Yelavich Consulting, Sparks, NV
Click here
for other articles regarding the evolution of CICS.