Fifth European Conference on Software Maintenance and Reengineering
A Case Study of Feature Location in Unstructured Legacy Fortran Code
Lisbon, Portugal
March 14-March 16
ISBN: 0-7695-1028-0
Feature location is a major problem in supporting legacy code. Two methods, the Software Reconnaissance technique and the Dependency Graph search method, have been proposed to help software engineers locate features in a program that needs to be modified. Both methods have been developed and evaluated largely using relatively modern C code. This report describes preliminary experiences in adapting them to legacy Fortran code typical of systems developed in the 1970's. A case study was performed to apply the two methods to the CONVERT3 program, which is part of the FASTGEN geometric modeling suite. CONVERT3 exhibits many characteristics typical of legacy Fortran programs such as poor modularity, prolific use of unstructured GOTOs, tight coupling through large common blocks, and confusing program plans introduced to provide efficiency on now-obsolete platforms. Both methods were effective in locating features in CONVERT3.The Dependency Graph search method required considerable adaptation to be useful on this kind of program and required the systematic exploration of a large amount of code. The Software Reconnaissance technique was able to locate features with less searching but, as compared to earlier experience with C, the Fortran code proved more difficult to understand once it had been located.
Citation:
Norman Wilde, Michelle Buckellew, Henry Page, Vaclav Rajlich, "A Case Study of Feature Location in Unstructured Legacy Fortran Code," csmr, pp.68, Fifth European Conference on Software Maintenance and Reengineering, 2001