View
219
Download
0
Category
Preview:
Citation preview
– 1 – 2015-10-20 – main –
Softw
are
Desig
n,
Modellin
gand
Analysis
inU
ML
Lectu
re1:
Intro
ductio
n
20
15
-10
-20
Prof.Dr.Andreas
Podelski,
Dr.
BerndW
estp
hal
Albert-L
udwigs-U
niversitat
Freib
urg,
Germ
any
Mo
tivatio
na
nd
Co
ntext
– 1 – 2015-10-20 – main –
2/36
Reca
ll:M
odel
– 1 – 2015-10-20 – Smotivation –
5/36
Definitio
n.[Folk]A
model
isan
abstract,
formal,
math
ematical
represen
tation
ordescrip
tionofstru
cture
orbehavio
urofa(so
ftware)
system.
Definitio
n.(G
linz,
2008,425)
Amodel
isaconcrete
ormental
imag
e(A
bbild
)ofsometh
ing
oraconcrete
ormental
archetyp
e(V
orbild
)for
someth
ing.
Three
properties
areconstitu
ent:
(i)theim
ageattrib
ute
(Abbild
ungsm
erkmal),
i.e.there
isan
entity
(calledorig
inal)
whose
imag
eor
archetyp
ethemodel
is,
(ii)thered
uctio
nattrib
ute
(Verk
urzu
ngsm
erkmal),
i.e.only
those
attributes
oftheorig
inal
that
arerelevan
tin
themodellin
gcontext
arerep
resented
,
(iii)theprag
matic
attribute,
i.e.themodel
isbuilt
inaspecifi
ccontext
fora
specifi
cpurpose.
On
eS
oftw
are
Mo
dellin
gL
an
gu
age:
UM
L(O
MG
,2
01
1b,
69
4)
– 1 – 2015-10-20 – Smotivation –
8/36
Dia
gra
m
Stru
ctu
reD
iag
ram
Be
ha
vio
rD
iag
ram
Inte
rac
tion
Dia
gra
m
Us
e C
as
eD
iag
ram
Ac
tivity
Dia
gra
m
Co
mp
os
iteS
truc
ture
Dia
gra
m
Cla
ss
Dia
gra
mC
om
po
ne
nt
Dia
gra
m
De
plo
yme
nt
Dia
gra
m
Se
qu
en
ce
Dia
gra
m
Inte
rac
tion
Ov
erv
iew
Dia
gra
m
Ob
jec
tD
iag
ram
Sta
te M
ac
hin
eD
iag
ram
Pa
ck
ag
eD
iag
ram
Co
mm
un
ica
tion
Dia
gra
mT
imin
gD
iag
ram
Pro
file D
iag
ram
OCL
DobingandParso
ns(2006)
(Ou
r)P
remises
for
Usin
ga
So
ftwa
reM
od
elling
La
ng
uage
– 1 – 2015-10-20 – Smotivation –
9/36
:C
s3
Dx:Int
E/
(i)Wewan
tto
know
how
theword
softhelan
guag
elooklike
:Syntax.
(InUML:when
isadiagram
aproper
state
mach
ine?)
(Ou
r)P
remises
for
Usin
ga
So
ftwa
reM
od
elling
La
ng
uage
– 1 – 2015-10-20 – Smotivation –
9/36
:C
s3
Dx:Int
E/
✘(i)
Wewan
tto
know
how
theword
softhelan
guag
elooklike
:Syntax.
(InUML:when
isadiagram
aproper
state
mach
ine?)
(Ou
r)P
remises
for
Usin
ga
So
ftwa
reM
od
elling
La
ng
uage
– 1 – 2015-10-20 – Smotivation –
9/36
:C
s3
Dx:Int
E/
•
•
s1
s2
•
s3
s8
s4
•
s5
s6
E/F/
F/
E/
G/
s7
[true]/
F/
✘(i)
Wewan
tto
know
how
theword
softhelan
guag
elooklike
:Syntax.
(InUML:when
isadiagram
aproper
state
mach
ine?)
(ii)Wewan
tto
know
what
aword
ofthelan
guag
emeans:
Semantics.
(InUML:cansen
dingeven
tE
andthen
Gkill
theobject?
)
→then
wecan
formally
analyse
themodel,
e.g.,
prove
that
thedesig
nsatisfi
esthereq
uirem
ents,
simulate
themodel,
automatically
generate
testcases,
generate
code,
etc.
•UMLissometim
es(neutrally,
oras
offence)
called“semi-fo
rmal”:
theUMLstan
dard
OMG
(2011a,b
)isstro
ngon(i),
butweak
(er)on(ii).
(“thediagram
isself-exp
lanatory”
,“everyb
odyundersta
ndsthediagram”—
No.)
•In
thelectu
re:stu
dythe(!)
syntax,defineone(!)
semantics.
Our?
Flo
orp
lan
Modes!
– 1 – 2015-10-20 – Smotivation –
10/36
Ske
tch:
Blueprin
t:Program:
+wirin
gplan+
windows
+...
Khoshnevis (2004)
With
UMLit’s
thesam
e[ http://martinfowler.com/bliki]:
“[...]
peo
ple
differ
aboutwhatshould
bein
theUMLbe-
cause
there
aredifferin
gfundamentalvie
wsaboutwhat
theUMLshould
be.
Sowhen
someo
neelse’s
viewoftheUML
seemsrather
differen
tto
yours,
itmay
bebeca
use
they
use
adifferen
tUmlM
odeto
you.”
Our?
Flo
orp
lan
Modes!
– 1 – 2015-10-20 – Smotivation –
10/36
Ske
tch:
Blueprin
t:Program:
+wirin
gplan+
windows
+...
Khoshnevis (2004)
With
UMLit’s
thesam
e[ http://martinfowler.com/bliki]:
“[...]
peo
ple
differ
aboutwhatshould
bein
theUMLbe-
cause
there
aredifferin
gfundamentalvie
wsaboutwhat
theUMLshould
be.
Sowhen
someo
neelse’s
viewoftheUML
seemsrather
differen
tto
yours,
itmay
bebeca
use
they
use
adifferen
tUmlM
odeto
you.”
Ske
tch
Inthis
UmlM
odedevelo
pers
use
theUML
tohelp
communica
tesomeaspects
ofasystem
.[...]
Sketch
esare
also
usefu
lin
doc-
umen
ts,in
which
case
thefocu
sis
communica
tionra-ther
than
completen
ess.[...]
Thetools
used
forsketch
ingare
lightw
eightdraw
ingtoolsandof-
tenpeo
ple
aren’t
tooparticu
laraboutkeep
ingto
everystrict
rule
oftheUML.
Most
UML
diagrams
shown
inbooks,
such
as
mine,
aresketch
es.Their
emphasis
ison
selectiveco
mmunica
tion
rather
thanco
mplete
specifi
catio
n.
Hen
cemysound-bite
“co
mpre-
hen
siveness
istheen
emyofco
m-
preh
ensib
ility”
Blueprin
t
[...]In
forw
arden
gineerin
gthe
idea
isthatblueprin
tsare
devel-
oped
byadesig
ner
whose
jobis
tobuild
adeta
ileddesig
nfora
programmer
toco
deup.
That
desig
nshould
be
suffi-
ciently
complete
thatalldesig
ndecisio
nsare
laid
outand
the
programming
should
follo
was
apretty
straightfo
rward
activity
thatreq
uires
littlethought.
[...]
Blueprin
tsreq
uire
much
more
sophistica
tedtoolsthansketch
esin
order
tohandle
thedeta
ilsre-
quired
forthetask.[...]
Forw
arden
gineerin
gtools
sup-
port
diagram
draw
ingandback
itup
with
arep
osito
ryto
hold
theinform
atio
n.[...]
ProgrammingLanguage
Ifyou
can
deta
ilthe
UML
enough,and
provid
esem
antics
foreveryth
ingyouneed
insoft-
ware,
youcanmake
theUMLbe
yourprogramminglanguage.
Tools
can
take
the
UML
di-
agrams
you
draw
and
compile
them
into
executable
code.
Thepromise
ofthisisthatUML
isa
higher
levellanguage
and
thusmore
productive
thancu
r-ren
tprogramminglanguages.
The
questio
n,
of
course,
iswheth
erthis
promise
istru
e.
Idon’t
believe
that
graphica
l
programming
will
succeed
just
beca
use
it’sgraphica
l.[...]
UM
L-M
ode
of
the
Course
– 1 – 2015-10-20 – Smotivation –
11/36
The“mode”
fittin
gthelectu
rebest
isAsB
lueprin
t.
Aim
oftheCourse
:
•show
that
UMLcan
beprecise
—to
avo
idmisu
ndersta
ndings.
•allow
form
alanalysis
ofmodels
onthedesig
nleve
l—
tofinderro
rsearly.
•becon
sistentwith
(inform
alsem
antics
in)OMG
(2011b)as
faras
possib
le.
SideEffects:
After
thecou
rse,you
shou
ld...
•have
ago
odworkin
gkn
owled
geof
UML,
•have
ago
odworkin
gkn
owled
geof
software
modellin
g,
•beable
toeffi
ciently
andeff
ectivelywork
inAsS
ketch
mode,
•beable
todefineyo
urownUMLsem
antics
foryo
urcon
text/purpose,
ordefineyou
row
nDomain
Specifi
cLanguagesas
need
ed.
Th
eL
ecture:
Co
nten
ta
nd
No
n-C
on
tent
– 1 – 2015-10-20 – main –
12/36
Course
Map
– 1 – 2015-10-20 – Scontent –
13/36
VendingM
achine
Water_enabled : int
Soft_enabled : int
Tea_enabled : int
+disable_all():void
+enable_W
ater():void+
enable_Soft():void
+enable_Tea():void
+W
AT
ER
()+
SO
FT
()+
TE
A()
+C
hoicePanel()
:ChoicePanel
1
+giveback_100():void
+giveback_50():void
:Changer
1
+P
repare_Water():void
+P
repare_Soft():void
+P
repare_Tea():void+
DW
AT
ER
()+
DT
EA
()+
DS
OF
T()
+F
ILLUP
()
:DrinkD
ispenser1
+fallthrough():void
+update_C
hoicePanel()
+C
50()+
E1()
+O
K()
:CoinV
alidator1
1
1
1
1
1
1
Idle
waitO
K
have_c100_or_e1>
have_c100
have_e1
have_c150>have_c50>
drinkReady
Idle
waitO
K
have_c100_or_e1>
have_c100
have_e1
have_c150>have_c50>
drinkReady
E1/itsC
hanger->
giveback_100()
C50/itsC
hoicePanel->
enable_Water();
E1/
itsChanger
->giveback_100()
C50
C50/
itsChanger
->giveback_50()
C50
E1/itsC
hoicePanel->enableSoft();
E1
C50
OK
Entry A
ction:itsC
hoicePanel->
enable_Water();
Entry A
ction:itsC
hoicePanel->
enable_Soft();
Entry A
ction:itsC
hoicePanel->
enable_Tea();
Tea_selected
InactiveSoft_selected
Water_selected
Request_sent
Tea_selected
InactiveSoft_selected
Water_selected
Request_sent
TE
A[Tea_enabled]
/itsDrinkD
ispenser->
GE
N(D
TE
A)
/itsDrinkD
ispenser->
GE
N(D
SOFT
);if (itsC
oinValidator
->IS_IN
(have_c150))itsC
hanger->giveback_50();
WA
TE
R[W
ater_enabled]
/disable_all();
SOFT
[Soft_enabled]
/itsDrinkD
ispenser->
GE
N(D
WA
TE
R);
if (itsCoinV
alidator->IS_IN
(have_c150))itsC
hanger->giveback_100();
else if (itsCoinV
alidator->IS_IN
(have_c100))itsC
hanger->giveback_50();
onon
T2
Tea_outT
1T
3
S2Soft_out
S1S3
W2
Water_out
W1
W3
FillingUp
on
T2
Tea_outT
1T
3
S2Soft_out
S1S3
W2
Water_out
W1
W3
FillingUp
DT
EA
/Prepare_Tea();itsC
oinValidator
->G
EN
(OK
);
DT
EA
/Prepare_Tea();itsC
oinValidator
->G
EN
(OK
);
DT
EA
/Prepare_Tea();itsC
oinValidator
->G
EN
(OK
);
DSO
FT/
Prepare_Soft();itsC
oinValidator
->G
EN
(OK
);
DSO
FT/
Prepare_Soft();itsC
oinValidator
->G
EN
(OK
);
DSO
FT/
Prepare_Soft();itsC
oinValidator
->G
EN
(OK
);
DW
AT
ER
/Prepare_W
ater();itsC
oinValidator
->G
EN
(OK
);
DW
AT
ER
/Prepare_W
ater();itsC
oinValidator
->G
EN
(OK
);
DW
AT
ER
/Prepare_W
ater();itsC
oinValidator
->G
EN
(OK
); FILL
UP/itsC
oinValidator
->update_C
hoicePanel();
LSC:
buywater
AC:
true
AM:
invarian
tI:
strict
User
Coin
Valid
atorChoiceP
anel
Disp
enser
C50
pWATER
waterin
stock
dWATER
OK
UML
ModelInstances
NS
WE
CD,SM
S=
(T,C,V
,atr),
SM
M=
(ΣDS,A
S,→
SM)
ϕ∈
OCL
expr
CD,SD
S,S
D
B=
(QSD,q
0 ,AS,→
SD,F
SD)
π=
(σ0 ,ε
0 )(cons0,Snd0)
−−−−−−−−→
u0
(σ1 ,ε
1 )···
wπ=
((σi ,co
nsi ,S
ndi ))
i∈N
G=
(N,E
,f)
Mathematics
OD
UML
Table
of
Conten
ts
– 1 – 2015-10-20 – Scontent –
14/36
•Intro
ductio
n(V
L01)
•Sem
antical
Domain
(VL01–02)
Modellin
gStru
cture:
•OCL
(VL03–04)
•Object
Diag
rams
(VL05)
•Class
Diag
rams
(VL06–09)
•Modellin
gGuidelin
es(V
L10)
Modellin
gBehaviour:
•Constru
ctive:
Sim
ple
State
Mach
ines
(VL11–13)
Hierarch
icalState
Mach
ines
(VL14–15)
CodeGeneratio
n(V
L16)
•Reflectiv
e:
Live
Sequence
Charts
(VL17–18)
TheRest:
•Inheritan
ce(V
L19–20)
•Meta-M
odelin
g(V
L21)
•Puttin
gitall
togeth
er:MDA,MDSE
(VL22)
Table
of
Non-C
onten
ts
– 1 – 2015-10-20 – Scontent –
15/36
Everythingelse
,inclu
ding
•Deve
lopmentProcess
UMLison
lythelan
guage
forartefacts.
But:
we’ll
discu
ssexem
plarily,
where
inan
abstract
develop
mentpro
cesswhich
mean
scou
ldbeused
.
•How
toco
meupwith
agooddesig
nUMLison
lythelan
guage
towrite
dow
ndesign
s.But:
we’ll
have
acou
ple
ofexam
ples.
•Arte
fact
Management
Version
ing,
Traceab
ility,Prop
agationof
Changes.
•Eve
rylittle
bit
andpiece
ofUML
Borin
g.Instead
welearn
how
toread
thestan
dard
.
•Object
Orie
ntedProgramming
Interestin
g:inheritan
ceison
eof
thelast
lectures.
Fo
rma
lia
– 1 – 2015-10-20 – main –
16/36
Form
alia
:L
ectures
– 1 – 2015-10-20 – Sformalia –
17/36
•Lectu
rer:
Dr.Bern
dWestp
hal
•Support:
Milan
Vujin
ovic
•Homepage:http://swt.informatik.uni-freiburg.de/teaching/WS2015-16/sdmauml
•Tim
e/Loca
tion:Tuesd
ay,Thursd
ay,10:00–12:00/here
(build
ing51,room
03-026)
•Course
language:English
(slides/
writin
g,presen
tation,questio
ns/discu
ssions)
•Presentatio
n:
half
slides/
half
on-screen
hand-w
riting—
forreaso
ns
•Scrip
t/Media:
•slid
eswith
annotatio
nsonhomepage,
typically
soonafte
rthelectu
re
•record
ingonILIASwith
max.
1week
delay
(linksonhomepage)
•Break:
•We’ll
have
a10min.breakin
themiddle
ofeach
eventfro
mnow
on,
unless
amajority
objects
now.
Form
alia
:E
xercisesand
Tuto
rials
– 1 – 2015-10-20 – Sformalia –
18/36
•Youshould
work
ingroupsofapprox.3,clearly
give
namesonsubmissio
n.
•Please
submitvia
ILIAS(cf.
homepag
e);papersubmissio
nsare
tolerated.
•Sch
edule:
Week
N,
Thursd
ay,10–12Lectu
reA1(exercise
sheet
Aonlin
e)
Week
N+
1,
Tuesd
ay10–12Lectu
reA2
Thursd
ay10–12Lectu
reA3
Week
N+
2,
Monday,
12:00
(exercisesA
early
submissio
n)
Tuesd
ay,10:00
(exercisesA
late
submissio
n)
10–12Tutoria
lA
Thursd
ay10–12Lectu
reB1(exercise
sheet
Bonlin
e)
•Ratin
gsyste
m:“most
complicated
ratingsystem
ever”
•Admissio
npoints
(good-w
illratin
g,upper
bound)
(“rea
sonable
proposalgiven
studen
t’sknowled
gebefore
tutoria
l”)
•Exa
m-like
points
(evilratin
g,lower
bound)
(“rea
sonable
proposalgiven
studen
t’sknowled
geafte
rtutoria
l”)
10%
bonusfor
early
submissio
n.
•Tutoria
l:Plen
ary,notreco
rded.
•Togeth
erdevelo
ponegoodsolutio
nbased
onselectio
nofearly
submissio
ns
(anonym
ous)
—there
isno“Musterlo
sung”for
modellin
gtask
s.
Form
alia
:E
xam
– 1 – 2015-10-20 – Sformalia –
19/36
•Exam
Admissio
n:
Achievin
g50%
ofthereg
ular
admissio
npoints
intotal
issufficie
ntfor
admissio
nto
exam.
Typ
ically,20reg
ular
admissio
npoints
per
exercisesheet.
•Exam
Form
:
•oral
forBScan
donspecial
dem
and(E
rasmus),
•writte
nfor
everybodyelse
(ifsufficien
tlyman
ycan
didates
remain
).
Scores
from
theexercises
donotcontrib
ute
tothefinal
grad
e.
•Exam
Date:
Rem
indmein
earlyDecem
ber
that
weneed
toag
reeonan
examdate.
User’s
Guid
e
– 1 – 2015-10-20 – Sformalia –
20/36
•Approach
:
Thelectu
resissupposed
towork
asalectu
re:sp
oke
nword
+slid
es+
discu
ssion
Itisnotourgoalto
make
anyof
thethree
work
inisolation
.
•Interactio
n:
Absen
ceoften
moan
edbutit
take
stw
o:please
ask/co
mmentim
mediately.
•Exe
rcisesubmissio
ns:
Each
taskisatin
ylittle
scientifi
cwork:
(i)Briefl
yrep
hrase
thetask
inyourow
nword
s.
(ii)State
yourclaim
edsolutio
n.
(iii)Convin
ceyourread
erthat
yourproposal
isasolutio
n(proofs
arevery
convin
cing).
User’s
Guid
e
– 1 – 2015-10-20 – Sformalia –
20/36
•Approach
:
Thelectu
resissupposed
towork
asalectu
re:sp
oke
nword
+slid
es+
discu
ssion
Itisnotourgoalto
make
anyof
thethree
work
inisolation
.
•Interactio
n:
Absen
ceoften
moan
edbutit
take
stw
o:please
ask/co
mmentim
mediately.
•Exe
rcisesubmissio
ns:
Each
taskisatin
ylittle
scientifi
cwork:
(i)Briefl
yrep
hrase
thetask
inyourow
nword
s.
(ii)State
yourclaim
edsolutio
n.
(iii)Convin
ceyourread
erthat
yourproposal
isasolutio
n(proofs
arevery
convin
cing).
Exa
mple:
Task:Given
asquare
with
sidelen
gth
a=
19.1.What
isthelen
gth
ofthe
longest
straightlin
efully
insid
ethesquare?
Submissio
nA:
Submissio
nB:
27
The
length
ofthe
longest
straight
linefully
insid
ethesquare
with
side
length
a=
19.1
is27.01(ro
unded
).
Thelongest
straightlin
einsid
ethe
square
isthediagonal.
ByPyth
ago-
ras,its
length
is√a2+
a2.Insertin
ga=
19.1
yields27.01(ro
unded
).
User’s
Guid
e
– 1 – 2015-10-20 – Sformalia –
20/36
•Approach
:
Thelectu
resissupposed
towork
asalectu
re:sp
oke
nword
+slid
es+
discu
ssion
Itisnotourgoalto
make
anyof
thethree
work
inisolation
.
•Interactio
n:
Absen
ceoften
moan
edbutit
take
stw
o:please
ask/co
mmentim
mediately.
•Exe
rcisesubmissio
ns:
Each
taskisatin
ylittle
scientifi
cwork:
(i)Briefl
yrep
hrase
thetask
inyourow
nword
s.
(ii)State
yourclaim
edsolutio
n.
(iii)Convin
ceyourread
erthat
yourproposal
isasolutio
n(proofs
arevery
convin
cing).
Exa
mple:
Task:Given
asquare
with
sidelen
gth
a=
19.1.What
isthelen
gth
ofthe
longest
straightlin
efully
insid
ethesquare?
Submissio
nA:
Submissio
nB:
27
The
length
ofthe
longest
straight
linefully
insid
ethesquare
with
side
length
a=
19.1
is27.01(ro
unded
).
Thelongest
straightlin
einsid
ethe
square
isthediagonal.
ByPyth
ago-
ras,its
length
is√a2+
a2.Insertin
ga=
19.1
yields27.01(ro
unded
).✘
✔L
iteratu
re
– 1 – 2015-10-20 – main –
21/36
Litera
ture:
Modellin
g
– 1 – 2015-10-20 – Slit –
22/36
•
•W.Hesse,
H.C.Mayr:
Modellieru
ngin
der
Soft-
waretech
nik:ein
eBestan
dsau
fnah
me,
Inform
atikSpektru
m,31(5):3
77-393,2008.
•O.Pastor,
S.Espan
a,J.
I.Pan
ach,N.Aquino:
Model-D
rivenDevelo
pment,
Inform
atikSpektru
m,31(5):3
94-407,2008.
•M.
Glin
z:Modellieru
ng
inder
Lehre
anHochsch
ulen
:Thesen
undErfah
rungen,
Inform
atikSpektru
m,31(5):4
08-424,2008.
http://www.springerlink.com/content/0170-6012
•U.Kasten
s,H.Klein
eBuning:Modellieru
ng–Grundlag
enundForm
aleMeth
oden,2.
Auflag
e,Han
ser-Verlag
,2008.
Litera
ture:
UM
L
– 1 – 2015-10-20 – Slit –
23/36
•OMG:Unified
Modelin
gLangu
ageSpecifi
cation,Infrastru
cture,
2.4.1
•OMG:Unified
Modelin
gLangu
ageSpecifi
cation,Superstru
cture,
2.4.1
•OMG:Object
Con
straintLangu
ageSpecifi
cation,2.0
Allthree:
http://www.omg.org(cf.
hyp
erlinks
oncou
rsehom
epage)
•A.Klep
pe,
J.Warm
er:TheObject
Con
straintLangu
age,Secon
dEdition
,Addison
-Wesley,
2003.
•D.Harel,
E.Gery:
Execu
table
Object
Modelin
gwith
Statech
arts,IEEECom
puter,
30(7):31-42,1997.
•B.P.Dou
glass:Doin
gHard
Tim
e,Addison
-Wesley,
1999.
•B.P.Dou
glass:ROPES:Rapid
Object-O
riented
Process
forEmbedded
System
s,i-L
ogixInc.,
Whitep
aper,
1999.
•B.Oesterreich
:Analyse
undDesign
mitUML2.1,
8.Auflage,
Oldenbou
rg,2006.
•H.Stoerrle:
UML2furStudenten
,Pearson
Studium
Verlag,
2005.
Referen
ces
– 1 – 2015-10-20 – main –
35/36
Referen
ces
– 1 – 2015-10-20 – main –
36/36
Dobing,B.an
dParso
ns,
J.(2006).
How
UMLisused
.Communicatio
nsoftheACM,
49(5):1
09–114.
Glin
z,M.(2008).
Modellieru
ngin
der
Lehre
anHochsch
ulen
:Thesen
undErfah
rungen.
Inform
atik
Spektru
m,31(5):4
25–434.
Khoshnevis,
B.(2004).
Automated
constru
ctionbycontourcraftin
g—
relatedrobotics
and
inform
ationtech
nologies.
JournalofAutomatio
nin
Constru
ctio
n,13:5–19.
OMG
(2006).
Object
Constrain
tLan
guag
e,versio
n2.0.Tech
nical
Rep
ortform
al/06-05-01.
OMG
(2011a).
Unified
modelin
glan
guag
e:Infrastru
cture,
version2.4.1.Tech
nical
Rep
ortform
al/2011-08-05.
OMG
(2011b).
Unified
modelin
glan
guag
e:Superstru
cture,
version2.4.1.Tech
nical
Rep
ortform
al/2011-08-06.
Recommended