Why modernization is hard – Series 4

One of the biggest challenges in modernizing legacy applications is figuring out the program call chain and the functionality of various called programs. Scanning the source code alone is not enough to understand the call chain and the full scope of the application. In this blog, I’ll share a few examples of issues customers have […]

Why modernization is hard? – Series 3

COBOL compiler options significantly affect calculation results and logic flow. Both human intelligence and AI struggle to replicate business logic in newer systems without considering these options. This challenge is like landing a plane on a foggy night without navigation—success is largely coincidental. In this blog, I’ll share a few examples of issues customers have […]

Why modernization is hard? – Series 2

Conditional handling in COBOL is quite tricky to replicate in newer languages for a few reasons. 1. The character comparisons use EBCDIC codepage which has different collating sequence than ASCII/UTF-8. The non-equal comparison operators viz. >, >=, <, <= can result in different results when compared with EBCDIC collating sequence as against ASCII/UTF-8. e.g. String […]

Why modernization is hard? – Series 1

COBOL has its own rules for calculations that are hard to replicate in newer systems. We have seen thousands of different examples where the customer is unable to match mainframe-based calculations in the new system. Consider a simple calculation in COBOL. “COMPUTE VAR-1 ROUNDED = ((VAR-2 * VAR-3 ) / 100 ) * (2 / […]