Many business applications today still rely on COBOL programs written decades ago that are difficult to maintain and upgrade due to technological limitations and lack of experts in the language. Several companies have been trying to migrate their software base to modern platforms, but code translation is problematic because most business processes implemented are often no longer documented or even known. Applying existing Program Understanding techniques to COBOL could be a way for aiding IT specialists in charge of a porting - but useful raw information must be extracted from the source code in order to get these techniques yield to meaningful results. We believe that the types of variables used in programs are an important part of such raw information and we present an approach based on static analysis of types rather than data. Our system is capable of reconstructing the type-flow of a COBOL program throughout branches, jumps and loops in finite time and to track type information on reused variables occurring in the code. It also detects a number of error-prone situations, type mismatches or misuses and notifies that by means of messages annotated in the code along with types inferred for each variable occurrence.

Type-Flow Analysis for Legacy Cobol Code

SPANO', ALVISE;BUGLIESI, Michele;CORTESI, Agostino
2011-01-01

Abstract

Many business applications today still rely on COBOL programs written decades ago that are difficult to maintain and upgrade due to technological limitations and lack of experts in the language. Several companies have been trying to migrate their software base to modern platforms, but code translation is problematic because most business processes implemented are often no longer documented or even known. Applying existing Program Understanding techniques to COBOL could be a way for aiding IT specialists in charge of a porting - but useful raw information must be extracted from the source code in order to get these techniques yield to meaningful results. We believe that the types of variables used in programs are an important part of such raw information and we present an approach based on static analysis of types rather than data. Our system is capable of reconstructing the type-flow of a COBOL program throughout branches, jumps and loops in finite time and to track type information on reused variables occurring in the code. It also detects a number of error-prone situations, type mismatches or misuses and notifies that by means of messages annotated in the code along with types inferred for each variable occurrence.
2011
ICSOFT 2011 - Proceedings of the 6th International Conference on Software and Database Technologies
File in questo prodotto:
File Dimensione Formato  
ICSOFT_2011_spano.pdf

non disponibili

Tipologia: Documento in Post-print
Licenza: Accesso chiuso-personale
Dimensione 154.14 kB
Formato Adobe PDF
154.14 kB Adobe PDF   Visualizza/Apri

I documenti in ARCA sono protetti da copyright e tutti i diritti sono riservati, salvo diversa indicazione.

Utilizza questo identificativo per citare o creare un link a questo documento: https://hdl.handle.net/10278/29488
Citazioni
  • ???jsp.display-item.citation.pmc??? ND
  • Scopus 1
  • ???jsp.display-item.citation.isi??? 0
social impact