An efficient line-based approach for resolving merge conflicts in XMI-based models

Alfonso de la Vega*, Dimitris Kolovos

*Corresponding author for this work

Research output: Contribution to journalArticlepeer-review

Abstract

Conflicts in software artefacts can appear during collaborative development through version control systems. When these conflicts happen in XMI models, the conflict sections generated by diff programs break the XMI serialisation and compromise the ability to use model editors that assume well-formedness of this serialisation. While these conflict sections already mark the conflicting lines of the model, current tools for conflict resolution in models ignore them and instead load the different versions of a model from the repository, over which they perform a full and costly comparison that re-identifies the conflicts. We present a novel approach that prevents this repetition of work by directly parsing XMI-based models with conflict sections, which allows for a targeted analysis of only the lines of the model that have been detected to be in conflict by the version control system. We have implemented this approach in the Peacemaker tool, which can load XMI models with conflict sections, compute and display conflicts at the model level, and provide appropriate resolution actions. Compared with state-of-the-art model comparison tools with support for conflict resolution, Peacemaker is able to identify the vast majority of conflicts in models while reducing the required time by up to 60%. The small subset of non-identified conflicts does not introduce issues into the models, e.g. there is no loss of model information, and the resulting models after line-merging these conflicts conform to their metamodels.

Original languageEnglish
Pages (from-to)2461-2487
Number of pages27
JournalSoftware and Systems Modeling
Volume21
Issue number6
Early online date9 May 2022
DOIs
Publication statusPublished - Dec 2022

Bibliographical note

Funding Information:
The work presented in this paper has been funded through the HICLASS InnovateUK project (Contract No. 113213)

Publisher Copyright:
© 2022, The Author(s).

Keywords

  • Conflict resolution
  • Model-driven engineering
  • Version control systems

Cite this