Title
Creating object-oriented designs from legacy FORTRAN code
Abstract
The majority of scientific and engineering software systems currently in use are on average 10 to 15 years old. They have undergone extensive maintenance and, therefore, suffer from such problems as inaccurate or missing documentation, poorly structured code, and low modular cohesion. Moreover, the mere age of such systems has prohibited their realization of such recent innovations as object orientation. This paper addresses these concerns in the context of reverse engineering. It discusses the development of a method to identify objects in legacy systems, specifically those coded in the imperative language, FORTRAN-77. Algorithms that use a greedy approach to object extraction are presented. Viewing the subroutine as the unit of functionality, the attributes of candidate objects are extracted from two areas: parameters and global variables. Because FORTRAN-77 uses the COMMON block as the mechanism for realizing global variables, additional algorithms are presented to handle the resulting concerns. Using a modification of the program slicing concept introduced by Weiser in 1984, methods are defined for each set of attributes. The combination of the extracted attributes and methods forms the set of candidate objects. Throughout the paper, an example is used to illustrate the methodology.
Year
DOI
Venue
1997
10.1016/S0164-1212(96)00171-9
Journal of Systems and Software
Keywords
Field
DocType
object-oriented design,legacy fortran code,object oriented,software systems,legacy system,program slicing,reverse engineering,object oriented design
Program slicing,Programming language,Object-oriented programming,Software engineering,Subroutine,Computer science,Reverse engineering,Imperative programming,Software system,Legacy system,Global variable
Journal
Volume
Issue
ISSN
39
2
The Journal of Systems & Software
Citations 
PageRank 
References 
15
1.19
14
Authors
2
Name
Order
Citations
PageRank
B. L. Achee1151.53
Doris L. Carver223234.66