bse - tu dresdenst.inf.tu-dresden.de/.../cbse/slides/15-web-services-2x1.pdf · 2011. 5. 28. ·...
TRANSCRIPT
CB
SE
, © P
rof.
Uw
e A
ßman
n 1
15. W
eb S
ervi
ces
and
Se
rvic
e-O
rient
ed A
rchi
tect
ures
Pro
f. D
r. U
we
Aßm
ann
Tech
nisc
he U
nive
rsitä
t Dre
sden
In
stitu
t für
Sof
twar
e- u
nd
Mul
timed
iate
chni
k ht
tp://
st.in
f.tu-
dres
den.
de
Ver
sion
11-
0.2,
Mai
28,
201
1
1)
Web
Ser
vice
s as
a s
peci
fic
form
of s
ervi
ce-o
rient
ed
arch
itect
ures
2)
XM
L 3)
SO
AP
4)
WS
DL
5)
BP
EL
6)
BP
MN
7)
Trus
t and
sec
urity
8)
Eva
luat
ion
Pro
f. U
. Aßm
ann,
CB
SE
2
Obl
igat
ory
Rea
ding
►
ISC
, Cha
pter
2.4
►
W.M
.P. V
an d
er A
alst
. Don
't go
with
the
flow
: Web
ser
vice
s co
mpo
sitio
n st
anda
rds
expo
sed.
IEE
E In
telli
gent
Sys
tem
s, J
an/F
eb
2003
. http
://tm
itww
w.tm
.tue.
nl/re
sear
ch/p
atte
rns/
dow
nloa
d/ie
eew
ebflo
w.p
df
►
P. W
ohed
, W.M
.P. V
an d
er A
alst
, M. D
umas
, A. t
er H
ofst
ede.
A
naly
sis
of W
eb S
ervi
ce C
ompo
sitio
n La
ngua
ges:
The
Cas
e of
B
PE
L.
►
http
://w
ww
.bpm
nfor
um.c
om/F
AQ
.htm
FA
Q o
f BP
MN
Pro
f. U
. Aßm
ann,
CB
SE
3
Lite
ratu
re
►
Mat
thia
s W
eske
. Bus
ines
s P
roce
ss M
anag
emen
t – C
once
pts,
La
ngua
ges,
Arc
hite
ctur
es. S
prin
ger.
2007
►
YA
WL
http
://so
urce
forg
e.ne
t/pro
ject
s/ya
wl/
►
H. P
. Ale
sso,
C. F
. Sm
ith. D
evel
opin
g S
eman
tic W
eb S
ervi
ces.
A K
P
eter
s Lt
d, N
atic
k, M
assa
chus
etts
, 200
4.
►
http
://w
ww
.bpm
b.de
/inde
x.ph
p/B
PM
NP
oste
r ►
List
e de
r BP
MN
Wer
kzeu
g-H
erst
elle
r http
://w
ww
.bpm
n.or
g/B
PM
N_S
uppo
rters
.htm
Pro
f. U
. Aßm
ann,
CB
SE
4
15.1
Web
Ser
vice
s an
d A
rchi
tect
ure
Syst
ems
►
Arc
hite
ctur
e sy
stem
s m
ay h
ave
diffe
rent
form
s of
arc
hite
ctur
al
lang
uage
s:
■ To
polo
gy-b
ased
(Uni
con,
AC
ME
, Dar
win
) ■
Coo
rdin
atio
n sc
hem
es (C
oSy)
■
Impe
rativ
e sc
ripts
(Dar
win
)
►
Web
Ser
vice
Sys
tem
s an
d La
ngua
ges
(WS
S) a
re a
form
of
arch
itect
ural
sys
tem
■
They
sep
arat
e pr
ogra
mm
ing-
in-th
e-sm
all f
rom
pro
gram
min
g-in
-the-
larg
e (2
-leve
l pr
ogra
mm
ing)
.
Com
pone
nts
enca
psul
ate
the
serv
ice
know
ledg
e .
The
arch
itect
ural
leve
l (or
ches
tratio
n, a
ggre
gatio
n, c
ompo
sitio
n) tr
eats
the
big
pict
ure
►
How
ever
, WS
S h
ave
an im
pera
tive
arch
itect
ural
lang
uage
Pro
f. U
. Aßm
ann,
CB
SE
5
Ord
er p
roce
ssin
g
Amaz
on.c
om
Reu
se o
f Web
Ser
vice
s
Billi
ng
Acco
unts
Billi
ng
Bank
Paym
ent
Pake
t se
rvic
e
Del
iver
y
Stor
age
Pack
ing
Chec
king
Cred
itabi
lity
chec
k
Web
Ag
rega
te
Ord
er a
ccep
tanc
e
Pro
f. U
. Aßm
ann,
CB
SE
6
Web
Ser
vice
s ar
e de
scrib
ed b
y W
orkf
low
s
►
Wor
kflo
w s
peci
ficat
ions
com
bine
con
trol a
nd d
ata
flow
►
Web
ser
vice
arc
hite
ctur
es a
re th
e fir
st s
tep
to s
ervi
ce-o
rient
ed
arch
itect
ures
(SO
A),
base
d on
trad
ers
■ S
ervi
ces
will
be
offe
red,
sea
rche
d an
d di
scov
ered
, dow
nloa
ded,
exe
cute
d
►
Ent
erpr
ise
serv
ices
tran
sfer
s w
eb s
ervi
ces
to b
usin
ess
syst
ems
►
Cus
tom
er s
ervi
ces
serv
e th
e en
d-us
er o
f the
web
Dat
a O
per
atio
n/P
roce
ss
Pro
f. U
. Aßm
ann,
CB
SE
7
Ex. B
uyin
g a
Boo
k fr
om A
maz
on
►
UM
L ac
tivity
dia
gram
[Ale
sso/
Sm
ith]
Loca
te b
ook
Put
In S
hopp
ingB
aske
t
Cre
ate
Acc
ount
C
reat
e A
ccou
nt
Cre
ate
Use
r Pro
file
Load
Use
r Pro
file
Beg
in C
heck
out
Com
mit
Che
ckou
t
Pay
men
t Sel
ectio
n
Fill
in D
eliv
ery
Det
ails
Com
mit
Pur
chas
e
One
-Clic
k B
uy
Pro
f. U
. Aßm
ann,
CB
SE
8
Whi
ch T
ypes
of O
pera
tiona
l Spe
cific
atio
ns
Exis
t?
►
Dat
a-flo
w g
raph
s (d
ata
flow
dia
gram
s, D
FD)
■ D
ata
flow
s th
roug
h op
erat
ions
■
Act
ivity
dia
gram
s: d
ata
flow
s th
roug
h ac
tions
►
Con
trol-f
low
gra
phs
(CFG
) ■
Nod
es a
re c
ontro
l-flo
w o
pera
tions
that
sta
rt ot
her o
pera
tions
on
a st
ate
■ Th
e st
anda
rd re
pres
enta
tion
for i
mpe
rativ
e pr
ogra
ms
►
Sta
te s
yste
ms
■ Fi
nite
Sta
te M
achi
nes
(FS
M):
even
ts tr
igge
r sta
te tr
ansi
tions
■
Sta
tech
arts
: Hie
rarc
hica
l FS
M
■ P
etri
nets
: tok
ens
mar
k co
ntro
l and
dat
a-flo
w
►
Mix
ed a
ppro
ache
s ■
Cyc
lic d
ata-
flow
gra
phs
(als
o ca
lled
stat
ic-s
ingl
e as
sign
men
t gra
phs,
SS
A)
. C
ycle
s ar
e m
arke
d by
phi
-nod
es th
at c
onta
in c
ontro
l-flo
w g
uard
s ■
Wor
kflo
w la
ngua
ges:
mix
con
trol a
nd d
ata-
flow
■
Pro
vide
spe
cific
spl
it an
d jo
in o
pera
tors
for c
ontro
l and
dat
a flo
w
Pro
f. U
. Aßm
ann,
CB
SE
9
Wor
kflo
w L
angu
ages
►
A w
orkf
low
lang
uage
spe
cifie
s co
ntro
l and
dat
a flo
w o
ver a
set
of
oper
atio
ns
►
The
wor
kflo
w is
exe
cuta
ble
with
an
inte
rpre
ter,
the
wor
kflo
w e
ngin
e ■
A s
ingl
e op
erat
ion
need
not
be
exec
uted
aut
omat
ical
ly, b
ut c
an b
e pe
rform
ed b
y hu
man
s (…
for p
eopl
e)
■ Th
e w
orkf
low
runs
in p
aral
lel
■ W
orkf
low
s ar
e us
ually
com
pile
d to
Col
ored
Pet
ri N
ets
or to
S
tate
char
ts
►
Exa
mpl
es:
■ A
RIS
sys
tem
for S
AP
, EP
C (e
vent
pro
cess
cha
ins)
■
Flow
Mar
k (IB
M)
■ Lo
tus
Dom
ino
(IBM
) ■
base
d on
Col
ored
Pet
ri N
ets:
■
YA
WL
(van
der
Aal
st, E
inho
ven)
■
Wor
kflo
w N
ets
Pro
f. U
. Aßm
ann,
CB
SE
10
Typi
cal C
ontr
ol-F
low
Ope
rato
rs in
Wor
kflo
w
Lang
uage
s (G
atew
ays)
►
AN
D-s
plit:
all
►
AN
D-jo
in: a
ll of
n
►
XO
R-s
plit:
1 o
f n
►
XO
R-jo
in: 1
of n
►
OR
-spl
it: m
of n
►
OR
-join
: m o
f n
+
o
x
+ x
o
Pro
f. U
. Aßm
ann,
CB
SE
11
Wha
t are
Wor
kflo
w E
ngin
es?
►
Wor
kflo
w e
ngin
es a
re in
terp
rete
rs o
f wor
kflo
ws
■ Th
ey m
aint
ain
the
para
llelis
m in
a w
orkf
low
and
syn
chro
nize
all
proc
esse
s
►
Usu
ally
, the
y al
so s
uppo
rt fo
r int
erac
tive
appl
icat
ions
■
Und
o ■
Tran
sact
ions
with
rollb
ack
and
com
mit
■ C
ompe
nsat
ion
(in c
ase
of e
rror
)
►
They
are
, for
web
ser
vice
s an
d co
mpo
nent
sys
tem
s, c
ompo
sitio
n en
gine
s th
at e
xecu
te a
com
posi
tion
prog
ram
Pro
f. U
. Aßm
ann,
CB
SE
12
15.2
Bas
ics:
XM
L fo
r Dat
a Ex
chan
ge
(Opt
iona
l)
Appr
oach
XM
L
Com
pone
nts
of W
eb S
ervi
ces
Dat
a an
d M
essa
ge D
escr
iptio
n
Dat
a: X
ML-
docu
men
t
+ X
ML
is a
mar
kup
lang
uage
(fo
r m
etad
ata
spec
ifica
tion)
+ XM
L is
als
o a
lang
uage
for
abs
trac
t sy
ntax
tre
es o
f da
ta d
efin
ition
la
ngua
ges
+ E
asy
synt
ax for
hie
rarc
hica
l st
ruct
ured
doc
umen
ts
+ W
3C R
ecom
men
datio
n (s
tand
ard)
Wid
ely
spre
ad, ac
cept
ed
- No
sem
antic
s
- Not
com
pact
/ lo
w p
erfo
rman
ce
- Ong
oing
sta
ndar
diza
tions
Pro
f. U
. Aßm
ann,
CB
SE
13
XML
Exam
ple
<treatment>
<patient
insurer=“1577500”nr=‘0503760072’/>
<doctor city =“HD” nr=‘4321’/>
<service>
<mkey>1234-A</mkey>
<date>2001-01-30</date>
<diagnosis>No complications.
</diagnosis>
</service>
</treatment>
Pro
f. U
. Aßm
ann,
CB
SE
14
XML
Type
s an
d
Reg
ular
Exp
ress
ions
(X |Y |... |Z)
UNION X, Y, ..., Z
(X, Y, ..., Z)
RECORD X, Y, ..., Z
(X)*
ARRAY OF X
Reg
ular
Exp
ress
ion
Type
Pro
f. U
. Aßm
ann,
CB
SE
15
Exam
ple:
Def
initi
on o
f Sim
ple
Tag
Type
s w
ith
XML
Sche
ma
(XSD
)
<simpletype name=‘mkey’ base=‘string’>
<pattern value=‘[0-9]+(-[A-Z]+)?’/>
</simpletype>
<simpletype name=‘insurer’ base=‘integer’>
<precision value=‘7’/>
</simpletype>
<simpletype name=‘myDate’ base=‘date’>
<minInclusive value=‘2001-01-01’/>
<maxExclusive value=‘2001-04-01’/>
</simpletype>
Pro
f. U
. Aßm
ann,
CB
SE
16
Exam
ple:
C
ompl
ex X
ML
Sche
ma
type
s
<complextype name=‘treatment’>
<element name=‘patient’ type=‘patient’/>
<choice>
<element ref=‘doctor’/>
<element ref=‘hospital’/>
</choice>
<element ref=‘service’
maxOccurs=‘unboanded’/>
</complextype>
Pro
f. U
. Aßm
ann,
CB
SE
17
Exam
ple:
XM
L Sc
hem
a A
ttrib
utes
<complextype name=‘patient’
content=‘empty’>
<attribute ref =‘insurer’ use=‘required’/
>
<attribute name=‘nr’ use=‘required’>
<simpletype base=‘integer’>
<precision value=‘10’/>
</simpletype>
</attribute>
<attribute name=‘since’ type=‘myDate’/>
</complextype>
Pro
f. U
. Aßm
ann,
CB
SE
18
Que
stio
n:
Why
do
peop
le li
ke a
n in
terc
hang
e fo
rmat
like
XM
L?
XM
L It
is w
ordy
, ugl
y, b
ut o
ften
hum
an
read
able
S
low
, but
flex
ible
(int
erpr
eted
) C
ompr
essi
on h
elps
to re
duce
sp
ace
requ
irem
ents
, but
ca
nnot
be
done
opt
imal
ly fo
r al
l app
licat
ions
...
.
IDL
Bin
ary
form
at
Map
ping
cod
e m
ust b
e
gene
rate
d an
d co
mpi
led
Fast
Pro
f. U
. Aßm
ann,
CB
SE
19
The
Sum
eria
n La
w o
n R
eada
bilit
y
E
very
lang
uage
that
is n
ot re
adab
le b
y hu
man
s w
ill v
anis
h
Pro
f. U
. Aßm
ann,
CB
SE
20
Enve
lope
15.3
SO
AP,
An
XML-
base
d In
tera
ctio
n Pr
otoc
ol
►
Sim
ple
Obj
ect A
cces
s P
roto
col
(SO
AP
) def
ines
the
mes
sage
form
at
►
Mes
sage
con
tain
s ta
rget
add
ress
and
an
env
elop
e ■
with
nam
e sp
ace,
enc
odin
g at
tribu
tes
and
■ H
eade
r (fix
ed fo
rmat
) con
tain
s
. A
uthe
ntic
atio
n (S
ende
r, R
ecei
ver)
, .
Tran
sact
ions
, .
Err
or h
andl
ing
info
rmat
ion,
.
Rou
ting
info
rmat
ion
…
■ B
ody
cont
ains
use
r dat
a (fr
ee fo
rmat
) ►
Tran
spor
t is
trans
pare
nt, p
rede
fined
ch
anne
ls:
■ H
TTP
(with
bac
k ch
anne
l, de
fact
o st
anda
rd)
■ S
MTP
, TC
P (w
ith b
ack
chan
nel)
Hea
der
Body
Pro
f. U
. Aßm
ann,
CB
SE
21
Exam
ple:
SO
AP
Hea
der
POST /TreatmentAdmin HTTP/1.1
HOST: www.hospital-admin.com
Content-Type: text/xml
Charset=“utf-8”
Content-Length: nnnn
SOAPaction: http://localhost/TreatmentAdmin
<SOAP-ENV:Envelop
xmlns:SOAP-ENV=http://schemas.xmlsoap.org/soap/envelop/
SOAP-ENV:Encoding=“http://…/encoding”>
<SOAP-ENV:Header>
<a:Authentication
xmlns:a=http://localhost/TreatmentAdmin … >
…
</a:Authentication>
</SOAP-ENV:Header>
<SOAP-ENV:Body> … </SOAP-ENV:Body>
</SOAP-ENV:Envelop>
Mess
age H
eade
r HT
TP
SOAP
Env
elop
Pro
f. U
. Aßm
ann,
CB
SE
22
Exam
ple:
SO
AP
Bod
y
<SOAP-ENV:Body>
<m:AddTreatment xmlns:a=http://localhost/TreatmentAdmin>
<treatment>
<patient insurer=“1577500”nr=‘0503760072’/>
<doctor city =“HD” nr=‘4321’/>
<service>
<mkey>1234-A</mkey>
<date>2001-01-30</date>
<diagnosis>No complications.
</diagnosis>
</service>
</treatment>
</SOAP-ENV:Body>
Pro
f. U
. Aßm
ann,
CB
SE
23
SOA
P In
tera
ctio
n Pr
otoc
ol
Net
wor
k
Mes
sagi
ng
HTT
P, F
TP, II
OP,
MQ
, ...
SOAP
Appr
oach
Co
mpo
nent
s of
Web
Ser
vice
s
XML
Mes
sage
Des
crip
tion
+ W
3C R
ecom
men
datio
n (s
tand
ard)
+ Im
plem
ents
RPC
- Unt
yped
use
r da
ta, ty
pes
to e
ncod
e in
the
mes
sage
- Int
erpr
etat
ion
of S
OAP
mes
sage
s re
quire
d
- Hig
h ov
erhe
ad /
low
per
form
ance
CB
SE
, © P
rof.
Uw
e A
ßman
n 24
15.4
WSD
L an
d Th
e In
terf
ace
Con
cept
of W
eb S
ervi
ces
Pro
f. U
. Aßm
ann,
CB
SE
25
Serv
ice
Inte
rfac
e
Web
Ser
vice
Ope
ratio
n
Inte
rfac
e
XML
inpu
t /
outp
ut
Web
Ser
vice
s D
escr
iptio
n La
ngua
ge (
WSD
L)
defin
es a
ser
vice
inte
rfac
e
Pro
f. U
. Aßm
ann,
CB
SE
26
WSD
L C
ompo
nent
s an
d Th
eir I
nter
face
s
►
A W
SD
L In
terfa
ce is
a s
et o
f por
ts
■ Fu
nctio
ns w
ith ty
pes
of p
aram
eter
and
resu
lts in
XM
L S
chem
a ■
Eve
nt p
orts
■
Pla
ys a
sim
ilar r
ole
as p
orts
of a
UM
L co
mpo
nent
►
Adv
anta
ges
■ W
SD
L ab
stra
cts
from
und
erly
ing
prot
ocol
(http
, SO
AP
, mim
e, II
OP
) ■
Com
pone
nt m
odel
can
be
map
ped
to C
OR
BA
, EJB
, DC
OM
, .N
ET
■ W
SD
L un
ifies
cal
l and
eve
nt p
orts
■
WS
DL
abst
ract
s fro
m th
e un
derly
ing
com
pone
nt m
odel
, int
rodu
cing
the
com
pone
nt m
odel
as
a se
cret
<<W
ebS
ervi
ce>>
Pro
f. U
. Aßm
ann,
CB
SE
27
WD
SL S
peci
ficat
ion
Stru
ctur
e
►
Type
s ■
In X
ML
sche
ma
or a
noth
er ty
ping
lang
uage
►
Mes
sage
s ■
The
data
that
is c
omm
unic
ated
►
Ope
ratio
n
■ A
n in
terfa
ce o
f the
ser
vice
, with
inpu
t and
out
put,
faul
t par
amet
ers
►
Por
t typ
e ■
A n
amed
set
of o
pera
tions
(as
in U
ML)
►
Bin
ding
■
A m
appi
ng o
f the
por
t to
unde
rlyin
g co
mpo
nent
mod
els,
e.g
., ht
tp, s
oap,
or m
ime
►
Ser
vice
■
A s
et o
f rel
ated
por
ts
Pro
f. U
. Aßm
ann,
CB
SE
28
WSD
L us
es T
ypes
of X
SD
<wsdl:types>
<XMLSchema:schema … [target name space definitions]>
<XMLSchema:element name=“addTreatment”>
<XMLSchema:complextype>
<XMLSchema:sequence>
<s:element minOccurs="1" maxOccurs="1” name="parameter"
nillable="true" type="a:treatment"/>
</XMLSchema:sequence>
</XMLSchema:complextype>
</XMLSchema:element>
<XMLSchema:element name=“addTreatmentResponse”>
<XMLSchema:complextype>
<XMLSchema:sequence>
<s:element minOccurs="1" maxOccurs="1" name=“result"
nillable="true" type="XMLSchema:bool"/>
</XMLSchema:sequence>
</XMLSchema:complextype>
</XMLSchema:element>
<XMLSchema:complextype name=‘treatment’> …
</XMLSchema:complextype>
</XMLSchema:schema>
<wsdl:types>
Pro
f. U
. Aßm
ann,
CB
SE
29
Port
Typ
es
►
Eve
nt o
r mes
sage
bas
ed:
■ N
otifi
catio
n: d
ata-
out p
ort
■ O
ne-w
ay: d
ata-
in p
ort
►
Cal
l-bas
ed
■ R
eque
st-R
espo
nse:
pro
cedu
re p
ort
■ S
olic
it-R
espo
nse:
sen
d, th
en re
ceiv
e (c
alle
r por
t)
Pro
f. U
. Aßm
ann,
CB
SE
30
Exam
ple:
WSD
L Po
rts,
Typ
ed b
y M
essa
ge
Type
s
<wsdl:definitions [name space definitions]>
<wsdl:types> … </wsdl:types>
<wsdl:message name=“addTreatmentSOAPIn”>
<part name=“parameters” element=“addTreatment”/>
</wsdl:message>
<wsdl:message name=“addTreatmentSOAPOut”>
<part name=“parameters” element=“addTreatmentResponse”/>
</wsdl:message>
<wsdl:porttype name=“TreatmentAdminSOAP“>
<wsdl:operation name=“addTreatment“>
<wsdl:input message=“addTreatmentSoapIn“/>
<wsdl:output message=“addTreatmentSoapOut“/>
</wsdl:operation>
</wsdl:porttype>
<binding [binding to SOAP / HTTP Protocols] …
</wsdl:definitions>
Actua
l inter
face
Pro
f. U
. Aßm
ann,
CB
SE
31
Exam
ple:
Bin
ding
WSD
L to
SO
AP
<wsdl:binding name=”livetoken” type=”Token”>
<soap:binding style=”document”
transport=”http://schemas.xmlsoap.org/html”>
<operation name=”GetLastPrice”>
<soap:operation soapAction=”http://
www.stocktrade.com/GetPrice”>
<input> <soap:body use=”literal”> </input>
<output> <soap:body use=”literal”> </output>
</operation>
<wsdl:binding>
Pro
f. U
. Aßm
ann,
CB
SE
32
WSD
L Se
rvic
e In
terf
ace
►
WS
DL
is a
Inte
rface
Def
initi
on L
angu
age
(IDL)
■
Par
t of B
PE
L (s
ee la
ter)
■
No
inhe
ritan
ce o
n W
SD
L ■
No
stan
dard
map
ping
to d
ata
in p
rogr
amm
ing
lang
uage
s ■
No
web
ser
vice
as
para
met
ers/
resu
lts
►
W3C
Rec
omm
enda
tion
(sta
ndar
d)
Net
wor
k
Mes
sagi
ng
Serv
ice
Des
crip
tion
HTT
P, F
TP, II
OP,
MQ
, ...
SOAP
WSD
L
Com
pone
nts
of W
eb S
ervi
ces
XML
Mes
sage
Des
crip
tion
Appr
oach
Pro
f. U
. Aßm
ann,
CB
SE
33
Offe
r and
Fin
d Se
rvic
es
►
Sta
ndar
dize
d pu
blis
hing
, adv
ertis
emen
t …
►
Ext
ende
d na
me
serv
er, d
escr
ibin
g in
terfa
ce a
nd p
rope
rties
►
XM
L D
escr
ipto
r ■
Whi
te P
age:
Add
ress
■
Yel
low
Pag
e: S
eman
tics
(bas
ed o
n st
anda
rd ta
xono
my)
■
Gre
en P
age:
Tec
hnic
al s
peci
ficat
ion
of s
ervi
ce
►
Logi
cally
cen
tral,
phys
ical
ly d
istri
bute
d da
ta b
ase
Uni
vers
al D
escr
iptio
n, D
isco
very
and
Inte
grat
ion
(UD
DI)
def
ines
ser
vice
pro
pert
ies
for
serv
ice
trad
ing
Pro
f. U
. Aßm
ann,
CB
SE
34
UD
DI
Whi
te P
age
Reg
iste
red
(and
oth
er) n
ames
S
ervi
ce D
escr
iptio
n C
onta
ct p
erso
n (n
ame,
e-m
ails
, …
) Te
leph
one/
fax
num
ber
Web
site
…
Yello
w P
ages
Ser
vice
cat
egor
y Ty
pe o
f ind
ustry
Ty
pe a
v pr
oduc
ts/s
ervi
ces
Geo
grap
hic
loca
lizat
ion
…
Gre
en
Pag
es
Offe
red
serv
ice
Doc
umen
tatio
n, d
escr
iptio
n P
rinci
ples
coo
pera
tion
real
izat
ion
…
WS
DL
WS
DL
Pro
f. U
. Aßm
ann,
CB
SE
35
UD
DI:
Offe
r and
Fin
d Se
rvic
es N
etw
ork
Mes
sag
ing
Ser
vice
Des
crip
tio
n
Ser
vice
Pu
bli
cati
on
Ser
vice
Dis
cove
ry
HT
TP
, FT
P,
IIO
P,
MQ
, ..
.
SO
AP
WS
DL
UD
DI
UD
DI
Com
pone
nts
of W
eb S
ervi
ces
XM
L M
essa
ge
Des
crip
tio
n
Appr
oach
- Req
uire
d an
d ap
proa
ched
- No
sear
ch s
trat
egie
s
- No
no t
rade
r or
mar
ket
plac
e CB
SE
, © P
rof.
Uw
e A
ßman
n 36
15.5
Bus
ines
s Pr
oces
s Ex
ecut
ion
(W
orkf
low
s) w
ith B
PEL
Pro
f. U
. Aßm
ann,
CB
SE
37
Wha
t is
a B
usin
ess
Proc
ess?
“A c
olle
ctio
n of
rela
ted,
stru
ctur
ed a
ctiv
ities
--a
chai
n of
eve
nts-
-that
pr
oduc
e a
spec
ific
serv
ice
or p
rodu
ct fo
r a p
artic
ular
cus
tom
er o
r cu
stom
ers.
” w
ww
.gao
.gov
/pol
icy/
itgui
de/g
loss
ary.
htm
“A
bus
ines
s pr
oces
s is
a re
cipe
for a
chie
ving
a c
omm
erci
al re
sult.
Eac
h bu
sine
ss p
roce
ss h
as in
puts
, met
hod
and
outp
uts.
The
inpu
ts a
re a
pre
-re
quis
ite th
at m
ust b
e in
pla
ce b
efor
e th
e m
etho
d ca
n be
put
into
pr
actic
e. W
hen
the
met
hod
is a
pplie
d to
the
inpu
ts th
en c
erta
in o
utpu
ts
will
be
crea
ted.
” en
.wik
iped
ia.o
rg/w
iki/B
usin
ess_
proc
ess
A b
usin
ess
proc
ess
is d
escr
ibed
on
the
mod
elin
g le
vel,
can
be a
bstra
ct,
unde
rspe
cifie
d an
d ne
ed n
ot b
e ex
ecut
able
A
bus
ines
s pr
oces
s ca
n be
refin
ed it
erat
ivel
y to
bec
ome
exec
utab
le.
An
exec
utab
le b
usin
ess
proc
ess
is c
alle
d a
wor
kflo
w (e
xecu
tabl
e bu
sine
ss
proc
ess)
.
Pro
f. U
. Aßm
ann,
CB
SE
38
Busi
ness
Pro
cess
Bus
ines
s Pr
oces
s
►
How
to d
efin
e a
busi
ness
pro
cess
on
the
web
►
Ther
e ar
e m
any
lang
uage
s pr
opos
ed to
day:
■
WS
FL, W
SC
L, W
SC
I, X
LAN
G, W
SE
L, U
ML,
WS
UI,
WS
XL,
BP
ML,
BP
NM
…
►
IBM
& M
icro
soft:
BP
EL,
BP
EL4
WS
►
OA
SIS
: WS
BP
EL
►
W3C
: OW
L-S
, SM
L (S
ervi
ce M
odel
ing
Lang
uage
) ►
SA
P: B
PN
M
Pro
f. U
. Aßm
ann,
CB
SE
39
Ingr
edie
nts.
..
►
BP
EL
is a
n ex
ecut
able
lang
uage
for c
oncr
etiz
ed b
usin
ess
proc
esse
s ►
An
arch
itect
ural
lang
uage
for w
eb s
ervi
ces
■ B
ased
on
wor
kflo
w la
ngua
ges
■ M
ixin
g co
ntro
l and
dat
a flo
w o
pera
tors
►
BP
EL
is a
com
posi
tion
lang
uage
■
Com
posi
ng w
eb s
ervi
ces,
usi
ng th
eir p
orts
■
Rel
ying
on
mes
sage
s (e
vent
s) a
nd c
alls
►
BP
EL
uses
WS
DL
for s
ervi
ce in
terfa
ce d
escr
iptio
ns, a
s ID
L ►
BP
EL
adds
con
nect
ions
(par
tner
link
type
s)
Pro
f. U
. Aßm
ann,
CB
SE
40
BPE
L M
ade
Sim
ple
►
BP
EL
is a
act
ivity
-dia
gram
like
lang
uage
, ■
with
par
alle
lism
and
tran
sact
ions
■
with
diff
eren
t kin
d of
join
and
spl
it op
erat
ors
■ w
ith p
orts
and
con
nect
ions
■
BP
EL
can
be e
dite
d gr
aphi
cally
, and
has
an
XM
L ab
stra
ct s
ynta
x
►
To c
reat
e a
web
ser
vice
, bec
omes
a s
imila
r act
ivity
as
editi
ng a
n U
ML
activ
ity d
iagr
am o
r Pet
ri N
et
►
BP
EL
uses
WS
DL
defin
ition
s to
def
ine
type
s, m
essa
ge ty
pes,
and
po
rt ty
pes
■ W
SD
L de
finiti
ons
can
be w
ithou
t bin
ding
.
Bin
ding
s ca
n be
add
ed w
hen
the
BP
EL
proc
ess
is d
eplo
yed
. Th
at in
crea
ses
reus
e of
the
proc
ess
■ Th
is a
chie
ves
com
pone
nt m
odel
tran
spar
ency
(ind
epen
denc
e of
the
unde
rlyin
g co
mpo
nent
mod
el)
►
Par
tner
link
type
s (c
onne
ctor
type
s) d
escr
ibin
g ty
ped
conn
ectio
ns
Pro
f. U
. Aßm
ann,
CB
SE
41
BPE
L Sp
ecifi
catio
n St
ruct
ure
►
Proc
ess
defin
ition
: Hea
der w
ith n
ames
pace
dec
lara
tions
►
Varia
bles
: glo
bal v
aria
bles
of t
he p
roce
ss
►
Part
nerL
ink
decl
arat
ions
: int
erfa
ce d
ecla
ratio
n ■
with
who
m is
the
proc
ess
conn
ecte
d?
►
Part
ners
: act
ual p
artn
ers
of th
e co
mm
unic
atio
n ►
Cor
rela
tion
sets
: Whi
ch in
stan
ce o
f a p
roce
ss is
talk
ing
to w
hich
ot
her i
nsta
nce?
►
Faul
t han
dler
: Wha
t hap
pens
in th
e ca
se o
f an
exce
ptio
n?
►
Com
pens
atio
n ha
ndle
r: co
mpe
nsat
ion
actio
ns
►
Even
t han
dler
: wha
t hap
pens
in c
ase
of a
cer
tain
eve
nt?
►
A (s
truct
ured
) mai
n op
erat
ion
■ e.
g., s
eque
nce
or fl
ow
Pro
f. U
. Aßm
ann,
CB
SE
42
A S
impl
e Pi
zza
Ord
er
<!--
Pro
cess
def
initi
on --
> <p
roce
ss n
ame=
”Ord
erP
izza
” sup
pres
sJoi
nFai
lure
=”ye
s”
xmln
s=”h
ttp://
sche
ma.
xmls
oap.
org/
ws/
2003
/03/
busi
ness
-pro
cess
” pn
s=”h
ttp://
ww
w.p
izza
.org
/sch
ema”
>
<par
tner
Link
s>
<
partn
erLi
nk n
ame=
”Piz
zaS
ervi
ce” p
artn
erLi
nkTy
pe=”
pns:
Ord
erC
hann
el”
myR
ole=
”Piz
zaO
rder
er”>
</pa
rtner
Link
s>
<!--
Glo
bal V
aria
bles
-->
<var
iabl
es>
<va
riabl
e na
me=
”inpu
t” m
essa
geTy
pe=”
Piz
zaO
rder
”/>
<va
riabl
e na
me=
”out
put”
mes
sage
Type
=”P
izza
Del
iver
y”/>
</va
riabl
es>
<fau
ltHan
dler
s> ..
. </fa
ultH
andl
ers>
<s
eque
nce
nam
e=”b
ody”
> <
invo
ke n
ame=
”ord
er” p
artn
erLi
nk=”
Piz
zaS
ervi
ce” p
ortT
ype=
”Piz
zaO
rder
“ op
erat
ion=
”bod
y” v
aria
ble=
”out
put”>
<
rece
ive
nam
e=”a
ckno
wle
dgem
ent”
partn
erLi
nk=”
Piz
zaS
ervi
ce” p
ortT
ype=
”Piz
za“
oper
atio
n=”b
ody”
var
iabl
e=”in
put”>
</
sequ
ence
> </
proc
ess>
Con
nect
or
Pro
f. U
. Aßm
ann,
CB
SE
43
Flow
Ope
ratio
ns a
re W
orkf
low
Gra
phs
►
The
<flo
w>
oper
atio
n is
stru
ctur
ed a
s a
wor
kflo
w g
raph
s ■
The
nam
es o
f mes
sage
s, p
orts
, par
tner
link
s he
lp to
spa
n up
the
grap
h ■
<flo
w>
exec
utes
its
sequ
ence
s in
par
alle
l ■
<lin
ks>
can
sync
hron
ize
para
llel t
asks
<flow>
<links><link> name=”A”</link>
<link>name=”B”</link>
</links>
<sequence>..<invoke> <target name=”A”>..</sequence>
<sequence>....<target name =”B”>...........</sequence>
</flow>
+ +
A
B
Pro
f. U
. Aßm
ann,
CB
SE
44
Oth
er O
pera
tions
in B
PEL
►
Stru
ctur
ed c
ontro
l-flo
w
■ se
quen
ce
■ sw
itch
■ w
hile
■
flow
■
pick
(XO
R jo
in)
■ te
rmin
ate
►
com
pens
ate
►
scop
e ►
assi
gn
Pro
f. U
. Aßm
ann,
CB
SE
45
BPE
L To
ols
►
Col
laxa
des
igne
r ww
w.c
olla
xa.c
om
►
Peo
ple
wor
k on
the
trans
latio
n of
Col
ored
Pet
ri N
ets
and
UM
L ac
tivity
di
agra
ms
from
and
to B
PE
L ■
CP
N h
ave
good
form
al fe
atur
es (s
ee S
T-2)
■
Can
be
used
for d
eadl
ock
chec
king
, res
ourc
e co
ntro
l, et
c.
■ Y
AW
L is
suc
h a
nice
lang
uage
, see
the
wor
k of
[van
der
Aal
st]
Pro
f. U
. Aßm
ann,
CB
SE
46
Bus
ines
s Pr
oces
s
Net
wo
rk
Mes
sag
ing
Ser
vice
Des
crip
tio
n
Ser
vice
Pu
bli
cati
on
Ser
vice
Dis
cove
ry
HT
TP
, FT
P,
IIO
P,
MQ
, ..
.
SO
AP
WS
DL
UD
DI
UD
DI
Com
pone
nts
of W
eb S
ervi
ces
XM
L M
essa
ge
Des
crip
tio
n
Wo
rkfl
ow
OW
L-S
BP
EL
BP
MN
Appr
oach
CB
SE
, © P
rof.
Uw
e A
ßman
n 47
15.6
Bus
ines
s Pr
oces
s M
odel
ing
N
otat
ion
(BPM
N)
Pro
f. U
. Aßm
ann,
CB
SE
48
His
tory
The
Bus
ines
s P
roce
ss M
odel
ling
Not
atio
n (B
PM
N)
Gra
phic
al n
otat
ion
for c
once
ptua
l pro
cess
es
Cov
ers
cont
rol,
data
, aut
horiz
atio
n, e
xcep
tion
Sta
ndar
dize
d by
OM
G
[Rob
ert S
hapi
ro 2
009]
Pro
f. U
. Aßm
ann,
CB
SE
49
Cor
e El
emen
ts
Pro
f. U
. Aßm
ann,
CB
SE
50
Act
iviti
es a
nd P
roce
sses
An
activ
ity is
a g
ener
ic ty
pe o
f wor
k th
at a
com
pany
per
form
s. A
n ac
tivity
can
be
atom
ic (t
ask)
or c
ompo
und
(pro
cess
, sub
-pro
cess
).
Col
laps
ed
sub-
proc
ess
Task
1
Task
2
+
Exp
ande
d su
b-pr
oces
s P
roce
ss
Loop
ing
A
d-H
oc
~
Mul
tiple
II
Pro
f. U
. Aßm
ann,
CB
SE
51
Even
ts a
nd A
ctiv
ities
Eve
nts
affe
ct th
e flo
w o
f the
pro
cess
and
usu
ally
hav
e a
caus
e (tr
igge
r)
or a
n im
pact
(res
ult):
'Em
ail r
ecei
ved'
, 'W
areh
ouse
em
pty'
Pro
f. U
. Aßm
ann,
CB
SE
52
Gat
eway
s an
d C
onne
ctio
ns
A ga
tew
ay is
use
d to
spl
it or
m
erge
mul
tiple
pro
cess
flow
s.
Thus
it w
ill d
eter
min
e br
anch
ing,
fo
rkin
g, m
ergi
ng a
nd jo
inin
g of
pa
ths.
Gra
phic
al c
onne
ctor
s
Pro
f. U
. Aßm
ann,
CB
SE
53
Exam
ple
Sta
rt E
vent
S
eque
nce
Flow
E
nd
Eve
nt
Task
XO
R s
plit
Gat
eway
AN
D jo
in
Gat
eway
Sub
Pro
cess
E
rror
Inte
rmed
iate
E
vent
Pro
f. U
. Aßm
ann,
CB
SE
54
Why
BPM
N?
BP
MN
v1.
x M
odel
ing
lang
uage
, no
exec
utio
n se
man
tics
BP
MN
incl
udes
a p
artia
l map
ping
to B
usin
ess
Pro
cess
Exe
cutio
n La
ngua
ge (B
PE
L)
Cha
nges
in th
e B
PM
N m
odel
do
not u
pdat
e in
the
BP
EL
code
B
PM
N v
2.x
Exe
cutio
n se
man
tics
Exp
licit
serv
ice
map
ping
Fi
rst e
ngin
es a
re a
vaila
ble
(jBP
M fo
r jB
oss)
U
ML
Act
ivity
Dia
gram
s ar
e si
mila
r to
BP
MN
U
ML:
sys
tem
vie
w, o
bjec
t-orie
nted
app
roac
h B
PM
N: c
usto
mer
vie
w, p
roce
ss-o
rient
ed a
ppro
ach
BP
MN
gea
red
tow
ards
bus
ines
s an
alys
ts:
BP
MN
con
stru
cts
are
sim
plifi
ed
UM
L no
tatio
n to
o bl
oate
d B
PM
N is
on
the
plat
form
-inde
pend
ent l
evel
, BP
EL
near
er th
e pl
atfo
rm-s
peci
fic le
vel
Pro
f. U
. Aßm
ann,
CB
SE
55
Giv
e B
PMN
a tr
y
Free
BP
MN
Edi
tor
from
Ecl
ipse
In
clud
ed in
the
SO
A
Tool
s P
roje
ct
http
://w
ww
.ecl
ipse
.org
/bpm
n/
SA
P h
as d
ecid
ed to
use
BP
MN
in
thei
r pro
duct
s
CB
SE
, © P
rof.
Uw
e A
ßman
n 56
15.7
Tru
st a
nd S
ecur
ity
Pro
f. U
. Aßm
ann,
CB
SE
57
Trus
t and
Sec
urity
►
Pol
icie
s: w
hen
do I
allo
w s
omeb
ody
to d
o so
met
hing
►
Inte
grity
: int
act,
unch
ange
d
►
Con
fiden
tialit
y: c
rypt
ifica
tion
polic
y ►
Aut
hent
icat
ion:
pro
of o
f ide
ntity
►
Aut
horiz
atio
n: a
cces
s to
exe
cute
cer
tain
ser
vice
s ►
Non
-Rep
udia
tion:
war
anty
on
faili
or
►
Lega
l Rig
hts:
cop
y rig
hts,
rese
lling
righ
ts, .
.. ►
Priv
acy:
han
dlin
g pe
rson
al d
ata
►
...
Pro
f. U
. Aßm
ann,
CB
SE
58
Trus
t and
Sec
urity
Net
wo
rk
Mes
sag
ing
Ser
vice
Des
crip
tio
n
Ser
vice
Pu
bli
cati
on
Ser
vice
Dis
cove
ry
Wo
rk F
low
Security
HT
TP
, FT
P,
IIO
P,
MQ
, ..
.
SO
AP
WS
DL
UD
DI
UD
DI
Com
pone
nts
of W
eb S
ervi
ces
XM
L M
essa
ge
Des
crip
tio
n
OW
L-S
BP
EL
BP
MN
WS
-Sec
uri
ty
Pro
f. U
. Aßm
ann,
CB
SE
59
Tech
nica
l Con
clus
ion
Def
ined
with
XM
L
OW
L-S
BP
EL
BP
MN
WS
-Sec
uri
ty
Web
Ser
vice
s m
inim
um
HT
TP
, FT
P,
IIO
P,
MQ
, ..
.
SO
AP
WS
DL
UD
DI
UD
DI
XM
L
Pro
f. U
. Aßm
ann,
CB
SE
60
Web
Ser
vice
s –
Com
pone
nt M
odel
Tr
ansp
aren
cy
►
Lang
uage
ada
ptat
ion:
XM
L S
chem
a +
WS
DL
►
Rem
ote
trans
pare
ncy:
SO
AP
(+ H
TTP
) ►
Com
pone
nt m
odel
tran
spar
ency
(EJB
, CO
M+,
CO
RB
A, C
CM
, Bea
ns,
etc.
..)
Server
C++
Local
Client C
COM+
CCM
SOAP (HTTP) Remote
SOAP (HTTP) Local
Remote
Client
Java
EJB
WSDL
WSDL
WSDL
CB
SE
, © P
rof.
Uw
e A
ßman
n 61
15.8
Eva
luat
ion
of W
eb S
ervi
ces
as c
ompo
sitio
n sy
stem
Pro
f. U
. Aßm
ann,
CB
SE
62
Com
pone
nt M
odel
►
Mec
hani
sms
for s
ecre
ts a
nd tr
ansp
aren
cy: v
ery
good
■
Loca
tion,
lang
uage
, com
pone
nt m
odel
tran
spar
ency
■
Com
mun
icat
ion
prot
ocol
tran
spar
ency
■
Inte
rface
spe
cific
atio
n is
flex
ible
with
WS
DL
►
Diff
eren
t bla
ck-b
ox c
ompo
nent
mod
els
can
be h
idde
n un
der W
SD
L sp
ecifi
catio
ns
►
Gen
eric
BP
EL
Web
Ser
vice
s ar
e po
ssib
le (w
ithou
t bou
nd W
SD
L po
rts)
►
BP
NM
Web
Ser
vice
s ca
n be
ste
pwis
e re
fined
from
abs
tract
to
conc
rete
Pro
f. U
. Aßm
ann,
CB
SE
63
Com
posi
tion
Tech
niqu
e
►
Mec
hani
sms
for c
onne
ctio
n ■
Pro
toco
l tra
nspa
renc
y al
low
s fo
r fle
xibl
e co
nnec
tions
■
WS
DL
bind
ing
is fl
exib
le
►
Mec
hani
sms
for a
spec
t sep
arat
ion
►
Sep
arat
e m
odel
ing
from
exe
cutio
n (a
bstra
ct b
usin
ess
proc
esse
s fro
m w
orkf
low
s)
►
Sca
labi
lity:
Bet
ter
■ C
hang
es o
f pro
toco
l pos
sibl
e ■
Cha
nges
of d
istri
butio
n ea
sy
■ C
hang
es o
f wor
kflo
w e
asy
Pro
f. U
. Aßm
ann,
CB
SE
64
Com
posi
tion
Lang
uage
►
BP
EL,
BP
MN
are
flex
ible
com
posi
tion
lang
uage
s ■
Not
yet
full
exch
ange
abili
ty o
f con
nect
or ty
pes
■ B
ut g
raph
ic s
uppo
rt fo
r wor
kflo
w s
peci
ficat
ions
■
Con
trol-
and
data
-flow
ope
rato
rs (g
atew
ays)
■
Par
alle
l exe
cutio
n se
man
tics
■ A
bstra
ct (b
usin
ess
proc
esse
s) a
nd e
xecu
tabl
e le
vel (
wor
kflo
ws)
►
Met
acom
posi
tion
fully
sup
porte
d ■
The
gene
ratio
n of
a B
PE
L or
BP
MN
scr
ipt i
s ea
sy, b
ecau
se it
is X
ML
base
d ■
Env
ironm
ents
gen
erat
e w
orkf
low
from
oth
er s
peci
ficat
ions
■
Gen
eric
wor
kflo
w a
rchi
tect
ures
will
be
poss
ible
Pro
f. U
. Aßm
ann,
CB
SE
65
Web
Ser
vice
s - C
ompo
nent
Mod
el
Par
amet
eriz
atio
n
Bin
ding
poi
nts
Con
tract
s B
usin
ess
serv
ices
Infra
stru
ctur
e
Sec
rets
Dev
elop
men
t en
viro
nmen
ts Ty
pes
Vers
ioni
ng
Dis
tribu
tion
Pro
f. U
. Aßm
ann,
CB
SE
66
Web
Ser
vice
s –
Com
posi
tion
Tech
niqu
e an
d La
ngua
ge
Sca
labi
lity
Ada
ptat
ion
Met
acom
posi
tion
Asp
ect S
epar
atio
n
Ext
ensi
bilit
y S
oftw
are
proc
ess
Con
nect
ion
Pro
duct
qua
lity
Pro
f. U
. Aßm
ann,
CB
SE
67
Web
Ser
vice
s as
Com
posi
tion
Syst
ems
Component Model
Composition Technique
Composition Language
Con
tent
s: C
ompl
etel
y hi
dden
Bin
ding
poi
nts:
WS
DL
ports
Ada
ptat
ion:
wel
l sup
porte
d
Aut
omat
ic tr
ansa
ctio
ns, r
ecov
ery
Sev
eral
type
s o
f con
nect
ors
BP
EL
BP
MN
etc
.
Pro
f. U
. Aßm
ann,
CB
SE
68
So F
ar: B
lack
box
Com
posi
tion
►
Sta
ndar
d m
iddl
ewar
e ■
CO
RB
A, D
CO
M
►
Impl
icit
mid
dlew
are
■ E
JB
►
Arc
hite
ctur
e sy
stem
s ■
Web
ser
vice
s
Pro
f. U
. Aßm
ann,
CB
SE
69
Cla
ssic
al
Com
pone
nt S
yste
ms
Arc
hite
ctur
e Sy
stem
s
Asp
ect S
yste
ms
View
Sys
tem
s
Dar
win
BPE
L A
CM
E B
PMN
Asp
ect/J
In
vasi
ve C
ompo
sitio
n M
etac
lass
Com
posi
tion
Picc
ola
Stan
dard
Com
pone
nts
Arc
hite
ctur
e as
Asp
ect
Asp
ect S
epar
atio
n C
ompo
sitio
n O
pera
tors
C
ompo
sitio
n La
ngua
ge
Obj
ect-O
rient
ed S
yste
ms
C++
J
ava
Obj
ects
as
Run
-Tim
e C
ompo
nent
s
Mod
ular
Sys
tem
s M
odul
a
Ada
-85
Mod
ules
as
Com
pile
- Ti
me
Com
pone
nts
Com
posi
tion
Filte
rs
Hyp
ersl
ices
Softw
are
Com
posi
tion
Sy
stem
s
.NET
CO
RB
A B
eans
EJ
B
The
Ladd
er o
f Com
pone
nt a
nd C
ompo
sitio
n Sy
stem
s
Pro
f. U
. Aßm
ann,
CB
SE
70
The
Seco
nd P
art o
f the
Cou
rse:
G
reyb
ox C
ompo
sitio
n
Gen
eric
pro
gram
min
g G
ener
ic p
rogr
am e
lem
ents
H
ome-
mad
e co
nnec
tors
Vie
w-b
ased
pro
gram
min
g Fo
rmal
foun
datio
ns (l
ambd
a N
, pi-c
alcu
lus)
R
ecor
d ca
lcul
i, S
cala
H
yper
spac
e pr
ogra
mm
ing
Asp
ect-o
rient
ed
deve
lopm
ent
Asp
ect-o
rient
ed p
rogr
amm
ing
Asp
ect-o
rient
ed d
esig
n
Inva
sive
sof
twar
e co
mpo
sitio
n S
lots
and
hoo
ks
Nov
el F
orm
s of
C
ompo
sitio
n
Uni
form
com
posi
tion
Act
ive
docu
men
t com
posi
tion:
A
rchi
tect
ural
sty
les
for
activ
e do
cum
ents
and
web
sy
stem
s R
ound
trip
engi
neer
ing
and
com
posi
tion
Pro
f. U
. Aßm
ann,
CB
SE
71
Som
e A
bbre
viat
ions
►
ebX
ML:
E
lect
roni
c B
usin
ess
XM
L ►
UD
DI:
Uni
vers
al D
escr
iptio
n, D
isco
very
and
Inte
grat
ion
►
OA
G: O
pen
App
licat
ions
Gro
up
►
OA
SIS
: O
rgan
izat
ion
for t
he A
dvan
cem
ent o
f Stru
ctur
ed
In
form
atio
n S
tand
ards
►
SO
AP
: S
impl
e O
bjec
t Acc
ess
Pro
toco
l ►
HTT
P:
Hyp
erte
xt T
rans
fer P
roto
col
►
tpaM
L:
Tra
ding
Par
tner
Agr
eem
ent M
arku
p La
ngua
ge
►
UM
L:
Uni
fied
Mod
elin
g La
ngua
ge
►
UN
/CE
FAC
T:
Uni
ted
Nat
ions
Cen
tre fo
r the
Fac
ilita
tion
of P
roce
dure
s an
d
Pra
ctic
es in
Adm
inis
tratio
n, C
omm
erce
and
Tra
nspo
rt ►
WS
FL:
Web
Ser
vice
s Fl
ow L
angu
age
►
WS
DL:
W
eb S
ervi
ces
Des
crip
tion
Lang
uage
►
WS
IL:
Web
Ser
vice
s In
spec
tion
Lang
uage
►
WS
XL:
Web
Ser
vice
s E
xper
ienc
e La
ngua
ge
►
WS
CL:
Web
Ser
vice
s C
onve
rsat
ion
Lang
uage
►
WS
UI:
Web
Ser
vice
s U
ser I
nter
face
►
WS
ML:
Web
Ser
vice
s M
eta
Lang
uage
►
WS
CM
: (W
eb S
ervi
ces
Com
pone
nt M
odel
) Num
er o
mdö
pt ti
ll W
SIA
►
WS
IA:
Web
Ser
vice
s fo
r Int
erac
tive
App
licat
ions
►
WS
EL:
Web
Ser
vice
s E
ndpo
int L
angu
age
►
WS
RP
: W
eb S
ervi
ces
for R
emot
e P
orta
ls
Pro
f. U
. Aßm
ann,
CB
SE
72
Som
e U
RLs
► w
ww
.ebx
ml.o
rg
► w
ww
.udd
i.org
► w
ww
.oas
is-o
pen.
org
► w
ww
.unc
efac
t.org
► w
ww
.w3.
org
► w
ww
.om
g.or
g ► w
ww
.biz
talk
.org
► w
ww
.soa
pclie
nt.c
om
► w
ww
.soa
pwar
e.or
g ► w
ww
.xm
l.com
► w
ww
.xm
l.org
► w
ww
.web
serv
ices
.org
► w
ww
.web
serv
ices
arch
itect
.com
► w
ww
.ws-
i.org
Pro
f. U
. Aßm
ann,
CB
SE
73
The
End
►
Man
y sl
ides
inhe
rited
from
►
Stig
Ber
ild's
talk
on
the
Nor
dic
Con
fere
nce
on W
eb S
ervi
ces,
Nov
. 20
02
►
Pro
f. W
elf L
öwe,
Web
Ser
vice
Com
pete
nce
Cen
ter (
WS
CC
), V
äxjö
U
nive
rsity
: ■
Wel
f.Low
e@m
si.v
xu.s
e ■
http
://w
ww
.msi
.vxu
.se/
~ric
s
CB
SE
, © P
rof.
Uw
e A
ßman
n 74
15.9
OW
L-S
(Web
Ont
olog
y
Lang
uage
for S
ervi
ces)
Add
ition
al m
ater
ial
►
OW
L-S
def
initi
on a
t ht
tp://
ww
w.w
3.or
g/S
ubm
issi
on/O
WL-
S/
►
http
://da
ml.s
eman
ticw
eb.o
rg/s
ervi
ces/
owl-s
/1.0
Pro
f. U
. Aßm
ann,
CB
SE
75
OW
L W
eb O
ntol
ogy
Lang
uage
►
Cla
sses
and
rela
tions
hips
►
Exp
ress
ions
to c
ompu
te (d
eriv
e) n
ew c
lass
es a
nd re
latio
nshi
ps
(der
ived
mod
el)
■ U
nion
, int
erse
ctio
n of
rela
tions
and
cla
sses
■
Car
dina
lity
rest
rictio
ns
■ E
xist
entia
l qua
ntifi
ers
►
Rou
ghly
spe
akin
g, O
WL
corr
espo
nds
to U
ML-
clas
s di
agra
ms
with
out
met
hods
+ O
CL
+ cl
ass
expr
essi
ons
►
Inst
ead
of p
lain
XM
L, O
WL
can
be u
sed
to ty
pe d
ata
■ B
eyon
d tre
es a
nd c
onte
xt-fr
ee s
truct
ures
, gra
phs,
kno
wle
dge
web
s, s
eman
tic n
ets
can
be d
escr
ibed
(con
text
-sen
sitiv
e st
ruct
ures
)
Pro
f. U
. Aßm
ann,
CB
SE
76
OW
L-S
►
Bas
ed o
n O
WL,
a la
ngua
ge fo
r spe
cific
atio
n of
web
ser
vice
s ha
s be
en d
evel
oped
by
the
OW
L-S
coa
litio
n ►
Spe
cific
atio
n ha
s th
ree
parts
: ■
Ser
vice
pro
file:
sem
antic
ser
vice
des
crip
tion,
ser
vice
offe
r, se
rvic
e fu
nctio
nalit
y (w
hat d
oes
the
serv
ice
prov
ide?
) .
Bas
ed o
n do
mai
n on
tolo
gies
in O
WL,
i.e.
, OW
L-sp
ecifi
ed a
ttrib
utes
■
Ser
vice
mod
el: s
ervi
ce re
aliz
atio
n, d
ecom
posi
tion
of a
ser
vice
(how
doe
s th
e se
rvic
e w
ork?
) .
Ser
vice
is a
lso
calle
d a
proc
ess
. H
ere,
OW
L-S
pro
vide
s a
proc
ess
onto
logy
■
Ser
vice
gro
undi
ng: s
ervi
ce m
appi
ng to
und
erly
ing
mec
hani
sms
(how
is th
e se
rvic
e m
appe
d to
a c
ompo
nent
mod
el a
nd tr
ansp
ort p
roto
col?
) Sim
ilar t
o W
SD
L gr
ound
ing
Pro
f. U
. Aßm
ann,
CB
SE
77
OW
L-S
Proc
esse
s
►
Ato
mic
■
Can
not b
e de
com
pose
d ■
Can
be
calle
d an
d ex
ecut
ed
■ C
an b
e m
appe
d to
WS
DL
proc
ess
desc
riptio
ns (g
roun
ding
), an
d he
nce,
to S
OA
P
►
Sim
ple
■ C
anno
t be
deco
mpo
sed
■ C
an b
e ex
ecut
ed, b
ut n
ot b
e ca
lled
from
out
side
►
Com
posi
te
■ B
uild
from
ato
mic
and
sim
ple
proc
esse
s
Pro
f. U
. Aßm
ann,
CB
SE
78
Serv
ice
Mod
el (P
roce
ss M
odel
) of
OW
L-S
►
Pro
cess
Ont
olog
y
■ D
escr
ibes
a s
ervi
ce (p
roce
ss) w
ith a
n IO
PE
spe
cific
atio
n .
Inpu
ts
. O
utpu
ts
. P
aram
eter
s .
Effe
cts
►
Pro
cess
con
trol o
ntol
ogy
(for c
ompo
site
pro
cess
es)
■ In
tern
al re
aliz
atio
n w
ith s
tate
, act
ivat
ion,
exe
cutio
n, c
ompl
etio
n (c
ontro
l-flo
w
spec
ifica
tion)
Pro
f. U
. Aßm
ann,
CB
SE
79
Cre
atin
g an
OW
L-S
spec
ifica
tion
►
Des
crib
e at
omic
pro
cess
es
►
Des
crib
e gr
ound
ing
of a
tom
ic p
roce
sses
►
Des
crib
e co
mpo
sitio
ns
►
Des
crib
e si
mpl
e pr
oces
ses
►
Des
crib
e pr
ofile
of s
ervi
ce
Pro
f. U
. Aßm
ann,
CB
SE
80
OW
L-S
Stat
emen
ts o
f a C
ompo
site
Pro
cess
►
Uno
rder
ed (u
nspe
cifie
d or
der)
►
Seq
uenc
e ►
Spl
it ►
Spl
it+Jo
in (
fork
and
join
) ►
Con
curr
ent
►
Cho
ice
►
If-th
en-e
lse
►
Rep
eat-u
ntil
►
Rep
eat-w
hile