One of the functionalities that OpenEngSB provides is the ability to version data models. An important aspect in that context is to derive the differences between the version of the model to be commited and the last version of the corresponding model already in the system under version control. However, it is a crucial aspect that the semantics of the model is considered during the process so that differences can be made clear and visualized to the end user the similiar way he is used to from the engineering tools that export that model.
An example for a model that would need more than just a textual representation of differences, is COLLADA (COLLAborative Design Activity) - it is an interchange xml file format for interactive 3D applications. The task would be to design concepts, methods and then to develop solutions for deriving the differences between COLLADA models, to categorize those differences according to defined metrics, and then to visualize those differences in both a textual and 3D representation.

Benefit for the Student

Student will gain knowledge about EMF-related technologies like EMF Compare, visualization techniques and framework solutions.

Benefit for the Project

Being able to provide tool support that helps end users to capture differences between complex models and decide on the changes that should be versioned.


Experience in Java programming; basic knowledge with EMF and Apache Wicket is desired.


Richard Mordinyi, Stefan Scheiber, Marta Sabou

More information