CICS Explorer IA plug-in familiarization
The CICS Explorer IA plug-in provides a graphical user interface (GUI) to CICS IA that runs toolbar searches on common resources and helps you to build detailed queries to interrogate the Dependency and Affinity database objects. The CICS IA plug-in also provides a number of sample queries.
 
6.1 CICS IA introduction
IBM CICS Interdependency Analyzer for z/OS V2.2 identifies resource interdependencies in your CICS systems, automates detection of your CICS runtime relationships, records data in a DB2 database, and helps you analyze the collected information for use in your daily processes.
Some benefits of CICS IA are:
The resources that are identified by this runtime tool are those that are associated with transactions, programs, Basic Mapping Support maps, files, temporary storage queues, transient data (TD) queues, 3270 Bridge facility, web services, CorbaServer, and Enterprise JavaBeans (EJBs).
Reports on DB2, IMS, and WebSphere MQ resources that CICS uses are also generated.
A CICS IA plug-in is now available for the CICS Explorer to offer the same intuitive way to query CICS relationship data, manage queries, and navigate through complex application relationships, now from a standard interface.
The CICS IA plug-in integrates with other CICS Explorer perspectives, for example, to click a transaction in a CICS PA bar chart and drill right-down to see its dependencies, relationships, affinities, and more.
Sample queries assist you by highlighting those applications that are currently running in previous levels of CICS TS that are most sensitive to CICS API and SPI command changes.
Version 2.2 includes support for modernizing your key CICS applications for deployment in a service-oriented architecture (SOA) by identifying applications that are suitable for exposure as web services, and it provides initial integration with WebSphere Studio Asset Analyzer.
Support for CICS resources used by Software AG Natural gives you new insight into the behavior of your Natural applications.
6.2 What CICS IA can do for you
There are many business reasons for using CICS IA and they vary by industry. Here are some of the business imperatives facing corporations today:
Mergers and acquisitions
Many banks are involved in mergers and acquisitions. The result is that they must consolidate workloads and move CICS applications around for isolation reasons or to spread the workload for performance reasons. Because these applications might not be well understood by the acquiring bank and documentation might be inadequate, there is a need to understand all of the resources that are associated with a given application.
Outsourcing
Large outsourcing companies are continually facing the problem of running CICS applications with which they are unfamiliar. Often, naming standards are lacking or conflict with other applications that are running on the same LPAR. Documentation might be nonexistent or incomplete. Again, there is a need for a tool to facilitate the understanding of the resource interdependencies and affinities that are involved.
Maintenance or enhancement of applications
During the normal application life cycle, CICS applications require maintenance and enhancement. When a programmer who is unfamiliar with the application that they are required to modify starts the modification process, much time can be spent trying to understand the application and the inherent flow of transactions. This learning curve can be greatly reduced using CICS IA, which identifies the resources that are affected directly and indirectly.
6.2.1 CICS IA highlights
Using CICS IA you can:
Automate detection of runtime resource relationships
Understand application flow with flexible resource-relationship reports
Accumulate resource-relationship data in a DB2 database
Build relationship maps to help improve the speed of application maintenance and to help reduce the time to resolve problems
Compare applications and resources across regions
Migrate, reuse, and extend CICS applications more quickly
Support SOA implementations with deep application understanding
Make informed decisions about the best way to split workloads
Minimize the impact of routine application maintenance for the user
6.2.2 The questions that CICS IA can answer
These are some of the questions that can be answered with CICS IA, and we offer them to give you a sense of what is possible with CICS IA:
What region(s) does a particular CICS application run in?
What are all of the CICS resources used by a given application?
What are all of the CICS resources used by a given transaction?
What transactions belong to a given application?
What programs does a given transaction invoke?
What transactions access a particular file and how?
What resources are used by a specific program?
How is a file accessed by a particular program?
Which affinities does a transaction have?
How do you query on DB2, MQ, or IMS resource use?
6.3 Description of CICS IA
IBM CICS Interdependency Analyzer for z/OS is the IBM discovery tool for CICS Transaction Server for z/OS, offering a wide range of new capabilities and supporting completely new functions in CICS Transaction Server, Version 3.2. New capabilities, such as threadsafe and affinity analysis, a new user interface, and support for Software AG Natural, make it possible to achieve better reuse, management, and control of your applications through improved understanding of an even wider range of CICS systems and resources. CICS Interdependency Analyzer facilitates projects, such as CICS version-to-version migration, affinity removal, and Web service refactoring that depend on deep knowledge of application, system, and resource relationships for their success.
CICS IA is a runtime and batch system for use with CICS Transaction Server for z/OS and CICS Transaction Server for OS/390®. It has two purposes:
To identify CICS application resources and their interdependencies.
This function enables you to understand the makeup of your application set, such as:
 – Which transactions use which programs
 – Which programs use which resources (files, maps, queues)
 – Which resources are no longer used
 – What applications does a CICS region contain
CICS IA captures interdependency information while CICS is running and stores it in VSAM files. Detailed reports can be produced from the VSAM files, if desired. Subsequently, the VSAM files load the DB2 database.
To analyze transaction affinities
Affinities require particular groups of transactions to be run either in the same CICS region or in a particular region.
Affinities information is useful in a dynamic routing environment because you must know of any restrictions that prevent particular transactions from being routed to particular application-owning regions (AORs) or that require particular transactions to be routed to particular AORs.
CICS IA captures and loads the Affinity data into its DB2 databases. The data can then be queried with the CICS IA plug-in, the CICS IA online transaction CINQ, with batch SQL queries, or with other SQL query software tools. Through batch SQL processing, detailed reports can be produced.
Many large organizations have used CICS since the early 1970s, their systems growing and evolving with the business. During this time, many techniques of implementing applications were used—as a result of new function, changing corporate standards, technical requirements, and business pressures.
Frequently, this growth was not as structured as it might have been with the result that many applications and services share common resources and changes in one area typically affect many other areas. This issue can reach such a level that the system can no longer develop in a controlled manner without a full understanding of these interrelationships. CICS IA can help you achieve this understanding, for example, if you need to change the content or structure of a file, you must know which programs use this file because they must be changed too. CICS IA can tell you this information and the transactions that drive the programs. CICS IA records the interdependencies between resources (such as files, programs, and transactions) by monitoring programming commands that operate on resources.
The application that issues such a command has a dependency on the resource that is named in the command, for example, if an application program issues the command EXEC CICS WRITE FILE (myfile), it has a dependency on the file called myfile. It might have similar dependencies on transient data queues, temporary storage queues, transactions, other programs, and so on.
The commands that are monitored are typically CICS application programming interface (API) and system programming interface (SPI) commands that operate on CICS resources; however, you can also instruct CICS IA to monitor some types of non-CICS command that operate on non-CICS resources; for example:
MQ calls to WebSphere MQ resources
EXEC DLI calls to IMS database resources
DB2 calls
Dynamic COBOL calls to other programs
Potentially, the inclusion of any non-CICS resources gives you a fuller picture of the resources that a transaction uses.
The Collector component of CICS IA collects the dependencies that apply to a single CICS region, that is, a single application-owning region (AOR) or a single, combined routing region-AOR. It can be run against production CICS regions and is also useful in a test environment to monitor possible dependencies that new or changed application suites or packages introduce.
From the interactive interface of CICS IA you can control Collectors running on multiple regions.
 
CICS IA with your entire workload: To ensure that you monitor as many potential dependencies as possible, use CICS IA with all parts of your workload, including rarely-used transactions and abnormal situations. CICS IA collects these dependencies into a database. You can store the dependency information from several CICS regions into the same database. You can review the collected dependencies using the CICS IA Query interface, or list them using the Reporter.
6.4 CICS IA plug-in overview
Figure 6-1 shows all of the views that are available in the new CICS IA plug-in.
Figure 6-1 Views of CICS IA plug-in
6.5 Toolbar searches and queries
The CICS IA plug-in has two methods of interrogating data that the CICS IA Collector collects: toolbar searches and queries.
6.5.1 Toolbar searches
The CICS IA plug-in has four toolbars that you can use to search for common resources, programs, transactions, and regions, which you can see in Figure 6-2 on page 144. Toolbar searching is a quick way of interrogating a limited amount of data because the resources that you can interrogate are fixed by the menu options.
You can search by name and region only, or you can use the Regions toolbar to search by regions only; however you can restrict or expand the search criteria by using the wildcard. The structure of the results that are displayed in the Resources window is also fixed. The description of the toolbar search that you run is shown above the results in the Resources window. You cannot save the results of a toolbar search. Figure 6-2 shows the toolbar search.
Figure 6-2 Toolbar search
6.5.2 Queries
The CICS IA plug-in provides you with a number of defined queries, which you can edit, and helps you to build detailed queries of your own. When you create a query, you can define the structure of the results that are displayed in the Resources window. The structure is not fixed. You can query any resources in any combination. You can also add filters to the query to further refine the results. The description of the query that you run is shown above the results in the Resources window. You can save queries that you edit or create.
When you run a query, you can save the search results in a list under the query name in the Queries window for future reference. You can copy the definition of a query to the clipboard and paste it into the same folder, or a different folder, in the Query window. If you want to run your own SQL, you can paste the query definition into a text editor to view the raw SQL strings that run against the DB2 tables. Figure 6-3 shows the CICS IA plug-in main window.
Figure 6-3 Main CICS IA plug-in menu
The Explorer has an implicit wildcard (*) that is added to the end of all search values. The wildcard is not visible, for example, when you search using the toolbar or define queries; instead, if you type FIN as a value, it is read as FIN*. The wildcard is denoted by the *. In this way, the search is for all resources that begin with FIN.
If you require an explicit wildcard, you can add it anywhere in the search definition; however, the implicit wildcard at the end of the search value remains, for example:
To search for resources that begin with FIN and include 01, enter FIN*01.
To search for resources that contain 01, enter *01.
To narrow your search as much as you want, you can use as many wild cards as required, for example, A*0*3* is also acceptable.
The implicit wildcard is nearly always added to the end of the search value, for example, searching for PROG*AF can return:
PROGAAAF
PROGAAFA
PROGAFAA
 
Note: A wildcard is not always added. If it is a transaction, and we enter FINA, we do not add an *.
Use the toolbar at the top of the CICS IA plug-in to search for common resources. You can search by name and region only. You can restrict or expand the search using the wildcard.
To run a toolbar search for common resources:
1. Use the menu in the Find field to select a resource to search.
2. Use the ID field to limit the search to a particular ID, or you can leave the field blank.
3. Use the Region field to limit the search to a particular region or regions.
4. To run the search, click Search  Run, click the green toolbar button, or press Enter. The result of the search is shown in the Resources window.
6.6 Programs and Transactions windows
When you first open the CICS IA plug-in and connect to the database the information in the Programs window and Transactions window is retrieved from the data that is extracted to the database by the CICS IA Collector. The information is displayed in an alphabetic list and is static.
You can use the toolbar search, which is located at the top of the Queries and Regions window, to explore the programs and transactions. Figure 6-4 on page 147 shows an example of the Programs and Transactions window.
The information in the Programs window is a list of all of the programs that are known to CICS IA, which are:
Programs that are the sources of interactions
Programs that are the results of interactions
Programs that are CICS resource types
The information in the Transactions window is a list of all of the transactions that are known to IA, which are:
Transactions in which programs are running
Transactions that are the results of interactions
Transactions that are CICS resources of TRANSID type
Figure 6-4 Programs and Transactions window
6.6.1 Searching programs and transactions
You can search the programs that are listed in the Programs window. The data is stored in the database by the CICS IA Collector and is retrieved when you first open the CICS IA plug-in and connect to the database.
To search the programs list for particular programs that you want to analyze further:
1. Click the Programs tab to bring the Programs window to the front.
2. To filter the search, in the left field, enter the name of the search criteria, and in the Region field, enter the region search criteria. An implicit wildcard is appended to the end of the search criteria, and you can add wild cards at the beginning and in the middle. You can search by name only, region only, or name and region.
3. Press Enter, or click Search  Run to run the search. The results are displayed in the Programs window.
 
Transactions: This is the same process for transactions except that you search transactions in the Transactions window.
6.7 Regions window
When you run a toolbar search or a query, the Regions window displays all of the regions for which the CICS IA Collector stored data in the database. The results are displayed in an alphabetic list. You have only one search field, which is for the region name. Figure 6-5 shows an example of this window.
Figure 6-5 Regions window
You can search the regions list for particular transactions that you want to analyze further. To search in the Regions window:
1. Click the Regions tab to bring the Regions window to the front.
2. To filter the search, in the search field, enter the region name search criteria. An implicit wildcard is appended to the end of the search criteria, and you can add wildcards at the beginning and in the middle.
3. Press Enter or click Search  Run to run the search. The results are displayed in the Transactions window.
4. Right-click the name of the region you want to analyze.
5. From the menu, select the resource that you want to search.
6.8 Properties window
The Properties window gives you details about programs, transactions, files, TD queues, TS queues, and exits, as shown in Figure 6-6 and Figure 6-7 on page 150.
Figure 6-6 Properties window
 
 
Figure 6-7 Properties window Part 2
6.9 Supplied queries with CICS IA plug-in
There are a number of predefined queries that are supplied with the CICS IA plug-in for each resource. You can edit the queries to suit your requirements. Figure 6-8 on page 151 and Figure 6-9 on page 152 show examples of the window that you see with the queries all expanded.
Figure 6-8 CICS supplied queries
Figure 6-9 DB2 IMS and MQ supplied queries
To run a predefined query in the Queries window:
1. In the Queries window, select the resource that you want to query, as shown in Figure 6-10 on page 153.
2. To view the query names, click the plus sign to expand the list of queries, as shown in Figure 6-11 on page 154.
3. To run the query, right-click the query name, and click Run, or click the query you want to run, and click Search  Run. The results are displayed in the Resources window.You can save the results for future reference and further analyze the results. Figure 6-12 on page 155 is an example of you clicking Run, and Figure 6-13 on page 155 shows the results.
Next, we show a step-by-step example of running the supplied query: all transactions by region. Figure 6-10 on page 153 shows the selected CICS queries.
Figure 6-10 CICS query selected
Next, we look at general queries underneath the CICS heading. Figure 6-11 on page 154 shows the general queries expanded.
Figure 6-11 General queries expanded
Click Run to execute the query, as shown in Figure 6-12 on page 155.
Figure 6-12 Click run to execute
Figure 6-13 shows results of the all transactions by region query.
Figure 6-13 All transactions by region results
6.10 Creating your own queries in the CICS IA plug-in
To create a query:
1. Click Explorer  New, or right-click in the Queries window, and select New, as shown in Figure 6-14. If you want to save the query, right-click the folder name under which you want the query to be listed.
Figure 6-14 Create new query
2. From the menu, select the resource type that you want to query. We selected CICS, as shown in Figure 6-15 on page 157.
Figure 6-15 Create CICS query
3. In the Create Query window, go to the Name field, and enter a query name. We called ours test1.
4. In the Show panel, click the green plus sign button to select the resource or resources that you want to query, as shown in Figure 6-16 on page 158.
Figure 6-16 Query resource selection
5. Click the red X button to remove resources.
6. Click the yellow arrows to move the selected resources up and down the tree so that the query results are presented in the required order. The resources tree that is created from your selections is in the format in which the results are displayed in the Resources View when you run the query.
6.10.1 Adding filters to the query
When you create a query, you can further refine your query by editing the right pane in the Create Query window. When you select an expression, the right pane changes allow you to further define your query:
1. Select is or is not for the values in the query. If the expression that you selected has a known set of values, for example, Resource Type, the values are listed. These properties are added to the left pane so that you can view the query string for each line easily. If you need both is and is not values to be included in the query for the same resource, you require two lines for the same resource because you cannot combine is and is not values.
2. Define the expressions you selected by arbitrary values, for example, Resource Name. Use the editable table to define the values. These properties are added to the left pane so that you can easily view the query string for each line. An implicit wildcard is appended to the end of the value, and you can add wildcards at the beginning and in the middle.
To our test1 query, we selected resources as being transactions. We then further filtered this down to being a particular transaction. So for the filter, we select Transaction. We then select transaction is EMS1, as shown in Figure 6-17.
Figure 6-17 Filter query
When we run this query, we get the results shown in Figure 6-18.
Figure 6-18 Results of Test1
6.10.2 Modifying an existing query
You can modify existing queries whether they are supplied predefined queries or queries that you created.
To modify an existing query:
1. Right-click the query that you want to edit, and click Edit, or click the query that you want to edit, and click Edit  Edit Query. The Edit Query window is displayed, as shown in Figure 6-19.
Figure 6-19 Edit query
2. Edit any aspect of the query that you want. To save the edited query as a new query, change the name. Figure 6-20 on page 161 shows the Edit CICS query window.
Figure 6-20 Edit CICS query window
3. Click OK to save the query. The query is saved in the same folder that the original query is saved.
6.10.3 Saving your queries in folders
When you create and define your queries, you can save them in the Queries window for future use.
To save your queries:
1. Before you create a query, in the Queries window, click the folder name under which you want the query to be listed. You cannot move a query after it is saved.
2. After you name and define your query, click OK, and the query is saved in the query folder that you selected.
3. To delete a query, in the Queries window, right-click the query name, and click Delete.
6.10.4 Creating a query folder
You can save queries and query results in the existing folders or create a new folder.
You can create folders under any of the existing folders as a subfolder. To create a folder:
1. In the Queries window, click the position where you want the folder to be created, and select File  New  New Folder, or right-click, and select New  New Folder, as shown in Figure 6-21. A folder called New Folder is created in the Queries window.
Figure 6-21 Create new folder
2. Change the name New Folder to the required folder name.
3. To delete a query folder, in the Queries window, right-click the query folder name, and click Delete. You cannot move an existing folder in the structure.
6.11 Analyzing query and search results
You can further analyze the results of any query or search that are displayed in the CICS IA plug-in windows. You can view the programs and transactions that are used as a resource and the region in which they are using that resource. You have the option to analyze the resource in the region in which it is being used. You can analyze the use of each resource across all regions or specific regions.
To further analyze any query or search results:
1. Right-click any resource that is displayed in any window in the CICS IA plug-in.
2. Click Used By or Uses Resources, as shown in Figure 6-22. Only programs and transactions have the Uses Resources option.
Figure 6-22 Used By and Uses Resources options
3. Click All Regions or a specific region that is shown in the menu:
 – The results for the Used By option are displayed in the Used By window.
 – The results for the Uses Resources option are displayed in the Uses windows.
4. Repeat steps 1 to 3 to further analyze the results in the Used By and the Uses windows.
If you select a resource in the Uses window, the lower panel in the Uses window shows the names of the programs that are using that resource. You can navigate the program tree that is displayed in the lower panel by using the yellow up and down arrows, which move between each resource in order.
5. To recall previous search results in your current CICS IA plug-in session, use the yellow back and forward arrows. The resource currently being analyzed is displayed at the top of the window, as shown in Figure 6-23 on page 164.
Figure 6-23 After clicking Used By
6.12 Comparing query and search results
When you have a number of query or toolbar search results, you might want to compare two or more results. You can select any number of results in the history using the Compare search results window. You can also compare saved query results.
The Compare search results window relies on complete searches being of the same structure. For large amounts of data, it is more efficient to create a query. You can compare query and search results using the Compare search results window, which is shown in Figure 6-24 on page 165:
1. Click the compare torch icon to open the Compare search results window, shown in Figure 6-24 on page 165. Both panels contain a list of all query results. Select the results in the left panel to Show resources in those results and compare with the results that you select in the right panel to show resources that are not in those results.
Figure 6-24 Compare search results
If you want to compare saved query results, you must view the saved query results in the Resources window so that the Compare window can include the saved query results in your selection of choices.
2. Click the boxes next to the results that you want to compare.
3. Click OK. The Resources window displays the results. The comparison that was run is identified in the grey section of the Resources window. If there are no results, the comparison information is shown but the results window is empty.
4. Optional step: To clear the history of query results from the Compare search results dialog box, click the down arrow next to the torch icon to display the menu items. Click Clear History.
 
..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset