Strobe for CA Gen Overview


The Strobe Application Performance Measurement System is a product that determines where and how time is spent in online regions and batch processing programs. Strobe produces reports that help you determine how to revise applications to improve their performance. This collection of reports is called a Performance Profile.

iStrobe is a Web browser-based product that enables you to analyze your Performance Profile interactively from your workstation.

Strobe for CA Gen extends the functions of Strobe and is designed to measure applications created with CA Technologies CA Gen product family. For a list of supported releases, refer to the Release Notes for the current Strobe release.

One of the strengths of creating applications with CA Gen, or with any product that generates application source code, is that application developers can remove themselves from much of the detailed programming associated with languages like COBOL. This high-level interface allows application developers without an extensive mainframe programming background to generate applications for environments such as z/OS.

However, CA Gen can also create a problem that is usually not apparent until the application reaches the integration test phase, or worse yet, until the application is already in production: an application containing generated code that is inefficient or unresponsive. It is also difficult to locate the source of performance problems within the generated code.

Strobe for CA Gen helps you measure, analyze, and improve the performance of CA Gen applications, enabling you to develop and maintain more efficient and responsive applications throughout the application lifecycle. Strobe for CA Gen requires that you have the Strobe for Db2 and Strobe for COBOL options. If you are running in an IMS or CICS online environment, either Strobe for CICS or Strobe for IMS is also required.

The remainder of this section provides a brief overview of the CA Gen application development environment, describes the benefits of Strobe for CA Gen, and offers some background information about using Strobe and iStrobe.

CA Gen Application Environment Overview

CA Gen is an application development environment that constructs executable code based on business models. The CA Gen product consists of four sets of tools: the Planning, Analysis, Design, and Construction (PADC) Toolsets. All of these toolsets reside on the workstation and are used to create a business model. Of the four, only the Construction Toolset can reside in the MVS mainframe environment. Once the business model is created on the workstation, the Construction Toolset is used to generate the components of a system (for example, the programs, databases, screen or window designs, and transaction definitions).

Strobe for CA Gen supports applications created with the CA Gen product family and executed in an MVS environment. The following sections briefly describe the CA Gen application development environment.

Developing CA Gen Applications

CA Gen enables you to define, test, and generate applications for execution in the following MVS environments: CICS, IMS, TSO, or batch.

CA Gen applications are developed by using the PADC toolsets to create a business model (a graphical representation of an enterprise), the different business systems that comprise the enterprise, and the applications that comprise the business systems. At the heart of the business system is the action diagram. An action diagram is a set of related activities that define the logic of a procedure or action block. Many action diagrams can be combined in a dialog design to form a business system.

As shown in the following figure, CA Gen stores these business models in a central repository called an encyclopedia. CA Gen uses two types of encyclopedias:

  • Central Encyclopedia (on the host)
  • Client/Server Encyclopedia.

Once stored in an encyclopedia, a business model can be checked out of the encyclopedia so that the application developer can make necessary changes to the application. The model is then checked back in to the encyclopedia and used to generate an CA Gen application for a specific environment.

 Typical Development Cycle for CA Gen Applications

image2021-2-8_17-17-7.png

Executing CA Gen Applications in an MVS Environment

To create CA Gen applications for the MVS environment, the application programmer uses the Construction Toolset to generate COBOL source code. The generation process creates the procedures that precompile, compile, link, and bind the application. The generation process also creates the JCL or CLISTs used to execute the transactions.

CA Gen construction libraries are used to prepare and execute applications generated with the CA Gen Construction Toolset. CA Gen applications are prepared (compiled and linked) to execute in MVS environments. The compiled and linked modules are automatically stored in a standard load library as a part of the installation process. Once installed, the application then runs as a standard job under a specific target environment, such as CICS, IMS, TSO, or batch.

Strobe for CA Gen Benefits

Strobe for CA Gen collects application performance information as the generated application executes. When execution completes, this information is organized into a Performance Profile, a series of reports that show, by action diagram and action diagram statement number, where and how time is spent during application execution, pinpointing possible problem areas. Measuring your application at successive stages of the development cycle can help you evaluate and improve your code before the applications are moved into production.

In fact, managing the performance of CA Gen-generated applications with Strobe for CA Gen yields benefits in all phases of the application’s lifecycle. The following sections describe these benefits.

During Production

Measuring your production applications with Strobe for CA Gen enables you to identify areas of the application to evaluate for improvement. You can then evaluate these performance improvement opportunities, determine the changes to make, and then implement these changes.

Once these changes are implemented, and the application’s performance improves, the possible benefits include the following:

  • Fewer occurrences of production-level performance crises
  • Improved efficiency of the application
  • Reduced batch processing time and costs
  • Acceptable online response time levels
  • Capacity made available for processing other applications
  • Access to the AllFusion Gen hints file for performance hints and tips stored in iStrobe’s online knowledge base.

Strobe for CA Gen is integral to maintaining the performance of production applications. You gain greater benefit, however, if you identify and eliminate potential performance problems before they reach the production environment.

During Integration Test

The main benefit of using Strobe for CA Gen to measure applications in the test environment is readily apparent: the ability to identify areas of the application to evaluate for performance improvement before the application goes into production.

Managing the performance of the application in this phase of development helps you to do the following:

  • Deliver efficient applications that meet or exceed the expectations of your end users
  • Develop performance benchmarks for your CA Gen applications from the information you gather during the testing cycle
  • Avoid the costs associated with introducing inefficient applications into production
  • Access the CA Gen help file for performance hints and tips stored in the iStrobe knowledge base.

During Earlier Test Cycles

Using Strobe for CA Gen during earlier testing phases, such as unit test, yields subtle, yet significant, benefits. As soon as testing begins on the host, you can begin to measure the application and potentially realize many of the same benefits described in the previous section.

Over time, the benefits of using the feature during the other phases of development flow into these early testing phases. These benefits can include the following:

  • Availability of a repository of performance improvement information collected during other development phases
  • Understanding of how certain CA Gen design and coding practices affect performance
  • Ability to apply the CA Gen help file’s performance hints and tips stored iniStrobe’s online help.

Over time, you can use the knowledge obtained from regular application performance management in test and production to systematically build efficiency into your CA Gen applications as you develop them.

The next section discusses the key concepts and terms that are central to the use of Strobe for CA Gen.

Concepts and Terminology

Before using Strobe for CA Gen, you need to be familiar with the basic concepts and terminology specific to Strobe and iStrobe. The following sections introduce you to these concepts and terms.

 Using Strobe for CA Gen

image2021-2-8_17-20-36.png

What is a Measurement Request?

A measurement request specifies the parameters for measuring the performance of an application. As soon as the application is active, Strobe begins a measurement session, as shown in Using Strobe for CA Gen, an interval during which Strobe collects performance data about the application while it executes.

Unlike tracing or monitoring products, Strobe employs a sampling technique that executes within the Strobe Measurement Services Address Space (MSAS) and periodically takes snapshots of the application’s execution.

A measurement request can initiate one or more measurement sessions. During each session, Strobe collects and stores measurement data in a sample data set, a file that contains the information collected during a single measurement session. Each measurement session corresponds to one sample data set.

What is a Performance Profile?

After the sample data set is closed, you can use it to create the Performance Profile, a hierarchical series of reports that present the performance data collected during a measurement session. These reports show where and how time is spent during application execution.

For CA Gen applications, a Performance Profile contains easy-to-read reports that identify CPU use by specific action diagrams and by statement numbers within the action diagrams. The reports also identify wait time caused by specific files and devices.

By interpreting the report data, you can identify where the application’s demand for resources is concentrated and determine where to make changes to improve the performance of the application. Among other performance improvement opportunities, the Performance Profile highlights:

  • High concentrations of CPU activity
  • Excessive wait time
  • How your application invokes system service routines.

Based on the information provided in the Performance Profile, you may decide to change the way your application uses resources or rewrite the action diagram so that certain statements are executed only when necessary. Once you have decided on a course of action, implement your changes, test, and measure the application performance again.

What is a Map Data set?

The process of relating activity and wait to source code statement text is called indexing. The output of the indexing process is a map data set. A map data set is the repository for the information Strobe uses to relate offsets and addresses in the generated COBOL code with CA Gen statements in the action diagram. If you supply a map data set when you create the Performance Profile, the resulting reports relate activity to your application’s statement numbers and provide the actual statement text. Indexing is optional, but very helpful for pinpointing where to examine your source code. For information on how to create the COBOL and CA Gen map data sets, see Creating a Profile Relating CPU Activity with CA Gen Statement Text.

In addition, Strobe must obtain CSECT information for any load module you want to index. For detailed information about this process, refer to the section in the Using-Strobe-to-measure-online-applications-and-batch-programs titled “Entering Module Mapping Specifications”. For information particular to CA Gen applications, see Measuring the Application.

Important

To display the CA Gen statement number and the activity (CPU or Wait time) associated with the statement on the  and  reports, the Design dialog option Execute Statement Number must be set to O N (the default). If the Execute Statement Number option is set to OFF,  does not obtain the statement number and all activity is assigned to statement number zero.

Perform the following activities:

  • Measure your application and create a Performance Profile
  • Review the Profile to identify action diagrams which display significant resource use
  • Create map data sets for each of those action diagrams
  • Create the Performance Profile again, including the map data sets
  • Review the Performance Profile first to identify action diagrams that display a significant amount of CPU activity, and then create map data sets for each of those action diagrams.

Where to Find More Information

The following table lists the sections, or other references that provide information for specific tasks.

For information about

Refer to

Creating and submitting measurement requests

Creating and submitting measurement requests for CA Gen applications

Creating Performance Profiles

Creating map data sets

Creating a Performance Profile for a CA Gen application with Strobe

Analyzing a Performance Profile with iStrobe

Analyzing a Performance Profile with Strobe

Learning more about iStrobe

The iStrobe online help

Learning more about Strobe Performance Profiles

Improving the performance of CA Gen applications

The online CA Gen Hints, available through iStrobe online help. See Using the CA Gen Online Hints.


 

Tip: For faster searching, add an asterisk to the end of your partial query. Example: cert*