Artikel

 
Juni 2009 | Artikel

Galileo macht´s möglich: Modeling wird praxistauglich

(Link zum Artikel: http://www.it-republik.de/jaxenter/artikel/2396)

Was das Eclipse-Galileo-Release im Bereich Modeling zu bieten hat

Text: Sven Efftinge
Das Galileo-Release zeigt: Modeling ist im Mainstream angekommen. Die Neuerungen im Eclipse Modeling Project (EMP) unterstreichen den deutlichen Trend hin zu pragmatischen, problemorientierten Lösungen. Dieser Artikel gibt einen Überblick darüber, welche Entwicklungen sich in den verschiedenen Modeling-Projekten des Galileo-Releases vollzogen haben.
Teil 1   Teil 2   Teil 3   

Die neue Modelingbewegung setzt auf agile und vor allem Entwickler-orientierte Werkzeuge. Domain-Specific Languages (DSL) heißt das neue Zauberwort. Auch der Einsatz des Eclipse Modeling Frameworks (EMF) zur Laufzeit wird immer wichtiger und interessanter. So setzt beispielsweise das nächste große Release von Eclipse (Codename e4) auf EMF zur Modellierung der Workbench.

Modelle auf Diät
Das Eclipse Modeling Framework (EMF) stellt den Kern des gesamten Modeling Projektes dar. Die neue Version enthält eine ganze Reihe von Bugfixes. Sie wurde aber vor allem einer intensiven Diät unterzogen. Hierbei wurde die Implementierung der einzelnen Modellobjekte optimiert, so dass der Speicherverbrauch in einigen Fällen auf fast 10% schrumpft. Tatsächlich sind diese nun wesentlich kleiner als z.B. vergleichbare DOM- oder JavaBeans-Objekte. Was wie ein Wunder wirkt, ist auf die effiziente Nutzung von Java-Speicherstrukturen zurückzuführen.

Neues bei CDO
Das CDO (Connected Data Objects) Model Repository ist ein Distributed Shared Model Framework für EMF Modelle und Metamodelle. CDO ist außerdem eine Art Model Runtime Environment mit Fokus auf orthogonale Aspekte wie Modellskalierbarkeit, Transaktionalität, Persistenz, Verteilung, Abfragen und mehr.

Welche Neuerungen es beim CDO Model Repository in Galileo gibt, erklärt hier Project-Lead Eike Stepper persönlich:

Galileo ist wahrscheinlich das Release von CDO mit den meisten Neuerungen. Das Team wuchs auf acht Committer an und es wurden insgesamt rund 130 Erweiterungen implementiert. Einige der herausragenden Neuerungen in CDO 2.0 sind:

Erweiterte EMF-Unterstützung

  • Volle Change Deltas in EMF Notifications durch CDO Change Subscription Policies
  • EMF Containment Proxies und CDO-externe References
  • Array-Werte, Feature Maps und Default Values
  • EPackages sind im Repository verfügbar

Neue CDO Funktionen
  • Transactions mit Save Points und Distributed Transactions (XA)
  • Asynchrones Query Framework
  • Virtuelles hierarchisches Dateisystem für Resources im Repository
  • Import und Export von Resources
  • Optionales explizites Locking für pessimistische Strategien
  • Erweiterbares Authenifizierungs- und Authorisierungssystem

Verbesserte Charakteristika
  • Multi-Level Caching (fixed size, memory sensitive, external, ...)
  • Partielles Laden von Collections
  • Adaptives Prefetching, optional mit Erkennung von Zugriffsmustern
  • Progress Monitoring bei Commit Operationen
  • Abschaltbare Passive Updates vom Repository und Re-Synchonisierbarkeit

Neue Integrationen mit dem Eclipse File System (EFS), Team Support, Common Navigator Framework (CNF) und dem Graphical Modeling Framework (GMF) kamen ebenfalls dazu. Eike Stepper

Was ist ein typischer Use-Case für das CDO Projekt?

Die Anwendungsfälle für das CDO Model Repository lassen sich normalerweise einer der beiden folgenden Gruppen zuordnen: Der Einsatz als Werkzeug während der modellbasierten Entwicklung oder die Einbettung in Softwareprodukte zur Laufzeit.

Im ersten Fall stehen oft das feingranulare Locking und die (gegenüber reinem EMF) drastisch erhöhte Skalierbarkeit der Modelle im Vordergrund, so ist zum Beispiel die Transformation Gigabytes großer Modelle erst möglich durch CDO.

Beim Einsatz als Laufzeittechnologie spielen oft die verteilte Transaktionalität (XA) und die netzwerkweite Verteilung von Änderungsnachrichten eine wichtige Rolle. Diese Kombination von modellgetriebener Architektur und aus Enterprise-Systemen bekannten Charakteristika zogen so große Spieler wie die NASA, die Kanadische Space Agency und das Kanadische Verteidigungsministerium an. Eike Stepper

Teil 1   Teil 2   Teil 3   

andere Artikel dieser Serie


Anzeige

Kommentare

Gravatar Holger 26.06.2009
um 13:47 Uhr
Hallo Sven,

> ...dass allein 22 der 33 beteiligten Projekte aus dem
> Eclipse Modeling Project kommen...
>
Also ich komm "nur" auf 8 von 33: EMF, EMFT, GMF, JWT, MDT, M2M, M2T, TMF (vgl. http://wiki.eclipse.org/Galileo#Projects). Oder zählst du die Teilprojekte einzeln? Aber dann wären es auch deutlich mehr als insgesamt 33 Projekte...

Danke für den Artikel und dein Mitwirken bei Xtext, das ich ziemlich cool finde!
#zitieren
Gravatar Sven 30.06.2009
um 11:38 Uhr
Hi Holger,

Du hast Recht, da hab ich schlecht recherchiert.
Es sind 22 von insgesamt 51 Projekten. (Auf einer anderen Seite steht 33). Sorry dafür.
#zitieren
Gravatar Redaktion JAXenter 30.06.2009
um 16:32 Uhr
Die Zahl 22 dürfte sich tatsächlich auf die Summe der Galileo-Subprojekte beziehen. Im Artikel wurde dies entsprechend geändert. #zitieren

Anzeige

zurück zum Seitenanfang