Tutorial for the dynamic recording capability

Perform the tutorial based on the sample project GenApp to implement dynamic recording capability.

Prerequisites

Note: You can also apply the ssp1-policy-update.rec and ssp1-policy-read.rec files to further differentiate each type of procedure the application can perform.

Procedures

Complete the following steps to perform the tutorial:
  1. Search for the SSP1 CICS transaction in the graph view, then click on the SSP1 CICS transaction search result to view the graphical representation of the program control flow of SSP1.
  2. In the VS Code file explorer, expand the recordings folder and right-click the ssp1-policy-add.rec file. Open the IBM watsonx Code Assistant for Z menu option and click Apply Recording.
  3. Enter add policy as the label to the Business function label prompt in the command palette.
    Note: A notification confirming that the recording was successfully applied is displayed, and a checkmark icon appears in the file explorer next to the selected recording file.
    This label marks the nodes of the program control flow graph.
  4. Reload the graph by searching for the SSP1 CICS transaction. The same program control flow graph reappears with badges that are displayed on top of several nodes where the add policy is located. Reading from left to right, the badges illustrate the program control flow within the graph, from its starting point to its endpoint. For the data captured in ssp1-policy-add.rec, it represents the addition of policy.
  5. Open the /recordings folder in the VS Code file explorer and right-click the ssp1-policy-delete.rec file. Similarly, apply the recording file with the delete policy label and reload the SSP1 CICS transaction graph. The data in ssp1-policy-delete.rec captures the deletion of a policy.

After performing the tutorial, you can analyze the similarities and differences between the program control flow for these two recordings. Nodes that are labeled with both add policy and delete policy are common while nodes labeled with only one of these actions represents divergence in execution. With these labeled nodes providing additional context, you can begin the refactoring process by identifying the optimal starting point to slice a new service.