Previous Next V-Model Official Homepage by IABG  
Part 3: Collection of Manuals Homepage  
RE  Homepage  

  Reverse Engineering


RE.1 Preliminaries
RE.2 What is Reverse Engineering?
RE.3 Regulations for Reverse Engineering

RE.1 Preliminaries

If SW maintenance and modification (SWMM) is required where the development and possibly preceding SWMM measures have not been realized according to the regulations of the V-Model, then it is necessary to first create the basis for the project realization in conformance with the V-Model.

Based on the following nine main activities, the present regulations for Reverse Engineering describe how this is to be done:

The regulations for reverse engineering substitute the regulations of submodel System Development (SD) as "operative model" for the above described situation.

RE.2 What is Reverse Engineering?

We are faced with constantly larger software volumes that have to be maintained and updated. This results in the call for measures that help to reduce the software maintenance and modification cost in an open and just way.

By using software techniques that can be combined under the term "software reengineering" such demands can be fulfilled, since this procedure influences characteristics of existing software which in turn has a positive effect on the software maintenance.

Software reengineering is a two-level process. It is comprised of

The first level of the software reengineering processes is referred to as "reverse engineering" since it is realized predominantly in reverse of the usual procedures in connection with the generation of the software for IT systems.

The essential tasks in reverse engineering are to understand the structure and behavior of the software part of existing IT systems, to process the software and to describe information on an abstract level about the software that is no longer available or lost.

Reverse Engineering should be realized as a preventive software maintenance measure when the software documentation is not complete or no longer in existence or available, when the software documentation is difficult to understand, when this documentation does not reflect the actual state of the software, or when it does not meet the required documentation standards (in this case: the product schemas of the V-Model).

The second level of the software reengineering process is referred to as "forward engineering". The forward engineering procedure corresponds to the customary procedures of the system generation (in this case: the procedure described in submodel SD).

It is the objective of forward engineering to modify the software part of existing IT systems until they are really state-of-the-art, which (contrary to reverse engineering) may also include functional software modifications. Typical examples for such modifications are the use of a different programming language, the introduction of a new database management system, or the transfer of software to a new hardware platform.

When forward engineering is realized in connection with prior reverse engineering, the products generated with reverse engineering remain the basis for the software modification with forward engineering. In general, it can be said that reverse engineering (described here) creates the basis (corresponding to the V-Model) for an efficient realization of SWMM measures.

RE.3 Regulations for Reverse Engineering

RE.3.1 Overview

While the submodel System Development (SD) defines the activities and products to be realized or generated during the development and update/modification of IT systems, the regulations for reverse engineering (RE) describe how to proceed during the realization of reverse engineering measures.

Sub-models Quality Assurance (QA), Configuration Management (CM), and Project Management (PM) describe the accompanying activities within a development project, they are not subject to the regulations for reverse engineering and are applicable in the same way as submodel system development (SD).

RE.3.2 Reverse Engineering Activities

This section contains a detailed description of all RE activity schemes known from the regulation part of the V-Model.

RE.3.3 Reverse Engineering Products

Next you will find an overview of all products that are generated in reverse engineering. As already known from Part 1 of the V-Model. It is differentiated between the following three product categories:

  • Products corresponding completely with those in submodel SD:
  • In the following, the products in this category are no longer mentioned.

  • Products that are known from submodel SD in which individual subproducts are omitted, however:
  • For the products in this category the following only explains which subproducts are omitted:

  • Products that are generated only during reverse engineering and that have no corresponding product in submodel SD:
  • Previous Next This page online  •  GDPA Online  •  Last Updated 03.Mar.2004 by C. Freericks