UML Lerneinheit 2 - Prof. Dr.

Transcription

UML Lerneinheit 2 - Prof. Dr.
Unified Modeling Language
Lerneinheit 2
UML - Diagramme
Prof. Dr. D. Frosch-Wilke
Prof. Dr. U. Samberg
überarbeitet UML 2.0
Unified Modeling Language
Diagramme in der UML
• Wesentlicher Bestandteil der Modellbildung
• Graphen, wobei fundamentale Modellelemente (z.B.
Klassen, Objekte, Zustände) die Knoten und Beziehungen
zwischen den Modellelementen die Kanten bilden
• Identifikation der Modellelemente und semantische
Informationen durch Stringeintragungen und Labeling
• Ziel: Schnell wesentliche Zusammenhänge sichtbar machen
• Auslagerung von Detailinformationen in formalisierte
Tabellen (nicht durch UML definiert)
Prof. Dr. D. Frosch-Wilke
Prof. Dr. U. Samberg
überarbeitet UML 2.0
Unified Modeling Language
Diagrammtypen
•
•
•
•
•
Use-Case-Diagramm
statische Strukturdiagramme:
Klassendiagramm, Objektdiagramm, Paketdiagramm
Interaktionsdiagramme zur Beschreibung des
Informationsaustausches:
Sequenzdiagramm, Kommunikationsdiagramm, Zeitdiagramm
Zustandsdiagramme zur Beschreibung des Verhaltens:
Zustandsdiagramm, Aktivitätendiagramm
Architekturdiagramme zur Beschreibung der Implementierung:
Komponentendiagramm, Einsatzdiagramm
Prof. Dr. D. Frosch-Wilke
Prof. Dr. U. Samberg
überarbeitet UML 2.0
Unified Modeling Language
Interaktionsdiagramme
• Interaktion = Reaktion von Objekten auf Ereignisse
(Botschaften) und dadurch ausgelöste Aktionen, wodurch
wiederum Ereignisse für andere Objekte ausgelöst werden
können
• Interaktionsdiagramme stellen die Interaktionen zwischen
den beteiligten Objekten dar
• drei Darstellungsformen:
– Sequenzdiagramm
– Kommunikationsdiagramm
– Zeitdiagramm
Prof. Dr. D. Frosch-Wilke
Prof. Dr. U. Samberg
überarbeitet UML 2.0
Unified Modeling Language
Zustandsdiagramme
• Darstellung des inneren dynamischen Verhaltens eines
Objektes, das mit anderen Objekten interagiert
• zwei Darstellungsformen:
– Zustandsübergangsdiagramm (state chart diagram)
– Aktivitätendiagramm (activity diagram)
Prof. Dr. D. Frosch-Wilke
Prof. Dr. U. Samberg
überarbeitet UML 2.0
Unified Modeling Language
Architekturdiagramme
• Darstellung des physikalischen Entwurfs (Modularisierung,
Konfigurierung) eines Systems
• zwei Darstellungformen:
– Komponentendiagramm (component diagram)
– Einsatzdiagramm (deployment diagram)
Prof. Dr. D. Frosch-Wilke
Prof. Dr. U. Samberg
überarbeitet UML 2.0
Unified Modeling Language
Interaktionsdiagramme
Bestandteile
• Objekte, die an der Interaktion beteiligt sind
• Angaben zum Lebenszyklus der beteiligten Objekte
• Kommunikationspfade und Botschaften zwischen den
beteiligten Objekten
• Reaktionen der Empfängerobjekte auf eingehende
Botschaften
• Reihenfolge der Botschaften
Prof. Dr. D. Frosch-Wilke
Prof. Dr. U. Samberg
überarbeitet UML 2.0
Unified Modeling Language
Lerneinheit 2
Sequenzdiagramm
Prof. Dr. D. Frosch-Wilke
Prof. Dr. U. Samberg
überarbeitet UML 2.0
Unified Modeling Language
Sequenzdiagramm
Definition
• Interaktionsdiagramm, das die zeitliche Sequenz
(Reihenfolge) der Interaktionen von Objekten betont
• Die Botschaften werden in zeitlicher Ordnung als
gerichtete Verbindungen zwischen den Lebenslinien der
Objekte dargestellt
Prof. Dr. D. Frosch-Wilke
Prof. Dr. U. Samberg
überarbeitet UML 2.0
Unified Modeling Language
Sequenzdiagramm
Auftragserteilung durch Neukunden
:Kunde
:Verkäufer
Auftrag
Scripts:
Ereignis: Kunde
erteilt Auftrag
Anfrage Bonität (Kunde)
Bonität
Bestätigung
[Bonität ok]
[Bonität ok]
[Bonität nicht ok]
[auslieferungsfähig]
Erzeugung des
Objekts Auftrag
Ablehnung
{b. SendTime a. SendTime =
2 Werktage}
:Controller
:Auftrag
a: Lieferung
b: Rechnung
Zahlung
Zahlungseingang
Prof. Dr. D. Frosch-Wilke
Prof. Dr. U. Samberg
überarbeitet UML 2.0
Unified Modeling Language
Sequenzdiagramm
Einsatzfelder
• Präzisierung von Anwendungsfall-Szenarien
• Darstellung des Entwurfs von Interaktionen im DV-System
• Spezifikation von Echtzeit-Systemen
Prof. Dr. D. Frosch-Wilke
Prof. Dr. U. Samberg
überarbeitet UML 2.0
Unified Modeling Language
Sequenzdiagramm
Modellelemente
(1)
• Objekte: Horizontale Anordnung am oberen Rand des
Diagramms oder Darstellung zum Zeitpunkt der
Erzeugung
• Objekt-Lebenslinien: Vertikale Ausrichtung; kennzeichnen
die Existenz und Lebensdauer eines Objektes (Symbol:
gestrichelte Linie); Aufspaltung der Lebenslinie bei
Aktivitäten des Objekts, die aus alternativen oder sich
zeitlich überdeckenden Botschaften resultieren
Prof. Dr. D. Frosch-Wilke
Prof. Dr. U. Samberg
überarbeitet UML 2.0
Unified Modeling Language
Sequenzdiagramm
Modellelemente
(2)
• Botschaften (als Pfeile zwischen den Lebenslinien
dargestellt):
–
–
–
–
Synchroner Operationsaufruf (
)
Asynchroner Operationsaufruf (
) (UML 1.0
)
Rückgabewert (
)
Syntax:
["[" Wächter-Bedingung "]"] NameBotschaft [([Parameter])]
– Iterative Übermittlung von Botschaften: Syntax
*["[“Iterationsbereich "]"]
Prof. Dr. D. Frosch-Wilke
Prof. Dr. U. Samberg
überarbeitet UML 2.0
Unified Modeling Language
Sequenzdiagramm
Detailinformationen
(1)
• Dauer der Objektaktivierung: Zeigt die Zeitdauer an, die
ein Objekt zur Ausführung einer Aktivität benötigt
(Transformation der Lebenslinie zu einem Balken);
Symbolisierung von Rekursionen durch überlagerte
Balken
• Script: Nähere Angaben zu einer Botschaft (z.B.
auslösendes Ereignis) als freier Textstring (Darstellung am
linken Diagrammrand auf Höhe der Botschaft)
• Zeitliche Ordnung der Botschaften: Botschaften sind
zeitlich geordnet; bei Bedarf kann skalierbare Zeitachse
verwendet werden
Prof. Dr. D. Frosch-Wilke
Prof. Dr. U. Samberg
überarbeitet UML 2.0
Unified Modeling Language
Sequenzdiagramm
Detailinformationen
(2)
• Spezifikation von Zeitbedingungen: Verwendung von
beliebigen Zeitfunktionen (z.B. sendTime, receiveTime)
möglich
• Übermittlungsdauer: Falls diese nicht vernachlässigt
werden kann, Verdeutlichung durch schräg verlaufenden
Botschaftspfeil
• Erzeugung und Löschung eines Objektes
• Alternative und parallele Botschaften:
Bedingungsabhängige oder zeitgleiche Botschaften an
andere Objekte
Prof. Dr. D. Frosch-Wilke
Prof. Dr. U. Samberg
überarbeitet UML 2.0
Unified Modeling Language
Sequenzdiagramm
Nebenläufige Lebenslinie (Beispiel)
:Kunde
:Verkäufer
:Controller
Auftrag
[Neukunde] Bonitätsprüfung
[Bestandskundekunde] Auftragsübersicht
Bonität
Auftragsliste
Prof. Dr. D. Frosch-Wilke
Prof. Dr. U. Samberg
überarbeitet UML 2.0
Unified Modeling Language
Lerneinheit 2
Kommunikationsdiagramme
Prof. Dr. D. Frosch-Wilke
Prof. Dr. U. Samberg
überarbeitet UML 2.0
Unified Modeling Language
Kommunikationsdiagramm
Definitionen
• Statische Elemente der Kommunikation: Klassen,
Assoziationen und ihre Rollen (Spezifikationsebene) bzw.
Objekte, Links und Ereignisse (Instanzenebene)
• Dynamisches Konstrukt der Kommunikation: Interaktionen
• Ein Kommunikationsdiagramm repräsentiert die
Zusammenarbeit in Form eines Graphen. Knoten sind die
Klassen (Objekte), Assoziationen (Links) die Kanten.
Botschaften werden entlang der Kanten dargestellt.
Prof. Dr. D. Frosch-Wilke
Prof. Dr. U. Samberg
überarbeitet UML 2.0
Unified Modeling Language
Kommunikationsdiagramm
Auftragserteilung durch Neukunden
1: Auftrag
:Kunde
:Verkäufer
[Bonität ok] 3A: Bestätigung
[Bonität nicht ok] 3: Ablehnung
4: Lieferung
[Bonität ok]
3B: Auftrag
2: Bonität :=
Anfrage Bonität
(Kunde)
{new}
{destroy}
5: Rechnung
:Auftrag
7: Zahlungseingang
:Controller
6: Zahlung
Prof. Dr. D. Frosch-Wilke
Prof. Dr. U. Samberg
überarbeitet UML 2.0
Unified Modeling Language
Kommunikationsdiagramm
Zeitliche Reihenfolge von Botschaften
• Syntax:
[Sequenznummern/] ["[" Wächter-Bedingung "]"] [Sequenzausdruck]
NameBotschaft
– Sequenznummer: Liste mit Sequenznamen anderer
Botschaften
– Wächter-Bedingung: Botschaft wird nur weitergeleitet, wenn
Bedingung erfüllt ist
– Sequenzausdruck:
• Syntax: [Name|Zahl][.Zahl...][SequenzName]
• Die Zahlenfolge kennzeichnet die relative Reihenfolge der
Botschaften
• SequenzNamen kennzeichnen zeitliches Nebeneinander von
Botschaften
Prof. Dr. D. Frosch-Wilke
Prof. Dr. U. Samberg
überarbeitet UML 2.0
Unified Modeling Language
Kommunikationsdiagramm
Weitere Detailinformationen
• Iterative Botschaftsübermittlung: *["[" Iterationsbereich "]"]
• Rückgabewerte:
[NameVariable:=]NameBotschaft([Parameterliste])
• Link-Attribute: Stellen den Bezug zum statischen Modell
her. U.a. folgende Kennungen möglich:
– Name der Rolle eines anonymen Objektes
– Deskriptoren für Beschränkungen bei einem Objekt bzw.
Link: z.B. {new}, {destroy},{transient}, {persistent}
Prof. Dr. D. Frosch-Wilke
Prof. Dr. U. Samberg
überarbeitet UML 2.0
Unified Modeling Language
Kommunikationsdiagramm
Einsatzfelder
• Darstellung der Realisierung einer Operation
• Darstellung zeitgleicher Interaktionen von Objekten
• Darstellung der Dynamik von Entwurfsmustern
Prof. Dr. D. Frosch-Wilke
Prof. Dr. U. Samberg
überarbeitet UML 2.0
Unified Modeling Language
Kollaborationsdiagramm
Darstellung des Operationsablaufes
studentTeachers()
tutor / Teacher : Person
lecturer / Teacher : Person
1: namesOfTeachers()
1.2.i: name()
1.1*[i:=1..n]: lecturer()
/ Student : Person
:Course
Prof. Dr. D. Frosch-Wilke
Prof. Dr. U. Samberg
überarbeitet UML 2.0
Unified Modeling Language
Kommunikationsdiagramm
auf Spezifikationsebene (Beispiel)
Benutzer
Vormerker
veranlaßt
1
benachrichtigen
*
0,1
betrifft
Exemplar
Buch
1
zu
ört
h
ge
0,1
1
1
Vormerkung prüfen
reserviert
gib
tz
urü
ck
*
entlasten
betrifft
0,1
1
Ausleihe
*
benachrichtigen
gehört zu
Entleiher
Vormerkung
*
*
zurücknehmen
reservieren
Prof. Dr. D. Frosch-Wilke
Prof. Dr. U. Samberg
überarbeitet UML 2.0
Unified Modeling Language
Übung Kommunikationsdiagramm - Lösung
4B: benachrichtigen ()
/Entleiher : Benutzer
/Vormerker : Benutzer
1: zurücknehmen ()
:Vormerkung
4A: reservieren ()
3: benachrichtigen ()
2A: entlasten ()
:Ausleihe
2B: Vormerkung prüfen ()
:Exemplar
:Buch
{destroy}
Prof. Dr. D. Frosch-Wilke
Prof. Dr. U. Samberg
überarbeitet UML 2.0
Unified Modeling Language
Lerneinheit 2
Zustandsübergangsdiagramme
Prof. Dr. D. Frosch-Wilke
Prof. Dr. U. Samberg
überarbeitet UML 2.0
Unified Modeling Language
Objektzustand
Definition
Der Zustand eines Objektes ist eine Sammlung/Ausprägung
von Attributen des Objektes und Beziehungen des Objektes
zu anderen Objekten.
Prof. Dr. D. Frosch-Wilke
Prof. Dr. U. Samberg
überarbeitet UML 2.0
Unified Modeling Language
Warte- und Aktionszustände
• Wartezustand:
Ein Zustand in dem das Objekt auf das Eintreten eines
Ereignisses und/oder die Erfüllung einer Bedingung
wartet.
• Aktionszustand:
Ein Zustand in dem das Objekt definierte Aktionen
ausführt.
Prof. Dr. D. Frosch-Wilke
Prof. Dr. U. Samberg
überarbeitet UML 2.0
Unified Modeling Language
Zustand - Notation
• Symbol:
• Symbolinhalte:
– Bezeichner(:String)
– Aktionen: Syntax: Aktionsbezeichner/Aktionsausdruck
• entry-Aktion
Syntax: entry/Aktionsausdruck
• exit-Aktion
Syntax: exit/Aktionsausdruck
• do-Aktion
Syntax: do/Aktionsausdruck
• ereignisbedingte Aktion
Syntax: Ereignis["[" Wächterbedingung“]“]/Aktionsausdruck
Prof. Dr. D. Frosch-Wilke
Prof. Dr. U. Samberg
überarbeitet UML 2.0
Unified Modeling Language
Einfache Zustände
Objekte
Zustände
:KontoAuszugsDrucker
:WindowObjekt
Aktionszustand
Wartezustand
prüfe Karte
Paßworteingabe
bzw. alternativ
Kartenprüfung
entry / ausschaltenEcho()
onZeichentaste(Z:char) /
transformiere(Z)
onF1 / anzeigenHilfe()
exit / einschaltenEcho()
do / pruefeKarte( )
Prof. Dr. D. Frosch-Wilke
Prof. Dr. U. Samberg
überarbeitet UML 2.0
Unified Modeling Language
Einfacher Zustandsübergang
• Ein einfacher Zustandsübergang (Transition) ist der
Übergang eines Objektes von einem Start- in einen
Zielzustand
• Start- und Zielzustand können identisch sein
• Auslöser:
– Ereignis und (optional) Wächterbedingung erfüllt
(Wartezustand)
– Abschluß einer Aktivität (Aktionszustand)
• Zustandsübergang kann Aktionen auslösen
Prof. Dr. D. Frosch-Wilke
Prof. Dr. U. Samberg
überarbeitet UML 2.0
Unified Modeling Language
Notation eines Zustandsübergangs
• Syntax
[Ereignis]["["Wächter-Bedingung“]"] / [Aktions-Ausdruck]
[^Sendeklausel]
– Ereignis: Ereignisname[(Parameterliste)]
– Aktions-Ausdruck: Liste von Aktionen, die durch den
Zustandsübergang ausgelöst werden
– Sendeklausel: Zielobjekt.Ereignisname[(Paramterliste)]
Prof. Dr. D. Frosch-Wilke
Prof. Dr. U. Samberg
überarbeitet UML 2.0
Unified Modeling Language
Zustandsübergang
Beispiel
WindowObjekte
dargestellt
ClickMausTaste (Pos : Point)
[Pos-in-einemObjekt]
/ Objekt := pickObjekt(Pos)
∧ Objekt.blinken
Prof. Dr. D. Frosch-Wilke
Prof. Dr. U. Samberg
WindowObjekt
selektiert
überarbeitet UML 2.0
Unified Modeling Language
Zustandsübergangsdiagramm
Definition
Ein Zustandsübergangsdiagramm zeigt die Zustände
eines repräsentativen Objektes einer Klasse und die
Zustandsübergänge in Form eines Graphens
(Zustände=Knoten, Übergänge = Kanten). Es hat einen
Startzustand (Symbol: ausgefüllter Kreis) und einen oder
mehrere Endzustände (Symbol:Kreisring)
Prof. Dr. D. Frosch-Wilke
Prof. Dr. U. Samberg
überarbeitet UML 2.0
Unified Modeling Language
Zustandsübergangsdiagramm
Auftrag
[Neukunde]
Aufgenommen
[Bonität nicht ok]
do / Bonität prüfen
/ Ablehnen
[Bonität ok]
Angenommen
[Bestandskunde]
do / Lieferdatum
ermitteln
Zahlungseingang
[Zahlung vollständig]
/ Bestätigen
Bestätigt
Auslieferungsfähig
/ Rechnung, ausliefern
Ausgeliefert
Zahlungseingang
[Zahlung unvollständig]
/ Anforderung Restbetrag
Zahlungsziel
verstrichen
/ Mahnung
Prof. Dr. D. Frosch-Wilke
Prof. Dr. U. Samberg
überarbeitet UML 2.0
Unified Modeling Language
Zustandsübergangsdiagramm
Einsatzfelder
• Modellierung von Zuständen eines
Anwendungsfalls/Szenarios (in der Analysephase) oder
eines Controller-Objektes (in der Designphase)
• Spezifikation von Objekten deren Verhalten stark
ereignisgesteuert ist
Prof. Dr. D. Frosch-Wilke
Prof. Dr. U. Samberg
überarbeitet UML 2.0
Unified Modeling Language
Zusammengesetzter Zustand
Definition
Ein zusammengesetzter Zustand besteht aus mehreren
nebenläufigen Subzuständen (Regionen) oder sich
gegenseitig ausschließende Subzuständen.
Die Übergänge zwischen den Subzuständen eines
zusammengesetzten Zustands werden i.a. mit
Zustandsübergangsdiagrammen dargestellt.
Die Details eines zusammengesetzten Zustands können
verborgen werden.
Prof. Dr. D. Frosch-Wilke
Prof. Dr. U. Samberg
überarbeitet UML 2.0
Unified Modeling Language
Zusammengesetzter Zustand
Transitionen
• Übergang in einen zusammengesetzten Zustand (Z): Eine
Transition, die gezeichnet am Rand des Symbols für Z
endet, ist äquivalent mit einer Transition in alle
Pseudoanfangszustände von Z. Eine Transition in einen
Subzustand von Z ist möglich.
• Übergang von einem zusammengesetzten Zustand (Z):
Ein Transition von Z führt zum unmittelbaren Verlassen
aller Subzustände von Z. Eine (direkte) Transition von
einem Subzustand in einen Zustand außerhalb von Z ist
möglich.
Prof. Dr. D. Frosch-Wilke
Prof. Dr. U. Samberg
überarbeitet UML 2.0
Unified Modeling Language
Zusammengesetzter Zustand
Interne und externe Zustandsübergange
Zusammengesetzter Zustand
SubZust 1.1
E1
E1.1
SubZust 1.2
E1.2
Zustand 1
Zustand 5
SubZust 2.1
E2.1
SubZust 2.2
E2.2
SubZust 2.3
E2.3
H
E3
E4
E2
Zustand 2
E5
Zustand 3
E6
Prof. Dr. D. Frosch-Wilke
Prof. Dr. U. Samberg
Zustand 4
überarbeitet UML 2.0
Unified Modeling Language
Zusammengesetzter Zustand
History Indicator
• Eine Transition in den History Indicator eines
zusammengesetzten Zustands (Z) (oder einer Region von
Z) bedeutet, daß der Übergang in den Subzustand von Z
erfolgt, den Z vor dem letztmaligen Verlassen
eingenommen hatte.
• Symbol des History Indicators: H
Prof. Dr. D. Frosch-Wilke
Prof. Dr. U. Samberg
überarbeitet UML 2.0
Unified Modeling Language
Zusammengesetzter Zustand
Zustandsübergangsrumpf
• Um bei einem zusammengesetzten Zustand, dessen
Details innerhalb eines Zustandsübergangsdiagramms
verborgen sind, zu symbolisieren, daß eine Transition in
einen Subzustand erfolgt oder von einem Subzustand
erfolgt, kann ein Zustandsübergangsrumpf verwendet
werden.
• Symbol:
Prof. Dr. D. Frosch-Wilke
Prof. Dr. U. Samberg
überarbeitet UML 2.0
Unified Modeling Language
Zustandsübergangsrumpf
Struktur
(a) Zustandsübergangsdiagramm ohne Zustandsübergangsrumpf
Zustand 3
Zustand 1
E1
E5
E5
SubZust 3.1
Zustand 4
E3
Zustand 2
E2
SubZust 3.2
E4
Zustand 5
(a) Zustandsübergangsdiagramm mit Zustandsübergangsrumpf
Zustand 1
Zustand 2
E5
E1
Zustand 3
E2
Zustand 4
Zustand 5
Prof. Dr. D. Frosch-Wilke
Prof. Dr. U. Samberg
überarbeitet UML 2.0
Unified Modeling Language
Komplexer Zustandsübergang
• Unter einem komplexen Zustandsübergang versteht man
eine Transition mit mehreren Startzuständen
(Synchronisation) oder mehreren Zielzuständen
(Verzweigung)
• Symbol:
Prof. Dr. D. Frosch-Wilke
Prof. Dr. U. Samberg
überarbeitet UML 2.0
Unified Modeling Language
Komplexer Zustandsübergang
Warenanlieferung
erfolgt
Lieferschein
prüfen
Ware
prüfen
[ok]
[ok]
Warenerhalt
bestätigen
Prof. Dr. D. Frosch-Wilke
Prof. Dr. U. Samberg
überarbeitet UML 2.0
Unified Modeling Language
Übung Zustandsübergangsdiagramm - Lösung
(a)
Start
H
Uhrzeit
/Initialisierung Normalzeit
Knopf1Press
Datum
Knopf1Press
(b)
Uhrzeit
Start
Knopf2Press
Normalzeit
Einstellmodus Minuten
entry / BlinkenMinAnzeige ()
onK3Press / MinutenErhöhen ()
exit / FestMinAnzeige ()
Knopf2Press
Einstellmodus Stunden
entry / BlinkenStdAnzeige ()
onK3Press / StundenErhöhen ()
exit / FestStdAnzeige ()
Prof. Dr. D. Frosch-Wilke
Prof. Dr. U. Samberg
Knopf2Press
H
überarbeitet UML 2.0
Unified Modeling Language
Lerneinheit 2
Aktivitätendiagramm
Prof. Dr. D. Frosch-Wilke
Prof. Dr. U. Samberg
überarbeitet UML 2.0
Unified Modeling Language
Aktivitätendiagramm
Definition und Einsatzfelder
• Spezialfall eines Zustandsübergangsdiagramms:
– (fast) alle Zustände sind Aktionszustände
– (fast) alle Zustandsübergänge werden durch den Abschluß
einer Aktivität ausgelöst
• Einsatzfelder:
– Beschreibung von Arbeitsabläufen
– Spezifikation einer komplexen Operation mit parallelen
Ablauf- und Kontrollpfaden
Prof. Dr. D. Frosch-Wilke
Prof. Dr. U. Samberg
überarbeitet UML 2.0
Unified Modeling Language
Entscheidungsknoten
• Ermöglicht die bedingungsabhängige Transition in einen
oder mehrere Zustände
• Führt verschiedene Entscheidungszweige wieder
zusammen
• Symbol:
Prof. Dr. D. Frosch-Wilke
Prof. Dr. U. Samberg
überarbeitet UML 2.0
Unified Modeling Language
Aktivitätendiagramm mit Entscheidungsknoten
Lager: Stichtagsinventur durchführen
prüfe Warenbewegung
abgeschlossen
[Warenbewegung nicht
abgeschlossen]
[Warenbewegung
abgeschlossen]
sperre betroffene
Lagerbereiche
offene Warenbewegung
abschließen
drucke Inventurliste
erfasse Bestand
Prof. Dr. D. Frosch-Wilke
Prof. Dr. U. Samberg
überarbeitet UML 2.0
Unified Modeling Language
Aktivitätendiagramm
Zustände unterschiedlicher Klassen
• In einem Aktivitätendiagramm können Zustände
unterschiedlicher Klassen dargestellt werden
• Die einzelnen Klassen werden graphisch durch
Verwendung von Bahnen (swimlanes) organisiert
Prof. Dr. D. Frosch-Wilke
Prof. Dr. U. Samberg
überarbeitet UML 2.0
Unified Modeling Language
Aktivitätendiagramm
Einfluß der Aktivitäten auf Objektzustände
• Verändern die in einem Aktivitätendiagramm
beschriebenen Aktivitäten den Zustand eines Objektes, so
kann dies explizit dargestellt werden:
– Objekt wird zusammen mit seinem Zustand (in eckigen
Klammern) in einem Objektsymbol dargestellt
– Verbindung mit den Aktivitäten, die eine Zustandsänderung
bewirken
Prof. Dr. D. Frosch-Wilke
Prof. Dr. U. Samberg
überarbeitet UML 2.0
Unified Modeling Language
Aktivitätendiagramm mit Objektzuständen
Use Case: Verkauf Möbelmitnahmemarkt
Kunde
Verkauf
Lager
erteile Kaufauftrag
Auftrag
[erteilt]
erfasse Auftragsdaten in Rechnung
Auftrag
[aufgenommen]
bereitstellen Ware
bezahlen Rechnung
quittieren
entgegennehmen Ware
Auftrag
[erledigt]
Auftrag
[abholbereit]
übergeben Ware
Prof. Dr. D. Frosch-Wilke
Prof. Dr. U. Samberg
überarbeitet UML 2.0
Unified Modeling Language
Übung Aktivitätendiagramm - Lösung
[Kreditantrag liegt vor]
einholen
Lohnbestätigung
prüfe Kreditart
[Kreditart =
Konsumentenkredit]
[Kreditart = Hypothekenkreditkredit]
einholen Schufaauskunft
einholen
Grundbuchauszug
ermittle pfändbares
Gehalt
schätze Liegenschaft
ermittle
Beleihungsgrenze
prüfe Kreditantrag
[zu gewähren]
[weiterleiten an Vorstand]
[abzulehnen]
prüfe Kreditantrag
durch Vorstand
[zu gewähren]
[abzulehnen]
gewähre Kredit
ablehnen Kredit
Prof. Dr. D. Frosch-Wilke
Prof. Dr. U. Samberg
überarbeitet UML 2.0