Topaz for Program Analysis
Topaz for Program Analysis intelligently analyzes mainframe programs and presents the results of that analysis in a visually intuitive manner. Using program structure and logic flow charts, Program Analysis reduces learning curves for programmers unfamiliar with the mainframe or unfamiliar with the structure of a program. The analysis provides invaluable insights into programs that don’t have documentation and are 20, 30 or even 40 years old.
Topaz for Program Analysis includes Runtime Visualizer, a feature that provides unprecedented graphical visibility into often-complex interactions between mainframe programs. This visibility makes it easy for veteran and novice developers alike to quickly understand, update and troubleshoot even the oldest and most complex mainframe code.
With Runtime Visualizer, developers can:
- Get a clear and accurate “snapshot” of a program’s real behavior in either production or test environments under runtime conditions
- Generate a dynamic intuitive map of the external calls a program executes during any specified runtime within minutes—without any source code dependency. This capability saves hours or days of painstaking work, while ensuring accurate/complete results
- Understand a program’s external calls to see how often programs call each other during a runtime and/or the specific datasets a program accesses at each point in its execution to better pinpoint potential performance bottlenecks, inefficiencies and inter-program impacts
- View the flow of I/O from programs to individual DB2 tables, IMS databases and files
- Understand program calls and improve performance by watching I/O counts for Batch and CICS files, as well as SQL verb counts for DB2 tables in Batch and CICS and easily discover other key information about a program by hovering over objects, lines and counts
- Easily filter, sort, export and display recorded events in table form
- Drill down to specific compile and Load Library information for programs
In addition, Topaz for Program Analysis now features Online Projects and Impact Analysis. Developers of all skill levels can more quickly and accurately perform impact analyses by creating Java-like “projects”—logical collections of data sources—that allow them to discover and investigate dependencies across programs and copybooks, without having to move code off the mainframe.
Understand Complex and Unfamiliar Programs Faster
Now developers don’t have to sift through comments, read outdated documentation or rely on experts to understand COBOL and PL/I application logic and logical dependencies. Program Analysis provides an instant static visual summary of what a developer needs to know about a program, enabling them to:
- Identify problems such as undefined fields, range violations and dead code to correct problems before compiling
- Easily gauge program attributes such as size, complexity, number of files and tables to quickly determine the scope of work
- Easily assess procedure-level metrics such as number of performs, I/O, conditionals, GOTO statements and McCabe complexity metrics to easily pinpoint where changes need to be made
- Generate a rich visualization of the flow of data within programs. Data Flow shows the complete usage for any given field: how data gets into that field; how that field is used to set other fields; and how that field is used in comparisons—all displayed at-a-glance
Make Code Changes to Programs with More Confidence
With access to automated, fast, consistent and current information about a program—and now the ability to see how programs interact with each other during a live runtime of a specific event—even the most mainframe-inexperienced developers can make changes to programs more confidently.
Instantly See Code Change Results
Build new charts after a code fix to confirm the logic flow changed in the way it was intended and see if any new code problems were inadvertently introduced.
Improve Code Reviews
Developers have a visual summary of code changes, which both improves code reviews and serves as documentation for other developers who may have to make changes to the program.
The Value of Topaz for Program Analysis
- Eases the transition for next-generation developers by improving the understanding of highly complex applications
- Increases developer productivity by offering elegant simplicity in design and usability
- Improves application quality and speed of delivery by producing better change specifications and speeding up the actual time needed to change programs
- Provides confidence when maintaining unfamiliar code, which allows developers to extend each program’s value to the company and lets companies further leverage their existing mainframe assets
- Advances application performance by showing I/O calls that can be used to identify unnecessary program calls
— Jason Bloomberg, president of digital transformation analyst firm Intellyx