A Delta-Oracle for Fast Model Merge Conflict Estimation using Sketch-Based Critical Pair Analysis

The abstract principle of the Sketch-based Critical Pair Analysis

Abstract

Conflicting changes are a major challenge in branch-based development and modeling. State-of-the-art research proposes continuous analysis via attempted three-way merges to find potential merge conflicts early on. These approaches are computation-heavy due to the necessity of comparing all variant combinations, ideally for each change. Thus, such approaches are infeasible for large models. This work proposes a conflict approximation algorithm (oracle) for quick feedback. A modeling tool can track each collaborator’s changes in delta sequences. The oracle approximates conflicts using critical pair analysis on these delta sequences, providing a quick feedback loop. The oracle is paired with a classical slow-but-precise full model comparison algorithm, which is run occasionally to validate the oracle’s results. This work contributes the Sketch-based Critical Pair Analysis (SCPA) approach for fast merge conflict estimation. SCPA’s runtime depends only on the number of changes and not the model size. We evaluate SCPA against EMFCompare in different simulated model evolution scenarios. We found that for the investigated model sizes, SCPA is faster by a magnitude while the number of found conflicts strongly correlates with EMFCompare.

Publication
In 18th International Workshop on Models and Evolution (2024)
Romain Pascual
Romain Pascual
Postdoc

My research interests include applications of graph rewriting to computer graphics, and more generally formal methods from theory to applications.