Navigation

Seiten der Rubrik "Bücher"


Google Anzeigen

Anzeigen

Bücher

Eclipse Series: Eclipse Modeling Framework


Statistiken
  • 7549 Aufrufe

Informationen zum Buch
  ISBN
  Buchreihe
  Autoren
  Verlag
  Sprache
  Seiten
  Erscheinungsjahr
  Extras

Rezension von

Marc-Florian Wendland

Eclipse Modeling Framework Das Eclipse Modeling Framework (kurz EMF) stellt eines der wichtigsten Frameworks dar, mit denen die Modellgetriebene Softwareentwicklung realisiert werden kann. Der MDA-Begriff der OMG umfasst mittlerweile eine beachtliche Anzahl von Spezifikationen, die sukzessive erweitert werden. Lange Zeit haperte es an pragmatischen Implementierungen dieser Standards. Was hilft die detaillierte Systemmodellierung mit der UML, wenn der Zugriff auf diese (Meta-)Elemente sperrig oder schlichtweg unmöglich ist? Dann veröffentlichte IBM's Eclipse Community das Eclipse Modeling Framework und ebnete den holprigen Weg zur vergleichsweise intuitiven Definition eigener Modelle/DSLs. Inhaltlich gliedert sich das Buch in 6 Teile, von denen die letzten beiden ausschließlich API-Dokumentationen sind. Effektiv vermittelt das Buch demnach in 4 Abschnitten umfangreiches Wissen rund um das EMF. Im ersten Teil wird ein Schnelldurchlauf durch das EMF geboten. Beginnend bei der Anatomie von Eclipse Plug-ins, dem Zwist des „Programmieren-gegen-Modellieren“ über die Definition einer fiktiven Problemstellung und deren Modell basierter Lösung, bis hin zur Codegenerierung aus den zuvor erstellten Modellen, greifen die Autoren die relevanten Schritte und Prozesse auf, die bei der Arbeit mit EMF immer wiederkehren. Die folgenden Abschnitte sind daher Vertiefungen der bereits angerissenen Verfahren. Der zweite Abschnitt behandelt das Ecore-Metamodel des EMF ausführlich. Die einzelnen (überschaubaren) Ecore-Elemente werden diskutiert, ebenso wie die Definition eigener Ecore-Metamodelle aus UML-Klassenmodellen, XSD-Dateien oder annotierter Java-Klassen. Teil 3 „Using the EMF Generator“ verdeutlicht die Java-basierte, automatisch generierte Implementierung des Metamodells und dessen Zugriff. Als letzter, informativer Abschnitt widmet sich der 4. Teil der benutzerspezifische Adaption bzw. Erweiterungen des generischen EMF-Editors. Die Autoren führen in die Welt der Modellentwicklung mit dem EMF mit kleinen, verständlichen Schritten ein und erreichen mit dem niedrigen Einstiegslevel, insbesondere im ersten Teil, selbst jene Rezipienten die sich nie zuvor mit dem Entwurf von Eclipse Plug-ins oder Systemmodellen auseinander gesetzt haben. Dies ist jedoch der richtige Schritt um die Vorzüge der Modellentwicklung Neueinsteigern schmackhaft zu machen. Modellentwicklung ist kein triviales Thema und es führte am Ziel der Autoren/Entwickler vorbei, mit einer zu stark technisierten Ausrichtung auf Interna des Frameworks, potentielle Rezipienten zu verschrecken. Nach der Lektüre des ersten Teils besitzt ein Leser bereits ein grobes, aber nicht von der Hand zu weisendes Verständnis von der Arbeitsweise des EMF. Ebenfalls gefiel das fiktive Projekt, welches über das gesamte Buch hindurch bearbeitet und erweitert wird. Dadurch lassen sich vorteilhafte Erweiterungen des Modells (oder des Codes), die die Autoren propagieren und umsetzen, schnell nachvollziehen. Zahlreiche UML-Modelle unterstützen die grafische Visualisierung der Zielarchitektur. Ebenso weist „Eclipse Modeling Framework“ eine Vielzahl an Code-Snippets auf, die zusätzlich noch erläutert werden. Kritik bleibt nicht außen vor. Den Autoren ist nichts vorzuwerfen, solange sie sich innerhalb des EMF aufhalten. Die Beispiele sind gut dokumentiert und verständlich. Leider fehlt der Ansatz, wie mit instantiierten Modellen (M1-Modellen) effektiv zu arbeiten ist. Inkludiert man das Archiv des Metamodells in eine Standalone-Applikation oder lieber als Eclipse Plug-in? Diese Frage wird im gesamten Buch nicht erläutert. Es liegt zwar auf der Hand, das Modell als Plug-in zu inkludieren, da das gesamte EMF und alles, was es generiert, als Plug-is vorliegt, dennoch wäre ein weiterer Abschnitt wünschenswert, der die Arbeiten mit den Modellinstanzen und -bibliotheken innerhalb eines umfangreicheren Workflows dokumentieren würde. Fazit: „Eclipse Modeling Framework“ trägt zurecht den inoffiziellen Titel der „EMF-Bibel“. Dennoch ist das Buch zweifelsohne ein bisschen aus der Mode gekommen. Interessenten sollten daher auf die im November erscheinende Neuauflage warten. Die hier vorgestellte Auflage arbeitet das grundlegende Procedere jedoch sehr präzise und didaktisch gut heraus. Viele Dinge haben sich seit der Veröffentlichung des EMF nicht geändert – was für ein wohl durchdachtes Konzept steht. „Eclipse Modeling Framework“ liefert das nötige Rüstzeug um in die faszinierende, zukunftsweisende Methodik der Modell getriebenen Softwareentwicklung zu starten und stellt gleichermaßen das beste Buch dar, das derzeit zu diesem Thema auf dem Buchmarkt erhältlich ist.

Das Eclipse Modeling Framework (kurz EMF) stellt eines der wichtigsten Frameworks dar, mit denen die Modellgetriebene Softwareentwicklung realisiert werden kann. Der MDA-Begriff der OMG umfasst mittlerweile eine beachtliche Anzahl von Spezifikationen, die sukzessive erweitert werden. Lange Zeit haperte es an pragmatischen Implementierungen dieser Standards. Was hilft die detaillierte Systemmodellierung mit der UML, wenn der Zugriff auf diese (Meta-)Elemente sperrig oder schlichtweg unmöglich ist? Dann veröffentlichte IBM's Eclipse Community das Eclipse Modeling Framework und ebnete den holprigen Weg zur vergleichsweise intuitiven Definition eigener Modelle/DSLs.

weitere Rezensionen von Marc-Florian Wendland

#
rezensiert seit
Buchtitel
2
12.10.2010
3
12.10.2010
4
12.10.2010
5
01.10.2010

Inhaltlich gliedert sich das Buch in 6 Teile, von denen die letzten beiden ausschließlich API-Dokumentationen sind. Effektiv vermittelt das Buch demnach in 4 Abschnitten umfangreiches Wissen rund um das EMF.

Im ersten Teil wird ein Schnelldurchlauf durch das EMF geboten. Beginnend bei der Anatomie von Eclipse Plug-ins, dem Zwist des „Programmieren-gegen-Modellieren“ über die Definition einer fiktiven Problemstellung und deren Modell basierter Lösung, bis hin zur Codegenerierung aus den zuvor erstellten Modellen, greifen die Autoren die relevanten Schritte und Prozesse auf, die bei der Arbeit mit EMF immer wiederkehren. Die folgenden Abschnitte sind daher Vertiefungen der bereits angerissenen Verfahren.

Der zweite Abschnitt behandelt das Ecore-Metamodel des EMF ausführlich. Die einzelnen (überschaubaren) Ecore-Elemente werden diskutiert, ebenso wie die Definition eigener Ecore-Metamodelle aus UML-Klassenmodellen, XSD-Dateien oder annotierter Java-Klassen.

Teil 3 „Using the EMF Generator“ verdeutlicht die Java-basierte, automatisch generierte Implementierung des Metamodells und dessen Zugriff.

Als letzter, informativer Abschnitt widmet sich der 4. Teil der benutzerspezifische Adaption bzw. Erweiterungen des generischen EMF-Editors.

Die Autoren führen in die Welt der Modellentwicklung mit dem EMF mit kleinen, verständlichen Schritten ein und erreichen mit dem niedrigen Einstiegslevel, insbesondere im ersten Teil, selbst jene Rezipienten die sich nie zuvor mit dem Entwurf von Eclipse Plug-ins oder Systemmodellen auseinander gesetzt haben. Dies ist jedoch der richtige Schritt um die Vorzüge der Modellentwicklung Neueinsteigern schmackhaft zu machen. Modellentwicklung ist kein triviales Thema und es führte am Ziel der Autoren/Entwickler vorbei, mit einer zu stark technisierten Ausrichtung auf Interna des Frameworks, potentielle Rezipienten zu verschrecken. Nach der Lektüre des ersten Teils besitzt ein Leser bereits ein grobes, aber nicht von der Hand zu weisendes Verständnis von der Arbeitsweise des EMF.

Ebenfalls gefiel das fiktive Projekt, welches über das gesamte Buch hindurch bearbeitet und erweitert wird. Dadurch lassen sich vorteilhafte Erweiterungen des Modells (oder des Codes), die die Autoren propagieren und umsetzen, schnell nachvollziehen. Zahlreiche UML-Modelle unterstützen die grafische Visualisierung der Zielarchitektur. Ebenso weist „Eclipse Modeling Framework“ eine Vielzahl an Code-Snippets auf, die zusätzlich noch erläutert werden.

Kritik bleibt nicht außen vor. Den Autoren ist nichts vorzuwerfen, solange sie sich innerhalb des EMF aufhalten. Die Beispiele sind gut dokumentiert und verständlich. Leider fehlt der Ansatz, wie mit instantiierten Modellen (M1-Modellen) effektiv zu arbeiten ist. Inkludiert man das Archiv des Metamodells in eine Standalone-Applikation oder lieber als Eclipse Plug-in? Diese Frage wird im gesamten Buch nicht erläutert. Es liegt zwar auf der Hand, das Modell als Plug-in zu inkludieren, da das gesamte EMF und alles, was es generiert, als Plug-is vorliegt, dennoch wäre ein weiterer Abschnitt wünschenswert, der die Arbeiten mit den Modellinstanzen und -bibliotheken innerhalb eines umfangreicheren Workflows dokumentieren würde.

Fazit: „Eclipse Modeling Framework“ trägt zurecht den inoffiziellen Titel der „EMF-Bibel“. Dennoch ist das Buch zweifelsohne ein bisschen aus der Mode gekommen. Interessenten sollten daher auf die im November erscheinende Neuauflage warten. Die hier vorgestellte Auflage arbeitet das grundlegende Procedere jedoch sehr präzise und didaktisch gut heraus. Viele Dinge haben sich seit der Veröffentlichung des EMF nicht geändert – was für ein wohl durchdachtes Konzept steht. „Eclipse Modeling Framework“ liefert das nötige Rüstzeug um in die faszinierende, zukunftsweisende Methodik der Modell getriebenen Softwareentwicklung zu starten und stellt gleichermaßen das beste Buch dar, das derzeit zu diesem Thema auf dem Buchmarkt erhältlich ist.

geschrieben am 05.06.2008 | 614 Wörter | 4075 Zeichen

Kommentare lesen Kommentar schreiben

Kommentare zur Rezension (0)

Platz für Anregungen und Ergänzungen