Skip to main content

Introduction to CICS

An IBM Redbooks course


First available 28 August 2017


Without knowing it, you’ve probably interacted with CICS already today. Perhaps you checked your bank balance or bought a bagel for breakfast? CICS is used by enterprises to provide the services that the world depends on, but you may have never even heard of it before.


This course introduces CICS, an unparalleled mixed language application server. We explore what an application server is, what it provides to developers and what distinguishes CICS as a mixed language application server. Through the use of a illustrative application, we explain how CICS can provide shared programming contexts such as reliability, scalability, security and monitoring to applications written in a variety of programming languages - from Java Enterprise Edition to COBOL.

    • Primary: Application Developers, IT Operations, Line of Business.
    • Also applicable to: Anybody interested in learning the basics of CICS.

    menu icon
    Section  01


    An overview of this course, with an introduction to the overall learning objectives.

    Lecture 1: Course introduction (1 mins 44 secs)

    This lecture provides an introduction to the course, explaining at a high-level the aims of the course.

    Section  02

    What is CICS?

    CICS can be described as a mixed language application server. This section explores what that actually means, the benefits it provides to business applications and CICS role in an enterprise.

    Lecture 1: Overview of CICS (5 mins 41 secs)

    This lecture introduces the concept of a mixed language application server, and describes who uses CICS and why they use it.

    Lecture 2: What is an application server? (7 mins 01 secs)

    Describing CICS as a mixed language application server only makes sense if you understand what an application server is. This lecture discusses in more detail what an application server is by describing an example application and how that uses an application server to solve some common development concerns.

    Section  03

    CICS as an application server

    Application servers like CICS provide a set of capabilities to the applications that they run. In this section we will describe some of these key services and explain how CICS differentiates itself from other single language application servers


    Lecture 1: Section overview (1 mins 14 secs)

    This lecture provides an overview to this section, addressing CICS as an application server.


    Lecture 2: Connecting to your application (4 mins 41 secs)

    This lecture describes how an application server provides mechanisms allowing your applications to be accessed over many different integration technologies such as through RESTful JSON.


    Lecture 3: Security your application (5 mins 12 secs)

    Security is a major concern for enterprise applications. How are you going to ensure that you know who your users are and how are you going to keep their data away from prying eyes? This lecture looks at the capabilities provided by an application server that help you to secure your application.


    Lecture 4: Calling programs and transferring data (5 mins 58 secs)

    This lecture describes how programs within an application can call each other and also pass data between themselves. It introduces the CICS API that can be used by any program in any language to call any other program.


    Lecture 5: Accessing databases (1 mins 41 secs)

    This lecture provides of an overview of how CICS supports accessing data stored in databases.


    Lecture 6: Monitoring (3 mins 27 secs)

    Once an application is operational it is important to be able to monitor the operational characteristics of the application. This lecture explains how CICS can help you understand if your application is meeting business level objectives and also ensure that it can meet demand.


    Lecture 7: Transactions (3 mins 58 secs)

    This lecture looks at how CICS handles transactions and why transactionality is important to applications. It also describes how CICS can maintain a transaction over the execution of an application written in different languages.


    Lecture 8: Summary (0 mins 58 secs)

    This lecture summarizes some of the key capabilities of CICS as an application server.

    Section  04

    Configuring an application in CICS

    This section takes a closer look at how CICS can be configured to provide some of these services to your application.


    Lecture 1: Introduction to resource definitions (8 mins 00 secs)

    This lecture examines CICS resource definitions including how CICS handles requests received from the web.


    Lecture 2: Working with resource definitions (2 mins 07 secs)

    This lecture describes how resource definitions act as a mechanism to control and administer your applications.

    Section  05

    Scaling a CICS application

    This section explores how CICS can scale to handle high volumes of workload and ensure availability of your applications.


    Lecture 1: Introduction to scaling (3 mins 20 secs)

    This lecture introduces how CICS can scale to meet any workload demand by allowing applications to be distributed over a set of different CICS regions.


    Lecture 2: Splitting an application into layers (5 mins 26 secs)

    This lecture explores the impact of splitting applications into application layers including interface logic and business logic layers.


    Lecture 3: Scaling for resilience (5 mins 52 secs)

    This lecture describes how running your application across multiple CICS regions can help your application to become more resilient.

    Section  06


    A summary of the key points.


    Lecture 1: Course review (2 mins 15 secs)

    This lecture provides a recap of what we learned in the course.