Mainframe COBOL to Java, C# & Cloud

Download COBOL to Java/C# Converter

Transitioning from BMS COBOL to Readable Java and C#

Understanding and maintaining mainframe CICS/BMS/MFS applications requires more than just familiarity with the COBOL language. Developers also need a deep understanding of the CICS API. Simply converting COBOL to Java without modifying the CICS API leads to code that isn't easily maintainable.

SoftwareMining recognizes certain attributes crucial for the enduring maintainability of transformed Java and C# code.

Mainframe Migration Case Study: ING Bank transitions from CICS COBOL to Java Cloud

Topics Covered:

Translating IBM Mainframe CICS API to legible Java / C#

CICS/BMS programs dictate additional attributes for every display field. These attributes control display intensity, editable properties, and define protection levels for a field.

For instance, examine this COBOL snippet:

   MOVE 'Y' TO surnameA. 
   MOVE BMS-BP TO surnameA. // BMS-BP holds the value 'Y'

Here, setting the value 'Y' to 'surnameA' results in the 'surname' field being protected and displayed in a highlighted manner. Direct translations of these statements can result in less understandable code without specialized IBM/CICS training.

SoftwareMining's translator enhances this by injecting semantic context into these statements:


Our system efficiently translates operations on BMS attributes to the following method calls:

Expanding CICS/BMS API Translation Possibilities


SoftwareMining's translation to Java/C#

    MOVE -1 TO surnameL 
 surname.setFocus()   // where 'surname' is a display field 
    MOVE 'Y' TO surnameA.
    IF surnameL > 0 ...
 if (surname.isModified())  ...
    WHEN EIBCALEN = 0 ...
 if (this.isFirstTimeExecution(); 

A Screen-Designer for a modernizing translated BMS

To truly benefit from modernization, it's essential for application interfaces to transition towards a contemporary look and feel. SoftwareMining's Screen Designer utility offers numerous enhancements for the translated code. This includes expanding the 24-row limit of the original 3270 screens and transforming text-based inputs into intuitive UI elements like checkboxes, dropdowns, and radio buttons.

For instance, envision a screen prompting the user for their credit card's issue year. Originally, users would manually input the year using four digits. However, with the modern interface, this data can be selected from a dropdown, pre-filled with the past decade's values. Importantly, these UI improvements typically don't necessitate alterations to the underlying translated business logic.

See SoftwareMining ScreenDesigner in Action

Ensuring a Seamless Upgrade Path

As technology evolves, online applications may need restructuring to meet new demands, from mobile accessibility to SOA architectural shifts. This process is streamlined when the modernized system clearly delineates data classes previously utilized in BMS screens. Once legacy dependencies are excised, the resultant system should effortlessly integrate with newer frameworks.

The semantically translated code leverages APIs within SoftwareMining's framework to replicate CICS functionality in Java. This lean framework integrates seamlessly with standard Java and C# application servers, such as Apache Tomcat and IIS.

Embracing Scalability and Cloud Solutions

A distinctive feature of CICS transaction processors is their capacity to accommodate thousands of simultaneous users. The transformed solution must uphold this standard. SoftwareMining's output integrates with industry-standard application servers like Apache Tomcat for Java and MS IIS for C#, ensuring robust performance.

Additionally, the modernized code can be effortlessly deployed to various cloud platforms, be it private clouds or services like Amazon AWS and Microsoft Azure.

Mainframe CICS COBOL to Jave Examples: AWS CardDemo - From Source code to Runime on Cloud

  © 2024 SoftwareMining is a trademark of Software Modernization Technologies Ltd (UK). Registered in England company no: 07300248. Reg Offices: 79 Stevens House, Jerome Place, Kingston Upon Thames, KT1 1HX, United Kingdom.