COBOL Transformation Options

CobolBridge is a software tool that allows organizations to combine maintaining COBOL code with executing Java/C#. This makes it possible for developers to transition to Object-Oriented languages such as Java or C# gradually over time, for example, team by team.

The solution provides an efficient transformation option for enterprises that need to take an alternative route in their digital transformation process.

The COBOL maintenance experience is based on:

1. Visual Studio Code: a popular, modern, open source IDE that is developed by Microsoft and that can be used and extended for working with many different programming languages

2. CobolBridge: a set of components that enable:

  • Maintaining COBOL code inside Visual Studio Code - we'll call it COBOL VSCode Plugin below
  • On-the-fly transforming the COBOL code to Java/C# and then compiling the Java/C# code using CodeTurn
  • Debugging the code - this is referenced as the COBOL Debug Server below

3. CodeTurn: the exact same toolset used for automated COBOL to Java/C# transformation: the transformation tool and one COBOL Services support library.

COBOL Transformation Options White Paper

How It Works

Maintenance Stage

At maintenance time, COBOL sources can be edited inside Visual Studio Code: syntax highlighting, and error reporting are provided by a COBOL VSCode plugin. This plugin will start the ‘on-the-fly-transformation-and-compilation’ of these COBOL sources into JVM/CLR byte code.

During the transformation, mapping files are generated so that at debug time, locations and expressions in the Java/C# code can be related to locations and expressions in the original COBOL code.

Aside from enabling this transformation and compilation flow from the Visual Studio Code IDE, it is also ensured that this can be done ‘in batch’, so that a DevOps pipeline can be setup – for example in Jenkins.

Download the COBOL Transformation Options white paper for the supported features list >

Debug Stage

At debug time, the COBOL VSCode Plugin can be configured to connect to a ‘Debug Server’: this is a separate component that supports both local and remote debugging.

The Debug Server is based on two well established protocols:

1. A Microsoft’s Debug Adaptor Protocol to communicate with VSCode

2. The Java Debug Interface to communicate with the Java virtual machine

The Debug Server acts as an intermediary between the running application (which has the application binary code and the COBOL services support library) and the Visual Studio Code IDE.

Main Benefits

1. COBOL developers only need to get trained in the new toolset; no need to learn Java or C#

2. The resulting application can benefit from many features that the Java/.NET ecosystem has to offer:

  • Modern development tools
  • Lower costs (limited runtime license costs)
  • Modernization and refactoring possibilities
  • Cloud ready to be deployed in Docker containers
  • The generated Java/C# code is perceived as very maintainable by original COBOL developers and maintainable by non-COBOL developers after adequate training.
  • The style of the resulting code can be chosen by an ever-growing list of transformation options/rules.

Let's Talk

Get in touch with our experts and find out how Astadia's range of tools and experience can support your team.

contact us now