Mainframe-to-Server Application Conversions

MacMSAC 2008: Version – February 19, 2008

1. Summary of Macrosoft Experience and Capabilities

Macrosoft has engaged in a large number of successful Mainframe application migrations/conversions. Overall, we have successfully migrated over 230 IBM Mainframe applications to a Windows-based (with Embedded Unix) PC platform. These applications handle critical data for numerous leading corporations. In all of these conversion efforts, our teams have worked side-by-side with client teams in effectively and securely performing these conversions.

Key to Macrosoft’s Mainframe-to-Server application conversion capabilities is our depth of experience in both Mainframe, as well as Server [Windows, Unix] programming skills thus insuring a smooth conversion of MVS applications to a Server platform.

Our standardized conversion methodology and procedures insure that the new process will be designed and developed to work efficiently in the new system environment the first time around, and will fully conform to the business rules and processes performed in the original MVS application.

We work directly with clients to spell out and decide upon all the options for re-constructing a Mainframe application in a Server environment. We establish and maintain a Conversion Operations Handbook that provides a full and complete blueprint and checklist of all steps required, and all processes that need to be performed, whether by us or by the client.

As one example of the types of tradeoffs that we guide the client through, consider the following: applications on MVS organized by JCL’s can be efficiently and reliably converted to Korn Shell routines in either a Windows platform using an embedded Unix-like environment or directly onto a Unix platform.

Our overall objective in all of our work efforts is to confine the conversion process to mostly mechanical execution of automation tools and QA tools, followed in the end by manual side-by-side testing. That is, there should be little or no manual or ad-hoc coding or programming involved in most conversion efforts.

2. 5-Step Conversion Methodology

Viewed from a high level, a complete conversion generally has the following five steps/procedures that need to be done in sequential order. Our 5-step MVS Conversion Methodology involves:

  1. MVS Application Analysis- Including JCL, COBOL, Assembler Programs, VSAM, IBM utilities, Third party tools, etc.
  2. PC Environment Selection and Assessment - The conversion can be done on Microsoft Windows (XP/2000/2003), Linux or other Unix system that has Korn shell loaded. For the Windows platform, an embedded Unix-like environment has to be loaded, such as MKS Toolkit.
  3. New Environment Buildup - In this step we set up the standardized file system structure, based on an analysis of the MVS applications that need to be converted, as well as configure and construct: process monitoring, tracking systems, and error tracking and alerting to guarantee the converted processes run efficiently and are fully controlled in the new environment.
  4. Conversion, Development and Unit/Production Tests– JCL and PROCs get converted into Korn shells, COBOL programs are modified and rebuilt in selected targeted platform (e.g. Linux); IBM utilities and Assembler Programs are rebuilt using Perl, and third party software packages are migrated or re-selected.
  5. Post Conversion - Initial production monitoring, troubleshooting and maintenance of the new process setup, usually for a period of 3-6 months.

3. Automation and QA Utilities

Macrosoft has built up a number of unique automation tools for performing mainframe conversions that are very useful in reducing the work effort involved in conversions and at the same time significantly reduce the risks and uncertainties of undertaking a conversion effort of this type. Included among these tools are:

  • JCL-ANALYZER: This simple but powerful tool analyzes JCL to build a web view using HTML/JavaScript. The web view helps programmers understand how JCL works to put applications together by individual job step. This allows programmers who do not have much MVS experience to work on JCL-to-Shell conversions easily, quickly and efficiently.
  • JCL-2-KORN: This utility includes both the JCL-2-KORN template and the JCL-2-KORN shell creator. The creator uses templates and JCL step labels to create standard Korn shells for JCL. Within the standard Korn shells, all steps including program calls, utilities, SyncSort and other third-party software packages can be handled as separate modules. This utility significantly reduces complexities associated with coding and testing in a teamwork environment.
  • SORT-APP-CREATOR: This utility creates SyncSort application and calling shells that are compliant to the standard system structure set up in the new server environment, which makes migration of SyncSort from MVS to PC easy and accurate.

Because of our standard and system independent designs, our MVS-to-Server Application Conversion Technology can be performed under various different work models: On-Site, Off-Site, Off-shore and any mixture of these. Macrosoft works with its clients to review these different work arrangements and assists clients to decide which will work most smoothly and efficiently for their individual circumstances.

4. Critical ElementsInThe Conversion Process

If we dip down to a little more detail, Macrosoft’s approach and capabilities to conversion projects include the following critical elements:

Converting MVS applications: We have extensive experience in converting MVS applications into shell-controlled processes on Windows utilizing an embedded “Unix” environment (e.g. MKS Toolkit, UWIN, CYGWIN, etc.) or directly onto Unix (such as, Solaris, PC Linux).

JCL/PROC Analysis: We have built simple tools to Perform JCL/PROC Analysis. They create web views of JCL/PROC, which help programmers view JCL/PROC clearly while they are working on a conversion.

JCL2KORN template: We have built this highly useful and effective template. While this is not a complete automatic JCL-to-Shell conversion tool, it helps programmers to quickly and easily convert JCL/PROC to Korn shell in well-designed standard shell structure, using the same JCL/PROC step structure. Further work on conversion can be easily conducted by working on both the original JCL/PROC and the standardized generated-shell template. All steps for COBOL calls, Utilities, SyncSort and other third party software products can be handled separately as individual components, and then assembled into shell templates by testers during production testing.

Micro Focus Net Express: We have in-depth MicroFocus Net Express Expertise for COBOL re-builds, and data transforms (line sequential to/from indexed VSM) using dfconv and/or rebuild.

IBM Utilities: We have extensive experience in successfully converting a large class of IBM Utilities to Perl (examples include: FileAid, QuickJob, IDCAM, and many others). Taping into this depth of experience significantly improves the quality, and speed of our conversion work.

Assembler Code Conversion: Our seasoned resources are capable of analyzing and reverse engineering the design from Assembler Code and regenerating the login in Perl or C in optimum timeframe.

5. Value-Of-Partnering With Macrosoft In Mainframe Conversions

Our Standardized Migration Process: We have standardized the process of migration through a collaborative development environment. The client participates in every stage of our process. We will share with you our Migration Process Handbook, which we use to direct and manage all conversions.

Proven & Efficient Project Management Capabilities: The methodologies we use are well proven and efficient, and our Project Management team is well experienced in performing mainframe migrations, having the first hand experience and know-how to handle most special circumstances and conditions likely to arise in any sizable conversion project.

Proven & Efficient Quality Assurance Processes: Perhaps the most critical success factor in projects of this type involves the methods, technologies and know-how for quality assurance. The methodologies we use are well proven and efficient, and our Quality Assurance teams are well experienced in insuring that converted applications work correctly without incurring significant re-work.

Easily Maintainable & Manageable Code: Client staff is kept fully involved in all phases of the process. There is no ongoing cost or need to involve us further after the conversion work is completed. The client can participate in all project phases, including initial R&D and development, and is educated on the methodologies and tools we use. By the time our work is done, client staff will be fully able to maintain and upgrade the code without our further assistance.

Minimum Extra Investment Required: Our methodology emphasizes utilization of off-shore development resources wherever possible (assuming client approval). Our developers at our India facility are able to work remotely accessing US servers through secure VPN tunnel connections. This serves two purposes: minimizing overall conversion costs and facilitating a collaborative development environment which generates output throughout the 24hr-cycle. We have successfully implemented this methodology.

No special requirements or changes in input data: It is a true one-to-one conversion. What data the mainframe was getting, can be taken as it is by the Server, and do the processing, and produce exactly what the Mainframe was producing. Hence no special pre-processing or post-processing is required in managing data I/O. The applications are intelligent to handle these issues. The data can be either EBCDIC as in mainframe or ASCII as in PC. These can be managed through configurable parameters.

Batch or interactive processing: Our converted applications provide true batch processing and scheduling as well as restart facility at an intermediate stage in case of failure. The applications can be made batch or interactive, depending on the requirements.

Job Management Console: Our patent software for batched job submission as well as job scheduling provides easy to use user interface to configure, execute and manage the converted applications.