Programming guide

Top  Previous  Next

An application is a collection of related programs that together perform a business operation. XCICS applications execute under XCICS control, using XCICS services and interfaces to access programs and files.

XCICS is a transaction processing subsystem. That means that it provides services for you to run applications online, by request, at the same time as many other users are submitting requests to run the same applications, using the same files and programs. XCICS manages the sharing of resources; integrity of data and prioritization of execution, with fast response.

XCICS applications are traditionally run by submitting a transaction request. Execution of the transaction consists of running one or more application programs that implement the required function.

You should note that the term transaction is now used extensively in the IT industry to describe a unit of recovery or what XCICS calls a unit of work. This is typically a complete operation that is recoverable; it can be committed or backed out as an entirety as a result of programmed command or system failure. In many cases the scope of a XCICS transaction is also a single unit of work, but you should be aware of the difference in meaning when reading XCICS documentation.

CICS programs, transactions and tasks

To develop and run XCICS applications, you need to understand the relationship between XCICS programs, transactions and tasks. These terms are used throughout XCICS documentation and appear in many commands.:

Transaction

A transaction is a piece of processing initiated by a single request. This is usually from an end-user at a terminal, but may also be made from a Web Service, from a remote workstation program, from an application in another XCICS/CICS system or triggered automatically at a predefined time.

A single transaction consists of one or more application programs that, when run, carry out the processing needed.

However, the term transaction is used in XCICS to mean both a single event and all other transactions of the same type. You describe each transaction type to CICS with a TRANSACTION resource definition. This definition gives the transaction type a name ( the transaction identifier, or TRANSID) and tells XCICS several things about the work to be done; such as what program to invoke first, and what kind of authentication is required throughout the execution of the transaction.

Task

You will also see the word task used extensively in XCICS documentation. This word also has a specific meaning in XCICS. When XCICS receives a request to run a transaction, it starts a new task that is associated with this one instance of the execution of the transaction. type. That is, one execution of a transaction, with a particular set of data, usually on behalf of a particular user at a particular terminal. When the transaction completes, the task is terminated.