
UML 2 für Fortgeschrittene
Die Unified Modeling Language (UML) hat sich Ende der 90er Jahre als de facto-Standard für die Spezifikation von Software-Systemen durchgesetzt. Seit 2005 steht sie in Version 2 zur Verfügung (UML2).
Als grafische Modellierungssprache gibt sie grafische und textuelle Modellelemente vor, legt die zulässigen Beziehungen zwischen den Modellelementen fest und regelt, wie Modelle zu interpretieren sind.
Die UML gibt jedoch keine Methode vor. Sie legt nicht fest, welche Modellartefakte zu welchem Zeitpunkt im Entwicklungsprozess zu erstellen sind.
Aufwind erhielt die UML2 zuletzt durch Einführung der Business Process Modeling Notation Version 2 (BPMN2) in Zusammenhang mit serviceorientierten Architekturansätzen (SOA).
Das Seminar richtet sich an UML2-Anwender mit Praxiserfahrung aus den Bereichen Requirements Engineering, Systemanalyse und Design.
Sie lernen Möglichkeiten kennen, UML2-Modelle zu strukturieren und an Geschäftsprozessmodelle anzubinden. Sie vertiefen Ihre Kenntnisse zu praxisrelevanten Diagrammtypen und stellen einen Bezug zur UML2-Spezifikation her, der Ihnen zukünftig ein selbstständiges Arbeiten mit der Spezifikation ermöglicht.
Sie werden für „klassische“ Schwachstellen aus dem UML-Umfeld wie bspw. Oberflächenmodellierung, Rechtemodellierung und Versionierung sensibilisiert und lernen Lösungsansätze kennen.
Seminarinhalt – Agenda
1. Tag
- Grundstruktur eines UML2-Modells
- Application Landscapes (Unternehmenslandkarten)
- Geschäftsprozessmodelle
- Aufbau eines Modellbaums
- (Fachliche) Komponenten und Schnittstellen
- Komponentenmodellierung Teil 1: Blackbox-Sicht
- Grundlegende Eigenschaften von Komponenten
- Operationen
- Abhängigkeiten
- Schnitt und Strukturierung von Komponenten
- Best Practices / Typische Modellierungsfehler und deren Vermeidung
- Komponenten in der UML2-Spezifikation
- Übung
- Aktivitätenmodellierung Teil 1: Classifier-Verhalten
- Aktivität, Verantwortungsbereich, OpaqueAction, CallBehavior, Steuerflusskante, Alternativ- und Verbindungsknoten, Aktivitätsendeknoten
- Konsistenzbedingungen für Aktivitäten als Anwendungsfallverhalten
- Best Practices / Typische Modellierungsfehler und deren Vermeidung
- Übung
2. Tag
- Wiederholung Inhalte Tag 1
- Klassenmodellierung
- Grundlegende Eigenschaften von Klassen
- Klassen, Attribute, Operationen
- Primitive, Datentypen, Aufzählungstypen
- Assoziationen, Aggregationen, Kompositionen
- Assoziationsklassen
- Vererbung
- Schnittstellen
- Exceptions
- Strukturierung von Klassenmodellen
- Best Practices / Typische Modellierungsfehler und deren Vermeidung
- Klassen in der UML2-Spezifikation
- Übung
- Aktivitätenmodellierung Teil 2: Methoden
- Petrinetze
- Aktionen, Kanten, Objektknoten, Kontrollknoten, Partitionen
- Nebenläufige Prozesse
- Konsistenzbedingungen für Aktivitäten als Methoden von Operationen
- Best Practices / Typische Modellierungsfehler und deren Vermeidung
- Aktivitäten und Aktionen in der UML2-Spezifikation
- Übung
3. Tag
- Wiederholung Inhalte Tag 2
- Komponentenmodellierung Teil 2: Whitebox-Sicht
- Signaturen
- Typsysteme
- Parts, Konnektoren, Ports
- Architekturen und ihre Auswirkung auf den Komponentenschnitt
- Best Practices / Typische Modellierungsfehler und deren Vermeidung
- Übung
- Zustandsautomaten
- Partitionen, Zustände, Transitionen, interne Transitionen, Pseudostates
- Konzept des History-States
- Trigger; Zusammenspiel zwischen Aktivitäten und Zustandsautomaten
- Strukturierung von Zustandsautomaten; Unterzustandsautomat, Ein- und Austrittspunkte
- Best Practices / Typische Modellierungsfehler und deren Vermeidung
- Übung
- Aktivitätenmodellierung Teil 3
- Zustandsbehaftete Objektknoten
- Transformationsverhalten
- Selektionsverhalten
4. Tag
- Wiederholung Inhalte Tag 3
- Übergreifende fachliche Problemstellungen
- Interaktion zwischen Systemen, Anwendern, Komponenten
- Ansätze zur modellbasierten Spezifikation von Oberflächen
- Ansätze zur modellbasierten Spezifikation von Rechten und Rechte-Profilen (Rollen)
- Umgang mit nicht-funktionalen Anforderungen
- Umgang mit Geschäftsregeln (Plausibilitäten)
- Integration in den Entwicklungsprozess
- Ansätze zur Versionierung von UML2-Modellen in iterativ inkrementellen MDA-Prozessen
- Änderungsmanagement
- Risikomanagement
- Ansätze zur Verwaltung zentraler Inhalte (bspw. SOA-Services) in Modellen
- UML2-Modelle als Basis für Testmodelle
- Beantwortung von Fragen und Abschlussdiskussion
Ziele
- Sie können die Anforderungen an eine UML2-Modellstruktur identifizieren, die sich aus Application Landscapes und Geschäftsprozessmodellen ergeben und sind in der Lage, eine zweckmäßige UML2-Modellstruktur zu entwerfen.
- Sie beherrschen den Umgang mit fachlichen Komponenten und sind in der Lage, eine tragfähige Systemstruktur zu entwickeln.
- Sie beherrschen den Umgang mit den praxisrelevanten Diagrammtypen sicher und sind soweit in der UML2-Spezifikation orientiert, dass Sie selbständig damit arbeiten können.
- Sie kennen Lösungsansätze für „klassische“ Problemstellungen aus dem UML-Umfeld und sind in der Lage, typische Fehler aktiv zu vermeiden.
Voraussetzungen für Teilnehmer
- Grundverständnis des objektorientierten Paradigmas
- UML2-Praxiskenntnisse in der statischen und dynamischen Modellierung
Andere Schulung gesucht?
Hier geht es zurück zu unseren anderen Schulungen.