Slide 2
CoJaC – COBOL to Java Converter

CoJaC is our tool for conver­ting histo­ri­cal COBOL appli­ca­ti­ons to modern Java soluti­ons. CoJaC genera­tes maintainable and high-perfor­­mance Java code which is seman­ti­cally equiva­lent to the COBOL code.
During conver­sion, the tool achie­ves an automa­tion level of 95–99 %. CoJaC combi­nes scien­ti­fic know-how in compi­ler construc­tion with core compe­tency resul­ting from successful migration projects.

CoJaC TECHNOLOGY

For complex compi­ling proces­ses, the use of speci­fic conver­sion tools, so-called trans­la­tors, is neces­sary. Trans­la­tors work by analogy with a compi­ler which, via diffe­rent inter­me­diate stages, compi­les source program­mes to execu­ta­ble target code.

CoJaC is a trans­la­tor for conver­ting histo­ri­cal COBOL appli­ca­ti­ons to modern Java soluti­ons. For the requi­re­ments of language conver­sion, we have further develo­ped the general compi­ler model into a trans­la­tor model:

  • FRONT-END: reads the COBOL programme, inclu­ding the corre­spon­ding copybooks, and genera­tes an inter­nal syntax tree which repres­ents the complete COBOL programme
  • TRANS­FOR­MER: converts the COBOL syntax tree to an equiva­lent Java syntax tree. The actual conver­sion is based on syntax trees instead of source code.
  • POST-PROCES­­SOR: splits the complex Java syntax tree into indivi­dual syntax trees which repre­sent the programme struc­ture of the subse­quent Java programme
  • GENERATOR/FORMATTER: genera­tes Java classes and packa­ges from indivi­dual Java syntax trees and automa­ti­cally formats source code accor­ding to client specifications
  • LIBRA­RIES: allow the use of the COBOL data types and function­a­li­ties in conver­ted Java code which do not exist 1:1 in Java

FEATURES

CoJaC stands out for the follo­wing features:

Integra­ting source code comments
Source code comments are automa­ti­cally integra­ted into target code

Target code struc­tu­ring into Java classes and packages
The target code is struc­tu­red into Java classes and packa­ges by our JPackage tool as requested

Format­ting genera­ted Java code 
The genera­ted Java code is format­ted in a user-speci­­fic manner

Support­ing diffe­rent COBOL dialects 
CoJaC supports diffe­rent COBOL dialects (IBM, HPE NonStop, BS2000)

MIGRATION PATHS

The follo­wing table exempli­fies some migration paths of the basic compon­ents to the corre­spon­ding migration target:

MIGRATION ASPECTS

FAQ ON LANGUAGE MIGRATION

DOWNLOADS

 CoJaC – data sheet

“Jedes COBOL-Java-Migra­ti­ons­pro­jekt birgt neue Überra­schun­gen“
Abstract for 24th Workshop “Software-Reengi­nee­ring & Evolu­tion” 2–4 May 2022 in Bad Honnef, published in:
Software­tech­nik-Trends, volume 42, part 2, May 2022

Success Story: “Successful COBOL Java Migration at SüdLea­sing GmbH”

Success Story: “Successful BS2000 Migration at ITZBund

GO TO DOWNLOAD AREA