Steps of Software Reverse Engineering
- Collection Information: This step focuses on collecting all possible information (i.e., source design documents, etc.) about the software.
- Examining the Information: The information collected in step-1 is studied so as to get familiar with the system.
- Extracting the Structure: This step concerns identifying program structure in the form of a structure chart where each node corresponds to some routine.
- Recording the Functionality: During this step processing details of each module of the structure, charts are recorded using structured language like decision table, etc.
- Recording Data Flow: From the information extracted in step-3 and step-4, a set of data flow diagrams is derived to show the flow of data among the processes.
- Recording Control Flow: The high-level control structure of the software is recorded.
- Review Extracted Design: The design document extracted is reviewed several times to ensure consistency and correctness. It also ensures that the design represents the program.
- Generate Documentation: Finally, in this step, the complete documentation including SRS, design document, history, overview, etc. is recorded for future use.
Reverse Engineering – Software Engineering
Software Reverse Engineering is a process of recovering the design, requirement specifications, and functions of a product from an analysis of its code. It builds a program database and generates information from this. This article focuses on discussing reverse engineering in detail.
Contact Us