UML 2.1 Referenz

Transcrição

UML 2.1 Referenz
UML 2.1
Referenz
Orientation in Objects GmbH
Weinheimer Str. 68
68309 Mannheim
Version: 2.1.2
www.oio.de
[email protected]
Allgemeine Notationselemente
Common Notation Elements
Notiz
{Zusicherung}
Abhängigkeit
[<Art>] Name
Diagrammrahmen
Art: act, class, cmp,
sd, pkg, stm, uc
2
UML 2.1 Referenz
© 2008 Orientation in Objects GmbH
Paketdiagramm
Package Diagram
<<Stereotyp>>
Paketnamen
{Eigenschaftswerte}
Paketname
<<import>>
Klasse1
Paket2
enthaltene
Klasse
Paket3
enthaltenes
Paket
Klasse2
<<access>>
Paket1
<<merge>>
Paket4
Klasse1
3
UML 2.1 Referenz
© 2008 Orientation in Objects GmbH
Klassendiagramm 1
Class Diagram
<<Stereotyp>>
Paket::Klassenname
{Eigenschaftswerte}
<<interface>>
Schnittstelle
Oberklasse1
operation()
operation()
Diskriminator
Syntax
Realisierung
<<realize>>
GeneralisierungÇ
SpezialisierungÈ
Sichtbarkeiten
ImplementierendeKlasse
Unterklasse1
Unterklasse2
Klassenname
- private_attribut
# protected_attribut
~ package_attribut
+ public_attribut
attribut
attribut :Typ
attribut :Typ=Wert {Eigensch.}
operation()
operation()
bereitgestellte
Schnittstelle
operation
operation(parameter):Erg_Typ
- private_operation
# protected_operation
~ package_operation
+ public_operation
<<call>>
genutzte
Schnittstelle
AbstrakteKlasse
BenutzendeKlasse
Komma getrennte Parameterliste:
Richtung Name:Typ=Standardwert
Objektname:Klasse
Objektnotation
x,y,...:Daten_Typ
ParametrisierbareKlasse
AktiveKlasse
ParametrisierteKlasse<Parameter>
4
UML 2.1 Referenz
© 2008 Orientation in Objects GmbH
Klassendiagramm 2 (Assoziationen)
Class Diagram
Assoziation
Leserichtung
<<Stereotyp>>
Klasse_1
Beziehungsname
{Eigenschaftswerte}
m
n
0..*
Klasse_2
0..*
m,n → Multiplizität:
0..1, *, 1..*, x,y,...
0..1
Ganzes
gerichtete Assoziation
Klasse_3
0..1
0..*
Klasse_4
rolle1
Teil1
Aggregation
rolle2
Teil2
ExistenzAbhängigesTeil
Komposition
bidirektionale Assoz.
Klasse_5
b
a
Klasse_6
0..*
{ordered}
0..1
Klasse_7
a
tertiäre Assoziation
b
Komposition
0..*
rolle
Klasse_8
c
Qualifizierte Assoziation
Klasse_9
Klasse_10
Teil
Klasse_5
Qualifizierer
Klasse_6
Klasse_11
AssoziationsKlasse
5
UML 2.1 Referenz
© 2008 Orientation in Objects GmbH
Kompositionsstrukturdiagramm
Composite Structure Diagram
Observer
Subject:
Klasse_S
Observer:
Klasse_O
Alternative
Darstellungsweisen
Klasse_S
attrib_s
Observer
Subject
Observer
Klasse_O
attrib_o
Observer.attrib_o=xyz(Subject.attrib_s)
6
UML 2.1 Referenz
© 2008 Orientation in Objects GmbH
Anwendungsfalldiagramm
Use Case Diagram
Systemname
AWF_3
<<actor>>
Akteur_1
Extension Points: ...
<<extend>>
Erweiterter AWF
Akteur
Anwendungsfall
AWF_2
<<include>>
Abstrakter Akteur
Einbezogener AWF
Vererbung
Systemgrenze
Kardinalität
1..*
1..2
AWF_1
Akteur_1
7
UML 2.1 Referenz
© 2008 Orientation in Objects GmbH
Aktivitätsdiagramm 1
Activity Diagram
Partition 1
Partition 2
Partition 3
Anfang
Verantwortlichkeits
Bereiche
Schritt
Verborgene
Unteraktivitäten
Objektfluss
Entscheidung
Objekt
[Zustand]
Schritt 3
Schritt 2
Kontrolfluss
&-Semantik
Schritt 1
Signal senden/
empfangen
Schritt 4
Empfangsknoten
[Bed_1]
[Bed_2]
Schritt 5
Schritt 6
Sendeknoten
Ablaufende
merge
Synchron.
für parallele
Aktivitäten
Ende
8
UML 2.1 Referenz
© 2008 Orientation in Objects GmbH
Aktivitätsdiagramm 2
Activity Diagram
Aktivitätsname
Parametername:Typ
...
<<precondition>> Vorbedingung
<<postcondition>> Nachbedingung
Schritt 2
Eingangsparameter
Schritt 1
Schritt 4
Schritt 3
Ausgangsparameter
Unterbrechbarer
Bereich
Abbruchsignal
Mehrfachverarbeitung
Art: parallel, iterative,
stream
<<Art>>
Schritt 1
A
Konnektor
Schritt
A
Schritt 2
9
UML 2.1 Referenz
© 2008 Orientation in Objects GmbH
Interaktionsübersichtsdiagramm
Interaction Overview Diagram
sd Übersichtsdiagramm lifelines x:Klasse1, y:Klasse2
sd Interaktion XY
y:Klasse2
x:Klasse1
msg_1
msg_2
[Bed_1]
[Bed_2]
ref
Diagramm Z
10
UML 2.1 Referenz
© 2008 Orientation in Objects GmbH
Zustandsdiagramm
Statechart Diagram
Anfang
Zustand
Optional auch:
Ereignis(Parameter) [Bedingung]?
oder nur [Bedingung]
Ende
Reservierte
Ereignisse:
entry, exit,
do, include
Ereignis
Zustand_1
Zustandsnamen
Ereignis/ Aktion
Ereignis (Parameter)[Bedingung] / Aktion
Zustand_2
Zustandsübergang
Gruppierung von
Unterzuständen
Eingangspunkt
Zustand
Zustand_A
Zustand_1
[Bed_1]
Abbruch
Zustand_2
event_1
Versteckte_Zustände
[Bed_2]
[B_3]
Z1
Zustand_3
[B_1]
[B_4]
event_2
Z2
Z3
Z4
[B_2]
[B_5]
KnotenPunkt
Z5
11
UML 2.1 Referenz
© 2008 Orientation in Objects GmbH
Zeitdiagramm
Timing Diagram
Zeitbedingungen
sd Zeitdiagrammname
{d..3*d}
Zustand o.
Bedingung
:Klasse1
X_3
{t..t+2}
X_2
X_1
Lebenslinien
nachricht
msg_2
msg_1
:Klasse2
X_2
t=now
msg_3
X_1
d
Einheit:
0 1 2 3...
Zeitskala
Einheit: ms,s,m...
12
UML 2.1 Referenz
© 2008 Orientation in Objects GmbH
Sequenzdiagramme
Sequence Diagram
sd Sequenzdiagramm Name
Objektname
sd Diagramm 2
:Klasse1
asynchron
synchron
Nachrichten
- fluß wird in
Diagramm 2
fortgesetzt.
msg_1
msg_1
ref
Diagramm 2
Kontrollfokus
par
msg_3
msg_4
antwort
x: msg_2
{t..t+3}
loop
msg_5
msg_3
Zusicherung
von
Antwortzeiten
Darstellung
paralleler
Programmverlaufe.
create
Objekt3
[Bedingung] nachricht(parameter)
t=now
Objekt4
Obj2:Klasse2
msg_6
Selbstaufruf
y: reply_2
* msg_4()
Iterationszeichen
alt
[Bedingung1]
[Schleifenabbruchbedingung]
Iterationsrahmen
mit
Abruchbedingung
Darstellung
alternativer
Programmverlaufe.
msg_7
[Bedingung2]
msg_8
Lebenslinie
delete()
13
UML 2.1 Referenz
© 2008 Orientation in Objects GmbH
Kommunikationsdiagramm
Communication Diagram
sd Kommunikationsdiagramm Name
synchron
asynchron
2.1: msg()
Selbstaufruf
start()
Objektname
2: msg()
Obj2:Klasse2
Gerichtete
Assoziation
1: [Bed] antwort := nachricht(parameter)
Verschachtelter
Nachrichtenfluß
1.2.* [Bed]: msg ()
rolle
Objekt1
1.1: new ()
1.2: reply:= msg ()
Iterationszeichen mit
Abruchbedingung
Objekt3{new}
Neu erzeugtes
Objekt
14
UML 2.1 Referenz
© 2008 Orientation in Objects GmbH
Komponentendiagramm
Component Diagram
<<component>>
xyz
KlasseX
genutzte
Schnittstelle
<<component>>
Komponentenname
<<manifest>>
Portname
bereitgestellte
Schnittstelle
<<component>>
Komponente 2
<<artifact>>
xyz.jar
15
UML 2.1 Referenz
© 2008 Orientation in Objects GmbH
Verteilungsdiagramm
Deployment Diagram
Knotenname:Knotentyp
Physikalische
Verbindung
(z.B Internet)
Knoten1
<<artifact>>
client.jar
<<artifact>>
Applikation.ear
<<artifact>>
abc.jar
Kommunikation
zweier
Artefakte
:Knotentyp2
<<depoyment spec>>
abc.xml
<<artifact>>
xyz.jar
<<depoyment spec>>
xyz.xml
<<deploy>>
Knotentyp2 kann
Applikation.ear
aufnehmen.
16
UML 2.1 Referenz
© 2008 Orientation in Objects GmbH