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. Achee | 1 | 15 | 1.53 |
Doris L. Carver | 2 | 232 | 34.66 |