Model Differencing based on metamodels

Abstract

Model differencing and versioning are important steps during any type of development, certainly in collaboration based projects it can give a clear view of which structural changes have been made or which implementations have been updated. The problem of determining model differences is intrinsically complex but can be tackled by cohering to the general approach of performing three steps: calculation, representation and visualisation. Although these three steps usually suffice for calculating the differences between models, the difference model can either only be used for specific models or are not represented in the domain specific language of the model. Therefor this paper will first present an overview of the general methodology with some extra information on how model representations could influence the performance, intuitiveness and expressiveness of the difference model. Afterwards this paper will present a differencing tool which works on top of AToMPM to allow model differencing based on their meta-model.

Project

As a project I decided to try to apply differencing on models created in AToMPM. These models hold all necessary metamodel information for presenting the differences in a domain specific manner. Click continue to watch a live demo of the tool.

Continue