Q. Define Reverse Engineering? What are the main objectives of reverse engineering?
Ans: The reverse engineering is the procedure of generating representations that are implementation independent starting from code. It is opposite of usual forward engineering process. The major objectives of the reverse Engineering process are:
(i) It assists the companies to understand the complexities of the system
(ii) Assists the analyst to generate useful lost information about legacy systems
(iii) Can be utilized to identify reusable components for analysis and future use.
(iv) Assists in generating graphical representation of the system from different perspectives example are ER diagram, class diagram and DFD etc.
(v) Can be utilized as a part of Reengineering process.
(vi) Over a period of time alterations made to the software as well result into unexpected problems. The anomalies are able to be detected using reverse engineering techniques.