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:
3. CodeTurn: the exact same toolset used for automated COBOL to Java/C# transformation: the transformation tool and one COBOL Services support library.
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 bytecode.
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. The most important ‘extra’ in this regard is ensuring the mapping files are generated and bundled with the bytecode, so that debugging is possible.
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:-
> A Microsoft’s Debug Adaptor Protocol to communicate with VSCode-
> 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.
A user setting breakpoints or stepping through the COBOL code inside Visual Studio Code, implicitly requests the Debug Server to perform the equivalent operations in the running Java/.NET process and vice versa.
The Debug Server also reports back the current state of the application in terms of COBOL locations and expressions: the mapping files are used to establish this.
Here are some of the solution’s main benefits:
1. COBOL developers only need to get trained in the new toolset; no need to learn Java or C# itself
2. Resulting application can benefit from many features that the Java/.NET ecosystem has to offer:
Get in touch with our experts and find out how Astadia's range of tools and experience can support your team.contact us now