Re Engineering

Program-Transformation.Org: The Program Transformation Wiki
The ReverseAndReengineeringTaxonomy defines reengineering as:

the examination and alteration of a subject system to reconstitute it in a new form and the subsequent implementation of the new form.

It is often presented as consisting of three steps, involving


This definition is not very precise and restrictive: as a result, even ProgramCompilation fits in. It would be more accurate to insist that the new form is at the same or a higher level of abstraction as the original subject system -- conform the ReStructuring definition in which the level of abstraction remains the same.

-- ArieVanDeursen, 04 Aug 2002


Relevant reengineering topics:


Resources:


The US DOD maintains all sorts of info at http://www.stsc.hill.af.mil/RENG/, including a Software Reengineering Assessment Handbook, a tool evaluation methodology, and various tool descriptions. Sometimes a bit outdated (viz. dealing with Y2K extensively), sometimes very interesting.

-- ArieVanDeursen, 17 September 2002.


E. J. Byrne (A Conceptual Foundation for Software Re-Engineering, ICSM 1992, pp. 226-235) has proposed a model for reengineering distinguishing three steps:
  1. ReverseEngineering
  2. ReStructuring
  3. ForwardEngineering

which he visualizes using the following figure:

ReEngineering?rev=&filename=byrne.gif


The SEI Horseshoe Model is similar to Byrne's model, and takes a SoftwareArchitecture perspecitve on reengineering:

Horseshoe.gif

See http://www.sei.cmu.edu/reengineering/


CategoryReengineeringPages | CategoryReengineeringWiki | Contributions by ArieVanDeursen