Review assessment results

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

Review assessed applications

  1. 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.
  2. 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 COBOL programs into the following types:

  • Orphan: programs that are not called nor call another program.
  • Missing: programs that are called, but whose source code has not been provided.
  • Utility: system programs built by companies such as IBM and Microfocus.
  • COBOL: application programs.

JCL calls (EXEC statements) are categorized into the following 3 types:

  • Program: the actual application programs.
  • Procedure: set of statements inside a JCL grouped together to perform a particular function.
  • Utility: 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 COBOL programs. 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 Data Lineage tab presents an overview of how files are used in JCL batch jobs. For every JCL step it shows the called program, the used files and the corresponding disposition.

CRUD

CRUD stands for Create, Read, Update, and Delete. The CRUD graph shows the CRUD operations performed on DB2 tables by COBOL programs.

Functional group

The Functional group tab displays the functional group specific details of each component. You can select a functional group and discover how many components and the types of components belong to a particular functional group.

A functional group is a subset of the entire mainframe application which contains components related to a specific features. For example, a banking application can have functional groups such as Reporting, Tax, Accounting, and Ledger.

The functional groups can only be inferred from the sub-directories present within the uploaded zip file.

Functional group clustering

The functional group clustering tab shows the dependencies between functional groups. The purpose of this tab is to help in migration planning by finding common modules between different functional groups.

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 explore the results, on the Mainframe Assessment Tool Home page, follow these steps:

  1. On the Settings page, enable AI Analysis.
  2. On the Assessments page, in the table, click the reference ID of the application that you want to review. The Details page opens.
  3. 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.

  4. 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.