Reverse engineering forms an internal part of the whole
software re- engineering process. To implement the reverse engineering properly
in the re- engineering process one needs to understand the data through the
reverse engineering.
In this article we have taken up the same topic i.e., “how
is data understood through reverse engineering?”
- When the reverse engineering
is carried out, the main objective is always to recover the designs and
specifications of the software system or application.
- With reverse engineering, the development is only understood and no changes are made to the software
system or application.
- For the reverse engineering process, the source of the
software system or application is fed as the input.
- If you go through the history
of the reverse engineering, you will find some cases where the executable code
is given as input for the reverse engineering process.
- The reverse engineering though being in a great contrast with the
re- engineering forms an internal part of it.
- Reverse engineering serves the
purpose of recovering system design and specifications in the software re-
engineering process model.
- These recovered designs and specifications are used
by the engineers to understand the software system or application before they
start re- organizing the whole structure.
- However, there have been cases in
which the reverse engineering is not always followed by the re- engineering
process.
- There are three stages in reverse engineering process.
1. System to be re- engineered is subjected to automated
analysis.
2. Then it is manually annotated.
3. With the system information obtained, a whole set of new
documentation is generated containing:
(a)
Program structure diagrams
(b)
Data structure diagrams and
(c)
Traceability matrices.
Activities in Reverse engineering
In reverse engineering the
data is understood by the 3 basic activities that involved intense
understanding efforts:
1. Understanding process: In order to understand the
procedural abstractions as well as functionality analyze the source code on the
level:
(a)
System
(b)
Program
(c)
Component
(d)
Statement and
(e)
Pattern
2. Understanding data: It analyzes the internal data
structures and data base structure.
3. User interfaces: It analyzes the basic actions
processed by the interface, system’s behavioral response to those actions and
equivalency of the interfaces.
More about reverse engineering....
- The beginning of the reverse
engineering process is marked with an analysis phase in which the analyzation
is carried out with the help of automated tools in order to discover the
structure of the software system or application.
- But this stage itself does not
suffice the purpose of recovering the whole structure.
- Engineers then have to
work on the program code and model and add the recovered information to this.
- The
recovered information is maintained in form of a directed graph.
- The engineers
always make it a point to link the directed graph to the source code.
- The
directed graphs are compared with the code with the help of the information
browser stores.
- This graph helps in generating trace ability matrices and the
data structures.
- Tools that are used make it easy to navigate through the code.
- After the complete generation of the design documentation, the information
store is supplied with the additional information as a measure to re create the
specifications systems.
No comments:
Post a Comment