Using M+R Effectively
M+R provides a wealth of powerful facilities to aid your reconciliation efforts. Choosing these facilities carefully before starting a reconciliation project can simplify the task. This section outlines some of these facilities and attempts to help you make good choices.
Choosing the Right M+R Tool
M+R provides four tools that help you cope with the software version expansion. Although they share many features, these tools differ in respect to the scale of the task of version merging and reconciling that they are designed for. When using M+R you will choose one of these tools from the primary menu. The purpose of this section is to help you choose the proper tool for your particular reconciliation task.
Member Reconciliation Tool
Sometimes you might have to deal with several versions of one program. The proper tool to use in this case would be the Member Reconciliation tool (option M on the Merge+Reconcile primary menu). The steps needed to reconcile the versions of one program are explicitly stated as consecutive options on this tool's menu panel.
Library Consolidation Tool
In massive consolidation efforts like Y2K-compliance projects or Vendor Code reconciliation you are forced to deal with versions of an entire library containing hundreds of programs. The proper tool to aid you when doing such consolidation projects would be the Library Consolidation tool (option L on the Merge+Reconcile primary menu).
Source/Copy Synchronization Tool
Sometimes the reconciliation task is more complicated and includes not only source code library versions but also copybook library versions. Of course, both sets of libraries can be consolidated separately using the Library Consolidation tool, but it's possible the changes in the source code and those in the copy/include code will be out-of-sync and several iterations of using M+R and the compiler will be needed. The Source/Copy Synchronization tool (option S on the Merge+Reconcile primary menu) is designed to cope with such a situation. It automatically detects the copybook inclusion in the source code, imports it, merges the versions, and allows the consolidated programs and copybooks to be extracted into designated export libraries.
Equivalent JCL Comparison Tool
JCL code differs significantly from the other computer languages because of its heavy use of symbolic variables whose value is substituted by following a complex set of rules. The result of that symbol substitution is the code that is actually executed—the equivalent JCL. Therefore, it is difficult tracking how changes in the separate JCL code pieces— jobdecks, JCL procedures, included blocks of statements, SET statements—will affect the equivalent JCL. The Equivalent JCL Comparison tool (option J on the Merge+Reconcile primary menu) is designed to help understand the differences in the versions of JCL code. It takes up to eight versions of jobdeck library and generates the equivalent JCL before comparing them. The JCL statements changed by the symbol substitution are displayed twice, with before and after content so that the differences can be fully understood. The Equivalent JCL Comparison tool is used for analysis—it is not to be used for actual reconciliation. Instead, when you have analyzed the JCL with this tool, use the Library Consolidation tool for the actual reconciliation.
Shared Facilities and Features
M+R provides several facilities that are common to these tools:
- A Consolidation Workplace panel that presents the libraries as a table whose rows are the same named members in the library versions. Each set of member versions on that panel can be processed by line commands towards full reconciliation of the differences. This facility is available in the Library Consolidation, Source/Copy Synchronization, and Equivalent JCL Comparison tools.
-
A Batch facility to compare, merge, and selectively export member versions. Batch mode can speed up the online reconciliation and reduces the consumption of mainframe resources. This facility is available in the Library Consolidation, Source/ Copy Synchronization, and Equivalent JCL Comparison tools.
-
A Project Management facility that supports individual and team-oriented project profiles, assigning tasks to team members, and monitoring the project progress. This facility is available in the Library Consolidation and Source/Copy Synchronization tools.
All these tools have other common features, such as the ability to handle up to eight versions, numerous profile settings, presenting the differences graphically and in color, etc.
Choosing Base And Derivative Versions
For any reconciliation task with M+R, you must choose a base version of a program or library and multiple derivative versions. This may be obvious for your particular reconciliation task. If not, the following is a list of thoughts that might help:
-
Use the oldest version as a base for all reconciliation tasks and create the newer derivative versions.
-
Use the shortest version as the base—the software always tend to grow in complexity, respectively in volume.
-
For Vendor Code reconciliation projects, use the vanilla library before the customization effort has started, that is, the previous release of the vendor software, as the base library. The derivatives are the libraries created as a result of the concurrent development—the customized version and the next release.