Exploring legacy systems using types
We show how hypertext-based program understanding tools can achieve new levels of abstraction by using inferred type information for cases where the subject software system is written in a weakly typed language. We propose TypeExplorer, a tool for browsing COBOL legacy systems based on these types. The paper addresses (1) how types, an in-vented abstraction, can be presented meaningfully to soft-ware re-engineers; (2) the implementation techniques used to construct TypeExplorer; and (3) the use of TypeExplorer for understanding legacy systems, at the level of individual statements as well as at the level of the software architecture-- which is illustrated by usingTypeExplorer to browse an industrial COBOL system of 100,000 lines of code.
|Design Tools and Techniques (acm D.2.2), Coding Tools and Techniques (acm D.2.3), Distribution, Maintenance, and Enhancement (acm D.2.7), Processors (acm D.3.4), Specifying and Verifying and Reasoning about Programs (acm F.3.1), Automatic Programming (acm I.2.2)|
|Software (theme 1)|
|Software Engineering [SEN]|
|Organisation||Software Analysis and Transformation|
van Deursen, A, & Moonen, L.M.F. (2000). Exploring legacy systems using types. Software Engineering [SEN]. CWI.