IMS stands for Information Management System. It is a data management system software. There are two systems, IMS/VS (Information Management System/Virtual Storage) and DL/I VSE (Data Language /1 - Virtual Storage Extended). Both these products are available from IBM.
IMS/VS program product contains a teleprocessing monitor, generally called IMS-DC (Information Management System - Data Communication) as well as database interface, generally called DL/I (Data Language/1). DL/I can interface with IMS/DC and CICS/VS.
It is IBM’s name for the collection of software modules that provide access to the data stored in a DL/I data base. It is IBM’s name for the interface language that programmers use in accessing the data base in an application program.
The objectives of database management systems are Data Redundancy, Data Integrity, Data Independence, Data Sharing, Data Security, Data Recovery.
IMS software environment can be divided into five categories.
Application Programs use standard CALL statements and parameter lists to communicate with IMS. Application programs can be written in COBOL, PL/I or Assembler Language.
IMS database is in hierarchical structure. IMS databases are normally stored in direct access storage, but under certain circumstances, sequential data sets can be used. Application programs make calls to IMS to request data. IMS performs the actual manipulation of data in the data base.
IMS consists of a set of program modules that intercepts all requests that programs make for accessing the data base. IMS uses DL/I to provide a set of programming standards for interfacing with DL/I modules.
The person who sets up IMS databases uses two IMS control blocks in describing the data base structure and identifying how the data base can be accessed. These two control blocks are called Data Base Description (DBD) and Program Specification Block(PSB).
IMS - DC consists of a set of program modules that allow an application program to communicate with remote terminals through a standard interface language using CALL statements and parameter lists. The way in which the program communicates with remote terminals is similar to the way the program accesses the data base.
If you have any doubts or queries related to this chapter, get them clarified from our Mainframe experts on IBMMainframer Community!