2004
DOI: 10.1007/978-3-540-24667-1_20
|View full text |Cite
|
Sign up to set email alerts
|

Differencing and Merging within an Evolving Product Line Architecture

Abstract: Abstract. Propagating changes from one place in a product line architecture (PLA) to another is a difficult problem that occurs in a variety of settings. Currently, no automated tools exist that help an architect in doing so, and performing the task by hand in the face of a large PLA can be error-prone and difficult. To address this problem, we have built a set of tools for automating the process. Our approach breaks down into a two-step solution: (1) automatically determining the difference between two select… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
3
1
1

Citation Types

0
22
0

Year Published

2006
2006
2022
2022

Publication Types

Select...
2
2
2

Relationship

1
5

Authors

Journals

citations
Cited by 14 publications
(25 citation statements)
references
References 8 publications
0
22
0
Order By: Relevance
“…Our approach is built atop existing model versioning technologies in order to use their capabilities in identifying the differences between versions of an architectural model (e.g. [1,9,10]), and obtaining an initial merged model in which non-conflicting changes are merged (see [2] for a review of existing model merging techniques). We guide the software architects to resolve inconsistencies found in the initial merging by a combination of three methods: (a) reversing the nonconflicting changes which have been applied; (b) applying a (non-conflicting) subsets of conflicting changes; and (c) making further "new" changes to the model.…”
Section: Principlementioning
confidence: 99%
See 2 more Smart Citations
“…Our approach is built atop existing model versioning technologies in order to use their capabilities in identifying the differences between versions of an architectural model (e.g. [1,9,10]), and obtaining an initial merged model in which non-conflicting changes are merged (see [2] for a review of existing model merging techniques). We guide the software architects to resolve inconsistencies found in the initial merging by a combination of three methods: (a) reversing the nonconflicting changes which have been applied; (b) applying a (non-conflicting) subsets of conflicting changes; and (c) making further "new" changes to the model.…”
Section: Principlementioning
confidence: 99%
“…RELATED WORK There have been a range of techniques and tools proposed for differencing and merging architectural models. For example, the work in [1] focuses on identifying the changes between versions of a product line architecture and merging those changes to create a consolidated version. The approach in [10] is for differencing and merging generic architectural models that follow the traditional component-and-connector (C&C) view.…”
Section: B Correctnessmentioning
confidence: 99%
See 1 more Smart Citation
“…For instance, during analysis, a software architect may want to reconcile two C&C views representing two variants in a product line architecture [CCG+03]. Once the system is implemented, an architect may want to compare a high-level conceptual C&C view with a C&C view retrieved from the implementation (using a variety of architectural recovery techniques): the architect might be interested in implementation-level violations of the architectural styles or other intent [AAG05], or in a change impact analysis [KPS+99].…”
Section: Introductionmentioning
confidence: 99%
“…For instance, ArchDiff [CCG+03] only detects insertions and deletions, possibly leading to the loss of information when elements are moved or renamed. Many of these techniques are also limited in their ability to detect differences based purely on structural information; they assume that elements have unique identifiers (every time an element is changed, even when only its type changes, it gets a new unique identifier [AP03][OWK03]), or only match two elements if both their labels and their types match [CCG+03]. Other approaches (e.g., Mae [RHM+04]) rely on the environment tracking all changes using fine-grained element-level versioning.…”
Section: Introductionmentioning
confidence: 99%