IBM CICS Transaction Server (TS) builds on z/OS and IBM System z facilities to provide transaction processing with high availability and scalability at a low cost per transaction and support large transaction volumes with a fast, consistent response time. Many organizations run proven but old CICS applications. New features in z/OS and CICS TS enable these existing applications to meet modern application requirements such as lack of redundancy, ease of scalability, and high availability.
This article details what you should know about using CICS tools to modernize a traditional CICS application.
An application can be modernized by converting it from a single-region architecture to a multi-region architecture so the application is available in multiple locations and continuous operation becomes possible. The locations can be different CICS address spaces or even z/OS Logical Partitions (LPARs) spread across a sysplex.
Consider a sample application, GENAPP, available with the IBM GENAPP CB12 SupportPac. This CICS COBOL application simulates insurance transactions such as creating and managing customer and policy data. The initial GENAPP model runs in a single region with data stored in VSAM files and IBM DB2 tables.
Using IBM CICSPlex System Manager (CICSPlex SM), GENAPP moves from a single- to a four-region model. The application, presentation, and data access layers are separated into unique address spaces. Data moves from VSAM to DB2 so it can be accessed via DB2 SQL calls—without changing existing VSAM-based applications that access this data.
Understanding Your Application
Before you can modernize an application, you need to explore the resources it’s comprised of, including programs, transactions, files, tables, or Temporary Storage Queues (TSQs), and how these resources interact.
In a dynamic routing environment, you need to identify inter-transaction and transaction-system affinities and know whether they prevent specific transactions from routing to particular Application-Owning Regions (AORs), or require specific transactions to route to a particular AOR. With this information, you can split workloads efficiently and move applications across CICS regions accordingly.
IBM CICS Interdependency Analyzer (IA) provides this insight. It captures information from running CICS applications and stores it in a relational database. It identifies resource dependencies, resource affinities, and other key information that’s needed before you move an application into a CICSPlex. CICS IA records the inter-dependencies between resources such as files, programs, IBM WebSphere Message Queues (WMQs), DB2 tables, and transactions. You can evaluate data for resource affinities and CICS IA can generate affinity group information for input into CICSPlex SM.
The CICS IA plug-in to the IBM CICS Explorer provides a rich query interface to analyze the collected data without the need to write your own SQL. CICS IA also provides batch reporting facilities to analyze the data.
Analyzing Resource Dependencies
In GENAPP, customer agents use the SSC1 transaction for Inquiry and Add functions on the customer file, KSDSCUST. You can use the CICS IA Explorer plug-in to show the resources involved with the transaction.