IBM Mainframe (System z) Application Programming Foundation Course

This course is designed thoroughly and delivered by professionals who have more than 10 years of industry experience. Extensive lab based exercises are incorporated so that the concepts are thoroughly learnt. This course also includes software development life cycle concepts and testing methodologies. Change management concepts and quality control processes are also explained, as these are relevant and important in software engineering practices. At the end of this course the participants will be knowledgeable to perform application design, programming and maintenance functions, on IBM Mainframe.

Tests and project work are part of this course. Upon successful completion of tests and project work for this course, participants are awarded with course completion certificate. Optionally, participants can also enroll for relevant IBM certification or mastery tests.

This course greatly helps participants to obtain a entry level position in organizations, for mainframe programming skills.

Course code : IBZS01

Duration       : 60 days (includes 8 days for project work)

Placement    : Placement assistance is provided for participants in terms of referring candidates to prospective companies or recruitment firms, preparation for interview , preparation for tests as conducted by the employers. Please note that we do not guarantee placement itself, for candidates.

This extensive course is designed to educate participant on mainframe application programming. The course begins with introduction to mainframe computing and architecture. It further presents participants with programming using various software/subsystems installed on z systems. The course completes by facilitating the participants to do a project work on topics covered thus far.


Users who want to pursue a career in IBM z systems application programming can benefit by going through this training. This course is also a foundation course for further advanced learning in mainframe systems such as DB2 database administration, z server system administration, CICS TS administration, etc


Basic experience in application or system programming using any programming language along with understanding of principles of computer operating system (OS) is required to attend this course.


Upon completion of this course students are expected to understand and apply:

  • Why IBM z systems are used for large scale or massive computing and its remarkable scalability in terms of throughput and storage and their foolproof security capabilities.
  • z systems' architecture and various subsystems or software installed on them and how they together define a efficient and cohesive computing facility for any business application.
  • Work on z system programming environments such as TSO/E, ISPF, issue relevant commands, DB2I (interactive), ability to define various kinds of datasets and further usage, using monitoring and troubleshooting facilities such as SDSF.
  • Interpret and also develop JCLs for various batch job submission requirements. Code and execute IBM provided utilities such as DFSORT (for sorting), IEBGENER (copy or print datasets), etc., and thorough knowledge of selection of one utility over other.
  • Various access method services (AMS) and kinds of VSAM data sets and ability to issue various AMS commands using IDCAMS utility. Define and maintain VSAM datasets. Interpreting and resolving messages and return codes.
  • Compile, link-edit, run and debug application programs written in various languages.
  • Write, test, debug and deploy application program modules using COBOL.
  • Write, test, debug and deploy application program modules using PL/1.
  • Evolution of IBM DB2 software and its diverse flavors as installed and used by enterprises world-wide.
  • IBM DB2 for z systems architecture and internal components and database object types. Write various SQL (structured query language) statements for definition (data definition), query & maintain ( data manipulation) and securing (data control) for various database object types. Interpret and resolve SQL messages and codes. Ability to use IBM DB2 catalog for the intended purposes.
  • Code, test, debug and deploy application programs (using languages such as COBOL, PL/1 or PL/SQL) using IBM DB2 server for data processing needs.
  • Concepts and usages of IBM DB2 stored procedures. Develop, test, debug and deploy IBM DB2 stored procedures for z systems, using any of the learnt programming languages.
  • Dynamic SQL programming usage scenario and ability deploy the same.
  • Evolution and today's usage of CICS (customer information control system). Understand various control tables and CICS commands. Develop, debug, test and deploy CICS maps and application programs that leverage CICS capabilities.

Education criteria

Any graduate/post graduate in Engineering, Mathematics, Computer Science, Computer Applications and Information Technology, can enroll in this course.

1. Introduction to mainframe - The enterprise large scale computing

  • Introduction to Mainframe Computing
  • Evolution of Mainframe Computing
  • Applicability of Mainframe Computing

2. Introduction to Mainframe Architecture

  • Basic architecture of z/OS

3. Mainframe Development Environment

  • Development Environment Overview
  • TSO/E (time sharing option / extensions)
  • ISPF (interactive system productivity facility)
  • SDSF (system display and search facility)
  • Dataset allocation and maintenance (physical sequential(PS) and partitioned datasets(PDS))
  • Resource access control facility (RACF) and access to datasets

4. Job Control Language (JCL)

  • Introductory concepts
  • Handling datasets
  • In stream and cataloged procedures and symbolic parameters
  • Generation data groups
  • Utility programs
  • Sort and Merge Utilities
  • Program compile, link edit and run
  • JES2 and JES3 job entry subsystems
  • Storage management subsystem

5. VSAM Programming - Access Method Services (AMS)

  • Introductory concepts
  • Access method services
  • Interpreting messages and codes

6. COBOL Programming

  • Introductory concepts and data elements
  • Program design principles
  • Data handling using datasets
  • Compilation and debugging
  • Advanced programming topics
  • Processing VSAM files
  • VS COBOL II considerations

7. IBM DB2 for z systems - Introductory Concepts

  • Basics
  • An explanation on data processing
  • Various types of data processing software
  • Evolution of data processing
  • Evolution of IBM DB2 software
  • Architecture
  • Data structures
  • Structured query language (SQL)
  • The DB2I and QMF
  • Data definition language (DDL)
  • Data control language (DCL)
  • Data manipulation language (DML)
  • Interpreting SQL messages
  • Introduction to DB2 catalog
  • Writing SQL scripts

8. IBM DB2 for z systems - Application Programming using COBOL

  • Introductory concepts
  • Embedded SQL basics
  • Programming with cursors
  • Online programming guidelines
  • Dynamic sql programming
  • Program Preparation
  • Program preparation steps
  • The DCLGEN command
  • Pre-compile, BIND and compile and link-edit explanation
  • Packages
  • Data processing using COBOL

9. CICS (customer information control system) - Transaction Server Programming

  • Introductory concepts
  • CICS server usage scenario in businesses
  • A brief introduction CICS server evolution
  • CICS internals and architecture
  • Developing a basic CICS application
  • Building and using a MAPSET and MAP using BMS macros
  • Developing expanded transactions
  • CICS programming techniques
  • Using the IBM provided CICS transactions
  • CICS debugging facilities
  • Additional map and screen techniques
  • Compiling a CICS program
  • Listing of common CICS areas used in COBOL programs
  • CICS tables
  • CICS control blocks
  • CICS Command Syntax
  • CICS condition codes and abend codes
  • Processing VSAM files through a CICS application
  • Processing DB2 data through a CICS application

10. Change management concepts

  • Introduction and purpose
  • Brief overview on using change control software

11. Testing methodologies

  • Introduction and purpose
  • Various phases of testing
  • How to write test cases
  • Implementing reliable testing methodology
  • Automated and manual testing

12. Project work

Project work involving IBM z systems application programming concepts.