Understanding Cobol Legacy Applications - Estimating and Planning Modernization
The Issue

Our partner is a global IT consultancy company with many years of experience of application lifecycle management, a vast customer base and a multi-billion Euro turnover. They turned to Objektum Modernization to assist them with providing a solution to one of their major retail clients. The customer's business critical estate of legacy applications was stifling the growth of the company. The entire business is run and managed using this system including Just-In-Time stock reduction, stock real-time monitoring, purchase order management, warehouse and shop management, web e-commerce platform, finance and administration.
Our partner was contracted to analyse and evaluate solutions for modernizing their AcuCobol™ application, which had evolved over 25 years and consists of millions of lines of code. Additional challenges included a lack of documentation, reliance on a single software developer and the absence of IT support within the organisation.
Our partner’s proposal was required to suggest several methods for modernization with accurate estimations of cost and time scales. To do this they required an in-depth understanding of the functions and make-up of the application as well as identify issues and risks.
The Solution

Modernization of a legacy application provides different challenges and requires a different skill set to those necessary in the development of a new application. New applications are typically developed from an initial set of documented requirements. In addition, costs and time schedules can be effectively estimated as the required skills and resources are known in advance. For legacy modernization, where no documentation exists, the requirements and design information must be extracted from the source code.
Objektum Modernization’s Legacy Explorer is able to extract detailed information from complex legacy applications. Legacy Explorer analyses the source code and builds a comprehensive view of the application through a design model and reports which help to visualise the legacy application by:
- Automatically identifying the relationships between legacy components, functions, program modules, UI screens and used data
- Automatically extracting the business rules
- Generating a detailed cross matrix report enabling you to see the application in its entirety
- Measuring and reporting on function complexity associated with individual system capability
Legacy Explorer is fully configurable to deal with any programming language. However, no two customers ever use a programming language to implement an application in exactly the same way. As this was the case here, Objektum Modernization's expert team worked with the customer to tailor our technology to their specific implementation.
The Outcome
Legacy Explorer, in a relatively short period of time, provided a detailed insight into the inner workings of the application. After analysing the output of Legacy Explorer the customer quickly realised that they had never before had such a detailed understanding of their application.
Legacy Explorer built up a comprehensive model graphically representing:
- The legacy components and their interactions
- Data file and data flow information
- The application user interface (screens and controls)
- A mapping between system capabilities and legacy components

This model provided our partner with an understanding the system complexity and the interaction between the components of the legacy application. This enabled them to effectively plan and estimate the required effort of the modernization as well as the associated cost.
Legacy Explorer enables both engineers and managers to fully understand their software applications both in terms of its capabilities and the legacy code. The tool supports an iterative migration process and is a must have tool for any legacy modernisation. The version of the tool used on this project was CobolExplorer v3.1.