Differencing and Merging of Architectural Views
CARNEGIE-MELLON UNIV PITTSBURGH PA SCHOOL OF COMPUTER SCIENCE
Pagination or Media Count:
As architecture-based techniques become more widely adopted, software architects face the problem of reconciling different versions of architectural models. However, existing approaches to differencing and merging architectural views are based on restrictive assumptions, such as requiring view elements to have unique identifiers or explicitly log changes between versions. To overcome some of the above limitations, the authors propose differencing and merging architectural views based on structural information. To that effect, they generalize a published polynomial-time, tree-to-tree correction algorithm that detects, inserts, renames, and deletes into a novel algorithm that also identifies restricted moves across levels of the hierarchy, and has the capability to force and prevent matches between view elements. They present a set of tools that use the tree-to-tree correction algorithm to compare and merge component-and-connector CC architectural views. Case studies with real software illustrate the practicality of the algorithm and tool set, as they enabled the authors to find and reconcile interesting divergences between architectural views.
- Computer Programming and Software