The focus of software engineering has traditionally been oriented toward new software construction inspite of the fact that very substantial costs arise in the maintenance phase of the software lifecycle. A key element in the maintenance phase is "program understanding" because the individuals assigned this task are typically distinct from those on the development team. Tools to assist with program understanding have, nevertheless, received only modest attention in recent years. In this thesis the topic is explored within the context of the development of a particular program understanding tool called PUMP. PUMP (Program Understanding Tool for MODSIM Programs) is a tool developed to help understand simulation models written in the object-or...