Summary: Adding Ownership Domain Annotations to and
Extracting Ownership Object Graphs from
Radu Vanciu Marwan Abi-Antoun
Department of Computer Science
Wayne State University
Detroit, MI 48202
Keywords: architectural extraction, runtime architecture, architectural conformance, horizon-
tal conformance, vertical conformance, reference architecture, FTP server
A runtime architecture could greatly help software developers and maintainers by describing objects
and their interactions at runtime. As software products evolve, the architectural details may not be
properly maintained in the existing documentation; therefore, inconsistencies may appear between
the architectural view and the code.
Extracting a runtime architecture from the code requires a hierarchical organization of objects.
Since object hierarchy is not directly observable in the code, we use ownership domain annotations.
A sound static analysis analyzes the annotated code and extracts an ownership object graph (OOG).
By refining the annotations, we can push objects that express implementation details underneath
more architecturally relevant ones. The refined OOG conveys architectural abstraction and we can