The canonical activities of reverse engineering

  • Authors:
  • Scott R. Tilley

  • Affiliations:
  • Department of Computer Science, University of California, Riverside, CA 92521‐0304, USA E-mail: stilley@cs.ucr.edu

  • Venue:
  • Annals of Software Engineering
  • Year:
  • 2000

Quantified Score

Hi-index 0.00

Visualization

Abstract

This paper describes three categories of canonical activities that are characteristic of reverse engineering for program understanding. The activities are data gathering, knowledge management, and information exploration. All tasks carried out by a software engineer during a program understanding exercise can be mapped to a composition of one or more of these canonical activities. The design space formed by the canonical activities can be used to classify the capabilities provided by individual support mechanisms using a common vocabulary. A descriptive model that categorizes important support mechanism features based on a hierarchy of attributes is used to structure the canonical activities.