Abstract
Automated program understanding tools have the potential to make important contributions to reducing the very substantial costs of program maintenance. In this paper, we formulate a particular approach to program understanding within the context of the object-oriented simulation language, MODSIM. The software tool that has been developed is called PUMP (Program Understanding of MODSIM Programs). The input to this tool is the syntactically correct MODSIM program code for a simulation project, which typically is distributed over several files. The main presentation of information about the program is via a user interface that is organized along hierarchical lines that correspond to the organizational structure of MODSIM programs. The hierarchical approach permits examination of program features in increasing levels of detail. The main thrust of the analysis is to identify entity types (e.g., objects, methods, variables) used in the program together with their interrelationships. The key design aspects of PUMP are outlined in the paper and an overview of the user interface is presented. Emphasis is given to the mechanisms specifically developed for handling the object-oriented features of MODSIM.