MagicUWE - Referenz (German)
Dies ist eine Referenz von MagicUWEs grundlegenden Funktionalitäten (v1.2).
- Klassen (oder Assoziationen) mit UWE Stereotypen einfügen
- Properties mit UWE Stereotypen zeichnen
- Navigationsdiagramm: Access Primitive (z.B. index, query, ..) einfügen
- Navigationsdiagramm: Tagged Values (Eigenschaften) setzen
- Content zu Navigation Transformation
- Navigation zu Presentation Transformation
- Navigation zu Process-Structure Transformation
- Navigation zu Process-Flow Transformation
Funktionalitäten von MagicUWE | Entsprechende Benutzeraktionen in MagicDraw |
---|---|
Ein neues UWE Projekt erstellen
|
Standardmäßig die Methoden nicht anzeigen lassen: |
UWE Pakete |
Man erstellt vier Pakete und nennt sie "Content", "Navigation", "Presentation" und "Process" |
UWE Diagramme erstellenoder: |
Klassen bzw. Aktivitätsdiagramme erstellen. Empfehlung: Am übersichtlichsten ist es, die Diagramme gleich in die passenden UWE Pakete zu verschieben und ihnen eindeutige Namen zu geben. |
Klassen (oder Assoziationen) mit UWE Stereotypen versehenMan klickt in der Toolbar auf die gewünschte Klasse ..und zeichnet sie anschließend in das offene Diagramm hinein: |
(Eine normale Klasse oder Assoziation zeichnen und anschließend darauf rechtsklicken) / Stereotyp / (Den gewünschten Stereotyp aus dem UWE Profil auswählen) / Anwenden |
Properties mit UWE Stereotypen zeichnenNachdem man auf das Objekt im Diagramm geklickt hat, das die neue Property erhalten soll, wählt man den gewünschten Stereotyp aus der (Presentation-)Toolbar und zeichnet die Property in das eben selektierte Objekt. Eine neue Klasse (Name: newClass) wurde erstellt und als Property mit Namen "newProperty" zu der zuerst gewählten hinzugefügt. |
Die Containerklasse muss zunächst angepasst werden, damit die Properties graphisch angezeigt werden: Symboleigenschaften / Struktur unterdrücken = false .
Man erstellt eine neue Klasse, gibt ihr einen Namen und fügt den gewünschten Stereotyp hinzu. Dann zieht man sie vom Containment-Baum in eine Klasse (oder in eine bereits bestehende Property) des offenen Diagramms und benennt die resultierende Property nach belieben. |
Navigationsdiagramm: Access Primitive (z.B. index, query, ..) einfügenDies und das folgende Kontextmenü erscheint je nach Konfiguration von MagicUWE. Wenn das Menü trotz richtiger Konfiguration nicht angezeigt wird, selektiert man die Assoziation und klickt anschließend neben sie, so dass MagicDraw sie durch den zweiten Klick nicht de-selektiert.Man wählt eine oder mehrere Assoziationen um eine neue Klasse des gewählten Stereotyps zwischen einer "Kopfklasse" und allen anderen Klassen einzufügen. Notwendigerweise müssen alle Assoziationen an einem Ende zu ein und derselben Klasse führen. Multiplizitäten, Klassennamen, die Namen der Properties und die Assoziationstypen werden entsprechend zu dem gewählten Stereotypen gesetzt. |
Man erstellt und zeichnet eine neue Klasse, gibt ihr einen Namen und zieht alle Assoziationsenden zu eben dieser Klasse. In Richtung der "Kopfklasse" fügt man eine neue Assoziation oder ggf. eine Komposition ein. |
Navigationsdiagramm: Tagged Values (Eigenschaften) setzen |
(Rechtsklick auf das Element) / Spezifikation / Eigenschaften / <<navigationNode>> isHome bzw. isLandmark / Wert anlegen . Achtung, ein Boolean mit mehr als einem Wert macht wenig Sinn! |
TransformationenMan kann alle Transformationen vom Menü aus aufrufen .. und außerdem aus dem Kontextmenü des Containment-Baums: Wenn man mehr als ein Diagramm auswählt wird jedes transformiert, das den zur gestarteten Transformation passenden UWE Diagrammtyp hat. Dieses Kontextmenü erscheint ensprechend der Konfiguration von MagicUWE. (Das Plugin nutzt einen Teil der Namen des Elternpakets, um zu entscheiden, von welchem UWE-Diagrammtyp ein Diagramm ist.) |
Content zu NavigationErstellt für jede Klasse des Content Diagramms eine neue Klasse (im Navigations Paket) mit demselben Namen und fügt den «navigationClass»-Stereotyp hinzu. Die neuen Klassen werden alle in ein Navigationsdiagramm gezeichnet und man kann anschließend passende Assoziationen hinzufügen. |
Navigation zu PresentationErstellt für jede Klasse des Navigationsdiagramms eine neue Klasse (im Presentation Paket) mit einem Präsentationsstereotyp. Jede neue Klasse ist gleich benannt wie die Ursprungsklasse, hat aber im Gegensatz zu ihr den «presentationClass»-Stereotyp. |
|
Navigation zu Process-StructureZeichnet jede Klasse eines Navigationsdiagramms, die einen «processClass»-Stereotyp hat in ein neues Process Structure Diagram. Neue Klassen werden dabei nicht erstellt. |
|
Navigation zu Process-FlowErstellt aus einem Navigationsdiagramm neue Prozessflussdiagramme (Process Flow, ein UWE-Aktivitätsdiagramm) für jede processClass mit einem nichtleeren Namen. Die neuen Diagramme werden "class name"+" Workflow" genannt, so dass man leicht sehen kann welche Aktivität zu welcher Klasse gehört. |
Für einige weitere Funktionalitäten, wie z.B. der Link zur Webseite im Hilfemenü und die About-Box sind vermutlich keine weiteren Erklärungen nötig.
Bei Fragen schreiben Sie uns bitte eine E-Mail!
MagicUWE Konfiguration
Sie können in der Datei MagicDrawHome/plugins/MagicUWE/MagicUWE.jar
das Verhalten des Plugins festlegen, indem Sie die Datei magicUWE/settings/MagicUWE.properties
editieren, die sich in dem jar-zip-file befindet.
Einstellbar sind:
- Die Namen der zu verwendenden UWE-Profildatei. Zuerst sucht MagicUWE im Projektverzeichnis und erst wenn da kein spezielles UWE-Profil zu finden ist, wird das allgemeine Profil aus dem "profiles"-Ordner von MagicDraw genommen.
- Der Pakete-Check. MagicUWE ermittelt aus dem Namen des Pakets, das ein Diagramm enthält, dessen Typ, was über einige Funktionalitäten und Warnungen entscheidet.
- Tastenkürzel für alle UWE-Einträge der Toolbar
- Welche Präsentationselemente als Klasse bzw. Property von der Toolbar aus eingefügt werden können
Bekannte Bugs
- Wenn man ein neues Diagramm erstellt, während man eine Assoziation von der MagicUWE Toolbar aus zeichnet, erscheint ein Fehler und man muss auf "letzte Aktion rückgängig machen" klicken. Das ist leider ein Bug der MagicDraw-OpenAPI und keiner des Plugins im eigentlichen Sinne.
- Properties können manchmal in andere Klassen/Properties gezeichnet werden als in die, die vorher selektiert wurde. Geschieht das, so wird die neue Klasse erstellt und zum zuvor selektierten Element hinzugefügt, aber nirgendwo gezeichnet.