Repository Database

The Raincode Legacy compilers populate a repository database when compiling.

This repository describes various artifacts found in the source code

  • Programs, including size statistics, compilation time, compiler version and compiler return code

  • Procedures

  • CICS statements, including the CICS verb and the line number

  • SQL statements

  • Compilation errors

  • Calls, with discrimination between local and cross-program calls

This repository is an essential asset for all non-trivial migration projects. It provides answers to the hard questions that must drive strategic decisions:

  • A call graph allows gathering of the set of programs reachable from a given entry point

  • SQL statement analysis connects PL/I / COBOL programs and the SQL tables that must be migrated for the programs to work

  • Classification of PL/I and COBOL programs into batch and online (or both!) depending on the call graph and CICS statements at hand

The Raincode Repository in action

What are the inventory capabilities of the Raincode Legacy Compilers? Many questions must be answered when dealing with a legacy system, whether for maintenance, analysis or when considering a migration project.

For instance, how many CICS GETMAIN statements are there? Which programs access the SQL table in READ mode? Which programs can be called when executing the transaction or batch job? How many procedures are there? How many lines of code are there in these procedures?

Because of these questions, most migration projects start with a complex inventory phase, and this exploration activity essentially never ends.