UML - Diagramme - dipl-inf.de 2 Lerneinheit 2.pdf · Prof. Dr. D. Frosch-Wilke Prof. Dr. U. Samberg...

Post on 04-Jun-2018

214 views 0 download

Transcript of UML - Diagramme - dipl-inf.de 2 Lerneinheit 2.pdf · Prof. Dr. D. Frosch-Wilke Prof. Dr. U. Samberg...

Prof. Dr. D. Frosch-WilkeProf. Dr. U. Samberg

Unified Modeling Language

überarbeitet UML 2.0

UML - Diagramme

Lerneinheit 2Lerneinheit 2

Prof. Dr. D. Frosch-WilkeProf. Dr. U. Samberg

Unified Modeling Language

überarbeitet UML 2.0

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-WilkeProf. Dr. U. Samberg

Unified Modeling Language

überarbeitet UML 2.0

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-WilkeProf. Dr. U. Samberg

Unified Modeling Language

überarbeitet UML 2.0

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-WilkeProf. Dr. U. Samberg

Unified Modeling Language

überarbeitet UML 2.0

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-WilkeProf. Dr. U. Samberg

Unified Modeling Language

überarbeitet UML 2.0

Architekturdiagramme

• Darstellung des physikalischen Entwurfs (Modularisierung, Konfigurierung) eines Systems

• zwei Darstellungformen:– Komponentendiagramm (component diagram)– Einsatzdiagramm (deployment diagram)

Prof. Dr. D. Frosch-WilkeProf. Dr. U. Samberg

Unified Modeling Language

überarbeitet UML 2.0

InteraktionsdiagrammeBestandteile

• 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-WilkeProf. Dr. U. Samberg

Unified Modeling Language

überarbeitet UML 2.0

Sequenzdiagramm

Lerneinheit 2Lerneinheit 2

Prof. Dr. D. Frosch-WilkeProf. Dr. U. Samberg

Unified Modeling Language

überarbeitet UML 2.0

SequenzdiagrammDefinition

• 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-WilkeProf. Dr. U. Samberg

Unified Modeling Language

überarbeitet UML 2.0

SequenzdiagrammAuftragserteilung durch Neukunden

:Kunde :Verkäufer :Controller

:Auftrag

Auftrag Anfrage Bonität (Kunde)

Bonität

[Bonität ok]

[auslieferungsfähig]

Zahlungs-eingang

Zahlung

Bestätigung

Ablehnung

a: Lieferung

b: Rechnung

[Bonität ok]

[Bonität nicht ok]

Scripts:Ereignis: Kundeerteilt Auftrag

Erzeugung desObjekts Auftrag

{b. SendTime - a. SendTime = 2 Werktage}

Prof. Dr. D. Frosch-WilkeProf. Dr. U. Samberg

Unified Modeling Language

überarbeitet UML 2.0

SequenzdiagrammEinsatzfelder

• Präzisierung von Anwendungsfall-Szenarien• Darstellung des Entwurfs von Interaktionen im DV-System• Spezifikation von Echtzeit-Systemen

Prof. Dr. D. Frosch-WilkeProf. Dr. U. Samberg

Unified Modeling Language

überarbeitet UML 2.0

SequenzdiagrammModellelemente (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-WilkeProf. Dr. U. Samberg

Unified Modeling Language

überarbeitet UML 2.0

• 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 "]"]

SequenzdiagrammModellelemente (2)

Prof. Dr. D. Frosch-WilkeProf. Dr. U. Samberg

Unified Modeling Language

überarbeitet UML 2.0

SequenzdiagrammDetailinformationen (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-WilkeProf. Dr. U. Samberg

Unified Modeling Language

überarbeitet UML 2.0

SequenzdiagrammDetailinformationen (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-WilkeProf. Dr. U. Samberg

Unified Modeling Language

überarbeitet UML 2.0

SequenzdiagrammNebenläufige Lebenslinie (Beispiel)

:Kunde :Verkäufer :Controller

Auftrag

Bonität

[Neukunde] Bonitätsprüfung

[Bestandskundekunde] Auftragsübersicht

Auftragsliste

Prof. Dr. D. Frosch-WilkeProf. Dr. U. Samberg

Unified Modeling Language

überarbeitet UML 2.0

Kommunikations-diagramme

Lerneinheit 2Lerneinheit 2

Prof. Dr. D. Frosch-WilkeProf. Dr. U. Samberg

Unified Modeling Language

überarbeitet UML 2.0

KommunikationsdiagrammDefinitionen

• 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-WilkeProf. Dr. U. Samberg

Unified Modeling Language

überarbeitet UML 2.0

KommunikationsdiagrammAuftragserteilung durch Neukunden

:Verkäufer

:Auftrag

{new}

{destroy}

:Kunde

:Controller

[Bonität ok]3B: Auftrag

2: Bonität := Anfrage Bonität (Kunde)

7: Zahlungs-eingang

1: Auftrag

4: Lieferung

5: Rechnung

[Bonität ok] 3A: Bestätigung

[Bonität nicht ok] 3: Ablehnung

6: Zahlung

Prof. Dr. D. Frosch-WilkeProf. Dr. U. Samberg

Unified Modeling Language

überarbeitet UML 2.0

KommunikationsdiagrammZeitliche 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-WilkeProf. Dr. U. Samberg

Unified Modeling Language

überarbeitet UML 2.0

KommunikationsdiagrammWeitere 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-WilkeProf. Dr. U. Samberg

Unified Modeling Language

überarbeitet UML 2.0

KommunikationsdiagrammEinsatzfelder

• Darstellung der Realisierung einer Operation• Darstellung zeitgleicher Interaktionen von Objekten• Darstellung der Dynamik von Entwurfsmustern

Prof. Dr. D. Frosch-WilkeProf. Dr. U. Samberg

Unified Modeling Language

überarbeitet UML 2.0

KollaborationsdiagrammDarstellung des Operationsablaufes

tutor / Teacher : Person lecturer / Teacher : Person

/ Student : Person :Course

1.1*[i:=1..n]: lecturer()

1: namesOfTeachers() 1.2.i: name()

studentTeachers()

Prof. Dr. D. Frosch-WilkeProf. Dr. U. Samberg

Unified Modeling Language

überarbeitet UML 2.0

Kommunikationsdiagramm auf Spezifikationsebene (Beispiel)

benachrichtigen

Benutzer

benachrichtigen

Vormerkung

Vormerkung prüfen

Buch

entlasten

Ausleihezurücknehmen

reservieren

Exemplar

gehört zu

betrifft

gibt zurück

veranlaßt betrifft

gehö

rt z

u

rese

rvie

rt

0,1

0,1

0,1

* **

**1

1

1

1

1

Vormerker

Entleiher

Prof. Dr. D. Frosch-WilkeProf. Dr. U. Samberg

Unified Modeling Language

überarbeitet UML 2.0

Übung Kommunikationsdiagramm - Lösung

:Ausleihe

4B: benachrichtigen ()

:Exemplar :Buch

:Vormerkung/Entleiher : Benutzer /Vormerker : Benutzer

1: zurücknehmen () 4A: reservieren ()

2A: entlasten ()

{destroy}

2B: Vormerkung prüfen ()

3: benachrichtigen ()

Prof. Dr. D. Frosch-WilkeProf. Dr. U. Samberg

Unified Modeling Language

überarbeitet UML 2.0

Zustandsübergangs-diagramme

Lerneinheit 2Lerneinheit 2

Prof. Dr. D. Frosch-WilkeProf. Dr. U. Samberg

Unified Modeling Language

überarbeitet UML 2.0

ObjektzustandDefinition

Der Zustand eines Objektes ist eine Sammlung/Ausprägungvon Attributen des Objektes und Beziehungen des Objekteszu anderen Objekten.

Prof. Dr. D. Frosch-WilkeProf. Dr. U. Samberg

Unified Modeling Language

überarbeitet UML 2.0

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-WilkeProf. Dr. U. Samberg

Unified Modeling Language

überarbeitet UML 2.0

Zustand - Notation

• Symbol:• Symbolinhalte:

– Bezeichner(:String)– Aktionen: Syntax: Aktionsbezeichner/Aktionsausdruck

• entry-AktionSyntax: entry/Aktionsausdruck

• exit-AktionSyntax: exit/Aktionsausdruck

• do-AktionSyntax: do/Aktionsausdruck

• ereignisbedingte AktionSyntax: Ereignis["[" Wächterbedingung“]“]/Aktionsausdruck

Prof. Dr. D. Frosch-WilkeProf. Dr. U. Samberg

Unified Modeling Language

überarbeitet UML 2.0

Einfache Zustände

Kartenprüfung

do / pruefeKarte( )

prüfe Karte

:KontoAuszugsDrucker :WindowObjekt

Aktionszustand Wartezustand

Paßworteingabe

entry / ausschaltenEcho()onZeichentaste(Z:char) / transformiere(Z)onF1 / anzeigenHilfe()exit / einschaltenEcho()

Objekte

Zustände

bzw. alternativ

Prof. Dr. D. Frosch-WilkeProf. Dr. U. Samberg

Unified Modeling Language

überarbeitet UML 2.0

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-WilkeProf. Dr. U. Samberg

Unified Modeling Language

überarbeitet UML 2.0

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-WilkeProf. Dr. U. Samberg

Unified Modeling Language

überarbeitet UML 2.0

ZustandsübergangBeispiel

WindowObjektedargestellt

WindowObjektselektiertClickMausTaste (Pos : Point)

[Pos-in-einemObjekt]/ Objekt := pickObjekt(Pos)∧ Objekt.blinken

Prof. Dr. D. Frosch-WilkeProf. Dr. U. Samberg

Unified Modeling Language

überarbeitet UML 2.0

ZustandsübergangsdiagrammDefinition

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-WilkeProf. Dr. U. Samberg

Unified Modeling Language

überarbeitet UML 2.0

ZustandsübergangsdiagrammAuftrag

Aufgenommen

do / Bonität prüfen

Bestätigt

Angenommendo / Lieferdatum

ermitteln

Ausgeliefert

[Neukunde]

[Bestandskunde]

[Bonität nicht ok]

/ Ablehnen

/ Bestätigen

[Bonität ok]

/ Rechnung, ausliefern

Auslieferungsfähig

Zahlungseingang[Zahlung vollständig]

Zahlungseingang[Zahlung unvollständig]/ Anforderung Restbetrag

Zahlungszielverstrichen/ Mahnung

Prof. Dr. D. Frosch-WilkeProf. Dr. U. Samberg

Unified Modeling Language

überarbeitet UML 2.0

ZustandsübergangsdiagrammEinsatzfelder

• 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-WilkeProf. Dr. U. Samberg

Unified Modeling Language

überarbeitet UML 2.0

Zusammengesetzter ZustandDefinition

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-WilkeProf. Dr. U. Samberg

Unified Modeling Language

überarbeitet UML 2.0

Zusammengesetzter ZustandTransitionen

• Ü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-WilkeProf. Dr. U. Samberg

Unified Modeling Language

überarbeitet UML 2.0

Zusammengesetzter ZustandInterne und externe Zustandsübergange

Zustand 2

Zustand 3

Zustand 4E2

E4

E6

E5

Zustand 1

E3

Zusammengesetzter Zustand

SubZust 2.1 SubZust 2.2 SubZust 2.3

SubZust 1.1 SubZust 1.2E1.1

E2.1

E1.2

E2.2 E2.3

H

E1Zustand 5

Prof. Dr. D. Frosch-WilkeProf. Dr. U. Samberg

Unified Modeling Language

überarbeitet UML 2.0

• 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:

Zusammengesetzter ZustandHistory Indicator

H

Prof. Dr. D. Frosch-WilkeProf. Dr. U. Samberg

Unified Modeling Language

überarbeitet UML 2.0

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-WilkeProf. Dr. U. Samberg

Unified Modeling Language

überarbeitet UML 2.0

ZustandsübergangsrumpfStruktur

(a) Zustandsübergangsdiagramm ohne Zustandsübergangsrumpf

(a) Zustandsübergangsdiagramm mit Zustandsübergangsrumpf

Zustand 1

Zustand 2

Zustand 3

E2

E1 Zustand 4

Zustand 5

E5

Zustand 3

Zustand 1

Zustand 2

SubZust 3.1

SubZust 3.2

E3

E4

Zustand 4

Zustand 5

E5

E5

E1

E2

Prof. Dr. D. Frosch-WilkeProf. Dr. U. Samberg

Unified Modeling Language

überarbeitet UML 2.0

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-WilkeProf. Dr. U. Samberg

Unified Modeling Language

überarbeitet UML 2.0

Komplexer Zustandsübergang

Warenanlieferungerfolgt

Warenerhaltbestätigen

Wareprüfen

Lieferscheinprüfen

[ok][ok]

Prof. Dr. D. Frosch-WilkeProf. Dr. U. Samberg

Unified Modeling Language

überarbeitet UML 2.0

Übung Zustandsübergangsdiagramm - Lösung

Einstellmodus Stundenentry / BlinkenStdAnzeige ()onK3Press / StundenErhöhen ()exit / FestStdAnzeige ()

Normalzeit Einstellmodus Minutenentry / BlinkenMinAnzeige ()onK3Press / MinutenErhöhen ()exit / FestMinAnzeige ()

Uhrzeit

H

Start Knopf2Press

Knopf2Press

Knopf2Press

DatumUhrzeitHStart

/Initialisierung Normalzeit

Knopf1Press

Knopf1Press

(a)

(b)

Prof. Dr. D. Frosch-WilkeProf. Dr. U. Samberg

Unified Modeling Language

überarbeitet UML 2.0

Aktivitätendiagramm

Lerneinheit 2Lerneinheit 2

Prof. Dr. D. Frosch-WilkeProf. Dr. U. Samberg

Unified Modeling Language

überarbeitet UML 2.0

AktivitätendiagrammDefinition 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-WilkeProf. Dr. U. Samberg

Unified Modeling Language

überarbeitet UML 2.0

Entscheidungsknoten

• Ermöglicht die bedingungsabhängige Transition in einen oder mehrere Zustände

• Führt verschiedene Entscheidungszweige wieder zusammen

• Symbol:

Prof. Dr. D. Frosch-WilkeProf. Dr. U. Samberg

Unified Modeling Language

überarbeitet UML 2.0

Aktivitätendiagramm mit Entscheidungsknoten

prüfe Warenbewegungabgeschlossen

Lager: Stichtagsinventur durchführen

offene Warenbewegungabschließen

erfasse Bestand

[Warenbewegung nichtabgeschlossen]

[Warenbewegungabgeschlossen]

sperre betroffeneLagerbereiche drucke Inventurliste

Prof. Dr. D. Frosch-WilkeProf. Dr. U. Samberg

Unified Modeling Language

überarbeitet UML 2.0

AktivitätendiagrammZustä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-WilkeProf. Dr. U. Samberg

Unified Modeling Language

überarbeitet UML 2.0

AktivitätendiagrammEinfluß der Aktivitäten auf Objektzustände

• Verändern die in einem Aktivitätendiagrammbeschriebenen 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-WilkeProf. Dr. U. Samberg

Unified Modeling Language

überarbeitet UML 2.0

Aktivitätendiagramm mit Objektzuständen

Lager

bereitstellen Ware

Auftrag[abholbereit]

übergeben Ware

Auftrag[aufgenommen]

erfasse Auftrags-daten in Rechnung

quittieren

bezahlen Rechnung

erteile Kaufauftrag

entgegen-nehmen Ware

Auftrag[erledigt]

VerkaufKunde

Auftrag[erteilt]

Use Case: Verkauf Möbelmitnahmemarkt

Prof. Dr. D. Frosch-WilkeProf. Dr. U. Samberg

Unified Modeling Language

überarbeitet UML 2.0

Übung Aktivitätendiagramm - Lösungeinholen

Lohnbestätigung

prüfe Kreditart

einholen Schufaauskunft

ermittle pfändbaresGehalt

einholenGrundbuchauszug schätze Liegenschaft

ermittleBeleihungsgrenze

prüfe Kreditantrag

gewähre Kredit ablehnen Kredit

prüfe Kreditantragdurch Vorstand

[Kreditantrag liegt vor]

[Kreditart =Konsumentenkredit] [Kreditart = Hypothekenkreditkredit]

[zu gewähren] [weiterleiten an Vorstand]

[abzulehnen]

[abzulehnen]

[zu gewähren]