© 2005

Reverse Engineering of Object Oriented Code


Part of the Monographs in Computer Science book series (MCS)

Table of contents

  1. Front Matter
    Pages I-XIV
  2. Pages 1-19
  3. Pages 21-41
  4. Pages 43-61
  5. Pages 63-87
  6. Pages 89-113
  7. Pages 115-132
  8. Pages 133-154
  9. Pages 155-173
  10. Back Matter
    Pages 175-208

About this book


In software evolution and maintenance, the ultimate, most reliable description of a system is its source code. Reverse engineering aims at extracting abstract, goal-oriented views from the code, to summarize relevant properties of program computations.

Reverse Engineering of Object Oriented Code presents a unifying framework for the analysis of object oriented code. Using Unified Modeling Language (UML) to represent the extracted design diagrams, the book explains how to recover them from object oriented code, thereby enabling developers to better comprehend their product and evaluate the impact of changes to it. Furthermore, it describes the algorithms involved in recovering views and demonstrates some of the techniques that can be employed for their visualization. The presentation is fully self-contained.

Topics and Features:

*Provides unique, in-depth exposition of the core concepts, principles, and methods behind reverse engineering object oriented code

*Explains the techniques and algorithms through numerous examples of object oriented code, the leading programming paradigm

*Focuses on fully automated design recovery, and deals with static and dynamic source-code analysis algorithms

*Explores code-centered analysis to obtain design diagrams aligned with the implementation

*Describes structural and behavioral views to offer a multi-perspective assessment of the system being analyzed

*Reports the analysis results in UML, the standard language for representing design diagrams in object oriented program development

This new state-of-the-art volume covers core methodologies for reverse engineering object oriented code, allowing for improved control in future code maintenance and modification. It is a significant resource for researchers and software engineers in the areas of reverse engineering, code analysis, object oriented programming, and UML. In addition, it will be invaluable as the reference book for advanced courses in these areas.


Diagram recovery Object flow graph Object oriented code Object oriented programming Program modeling Reverse engineering Unified Modeling Language (UML) algorithm algorithms design programming

Authors and affiliations

  1. 1.ITC-iristPovo, TrentItaly

Bibliographic information

Industry Sectors
Chemical Manufacturing
IT & Software
Finance, Business & Banking
Energy, Utilities & Environment


From the reviews of the first edition:

"The monograph at hand is a well-written, well-structured guide for reverse engineering of complex object-oriented programs i.e., for extracting original design specifications as far as possible in a form easily understandable by a re-designer team. … 100 + literature references at the end of the book demonstrate the deep research and strong know-how of the authors and make the book a valuable monographic textbook for reverse engineering courses of object-oriented programs." (Hans-Jürgen Hoffmann, Zentralblatt MATH, Vol. 1070, 2005)