SDE 5 Proceedings of the fifth ACM SIGSOFT symposium on Software development environments
Coloured Petri nets (2nd ed.): basic concepts, analysis methods and practical use: volume 1
Coloured Petri nets (2nd ed.): basic concepts, analysis methods and practical use: volume 1
Version models for software configuration management
ACM Computing Surveys (CSUR)
A State-of-the-Art Survey on Software Merging
IEEE Transactions on Software Engineering
Eclipse Modeling Framework
Differences between versions of UML diagrams
Proceedings of the 9th European software engineering conference held jointly with 11th ACM SIGSOFT international symposium on Foundations of software engineering
A generic approach to supporting diagram differencing and merging for collaborative design
Proceedings of the 20th IEEE/ACM international Conference on Automated software engineering
ADAMS: ADvanced Artefact Management System
CSMR '06 Proceedings of the Conference on Software Maintenance and Reengineering
Fundamentals of Algebraic Graph Transformation (Monographs in Theoretical Computer Science. An EATCS Series)
Merging models based on given correspondences
VLDB '03 Proceedings of the 29th international conference on Very large data bases - Volume 29
Detecting model inconsistency through operation-based model construction
Proceedings of the 30th international conference on Software engineering
Towards software configuration management for unified models
Proceedings of the 2008 international workshop on Comparison and versioning of software models
Towards odyssey-VCS 2: improvements over a UML-based version control system
Proceedings of the 2008 international workshop on Comparison and versioning of software models
Precise Semantics of EMF Model Transformations by Graph Transformation
MoDELS '08 Proceedings of the 11th international conference on Model Driven Engineering Languages and Systems
Managing Model Conflicts in Distributed Development
MoDELS '08 Proceedings of the 11th international conference on Model Driven Engineering Languages and Systems
A Category-Theoretical Approach to the Formalisation of Version Control in MDE
FASE '09 Proceedings of the 12th International Conference on Fundamental Approaches to Software Engineering: Held as Part of the Joint European Conferences on Theory and Practice of Software, ETAPS 2009
Correctness of high-level transformation systems relative to nested conditions†
Mathematical Structures in Computer Science
Model-versioning-in-the-large: Algebraic foundations and the tile notation
CVSM '09 Proceedings of the 2009 ICSE Workshop on Comparison and Versioning of Software Models
D-Praxis: A Peer-to-Peer Collaborative Model Editing Framework
DAIS '09 Proceedings of the 9th IFIP WG 6.1 International Conference on Distributed Applications and Interoperable Systems
Incremental Detection of Model Inconsistencies Based on Model Operations
CAiSE '09 Proceedings of the 21st International Conference on Advanced Information Systems Engineering
Establishing Correspondences between Models with the Epsilon Comparison Language
ECMDA-FA '09 Proceedings of the 5th European Conference on Model Driven Architecture - Foundations and Applications
Dependent and Conflicting Change Operations of Process Models
ECMDA-FA '09 Proceedings of the 5th European Conference on Model Driven Architecture - Foundations and Applications
EMFStore: a model repository for EMF models
Proceedings of the 32nd ACM/IEEE International Conference on Software Engineering - Volume 2
A formal approach to three-way merging of EMF models
Proceedings of the 1st International Workshop on Model Comparison in Practice
Colex: a web-based collaborative conflict lexicon
Proceedings of the 1st International Workshop on Model Comparison in Practice
Model/analyzer: a tool for detecting, visualizing and fixing design errors in UML
Proceedings of the IEEE/ACM international conference on Automated software engineering
Fine-grained management of software artefacts: the ADAMS system
Software—Practice & Experience
Conflict detection for model versioning based on graph modifications
ICGT'10 Proceedings of the 5th international conference on Graph transformations
FASE'11/ETAPS'11 Proceedings of the 14th international conference on Fundamental approaches to software engineering: part of the joint European conferences on theory and practice of software
Conflicts as first-class entities: a UML profile for model versioning
MODELS'10 Proceedings of the 2010 international conference on Models in software engineering
From UML profiles to EMF profiles and beyond
TOOLS'11 Proceedings of the 49th international conference on Objects, models, components, patterns
Detecting and resolving model inconsistencies using transformation dependency analysis
MoDELS'06 Proceedings of the 9th international conference on Model Driven Engineering Languages and Systems
Ensuring structural constraints in graph-based models with type inheritance
FASE'05 Proceedings of the 8th international conference, held as part of the joint European Conference on Theory and Practice of Software conference on Fundamental Approaches to Software Engineering
ASE '11 Proceedings of the 2011 26th IEEE/ACM International Conference on Automated Software Engineering
Hi-index | 0.00 |
In model-driven engineering, models are primary artifacts that can evolve heavily during their life cycle. Therefore, versioning of models is a key technique to be offered by integrated development environments for model-driven engineering. In contrast to text-based versioning systems, we present an approach that takes model structures and their changes over time into account. Considering model structures as graphs, we define a fundamental approach where model revisions are considered as graph modifications consisting of delete and insert actions. Two different kinds of conflict detection are presented: (1) the check for operation-based conflicts between different graph modifications, and (2) the check for state-based conflicts on merged graph modifications. For the merging of graph modifications, a two-phase approach is proposed: First, operational conflicts are temporarily resolved by always giving insertion priority over deletion to keep as much information as possible. Thereafter, this tentative merge result is the basis for manual conflict resolution as well as for the application of repair actions that resolve state-based conflicts. If preferred by the user, giving deletion priority over insertion might be one solution. The fundamental concepts are illustrated by versioning scenarios for simplified statecharts. Furthermore, we show an implementation of this fundamental approach to model versioning based on the Eclipse Modeling Framework as technical space.