Contributions
Software Engineering
Better tools for program comprehension
Design Rationale
Reverse engineering
What information should we be capturing
during design?
Artificial Intelligence
Hierarchical recognition of design patterns in
structure and behavior of software