Sie sind auf Seite 1von 4

Anwendungsfalldiagramm

Geschäfts-
anwendungsfall Geschäftsprozess Anwendungsfall
Condition: {bedingung}
extension point: ext. point
Anwendungsfall ext. point

«include» «extend»

Abstrakter aktiver
Geschäftspartner
System- System- Spezialisierter «secondary»
anwendungsfall anwendungsfall Anwendungsfall «secondary» Sekundärer
Sekundärer Anwendungsfall
Anwendungsfall
«include»

Akteur Stereotypisierte
Klassen «requirement» «feature»
Passiver
Geschäftspartner Anforderung EinFeature
«include»
Konkreter aktiver
Geschäftspartner Fremdsystem Außenorientierter Innenorientierter
als Akteur Geschäftsmitarbeiter Geschäftsmitarbeiter

Klassendiagramm Objektdiagramm
«Stereotyp1, Stereotyp2»
Paket::Klasse
attribut Objekt :Klasse
Klasse Abstrakte Entity Control Boundary
Klasse operation()
«Stereotyp1»
attribut = wert Aktive
Klasse
Objekt:Klasse
Syntax für Attribute:
Sichtbarkeit Attributname : Paket::Typ [Multiplizität Ordnung] = Initialwert {Eigenschaftswerte} attribut = wert
Eigenschaftswerte: {readOnly}, {ordered}, {composite} Parametrisierte
Syntax für Operationen: Klasse<Parameter>
Sichtbarkeit Operationsname (Parameterliste):Rückgabetyp {Eigenschaftswerte}
Sichtbarkeit: Parameterliste: Richtung Name : Typ = Standardwert Aktives
+ public element Eigenschaftswerte: {query} i:Element Objekt
# protected element Richtung: in, out, inout Objekt
Parametrisier-
– private element bare Klasse
~ package element

Vererbung Attributierte Assoziation


Klasse1 Klasse2 Klasse1 Klasse2

Assoziations-
Assoziation klasse
Klasse1 Klasse2

Aggregation
gerichtete Assoziation Teil
Klasse1 Klasse2 Ganzes
Komposition
Existenz-
abhängiges
qualifizierte Assoziation Teil
Klasse1 Qualifizierer Klasse2
Mehrgliedrige
Assoziation
Klasse1 Klasse2
Realisierung
Klasse1 Klasse2

Klasse3
Abhängige Abhängigkeit Unab-
Klasse hängige
Klasse
Multiplizität
Leserichtung
Schnittstelle «Stereotyp»
Anbieter Nutzer 1 Beziehungsname * {ordered}
Klasse1 Klasse2
rolle Sichtbarkeit rolle

"Stecker"
Anbieter «interface»
bereitgestellte Schnittstelle-A «interface»
Schnittstelle Schnittstelle
Klasse Notiz
genutzte
Schnittstelle operation1()
«interface» operation2()
"Buchse" Nutzer Schnittstelle-A

© 2006 by oose.de GmbH UML-Notationsübersicht


Aktuelle Fassung, Info und Download: http://www.oose.de/uml Teil 1/4
Paketdiagramm Einsatz- und Verteilungsdiagramm
Paket 1 «merge» Paket 2
Paket

«import» Client
Paket 1 Paket 2 {OS = Windows XP}
«database»
Datenbank-Server myClientPrg.exe
«access» «executable» 5
Paket 1 Paket 2 «artifact» rdbms.exe
Artefakt http/LAN
1
Enthaltenes «deploy»
Unterpaket Paket
«deployment specification»
Deployment Spezifikation «artifact»
Artefakt
Enthaltenes
Unterpaket

Komponentendiagramm
bereitgestellte «component»
Schnittstelle Komponente
«component» «component»
Komponente Komponente
genutzte
Schnittstelle Portname
«provided interfaces» Port-B
Schnittstelle X :Klasse A [1]
Port-A
«required interfaces» Multiple Ports Schnittstelle
Schnittstelle Y Teil (part)
SSt-4 SSt-3 SSt-2 SSt-1
«realizations» 1
Klasse A :Klasse B
Klasse B
«component» «artifact»
«artifacts» Komponente komponente.jar
komponente.jar «manifest»

Zustandsdiagramm Kommunikationsdiagramm

state machine name {extended}


Eingangs-
punkt sd Kommunikation
Startzustand
1:nachricht1()
Zustand
Seite 320 :Lebenslinie x:Klasse1
ereignis[bedingung]/aktion entry/aktion
Zustand do/aktion
exit/aktion
Seite 318 ereignis/aktion
2:nachricht3() 1.1:nachricht2()
after(n Zeit) when(Zeit)

[x <= 0] [x > 0] 1.2:nachricht3()


start2
H Zustand y:Klasse2
{final}

abbruch
Zustand
Endzustand
Zeitdiagramm
Ausgangspunkt
sd Zeitdiagramm Zeitbedingung
Zustand {t..3*t}
Zustand 2
y:Klasse1

state machine Protokollautomat {protocol} Zustand 1


nachricht2()

Zustand Zustand nachricht3()


Zustand A
[vorbedingung] aufruf() /
x:Klasse2

nachricht1()
[nachbedingung]
Zustand B
Lebenslinie

t=now
Zustandslinie
Zustand C
{<10ms}

Sek.: 0 1 2 Zeitskala

© 2006 by oose.de GmbH UML-Notationsübersicht


Aktuelle Fassung, Info und Download: http://www.oose.de/uml Teil 2/4
Aktivitätsdiagramm
Aktivität «precondition» Vorbedingung
Parameter1: Typ «postcondition» Nachbedingung
Parameter2: Typ

Unterbrechbarer Aktivitätsbereich
Signal (Partition B) {weight=5} Objektknoten (Partition A)
Schritt 2 [Zustand] Schritt 3

[Bed. 1]
«datastore» Signal
Eingangs- (Partition A) Objektknoten senden
parameter Schritt 1
[Bed. 2]

(Partition B) Ausgangs-
Schritt 4 parameter

[weiter] [stopp]
Schritt 4
Schritt
4.1 Schritt
4.3

A B C Schritt
4.2

{joinSpec = (A and B)
or (A and C)}
Signal Signal
empfangen senden
Teilung Synchronisation Teilung und Spezifizierte
(Splitting) (Und) Synchronisation Synchronisation
Zeitereignis
empfangen

[x<0] [x>0] [x<0] Schritt 1 Schritt 1 Schritt 1

[x=0] [x>=0]

Entscheidung Zusammenführung Entscheidung und Objektfluss Kontrollfluss Objektfluss


(Oder) Zusammenführung Oder-Semantik Und-Semantik Und-Semantik

«parallel», «iterative» o.Ä.


Mengen-
Reservierungswunsch verarbeitung Mengen-
Reservierungs- verarbeitung
wunsch Eingangs- Einzel- Einzel- Ausgangs-
aufnehmen menge objekt objekt menge
Abgebrochene Anfrage Erzeuge Verarbeite
Daten Daten
Ausnahme-Parameter Eintrag Eintrag
(Exception) {stream} {stream}

Partition A Partition B Interaktionsübersicht


Startknoten Endknoten Ablaufende

sd Übersichtsdiagramm lifelines: x:Klasse1, y:Klasse2

Schritt 1 «datastore» ref


Objektknoten Interaktionsverweis
(Partition A)
Schritt 1
Schritt 3 Schritt 2
[Abbruch]

[ok]
(Partition B) (Partition A)
Schritt 2 Schritt 3
sd Interaktion

x:Klasse1 y:Klasse2
P3
P4 Schritt 1 A
nachricht()
P5
P1 Aktions-
knoten
P2 P6
P7 A Schritt 2

© 2006 by oose.de GmbH UML-Notationsübersicht


Aktuelle Fassung, Info und Download: http://www.oose.de/uml Teil 3/4
Sequenzdiagramm

sd Interaktion sd Interaktion

i:Integer +lokalesAttribut:Typ
x:Klasse1 y:Klasse2 z:Klasse3
ref Detailinteraktion
x:Klasse1
nachricht()
y:Klasse2
alt [i>0] sync. Nachricht
nachricht1()
Antwort
Zustand
async. Nachricht
[else]
nachricht2()

Lebenslinie
{i == 0} sd Zeitliche Zusicherungen
Interaktionsverweis
ref
Interaktionsverweis x:Klasse1 y:Klasse2
Ausführung

nachricht3() nachricht1() d=duration

Selbstaufruf t=now nachricht2() {0..12} {d..3*d}

create {t..2*t}
:KlasseX nachricht3()
Objekt-
Konstruktion Objekt-
Destruktion

Kompositionsstrukturdiagramm
Observer
Auto
subject observer
:Queue :scrollbar
vorne:Rad

antrieb
m : Motor hinten:Rad /Rolle:Klasse

Unified Modeling Language (UML) 2.1 - Notationsübersicht


Klassendiagramm Anwendungsfalldiagramm Sequenzdiagramm
UML
2.1
Unter www.oose.de/poster
können Sie neben-
«Stereotyp1, Stereotyp2» «interface» Anwendungsfall
Paket::Klasse Schnittstelle Abstrakte
Klasse
Klasse
Notiz sd Interaktion
attribut operation1() Boundary Control Entity «core business process» sd Interaktion
Kern-
operation2() Kern-Geschäfts- Geschäftsprozess
operation()
Kern-Geschäfts- prozess i:Integer +lokalesAttribut:Typ
«Stereotyp1» Abstrakte anwendungsfall
attribut = wert Klasse
i:Element z:Klasse3

stehendes UML-Poster
{abstract} Condition: {bedingung} x:Klasse1 y:Klasse2 x:Klasse1
ref Detailinteraktion
Aktive Parametrisier- Parametrisierte Akteur Anwendungsfall extension point: ext. point y:Klasse2
Syntax für Attribute: Klasse bare Klasse Klasse<Parameter> «derive» nachricht()
Sichtbarkeit Attributname : Paket::Typ [Multiplizität Ordnung] = Initialwert {Eigenschaftswerte} «derive» «business process» (unterstützender )
Geschäftsprozess ext. point sync. Nachricht
Eigenschaftswerte: {readOnly}, {ordered}, {composite} Geschäftsprozess
alt [i>0]
Syntax für Operationen: nachricht1() Antwort
Sichtbarkeit Operationsname (Parameterliste):Rückgabetyp {Eigenschaftswerte} System- «include»
bereitgestellte anwendungsfall «extend» Zustand async. Nachricht
Sichtbarkeit: Parameterliste: Richtung Name : Typ = Standardwert Schnittstelle «interface» Abstrakter aktiver
Klasse Nutzer Schnittstelle-A System- Spezialisierter
+ public element Eigenschaftswerte: {query} Geschäftspartner

beziehen.
genutzte anwendungsfall Anwendungsfall «secondary» [else]
# protected element Richtung: in, out, inout Sekundärer nachricht2()
– private element Schnittstelle «secondary»
Lebenslinie

Sekundärer Anwendungsfall
~ package element Anwendungsfall

Multiplizität Multiplizität Ordnung «interface» Geschäftsentität


Anbieter Geschäfts- sd Zeitliche Zusicherungen
Leserichtung Schnittstelle-A {i == 0}
anwendungsfall
«Stereotyp» ref
1 Beziehungsname * {ordered} Interaktionsverweis
Klasse1 Klasse2 x:Klasse1 y:Klasse2
rolle Sichtbarkeit rolle «feature»
Außenorientierter
Ausführung

EinFeature
Konkreter aktiver Geschäftsmitarbeiter
Innenorientierter
Geschäftspartner Geschäftsmitarbeiter «include» nachricht1() d=duration
nachricht3()
Abhängigkeit Unab- «requirement»
navigierbares Abhängige
hängige Anforderung
Assoziationsende Schnittstelle-A Klasse
Klasse
Klasse1 Klasse2 Anbieter Nutzer System- t=now nachricht2() {0..12} {d..3*d}
Stereotypisierte Klassen «include»
Passiver anwendungsfall
Fremdsystem create {t..2*t}
Geschäftspartner als Akteur :KlasseX nachricht3()

Unter www.oose.de/becher
qualifizierte Assoziation
nicht-navigierbares Klasse1 Qualifizierer Klasse2
Assoziationsende Aggregation

oose.
Teil
Klasse1 Klasse2 Ganzes
Komposition
Existenz-
abhängiges
Teil
Realisierung Wir unterstützen Sie mit Schulungen, Coaching, Beratung und
Mehrgliedrige Klasse1 Klasse2
Assoziation Projektarbeit in den Bereichen Geschäftsprozesse, Analyse, Design,

gibt es den UML-Becher


Klasse1 Klasse2 Architektur, Projektmanagement, Java/J2EE-Technologien, Systems-
Engineering, Testen/Qualitätssicherung, Organisationsentwicklung,
Soft-Skills und OO-Grundlagen.
Klasse3
OberklasseA Diskriminator 2
OberklasseB Innovative Informatik oose Innovative Informatik GmbH, Straßenbahnring 7, 20251 Hamburg. Aktivitätsdiagramm
Unterklasse4
Sie können dieses Poster bei uns bestellen: www.oose.de/poster
Generalisierung
Klasse1 Klasse2 Diskriminator 1 Noch komprimierter ist unsere UML-Notationsübersicht auf einem Becher. Aktivität «precondition» Vorbedingung Startknoten
Diskriminator 3 Auch diesen können Sie bei uns bestellen: www.oose.de/becher Parameter1: Typ «postcondition» Nachbedingung
Endknoten Ablaufende
Parameter2: Typ

Assoziations- Unterbrechbarer Aktivitätsbereich


klasse Unterklasse1 Unterklasse2 Unterklasse3 Unterklasse5 Unterklasse6
Sponsoren Signal (Partition B)
{weight=5}
Objektknoten (Partition A)
Schritt 2 [Zustand] Schritt 3
Signal
empfangen
[Bed. 1]
«datastore» Signal
Eingangs- (Partition A)
Objektdiagramm Paketdiagramm parameter Schritt 1
Objektknoten senden
[Bed. 2]

Signal
Paket (Partition B) Ausgangs- senden
Objekt:Klasse Schritt 4 parameter
:Klasse Enthaltenes
attribut = wert Paket Unterpaket Einer der führenden Fachverlage auf den Gebieten Mathematik,
Informatik, Naturwissenschaften und Technik.
[weiter] [stopp]
Schritt 4
Aktives Enthaltenes
Unterpaket
www.oldenbourg.de Schritt
Objekt 4.1 Schritt
4.3
Objekt Zeitereignis
Schritt empfangen
4.2

Objektverbindung «merge»
(Link) Paket 1 Paket 2 Komponentendiagramm Kompositionsstrukturdiagramm
Objekt1 Objekt2
A B C
«component» Schritt 1 Schritt 2
«component» Komponente Auto
«import»
Paket 1 Paket 2 Komponente {joinSpec = (A and B)
2 or (A and C)} «datastore»
«provided interfaces» Portname vorne:Rad Objektknoten Objekt Objekt
Schnittstelle X [Zustand] [Zustand]
:Klasse A [1]
Kommunikationsdiagramm «required interfaces» Schnittstelle
Teilung
(Splitting)
Synchronisation
(Und)
Teilung und
Synchronisation
Spezifizierte
Synchronisation
Schritt 1 Schritt 2
«access» Schnittstelle Y antrieb 2
Paket 1 Paket 2 Teil (part)
m : Motor hinten:Rad
«realizations»
Klasse A 1
interaction Kommunikation :Klasse B
Klasse B
1:nachricht1() «artifacts»
Zustandsdiagramm komponente.jar Schritt 1 A Schritt 1
Objekt
Schritt 2
:Lebenslinie x:Klasse1 [Zustand]
/Rolle:Klasse [x<0] [x>0] [x<0]

[x=0] Objektfluß
state machine [x>=0]
2:nachricht3() 1.1:nachricht2()
name {extended}
Eingangs- Observer A Schritt 2
punkt
Startzustand bereitgestellte
Schnittstelle
1.2:nachricht3() «component» subject observer Erzeuge Verarbeite
Zustand «component» «artifact» :Queue :scrollbar
Entscheidung Zusammenführung Entscheidung und Daten Daten
Komponente Komponente komponente.jar (Oder) Zusammenführung Eintrag Eintrag
ereignis[bedingung]/aktion entry/verhalten genutzte «manifest» {stream} {stream}
Zustand do/verhalten Schnittstelle
y:Klasse2 Port-B
exit/verhalten Stream
ereignis/verhalten Port-A Erzeuge Verarbeite
after(n Zeit) at(Zeitpunkt) Daten Daten
Eintrag Eintrag
Schritt 1 Schritt 1 Schritt 1 Reservierungswunsch
SSt-4 SSt-3 SSt-2 SSt-1 Reservierungs-
[x <= 0] [x > 0]
wunsch
start2 aufnehmen
Übersichtsdiagramm H Abgebrochene Anfrage Ausnahme
Zustand
{final}
Zeitdiagramm Einsatz- und Verteilungsdiagramm Ausnahme-Parameter Schritt Ausnahme-
Objektfluss Kontrollfluss Objektfluss (Exception)
Oder-Semantik Und-Semantik Und-Semantik behandlung
abbruch
interaction Übersichtsdiagramm lifelines: x:Klasse1, y:Klasse2 Geerbter
Zustand
Endzustand interaction Zeitdiagramm Zeitbedingung
{t..3*t} P3
ref «database» P4
Interaktionsverweis Zustand 2 Datenbank-Server
y:Klasse1

Ausgangpunkt Partition A Partition B P5


«executable» P1 Aktions-
Zustand «artifact» rdbms.exe knoten
Artefakt P2 P6 Mengen-
[Abbruch] Zustand 1
Schritt P7 verarbeitung
nachricht2() (Partition A)
[ok] Schritt 1
Zustand A nachricht3()
sd Interaktion «deployment specification» Schritt 1
x:Klasse2

state machine Protokollautomat {protocol} nachricht1() Deployment Spezifikation


Zustand B
Lebenslinie

t=now (Partition B) (Partition A)


x:Klasse1 y:Klasse2 Zustandslinie 1
[vorbedingung] aufruf() / [nachbedingung] Zustand C http/LAN Schritt 3 Schritt 2 Schritt 2 Schritt 3 «parallel», «iterative», «stream»
Zustand Zustand {<10ms}
5 Mengen-
nachricht() verarbeitung
Eingangs- Einzel- Einzel- Ausgangs-
Client «artifact» menge
Artefakt objekt objekt menge
Sek.: 0 1 2 Zeitskala «deploy»
myClientPrg.exe

oose.
© Copyright 2006 by oose Innovative Informatik GmbH, Hamburg; Bezug dieses Posters über www.oose.de/poster

Erfahrung nutzen, Ziele erreichen. oose. Innovative Informatik


Innovative
Informatik

© 2006 by oose.de GmbH UML-Notationsübersicht


Aktuelle Fassung, Info und Download: http://www.oose.de/uml Teil 4/4