Skip to Main content Skip to Navigation
Journal articles

Consistent Change Propagation within Models

Roland Kretschmer 1, * Djamel Eddine Khelladi 2 Roberto Lopez-Herrejon 1 Alexander Egyed 1
* Corresponding author
2 DiverSe - Diversity-centric Software Engineering
Inria Rennes – Bretagne Atlantique , IRISA-D4 - LANGAGE ET GÉNIE LOGICIEL
Abstract : Developers change models with clear intentions-e.g., for refactoring, defects removal, or evolution. However, in doing so, developers are often unaware of the consequences of their changes. Changes to one part of a model may aect other parts of the same model and/or even other models, possibly created and maintained by other developers. The consequences are incomplete changes and with it inconsistencies within or across models. Extensive works exist on detecting and repairing inconsistencies. However, literature tends to focus on inconsistencies as errors in need of repairs rather than on incomplete changes in need of further propagation. Many changes are non-trivial and require a series of coordinated model changes. As developers start changing the model, intermittent inconsistencies arise with other parts of the model that developers have not yet changed. These inconsistencies are cues for incomplete change propagation. Resolving these inconsistencies should be done in a manner that is consistent with the original changes. We speak of consistentchange propagation. This paper leverages classical inconsistency repair mechanisms to explore the vast search space of change propagation. Our approachnot only suggests changes to repair a given inconsistency but also changesto repair inconsistencies caused by the aforementioned repair. In doing so,our approach follows the developer's intent where subsequent changes maynot contradict or backtrack earlier changes. We argue that consistent changepropagation is essential for eective model driven engineering. Our approachand its tool implementation were empirically assessed on 18 case studies fromindustry, academia, and GitHub to demonstrate its feasibility and scalability.A comparison with two versioned models shows that our approach identiesactual repair sequences that developers had chosen. Furthermore, an experiment involving 22 participants shows that our change propagation approachmeets the work ow of how developers handle changes by always computingthe sequence of repairs resulting from the change propagation.
Document type :
Journal articles
Complete list of metadatas

https://hal.inria.fr/hal-03029432
Contributor : Djamel Eddine Khelladi <>
Submitted on : Saturday, November 28, 2020 - 2:03:52 PM
Last modification on : Monday, January 18, 2021 - 1:08:15 PM

File

paper.pdf
Files produced by the author(s)

Identifiers

Citation

Roland Kretschmer, Djamel Eddine Khelladi, Roberto Lopez-Herrejon, Alexander Egyed. Consistent Change Propagation within Models. Software and Systems Modeling, Springer Verlag, 2020, ⟨10.1007/s10270-020-00823-4⟩. ⟨hal-03029432⟩

Share

Metrics

Record views

17

Files downloads

103