Title :
Goto Elimination Strategies in the Migration of Legacy Code to Java
Author :
Ceccato, Mariano ; Tonella, Paolo ; Matteotti, Cristina
Author_Institution :
Fondazione Bruno Kessler-IRST, Trento
Abstract :
Legacy systems are often large and difficult to maintain, but rewriting them from scratch is usually not a viable option. Reenginering remains the only way to modernize them. We have been recently involved in a migration project aiming at porting an old, large (8 MLOC) legacy banking system to a modern architecture. The goal of the project is: (I) moving from an old, proprietary language to Java; (2) replacing ISAM indexed files with a relational database; (3) upgrading the character oriented interface to a modern GUI. One of the steps in the migration process deals with the elimination of unstructured code (unconditional jumps such as GOTO statements). In this paper we present four alternative strategies for GOTO elimination that we evaluated in the project. Each has pros and cons, but when used in a real case, it turned out that one produced completely unreadable code, hence it was discarded. The final choice was a combination of the three remaining strategies.
Keywords :
Java; bank data processing; graphical user interfaces; relational databases; software maintenance; systems re-engineering; GOTO statement elimination strategy; GUI; ISAM indexed files; Java language; character oriented interface; graphical user interface; legacy code migration; legacy system maintenance; relational database; software reenginering; Banking; Displays; Graphical user interfaces; Java; Printers; Relational databases; User interfaces;
Conference_Titel :
Software Maintenance and Reengineering, 2008. CSMR 2008. 12th European Conference on
Conference_Location :
Athens
Print_ISBN :
978-1-4244-2157-2
DOI :
10.1109/CSMR.2008.4493300