Simple, Safe & Effective COBOL to Java / C#

Check out other COBOL Platforms (IBM, Unisys, Tandem, ...)


SoftwareMining's COBOL to Java /C# approach migrates VSAM Indexed Files SQL databases, and Sequential files are kept as they are: files on file-systems. The rest of this paper provides more detail on the approach.

Indexed & KSDS Files

Whist many COBOL applications have moved away from use of VSAM files to relational databases (COBOL with Embedded SQL), or use transaction handle libraries (e.g. CICS), there are still many COBOL applications which still utilize VSAM KSDS file for their data.
The best approach to migration of VSAM structures would map every field to a different column. Complication could arise when dealing with complicated REDEFINITIONS or multi record File-DEFINITIONS - but a good design will often can simplify and cater for such issues very quickly.

Other issues which need to be addressed is when data is scattered across multiple files (e.g. one data-files per year), GDG support and other issues.

Performance of java layer for accessing the database is also a primary concern: Whilst SQL database has better performance for searching across large data-sets, the retrieval of data may be slower as data is often have to be transmitted across a network (database server rarely lies on the same machine - all communication has to go via TCP). As such a good design for translated Java/C# code, the database, as well as the data-access libraries is essential.

Sequential Files

Sequential files are often used as intermediatory means of saving data. They are sometime used in communication with other programs, for sorting or for report generation. SoftwareMining translations by default do not migrate these to SQL tables, but continue maintaining these on file-system - although it is very easy to also write them to SQL databases.
The Sequential files generated by SoftwareMining benefit from following features:
  • Binary Compatible with files generated on COBOL System. This allows them can continue to be used for communication with remainder of the system (the as yet untranslated modules)
  • Provide easy migration path to new standards - such MS Excel

Relative Files

Relative files may be maintained as files within file system, or relational database tables.

Multiple File-Definition for same data-file.

In an application, often different programs define a different structure (FILE-DEFINITION) for same datafile.
Whilst such approach causes no problems for when dealing with (data) Files - is not a viable approach for defining columns in database. The manual consolidation or merge of such structures can be lengthy and error prone. Automatic identification and conflict/resolution of these definitions may be one of the most important aspect of a successful migration projects.

Performance , Performance , Performance

Batch programs often have to complete their processing within a set timeframe. The performance issue has to be one of the major influences on design of the translated java or C# code.
The following can have very large impact on performance of migrated code:

COBOL + VSAM COBOL to Java/C# Migration Project Phases

The Migration of COBOL applications to Java or C# involves:
  • Asset Management: Identify all the artefacts required for translation .
  • Translate to target language
  • Database and Data Migration
  • Migrate JCL
  • Create and Populate of Test Database
  • System acceptance testing
  • User Acceptance Testing
  • (Optional): Other Improvements: Screen Redesign, SOA Integration, Cloud Deployments, Coding Improvements and clean up

Comparing COBOL to translated code

Comparison of Converted code: COBOL to Java
Comparison of Converted code: COBOL to C#
COBOL to Java / C# Conversion Tool - Download Trial (Release 2017-02-20)

Related White Papers

COBOL to Java Overview- PDF version

IBM COBOL Migration, Modernization and Re-hosting References

Pseudo Conversational Transactions (Wiki)
Pseudo Conversational Transactions (IBM)
SoftwareMining on Wikipedia


  © 2017, SoftwareMining Technologies. All Rights Reserved. "SoftwareMining Technologies" is a trademark of Software Modernization Technologies Ltd (UK). Software Modernization Technologies Ltd. Registered in England company no: 7300248. Reg Offices: 8b Accommodation Road, London NW11 8ED, United Kingdom.