Reverse engineering PL/SQL legacy code: An experience report

M. Habringer, M. Moser, J. Pichler. Reverse engineering PL/SQL legacy code: An experience report. pages 553-556 DOI 10.1109/ICSME.2014.93, 10, 2014.

  • Martin Habringer
  • Michael Moser
  • Josef Pichler
BuchProceedings of the 30th International Conference on Software Maintenance and Evolution - ICSME 2014
TypIn Konferenzband
Seiten553-556 DOI 10.1109/ICSME.2014.93

The reengineering of legacy code is a tedious endeavor. Automatic transformation of legacy code from an old technology to a new one preserves potential problems in legacy code with respect to obsolete, changed, and new business cases. On the other hand, manual analysis of legacy code without assistance of original developers is time consuming and error-prone. For the purpose of reengineering PL/SQL legacy code in the steel making domain, we developed tool support for the reverse engineering of PL/SQL code into a more abstract and comprehensive representation. This representation then serves as input for stakeholders to manually analyze legacy code, to identify obsolete and missing business cases, and, finally, to support the re-implementation of a new system. In this paper we briefly introduce the tool and present results of reverse engineering PL/SQL legacy code in the steel making domain. We show how stakeholders are supported in analyzing legacy code by means of general-purpose analysis techniques combined with domain-specific representations and conclude with some of the lessons learned.