Reverse engineering: resolving conflicts between expected and actual software designs

A real-time embedded system was the subject of a series of experiments in reverse engineering. These experiments used a method of reverse engineering, called synchronized refinement, that analyzes a program, describing its behavior in the vocabulary of the application domain and its structure in ter...

Full description

Saved in:
Bibliographic Details
Published inSoftware Maintenance, 1992 Conference On pp. 32 - 40
Main Authors Ornburn, S.B., Rugaber, S.
Format Conference Proceeding
LanguageEnglish
Published IEEE Comput. Soc. Press 1992
Subjects
Online AccessGet full text
ISBN0818629800
9780818629808
DOI10.1109/ICSM.1992.242561

Cover

Loading…
More Information
Summary:A real-time embedded system was the subject of a series of experiments in reverse engineering. These experiments used a method of reverse engineering, called synchronized refinement, that analyzes a program, describing its behavior in the vocabulary of the application domain and its structure in terms of design decisions. The results provide insight into the role of domain knowledge in this type of analysis, together with the tools used in the detailed analysis of code. The experiments, which included the redesign of a component and the diagnosis of a critical software failure, showed that the real work of a software maintenance is in resolving apparent inconsistencies between the expectations that have been derived from domain knowledge and the facts that have been uncovered by applying reverse engineering tools to the software.< >
ISBN:0818629800
9780818629808
DOI:10.1109/ICSM.1992.242561