In many cases, companies choose not to re-platform their old programs because of the high costs and tremendous risk involved, preferring instead to hire COBOL programmers to maintain existing code. However, since the information technology field has diversified and changed since the 60s, not as many programmers today are familiar with what they consider “legacy” languages. As a result, there is a knowledge shortage and companies are desperately in need of programmers to understand and maintain what is presently in use. For the new programmers that are brought in to an existing project, working with old programs can be exhausting and time-consuming. The following table is a list of just a few of the modern challenges of working with COBOL.
|Old programs can be large and complex, as they have been modified over time.||Fully analyze programs and clearly identify key project objectives before starting.|
|Making a change in an existing program carries a lot of risk.||Perform an analysis of the entire system and identify the potential impact(s) that a change would cause to downstream programs.|
|Project timeframes are difficult to assess due to an incomplete understanding of older programs.||Use a code analysis tool that provides metrics regarding program complexity, predicted errors, and other important factors.|
|Old systems have redundant program code that increases system complexity.||Perform a system analysis and identify programs and other modules that are not being used.|
|Old programs reference code or modules scattered across the enterprise.||Perform a system analysis and identify code and connections to avoid unintentional breakages.|
|Working with COBOL programs uses a lot of project resources, especially when using mainframe searches.||Invest in off-the-mainframe tools that allow faster search and analysis without using MIPS.|
|New programmers face a steep learning curve when older programs have little documentation.||Encourage knowledge exchange between new employees and SMEs via a code review tool that can link existing documentation to programs.|
|Complex programs take longer to research, and search utilities may take days to return results.||Investigate research and analysis utilities that return results faster.|
What about you? What challenges have you faced with COBOL? Let me know your thoughts in the comment section below.