Publication | Closed Access
PROGRAMMABLE REVERSE ENGINEERING
118
Citations
0
References
1994
Year
Software MaintenanceEngineeringProgrammable ApproachSoftware EngineeringReverse EngineeringSoftware AnalysisAutomated Software EngineeringProgram TransformationAutomatic ProgrammingDesignComputer EngineeringProgram UnderstandingComputer ScienceSoftware DesignProgram Understanding EnvironmentProgram AnalysisSoftware TestingProgram ComprehensionFormal MethodsProgrammable Reverse EngineeringSystem SoftwareSoftware Reverse Engineering
Program understanding can be enhanced using reverse engineering technologies, but most tools offer only a fixed set of techniques, and the process depends on users’ cognitive abilities and the environment’s facilities. This paper describes a programmable approach to reverse engineering. The approach uses a scripting language that enables users to write their own routines for common reverse engineering activities, such as graph layout, metrics, and subsystem decomposition, thereby extending the capabilities of the reverse engineering toolset to better suit their needs. A programmable environment supported by this approach subsumes existing reverse engineering systems by being able to simulate facets of each one.
Program understanding can be enhanced using reverse engineering technologies. The understanding process is heavily dependent on both individuals and their specific cognitive abilities, and on the set of facilities provided by the program understanding environment. Unfortunately, most reverse engineering tools provide a fixed palette of extraction, selection, and organization techniques. This paper describes a programmable approach to reverse engineering. The approach uses a scripting language that enables users to write their own routines for common reverse engineering activities, such as graph layout, metrics, and subsystem decomposition, thereby extending the capabilities of the reverse engineering toolset to better suit their needs. A programmable environment supported by this approach subsumes existing reverse engineering systems by being able to simulate facets of each one.