We are using COBOL compiler 4.1 in my mainframe shop. Its outdated so we are planning to upgrade the COBOL compiler. Kindly let me know which compiler is very efficient( COBOL compiler 5.1/5.2/6.1). Do you know any tool to find out the application impacts and upgrade process??. Kindly help on this
'Efficient' is a very relative term, for instance efficient in doing what? It'd be a little too obvious to say that the latest version would be efficient (that is how IBM markets them).
Having said that, you'd really be better off checking with your local support and most importantly the business you support to decide which version you'd want to migrate to. Do bear in mind, the newer compiler versions have a hardware requirement tag attached to them as well, you'd want to check on that; at the very same time CICS (if you are using it) version compatibility and so on, list can go on.
From the application stand-point the application owner (-programmers) are the best people who can answer your question, because the programs vary site-to-site. For instance when we migrated our set, we did a thorough code-by-code analysis to work out the impact. Once you've figured out the version of your choice, start with COBOL Migration Guide and understand the changes, note that V4 to V5+ is a big leap, and we are not even discussing LE changes yet. You'd really want to do rigorous testing in your testing environment before moving this change to PROD.
Joined: 07 Feb 2009 Posts: 1161 Location: Vilnius, Lithuania
At one client we used the following:
First step is to change your compile procedures in the development environment to use both compilers sequentially, so that you can see what errors old source and a new compiler generate, but you can still continue running the code - in other words ignore any RC>4 from the new compiler for now, but let it trigger a step containing a SEND (to the user) message, to thoroughly check the listing of the new compiler, and change the code to remove them.
Once you're fairly confident that you've found the real show-stoppers, change the setup to stop your compile jobs if the new compiler issues any RC>4, and continue using both sequentially, but now run the code generated by the new compiler.