Tool-Radar: Enterprise Architect

Markus Klink, Stefan Zörner

Die Unified Modeling Language (UML) ist eine weltweit einheitliche und standardisierte grafische Sprache zum Modellieren von IT-Systemen. Zahlreiche Hersteller bieten Werkzeuge zur Modellierung mit UML an, einer ist die australische Softwarewareschmiede Sparx Systems.

Das Tool Enterprise Architect (kurz EA) von Sparx Systems ist in der Version 6.5 in drei Editionen verfügbar (Desktop, Professional und Corporate). Beim Kauf berechnet der Anbieter nach Stückzahl gestaffelte Preise. Die günstigste Edition liegt in der Anschaffung als Einzelplatzlizenz bei ca. 110 Euro, die Corporate Edition bei ca. 270 Euro. EA setzt bei der Datenhaltung der Modelle auf Microsoft JET auf; als unterstützte Hard- und Softwareplattform nennt der Hersteller neben Windows noch Linux (Intel) mit Crossover Office.

Modellieren mit EA

Mit der UML2 sind einige neue Diagramme verabschiedet worden, die je nach Anwendungsgebiet richtig interessant sind. EA ist erfreulicherweise im Hinblick auf den Standard sehr gut aufgestellt und unterstützt weit mehr, als man je benötigen wird. Aspekte der Benutzerführung beim Modellieren sind immer eine große Geschmackssache, aber die Entwickler haben sich bemüht, einige Abkürzungen einzubauen, die das leidige Drag & Drop von der Toolbar hin zur Diagrammfläche merklich verkürzen. Auch die Möglichkeiten zum automatischen Platzieren und Anordnen von Elementen auf den Diagrammen sind vielfältig und lassen sich an ganz unterschiedliche Arbeitsstile anpassen. Empfehlenswert ist es hier zum Beispiel, mit dem Gitter zu arbeiten, welches man getrost um einiges gröber einstellen kann, um die Positionierung von Elementen auf gleicher Höhe oder Breite zu vereinfachen.

EA und Java

Ab der Professional Edition unterstützt EA die Arbeit mit Quelltexten. Zu den Funktionen zählen Forward Engineering (aus einem Modell wird Quelltext generiert, etwa Klassen mit Attributen und Methodenköpfen), Reverse Engineering (Quelltexte werden eingelesen und in Modellelemente überführt) und Round Trip Engineering als Kombination beider Richtungen, um Quelltexte und Modell synchron zu halten. Dabei werden verschiedene Programmiersprachen unterstützt, neben C#, C++ und weiteren auch Java. Erwähnenswert ist dabei der Java 5-Support. So weiß EA beispielsweise mit Sprachmitteln wie Enumerations und Annotations umzugehen. Auf die Code-Erzeugung kann durch Anpassung von Templates Einfluss genommen werden.

Sparx Systems bietet kein klassisches Plug-in für Eclipse oder NetBeans. Obwohl das Tool einfache Quelltexteditoren mitliefert, wird der Java-Entwickler nicht auf seine althergebrachte IDE verzichten wollen. Neben den Möglichkeiten des Code Engineering inklusive des Austausches über das Dateisystem bietet Sparx Systems das separate Produkt MDG Link for Eclipse an. Hierbei handelt es sich um eine Art Brücke zwischen dem Modellierungswerkzeug und der IDE, die einen eleganten Wechsel zwischen UML-Modell und Java-Quelltext ermöglicht.

Abb. 1: Enterprise Architect in Aktion
EA und MDA

EA zeichnet sich dadurch aus, dass es reichhaltige Export und Importfunktionalitäten zur Verfügung stellt. Inwiefern diese den eigenen Zwecken dienlich sind, lässt sich am besten über die Testversion erkundschaften. Insbesondere wer sich einmal mit dem Aufbau einer MDA-Werkzeugkette beschäftigt hat, weiß um die Komplexitäten, die sich beim Verwenden von Austauschformaten, wie z.B. XMI, einstellen. Die gute Nachricht: Open-Source-Tools wie openArchitectureWare haben EA auf dem Radar und arbeiten aktiv an einer gelungenen Anbindung. Wer gar nicht soweit schauen möchte, hat dennoch vielfältige Möglichkeiten, das meiste aus seinem Modell zu machen: EA bietet konfigurierbare RTF-Dokumentgeneratoren, eine COM-Schnittstelle, um das Repository mithilfe anderer Programme auszuwerten, und eine eingebaute Script-Sprache für die Codegenerierung und einfache Transformationen.

Weitere Funktionen

Das Leistungsspektrum des Werkzeuges ist weitaus größer, als wir es in der Kürze darstellen können. Ab der Professional Edition bietet das Tool auch eine Datenbank-Modellierung. Für das gemeinsame Arbeiten an einem Modell im Team gibt es je nach Edition unterschiedliche Möglichkeiten. Versionskontrollsysteme wie z.B. CVS und Subversion werden direkt unterstützt. Die Corporate Edition wartet mit der Option auf, das Modell in einer relationalen Datenbank wie z.B. Oracle oder MySQL zu speichern.

Geschrieben von
Markus Klink, Stefan Zörner
Kommentare

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht.