Mining for Graph-Based Library Usage Patterns in COBOL Systems

Ruben Opdebeeck, Johan Fabry, Tim Christiaan Molderez, Jonas De Bleser, Coen De Roover

Research output: Chapter in Book/Report/Conference proceedingConference paper


When migrating legacy systems to more contemporary platforms, it is not always feasible to migrate their external library dependencies as well. A workaround can be to partially reimplement the library dependencies on the new platform, limiting oneself to the features that are used by the migrated system. For contemporary programming languages, several approaches to mining for library usage patterns have been proposed. For legacy programming languages, in contrast, such tools are lacking. This encumbers establishing what parts of a library need to be rewritten during a migration project, especially when considering large-scale systems.
In this industry track paper, we present an approach to mining library usage patterns in COBOL code. We describe a library usage extractor for COBOL, which produces graphs that capture the control and data flow involved in library calls. The extractor supports legacy control flow features, such as GO TO. We use these graphs as input to two state-of-the-art frequent subgraph mining algorithms, and report on the scalability of their use for mining common library usage patterns in two industrial COBOL systems. The mined library usage patterns can help assess and subsequently steer the migration effort.
Original languageEnglish
Title of host publicationProceedings of the 2021 IEEE International Conference on Software Analysis, Evolution and Reengineering
ISBN (Electronic)978-1-7281-9630-5
Publication statusPublished - 2021
Event28th IEEE International Conference on Software Analysis, Evolution, and Reengineering - Honolulu, United States
Duration: 9 Mar 202112 Mar 2021
Conference number: 2021


Conference28th IEEE International Conference on Software Analysis, Evolution, and Reengineering
Abbreviated titleSANER
CountryUnited States


  • legacy code
  • software renovation
  • library usage pattern mining

Fingerprint Dive into the research topics of 'Mining for Graph-Based Library Usage Patterns in COBOL Systems'. Together they form a unique fingerprint.

Cite this