Mittwoch, 23. Mai 2012


Artikel

August 2009 | Artikel

Modellvergleich mit EMF Compare

(Link zum Artikel: http://www.entwickler.de/jaxenter//002515)

  • Teilen
  • kommentieren
  • empfehlen
  • Bookmark and Share
Das Vergleichen und Zusammenführen EMF-basierter Modelle wird oft nur auf textueller Ebene im XML-Quelltext unterstützt. Bei der Entwicklung im Team führt das nicht selten zu Problemen, da parallele Änderungen an Modellen auf diese Weise nur schwer integrierbar sind.

EMF-Compare ist ein Eclipse-basiertes Framework, das genau dieses Problem angeht. Es zieht für den Vergleich die logische Struktur der Modelle heran und unterstützt den Benutzer beim Zusammenführen unterschiedlicher Modelle.

Wir sprachen mit Moritz Eysholdt über den aktuellen Entwicklungsstand von EMF Compare.

Teil 1   Teil 2   

JAXenter: Hallo Herr Eysholdt. Können Sie kurz erklären, worum es sich bei EMF Compare handelt?

Moritz Eysholdt: EMF Compare ist ein Werkzeug, um EMF-basierte Modelle zu vergleichen: Der Entwickler kann dies entweder aus seiner Eclipse Workbench heraus über Kontextmenüs tun und die Modellunterschiede visualisiert betrachten, oder EMF Compare als Bibliothek in seine eigenen Anwendungen integrieren.

JAXenter: Wozu wird EMF Compare eingesetzt?

Moritz Eysholdt: In der Eclipse Workbench lassen sich beispielsweise im Zusammenhang mit einem SCM (CVS oder SVN) die Änderungen zwischen zwei Versionen eines Modells grafisch anzeigen. In eigenen Anwendungen kann EMF Compare dabei helfen, automatisch Berichte über Änderungen in Modellen zu erstellen. EMF Compare erzeugt ein Modell, welches die Änderungen beschreibt: Dies lässt sich einfach in eigenen Benutzeroberflächen darstellen oder zum Generieren von Dokumenten verwenden.

Lesen Sie zu EMF Compare auch die zweiteilige Serie im Eclipse Magazin:

Eclipse Magazin 4.09: Funktionsweise des EMF Compare Frameworks

Eclipse Magazin 5.09: EMF Compare - Ein Praxisbeispiel

JAXenter: EMF Compare ist ja als Unterprojekt des EMFT-Projekts (Eclipse Modeling Framework Technology) auch im Eclipse-Galileo-Release-Train vertreten gewesen. Welche Neuerungen wurden hier integriert?

Moritz Eysholdt: EMF Compare unterstützt jetzt das Vergleichen von mehreren Modellen auf einmal (ganze ResourceSets). Dies ist nützlich, wenn mehrere Modelle einander referenzieren oder Elemente von einem Modell in ein anderes verschoben wurden. Außerdem gibt es jetzt ein Patch-Format für Modelle, welches es erlaubt, die Unterschiede zwischen zwei Modellen als eigenständiges Modell (dem Epatch) zu speichern und zu einem späteren Zeitpunkt das eine Modell mit Hilfe des Epatches aus dem anderen zu rekonstruieren. Epatches lassen sich als XMI oder textuell in einer Xtext-basierten DSL speichern, so dass sie komfortabel von Menschen gelesen und bearbeitet werden können. Als dritte große Neuerung gibt es eine rudimentäre Unterstützung zum Visualisieren von Unterschieden in GMF-basierten Diagrammen.

Teil 1   Teil 2   

andere Artikel dieser Serie

Kommentare