Reverse Engineering and Design Recovery: A Taxonomy

  • Authors:
  • Elliot J. Chikofsky;James H. Cross II

  • Affiliations:
  • -;-

  • Venue:
  • IEEE Software
  • Year:
  • 1990

Quantified Score

Hi-index 0.04

Visualization

Abstract

The key to applying computer-aided software engineering to the maintenance and enhancement of existing systems lies in applying reverse-engineering approaches. However, there is considerable confusion over the terminology used in both technical and marketplace discussions. The authors define and relate six terms: forward engineering, reverse engineering, redocumentation, design recovery, restructuring, and reengineering. The objective is not to create new terms but to rationalize the terms already in use. The resulting definitions apply to the underlying engineering processes, regardless of the degree of automation applied.