This document describes how to review the assessment of the discovered assets, and analyze the application source files using generative AI.
The assessment results provide you with details such as the lines of codes and number of calls found in the application, which help you plan your migration. Also, the analysis provides you with a summary of the program, which helps you understand the semantics of the program.
Before you begin
- Complete the steps to run the discovery and assessment.
Review assessed applications
- To open the dashboard where you can review and analyze the assessed applications, on the Mainframe Assessment Tool Home page, click the reference ID of the application that you want to review. The Details page opens.
- Open the Discovery tab. The dashboard appears. This dashboard has multiple tabs that are explained in the following sections.
Inventory
The Inventory tab provides the following details:
- Number of files per language
- Number of code lines per file type
- Code lines versus comment lines
- Batch versus online programs
Module Types
The Module Types tab provides more information about COBOL and JCL. It tries to categorize modules called from COBOL programs:
- Built in: system programs built by companies such as IBM and Microfocus.
- Missing Program: Programs of an unrecognized type, potentially due to missing parsing or their absence from the source code.
- COBOL: These are the COBOL application modules.
JCL calls (EXEC
statements) are categorized into the following 3 types:
- COBOL: the actual application programs.
- Missing Program: Programs of an unrecognized type, potentially due to missing parsing or their absence from the source code.
- Built in: system programs built by companies such as IBM and Microfocus.
Complexity
The Complexity tab shows a table listing the complexity of every source in the uploaded application. The complexity uses McCabe as a metric which represents the number of execution paths or decision points in a source.
- Simple: complexity < 100
- Medium: 100 <= complexity < 500
- Complex: 500 <= complexity < 1000
- Very Complex: 1000 <= complexity
Call Dependency
The Call Dependency tab shows the call graph of all uploaded entities. The size of the icons is related to the number of incoming and outgoing calls.
Driver Modules
The Driver Modules tab shows modules that call many other modules. The size of the icons is related to the number of incoming and outgoing calls.
Data lineage
The Files Data Lineage tab shows how JCL batch jobs and COBOL programs use files. It identifies the programs that read from and write to files.
The Databases Lineage tab shows how DB2 tables are used in JCL batch jobs and COBOL programs. For each JCL job that executes a COBOL program that accesses a DB2 table, the tab identifies the called program, the accessed table, and the corresponding usage.
JCL Substitution Params
The JCL Substitution Params tab shows the resolved values of the JCL parameters.
CICS Calls
The CICS Calls tab shows the CICS calls made from each program, and their parameters. You can filter the results by command, program or parameter.
Parse Issues
The Parse Issues tab shows all the errors that the Mainframe Assessment Tool encountered during the parsing of the source code.
Missing Modules
The Missing Modules tab shows the modules that are used in the code, but that weren't found during the input analysis.
Use this tab to understand what was missing, and consider adding these modules before re-running the assessment.
Orphan programs
The Orphan Programs Tab lists all programs that neither call another entity nor are called by another entity in the source code.
Databases
The Databases tab lists the DB2 tables used in the assessment. The page details each table's columns and properties.
Datasets
The Datasets tab displays an overview of the datasets used in the assessment. For each dataset, the page details all the fields and properties of each field.
JCL job dependency
The JCL job dependency tab displays dependencies between JCL jobs. The Mainframe Assessment Tool analyzes dependencies in three ways:
- Connected jobs based on a shared data source: This chart connects two jobs if they use the same data source; one job writes to the source, and the other reads from it.
- Connected jobs based on a shared data source (tabular view): This table details the connections between the jobs. It presents the writer job, reader job, shared data source, and its type.
- Job dependencies from writers to readers: This tree chart displays the writer job, the writer program, the data source, the reader program, and the reader job.
Analyze source files using generative AI
You can analyze the COBOL and JCL source files using Generative AI. This feature depends on Vertex AI. To use this feature, make sure AI Analysis was enabled on the Settings page before running the assessment.
To explore the results, on the Mainframe Assessment Tool Home page, follow these steps:
- On the Assessments page, in the table, click the reference ID of the application that you want to review. The Details page opens.
Open the AI [Experimental] tab. A page appears that shows a list of files and a table. Each file has one of the following icons:
- In Progress. The file has not yet been analyzed.
- Completed. The AI analysis for the file completed successfully.
- Failed. The AI analysis completed with an error.
Select the file for which you want to see results to inspect AI-generated specification, test case and code samples.
The Q&A [Experimental] tab is an experimental feature that provides you with a space to ask questions and receive AI-generated answers about the analyzed code. You can use the Q&A tab to do the following:
- Ask questions about the business logic of the code.
- Search for usage or mentions of specific function.
- Explain data structures and summarize their usage.