Enterprise COBOL Migration
Looking back at 2021, Lessons Learned
Did you know….
Enterprise COBOL is the language that runs the world economy and those enterprises that use COBOL recognize the challenge in front of them today.?
Clients understand that their current release of COBOL will be withdrawn from IBM support April of 2022.??
IBM Enterprise COBOL Version 6 is where you need to be.
This article will focus on how you get there.?
Even a small mainframe client could easily have hundreds to thousands of COBOL programs running on Version 4.2 and prior compiler release levels.
Where do you start?
Organizations may have migrated to Enterprise COBOL v4.2, but they likely still have tons of programs running on older versions of the COBOL compiler.???Evolving Solution has developed an Enterprise COBOL Migration offering that will look at your entire COBOL portfolio and using your system, compile all source using version 6 of the compiler.?Traditional compiler output such as object modules are not created. ?However, the compiler listings are saved for follow-on analysis that is performed by Forecross.??
The impact of the Enterprise COBOL v6 compiler on your applications can be seen in two areas:
It is important to keep these two areas in mind when evaluating and planning for your upgrade project.
As it relates to “Where to Start…” it helps to think about an Enterprise COBOL v6 migration as having three parts:
It is possible to roll items 1 and 2 into a single engagement where the inventory is mass compiled, reduced, assessed and reported followed by a pilot of your first 100 Programs.
Is it really necessary to compile your entire COBOL portfolio?
Assuming an impact assessment must be done across the board, then this challenge could be real. ?If your COBOL portfolio is large and even if your focus is limited to mission-critical applications, this could still involve hundreds or thousands of programs.
The only practical way to address this challenge is through automation.??
Forecross Corporation has built processes that automatically submit compile jobs, with the outputs saved to datasets for further analysis. Their analysis will include extraction of relevant data such as error messages into files or spreadsheets that can be sorted, queried, and counted. With Forecross tooling, it is even possible to automate some of the code corrections.
The extent of any automation efforts should be based on the number of programs in scope. And while building or buying automation to assist in the impact assessment may seem like overkill on a small body of code, the risk of errors introduced by manual processes is great.
The bottom line is that leveraging automation during the compilation phase is extremely valuable and should be given serious consideration.?
Forecross brings the required automation to the table for the client and this, in turn makes entire portfolio compilation a reality.
What are typical findings from such an assessment?
This is best explained by viewing sample output from such an engagement, consider the following three slides.
Here we see average compile time. A process was developed by FORECROSS that submitted the jobs.?These ran through the weekend.
By programmatically studying the listings, the following statistics are gathered.
Using tooling developed by Forecross that models IBM Migration Best Practices, tables such as the following are created.
What skills must a clients’ AppDev team develop to support their migration to Version 6?
The skillset the client must develop is “The confidence to identify a COBOL source object, compile it under version 6, ?address the compiler errors and then know how to test to capture data challenges”.?
Migrating from COBOL version 4 to 6 can be seen as compile to find and fix known incompatibilities followed by testing to find and fix the potential data compatibility errors.?
The portfolio migration assessment offering is used by clients to identify the known issues. Fixing them is simple and in most cases Forecross has automated the code correction.?
But, its important to remember that testing must be done in order to try to shake out the potential run-time issues related to data compatibility. For example, your test plan might want to include programs that don’t have any compile-time issues but that are likely to have run-time ones.
Testing can require significant resources and planning and given the nature the of the testing required, the enterprise should look for ways to apply automation to streamline the process.?
Forecross can help here.
Following the assessment, what does a typical Program Pilot look like?
Our Version 6 Migration Pilot typically consists of 75 to 150 programs.?
A good way to start such a pilot is to lead with our migration assessment discussed earlier where we bulk compile your entire inventory to identify warnings and errors detected by the v6 compiler that must be addressed. This part is easy – brute-force identification.?
But some V6 issues might only occur at run-time. Moreover, they may be triggered from a program that had no compiler diagnostics. Although these programs can’t be ignored, identifying them for inclusion in the Pilot can be a challenge, especially if application knowledge is thin.
Some techniques for Pilot program candidate selection might include:
3. Finally, be sure to include programs that represent your enterprise architecture, such as:
Pilot program selection is a collaborative process with the client’s COBOL Subject Matter Experts and our project team.
Other Pilot Project Tips to Consider
Client’s know their most critical programs.??
We advise the client to break the program selections into “PACKETS”.?
This makes the selection process much easier and ensures the Evolving Solutions and Forecross teams stay busy while client SMEs focus on the next program packet.???
Speaking of packets, the first packet is small ~10 programs and batch is our recommendation.
This first packet becomes the scout sent over the hill to see just what we are up against within their Development and Test environment.
There is a fair amount of setup work in their test environment that must take place, for example:
We work collaboratively?with client SMEs and their Systems Staff to get all this in place.
Who owns Unit Test?
Our Program Pilot offering takes complete ownership of Unit Test.
That means two tests are performed. One at the current version level and a second at version 6 for the changed programs.?
We use platform tools to compare the output files.?
领英推荐
However, there is quite a bit of knowledge transfer that must take place to be successful.??
After all, the client SMEs do the testing today.?
We need to capture that insight from them so we can perform the testing on their behalf.?
This implies Forecross to client COBOL SME interaction via email as testing progresses and issues are uncovered.?
Similar communication takes place with system level staff as needed, and there is constant interaction with the client assigned project manager.
Client’s appreciate this part of our offering, we take on some of their heavy lifting so they can focus on other areas.??
Keep in mind that while we are performing unit test, we are also building out the complete migration process to be documented as an instruction manual.?? ?
What should the Test Environment look like?
Mainframe clients understand that application modernization testing requires expertise from both the systems support and application development organizations in order to be successful. This is why Evolving Solutions – premier IBM Enterprise Systems experts, and Forecross Corporation, a leader in mainframe application migration, have partnered to provide a full solution for all its COBOL v6 upgrade clients.?
Our approach to this critical testing process is two-fold.?As the chart reveals, there is Baseline testing followed by an equivalent Upgrade Test.?
The output from both the baseline and upgrade tests are expected to match exactly.
Mainframe programs run in batch mode as well as online.?The testing environments provided by the client will support those execution environments and are to be dedicated to the Pilot Project.??
What special considerations surround Database Testing?
Challenges do exist, but they are not insurmountable.?After all, client teams are testing programs that do lots of database access and updates every day!?
For parallel testing which is what we must do here, we start with questions such as:
2. Do your applications use in-line SQL or a data access layer?
What approaches can be used when performing Database Testing?
There are a number of approaches, and usually some combination of these will work very well even in the most challenging environment.
Forecross believes the solution needs to fit the client’s needs.?You should use existing tools to the greatest degree possible, mitigate the risk of unforeseen errors and allow the client to reap the rewards of the new compiler.
You could also apply innovative programming against the pair of database logs that will be updated as part of your version 4 followed by version 6 testing.
Forecross offers all the above capabilities.??
In closing,
Evolving Solutions, working alongside their strategic enterprise modernization partner, provides four COBOL Migration Offerings. This article has focused on the first two offerings:
1.????Portfolio Assessment
2.????Program Pilot
As clients prepare to move past their Pilot and promote the Version 6 Compiler to production, two additional offerings are available:
3.????Block Compilation and UAT
4.????Go-Live and Warranty
Both Forecross and Evolving Solutions would welcome the chance to perform a base assessment, launch a pilot program or any combination of the four offerings above.
Or, if you are an established Version 6 client and would like to convert additional layers of your COBOL Source inventory – effectively turning the clean compile and test keys over to a third party – we can help there as well.
For additional information on Enterprise COBOL Version 6 Migration assistance, reach out to either:
Jim Fyffe, Z Systems Solution Architect; CISSP-ISSMP
[email protected]
(M) 224-577-5050
Or,
Bonnie Castello, Legacy Modernization Specialist,
www.forecross.com
[email protected]
(M) 415-225-9815