Designing a Software Maintenance System Using a Reverse Engineering Approach - Al-Fawareh, Hamed Jasem (1998)
The aim of the software maintenance is to maintain the software system in accordance with advancement in software and hardware technology. There are four activities to software maintenance, namely corrective maintenance, adaptive maintenance, perfective maintenance, and preventive maintenance. Three approaches are used in software maintenance, that is restructure, reverse engineering, and reenginering. Reverse engineering is a process that is currently being used in software maintenance to extract items of information on software products. This research aims to produce a new reverse engineering logic-form tool, to help maintainers by giving them a complete document about the software system. Currently, many tools are used in reverse engineering, but not all can satisfy the problems faced by the users. The thesis describes the design and implementation of an automatic aid system that uses a logic-form reverse engineering approach, with a new data structure called tree module structure. This tool contains four modules, namely, lexical analyzer module, syntax analyzer module, handling module, and interface or query module.