scieee Science in your language
[en] (orig)

Enabling the Evolution of Service-Oriented Solutions Using an UML2 Profile and a Reference Petri Nets Execution Platform

Abstract

The activities developed by a company (business pro cesses) have to change frequently to adapt to the environ ment. The implementation of business processes should support these changes without any recoding. In this work, we provide with an approach for modelling and executing agile and adaptable business processes. Our approach is based on UML 2 separating choreography (stable inter action patterns) and orchestration (implementation of the evolving business process, also called workflows), allowing the transformation and execution of the models by means of a flexible SOA-based dynamic platform based on reference Petri nets.

Read accessible full text

Enabling the Evolution of Service-Oriented Solutions Using an UML2 Profile and a Reference Petri Nets Execution Platform

Author: Fabra, Javier; Peña Siles, Joaquín; Ruiz Cortés, Antonio; Ezpeleta, Joaquín
Publisher: IEEE Computer Society
Year: 2008
DOI: 10.1109/ICIW.2008.63
Source: https://idus.us.es/bitstreams/146292f1-1097-4bc1-8a8b-8a392d85cd62/download
Enabling he E olu ion o Se ice-O ien ed Solu ions Using an UML2
P o ile and a Re e ence Pe i Ne s Execu ion Pla o m∗
Ja ie Fab a1Joaqu´ın Pe˜na2An onio Ruiz-Co ´es2Joaqu´ın Ezpele a1
1Depa men o Compu e Science and Sys ems Enginee ing, Uni e si y o Za agoza,
Ma ´ıa de Luna 1, E-50018 Za agoza (Spain)
2Depa men o Languages and Compu e Sys ems, Uni e si y o Se ille,
A . Reina Me cedes s/n, E-41012 Se ille (Spain)
E-mail: [email p o ec ed],[email p o ec ed]s,a [email protected],ezpele a@uniza .es
Abs ac
The ac i i ies de eloped by a company (business p o-
cesses) ha e o change equen ly o adap o he en i on-
men . The implemen a ion o business p ocesses should
suppo hese changes wi hou any ecoding. In his wo k,
we p o ide wi h an app oach o modelling and execu ing
agile and adap able business p ocesses. Ou app oach is
based on UML 2 sepa a ing cho eog aphy (s able in e -
ac ion pa e ns) and o ches a ion (implemen a ion o he
e ol ing business p ocess, also called wo k lows), allowing
he ans o ma ion and execu ion o he models by means o
a lexible SOA-based dynamic pla o m based on e e ence
Pe i ne s.
Keywo ds: SOC, SOA, Web p ocesses, MDD, UML, Pe i
ne s, Cho eog aphy, O ches a ion.
1. In oduc ion
One o he p ima y goals o SOC and SOA is easing he
in eg a ion o businesses by means o IT in as uc u es. As
shown by Lee in he ield o Economy [11], business p o-
cesses ollowed by businesses ha in e ac in a supply chain
mus change o e ime. Lee emphasises ha in o de o suc-
ceed in he business in eg a ion, p ocesses needs o be agile,
capable o apidly change o espond o unexpec ed si ua-
ions, and adap able, id es , able o change conside ing new
ends o ma ke s. Fo ins ance, agili y can be obse ed in
he changes needed in he business p ocess o a deale and
a logis ic pla o m when a low o ea hquake happens. In
no mal si ua ions, he deale execu es a business p ocess o
ack packages in o de o ensu e a gi en le el o se ice
∗This wo k has been pa ially suppo ed by he Eu opean Commis-
sion (FEDER) and he Spanish Minis y o Science and Technology unde
g an s TIN2006-00472 and TIN2006-13301
quali y (QoS). Bu when an ea hquake o a low happens,
he business p ocess has o change o ack such packages
wi h a cos highe han a gi en h eshold, jus in o de o
minimise losses. In his scena io, he changes in he busi-
ness p ocess should no be o e come by di icul ies in he
changes equi ed in he IT in as uc u e.
Fo enabling his lexibili y, he business p ocess and he
in e ac ions be ween IT in as uc u es mus be sepa a ed.
This sepa a ion allows o change business p ocesses wi hou
ha ing o pe o m ime and money cos ly changes in he IT
in as uc u e [14]. Two e ms a e used o e e o each pa
o his decomposi ion. On he one hand, he e m o ches a-
ion desc ibes he business p ocess ollowed by each pa y
wi hou de ailing he in e ac ion logics. On he o he hand,
he e m cho eog aphy desc ibes he in e ac ions which ake
place be ween IT in as uc u es o se e al pa ies wi hou
de ailing he in e nals o business p ocesses. The e o e,
changes in he business p ocess do no ha e o o ce changes
in he way IT in as uc u es in e ac , and ice e sa.
In his pape , we ha e sys ema ically analysed cu en
esul s o pe o ming his sepa a ion in SOC and SOA. As
a esul o his s udy, we ha e concluded ha he suppo o
his sepa a ion is de icien a design/modelling s ages and
implemen a ion/execu ionpla o ms. Thus, his ac hinde s
one o he key success ac o s in business in eg a ion: he
need o agile and adap able business p ocesses [11, 13].
Fo una ely, he e exis a b anch o esea ch de o ed o
o e come his p oblem, being Model-D i en De elopmen
(MDD) one o he used app oaches. MDD emphasises he
use o models as he main ool o designing and imple-
men ing sys ems. Thus, MDD app oaches p o ide models
in o de o speci y he sys em and ans o ma ions ha help
o ob ain, as much au oma ically as possible, a unning sys-
em.
In his pape , we p opose a se o UML 2 models o sep-
a a ely modelling o ches a ion and cho eog aphy aspec s
allowing he e olu ion o a business p ocess independen ly
om he in e ac ion logic. These models a e based on an
agen -o ien ed so wa e enginee ing me hodology (AOSE)
called MaCMAS [16]. We also p o ide an implemen a-
ion and execu ion pla o m based on e e ence Pe i-ne s
which also keeps his sepa a ion, allowing changes a un-
ime [8]. The main ad an age o his app oach is ha i
allows changes in he business p ocess in a well-known no-
a ion such as UML and a apid deploymen o such changes
in a SOA-based pla o m, enabling he modelling and exe-
cu ion o adap able and agile business p ocess.
The pape is o ganised as ollows. Sec ion 2 p esen s
he ela ed wo k ega ding modelling, implemen a ion and
ans o ma ion be ween bo h UML 2 models and cho eog-
aphy and o ches a ion implemen a ions. Sec ion 3 in o-
duces he UML 2 no a ion used o modelling o ches a ion
and cho eog aphy h ough a case s udy. Keeping his sep-
a a ion, he implemen a ion and execu ion pla o m used,
DENEB, is shown in Sec ion 4. Sec ion 5 p esen s an
o e iew o he keypoin s o he ans o ma ion be ween he
models and he implemen a ion. Finally, Sec ion 6 con ains
some concluding ema ks.
2. Rela ed Wo k and Mo i a ion
Acco ding o [2], an analysis amewo k wi h a se o
componen s has o be de ined in o de o pe o m a su ey
in he so wa e enginee ing ield. Gi en he limi a ion o
space, summa ising, he main esea ch ques ions o his pa-
pe a e: (i) A e cu en MDD app oaches able o sepa a e
o ches a ion and cho eog aphy? and, (ii) Is his sepa a ion
pe o med in execu ion amewo ks? In Table 1, we classi y
he app oaches in hose de eloped o modelling and hose
de eloped o implemen a ion. In he able, −means ha
he s udy does no deal wi h he ow i em; Xmeans ha he
s udy conside s he ow i em bu i does no gi e any ap-
p oach; ∼means ha he s udy gi es a b ie o e iew and,
inally, √means ha he s udy gi es a alid app oach o
he i em.
Rega ding MDD app oaches, as shown in Table 1, he e
a e app oaches based on UML which sepa a e cho eog a-
phy and o ches a ion [23, 21]. In [23] he impac o SOA
implemen a ion p ojec s is analysed in conjunc ion wi h a
modelling app oach. Howe e , as he au ho s s a e, he no-
a ion p oposed is imma u e and hey do no p o ide a ech-
nique o deploy models in o an implemen a ion pla o m.
In addi ion, he e a e o he app oaches which do no pe -
o m he sepa a ion, bu whe e business logics and in e ac-
ion aspec s a e iden i ied [9, 12, 4]. In [9], au ho s p opose
an UML p o ile and an MDD ans o ma ion. Howe e ,
hey nei he sepa a e o ches a ion o cho eog aphy in mod-
els no gene a e code o hese aspec s. Simila mappings
a e ollowed in [21, 12]. Howe e , in hese app oaches a
p elimina y e sion o no a ion and ans o ma ions is p o-
ided whe e a comple e sepa a ion be ween o ches a ion
and cho eog aphy is no achie ed.
Wi h espec o implemen a ion de ails, he e a e many
p oposals which i in o he sepa a ion be ween cho eog a-
phy and o ches a ion aspec s. In [4] and [19] au ho s p o-
pose and de ine a way o gene a e implemen a ions sepa a -
ing cho eog aphies and o ches a ions. Un o una ely, hese
implemen a ions ha d-code o ches a ion wi h cho eog a-
phies, hus disabling un- ime e olu ion o business p o-
cesses. The gene al ule is he ans o ma ion o models
in o o ches a ion languages, such as BPEL [20], WSCI [1]
o BPML [22].
Rega ding cu en s anda ds, BPEL uses WSDL in e -
aces o desc ibe he unc ionali y i o e s and also o in-
oke unc ionali ies equi ed om o he Web se ices [18,
6]. As a consequence, he managemen o in e ac ions p o-
ided by BPEL is based on one-sho in e ac ions ins ead
o a long-li ed con e sa ional app oach, causing business
and con e sa ion logics o be highly coupled [8, 23]. Fu -
he mo e, he p e-de ined and in lexible na u e o BPEL
does no ca e o lexible and adap i e business collabo-
a ions. Ne e heless, a na u al e olu ion o he BPEL4WS
speci ica ion should eplace cu en WSDL-based abs ac-
ions wi h new con e sa ion models such as WCSI [1], WS-
CDLand OWL-S. The main p oblem o hese ini ia i es is
ha hey ha e a decla a i e na u e and canno , by i sel , be
execu ed, limi ing dynamic aspec s.
Thus, he main mo i a ion o his wo k is ha , by he bes
o ou knowledge, he e is no a sui able app oach in he
SOC ield ollowing MDD echniques, no any execu ion
and implemen a ion pla o m ha pe o ms a co ec sepa-
a ion be ween cho eog aphy and o ches a ion aspec s.
3. An UML 2 P o ile o Modelling Cho eog a-
phy and O ches a ion
Agen -O ien ed So wa e Enginee ing (AOSE) is de-
o ed o de elop highly collabo a i e sys ems whe e as-
pec s simila o he ones in he SOC ield ha e been deal
wi h. Models p esen ed in his sec ion a e based on an
AOSE me hodology called me hodology o analysing com-
plex mul iagen sys ems (MaCMAS) ha is being in eg a ed
in se e al esea ch ields such as au onomic compu ing o
so wa e p oduc lines [16, 17].
MaCMAS uses wo di e en diag ams o ep esen ing
each iew o he p ocess: a dynamic diag am ep esen ing
how in e ac ions and business p ocesses ake place along
ime based on UML S a e Machines; and a s a ic iew show-
ing he ela ionships be ween se ices in a s a ic way by
means o ex ended UML 2 collabo a ions. O ches a ion
is ep esen ed as an abs ac desc ip ion ins an ia ed a un-
ime o design ime, wi h conc e e se ices and a conc e e
P op/Resea ch Ques ions [9] [23] [21] [12] [4] [19] [20] [1] [22] Ou App.
Models o Cho .& O ch. ∼√ √ ∼ ∼ X−−− √
T ans . UML2Impl. √X∼ ∼ X X − − − ∼
Impl. sepa a ing Cho .& O ch. ∼X X X √ √ ∼ ∼ ∼ √
Table 1. Rela ed wo k s udy.
Me amodel elemen S e eo ype Uml Base Class Tags
Role << Role >> Collabo a ionRole mul iplici y
En i onmen alRole << En i onmen alRole >> Collabo a ionRole –
mRI << mRI >> Collabo a ion pa e n:S ing
mRI Pos condi ion –Pos condi ion –
mRI In –Collabo a ion Ou : S ing
mRI Ou –Collabo a ion In: S ing
Role S a e << RoleS a e >> S a e –
mRI T ansi ion << RoleM RIT ansi ion >> Signal in T ans. –
Table 2. UML 2 p o ile o Cho eog aphy and O ches a ion
cho eog aphy. Figu e 1 depic s he ole model o ou case
s udy, a business collabo a ion. The Deale sells p oduc s
which a e sen o cus ome s by he Logis ic pla o m, allow-
ing he acking du ing he deli e y p ocess. To s a ically
show he ela ionships be ween se ices we p opose o use
ex ended MaCMAS ole models. These models a e buil o
ase o oles, he po ion(s) o a so wa e a i ac (s) which
is exposed as a se ice, collabo a ing by means o se e al
mul i-Role In e ac ions (mRIs). In Figu e 1 boxes ep esen
oles, and ellipses in e ac ions; he op iew ep esen s he
o ches a ion (business p ocess), while he bo om iew ep-
esen s he cho eog aphy. mRIs in he ex e nal package ep-
esen c oss-o ganisa ion in e ac ions, while he o he mRIs
ep esen in e nal uses o se ices.
mRIs a e used a he o ches a ion le el in o de o de-
sc ibe he business p ocess wi hou de ailing he se o
needed messages. They a e also used o ep esen conc e e
in e ac ions a he cho eog aphy le el. Thus, mRIs a he
o ches a ion le el also pe mi linking wi h an speci ic in-
e ac ion p o ocol a design ime, o elega e his linking a
un- ime. Fo example, in Figu e 1, in he op model he
mRI T ackO de abs ac ly ep esen s he se o messages
needed o ack an o de , while in he bo om model mRIs
ge O de s and ackO de ep esen he conc e e messages
ha ha e o be exchanged. The agged alue Pa e n ep-
esen s a collabo a ion pa e n, o example a eques - eply
pa e n which can be used o ins an ia e a un- ime well-
known MEPs (Message Exchange Pa e ns) om a eposi-
o y. An a ow om a ole o an mRI means ha he ole
ini ia es he mRI, while an a ow p esen ing an associa ion
esponds o he ini ia o .
Table 2 p esen s he p o iles o oles and mRIs. As
shown, he ole elemen is a ibu ed by means o UML
agged alues. The mul iplici y ag speci ies he numbe
o conc e e se ices ha can play his ole. The En i on-
men al Role is an s e eo ype ha indica es ha he ole is
no a se ice, bu a so wa e componen . The in e ac ions
be ween hese oles and se ices ep esen communica ion
ac s wi h he legacy sys em. Rega ding mRIs, Pos condi ion
ep esen s he condi ion ha mus hold a e he execu ion
o an mRI. In and Ou elemen s ep esen he in o ma ion
consumed and p oduced by an mRI.
In addi ion, he dynamic pa , in ol ing ime, is ep e-
sen ed by means o UML 2.0 S a e Machines. In Figu e 1,
he dynamic iew o he case s udy is shown on he igh and
bo om o he igu e. The igh model ep esen s he o ches-
a ion be ween he Deale and he Logis ic pla o m, while
he bo om model ep esen s he cho eog aphy o acking
o de s. In bo h models each ansi ion ep esen he execu-
ion o a mRI.
Finally, no ice ha he MaCMAS CASE Tool allows o
de elop hese models as an ex ension o he A goUML Case
ool. The e o e, he p esen ed models can be d awn by
means o he p esen ed p o ile. A goUML allows expo ing
models in XMI o ma (a s anda dised XML ile wi h he
desc ip ion o he UML models), which is aken as inpu o
ou ans o ma ion (see Sec ion 5).
4. Implemen a ion and Execu ion Pla o m o
Sepa a ing O ches a ion and Cho eog a-
phy
DENEB (pla o m o he De elopmen and Execu ion
o iN e ope able dynamic wEB p ocesses) is a dynamic
Web p ocesses implemen a ion and execu ion amewo k
based on he Ne s-wi hin-Ne s pa adigm and he Renew
Figu e 1. Role model o ou business collabo a ion case s udy.
ool [8]. This amewo k allows he co ec sepa a ion be-
ween cho eog aphy and o ches a ion aspec s and manages
all he communica ion- ela ed aspec s h ough a message
b oke based on RLinda [7], an implemen a ion o he Linda
coo dina ion sys em [5]. The SOA-based a chi ec u e o
DENEB is composed o h ee main componen s, depic ed
in Figu e 2.
The message b oke o en e p ise se e bus is he co e
o DENEB. I p o ides he necessa y in as uc u e o de-
couple and suppo in e ac ions among di e en compo-
nen s and sepa a es he logic o he message exchanges om
he conc e e way a message is deli e ed o ecei ed. I
con ains wo main componen s: a message eposi o y; and
he binding componen s (also called media o s), which a e
esponsible o sending and ecei ing messages among e-
mo e o local pee componen s h ough he message epos-
i o y [21]. These componen s allow p ocesses o use di -
e en echnologies and communica ion p o ocols indepen-
den ly o he way hey in e ac wi h he message eposi o y.
As shown in Figu e 2, he so wa e componen s which
ac as se ice engines a e a icula ed a ound he message
b oke . They can ake a wide a ie y o o ms depending
on he ype o unc ion hey supply, such as business logic
o ans o ma ion se ices, o ins ance. SOC a oids any
knowledge o he p og amming model o he se ice en-
gine ha plugs in o he b oke in as uc u e, so he se ice
componen s in e ac wi h ex e nal en i ies by means o he
exchange o messages h ough he message b oke using a
common and de ined o ma . The binding componen s a e
esponsible o sending and ecei ing messages o and om
he conc e e endpoin . The di e en unc ionali ies ha ex-
is s in he se ice engines allow he sepa a ion in wo classes
Figu e 2. High-le el iew o he a chi ec u e
o DENEB.
o se ice engines. On he one hand, he wo k lows engines,
which ep esen he business logics o he p ocess and a e
in cha ge o execu ing he o ches a ion p ocesses. On he
o he hand, he p o ocol engines, which ep esen he in e -
ac ion logics and execu es he cho eog aphies. The use o
bo h, wo k low and p o ocol engines, allows he co ec and
independen sepa a ion o cho eog aphy and o ches a ion
aspec s, whose models a e desc ibed and di ec ly execu ed
in e ms o Ne s-wi hin-Ne s in DENEB [10, 3]. In addi ion,
all models a e expo able using an ex ended PNML desc ip-
ion language (ISO/IEC 15909), which can be gene a ed in
an au oma ic manne (see Sec ion 5).
Figu e 3 depic s he au oma ically gene a ed o ches a-
ion wo k low co esponding o he Deli e ySe ice ole de-
pic ed in Figu e 1 and he ackO de cho eog aphy, which
will be execu ed by he o ches a ion p ocess in esponse
o he ini ial cus ome ’s in oca ion (acco ding o Figu e 1).
Fo he sake o simplici y, only hese wo igu es a e shown
o demons a e he ans o ma ion. No e ha o ches a-
ion implemen a ions a e execu ed by he wo k low engine,
whe eas cho eog aphies a e c ea ed by o ches a ions and
un by he con e sa ion engine in he DENEB amewo k.
Bo h o ches a ion and cho eog aphy implemen a ions a e
execu ed on an ins ance o he DENEB pla o m.
DENEB p o ides wi h some mechanisms in o de o
allow wo k lows o communica e wi h con e sa ions, and
ice e sa. Channels a e a mechanism which allow wo o
mo e ne s o synch onise by means o he i e o a ansi-
ion which con ains a channel insc ip ion [10]. Addi ionaly,
channels allow wo k lows and con e sa ions o exchange
in o ma ion. Those a e he basics o he :absCond()
channels used in he wo k low and con e sa ion ne s. Fi-
nally, con e sa ions can in e ac wi h he message b oke
by means o he use o channels :w() and : (),which
co espond o he w i e and ead ope a ions o he RLinda
implemen a ion, espec i ely.
Le us now desc ibe he o ches a ion wo k low which
co esponds o he deli e y se ice. T ansi ions 1 and
20 implemen he s a ing and he ending o he execu-
ion o he o ches a ion, espec i ely. Acco ding o he
s a e machine depic ed in Figu e 1, he i ing o ansi-
ion 1 s a s he pa allel execu ion o wo b anches in
he case he o de has no s ill been ecei ed (gua d ! e-
cei ed). The le one co esponds o he sequen ial c ea ion
and execu ion o he cho eog aphies deli e yIn o,Recei e
and Calcula eSe iceP ice, while he igh one ep esen s
he c ea ion and execu ion o he ackO de cho eog aphy.
Le us concen a e on he ackO de b anch. T ansi ion
11 c ea es a new ins ance o he ackO de cho eog a-
phy, pu ing i in o he con e sa ion space o he DENEB
amewo k by means o he synch onised i ing o channel
:pa icipa eCon , in Renew’s e minology [10]. This
s ep implemen s he pa icipa ion o he o ches a ion p o-
cess in a cho eog aphy ini ia ed by ano he p ocess (by he
cus ome , in his case). Then, i ing ansi ion 12 he con-
e sa ion engine s a s he execu ion o he cho eog aphy
in a dis ibu ed manne . T ansi ions 13 and 16 allow
he o ches a ion wo k low o ecei e and pass da a om
and o he unning cho eog aphy h ough abs ac condi-
ions (channel :absCond). These da a a e p ocessed by
he binding componen s which manage he access o in e -
nal o ex e nal esou ces in a p ope way. The mechanism
o in e ac wi h he sys em binding componen s using an
:execu e channel is implemen ed in ansi ions 14 and
15. The cho eog aphy’s execu ion inishes i ing ansi-
ion 17, and a oken is placed in he op place o he igh
b anch. The p ocess can epea un il he o de is ecei ed.
In ha case, he gua d o 11 disables he i ing o ansi-
ion 11 and he only possible e olu ion is o i e ansi ion
18. Finally, when he Calcula eSe iceP ice cho eog a-
phy inishes, bo h b anches synch onise and he o ches a-
ion p ocess ends.
Le us now concen a e on he ackO de cho eog a-
phy. Once loaded in o he con e sa ion engine, he ack-
O de cho eog aphy s a s by means o he synch onisa ion
o ansi ion 30 h ough he DENEB’s sys em ne . T ansi-
ion 31 p ocesses he in oca ion o a cus ome eques o
he a ailabili y o ack o de s h ough he message b oke
using he Linda-based ope a ion ake [5]. Then, he eques
is passed o he o ches a ion wo k low and he esponse o
i s execu ion is ob ained by means o he use o abs ac
condi ions ( ansi ions 32 and 33, espec i ely). Once
he esul has been ob ained, a esponse is sen o he cus-
ome ough he message b oke using he w i e ope a-
ion, i ing ansi ion 34. A simila in e ac ion p ocess is
epea ed again ( ansi ions 35- 38) o p ocess he ack-
ing o a speci ic o de selec ed by he cus ome . Finally,
he ackO de cho eog aphy inishes he execu ion o he
p o ocol by means o he i ing o ansi ion 39.

[]
[]
:absCond("Ge Resul ",idExec, esul )
[w,idCho ]
[w,idCho ]
[w,idCho ,cus ome , esul ]
30
31
32
33
34
39
:begin()
idCon
idCon .
.
.
.
.
.
:absCond(op,pa ams,idExec)
:execu e(op,pa ams,idExec)
[idCho ,op,pa ams,idExec]
idCho
idCho
[idCho ,idExec, esul ]
[idCho ,idExec, esul ]
[idCho ,idExec]
[idCho ,idExec]
[idCho ,op,pa ams,idExec]
idCho
idCho
idCho
idCho
1
2
4
5
7
8
10
12
13
14
15
16
17
19
Deli e ySe ice O ches a ion T ackO de Cho eog aphy
(F om he Deli e y se ice’s
poin o iew)
:end() 20
cho : new Cho eo_Deli e yIn o;
:c ea eCho eo( his,idCon ,
"Deli e ySe ice","",cho );
Deli e y In o
Recei e
Calcula eSe iceP ice
:endCho eo( his,idCho ,ok)
:absCond("Ge Resul ",idExec, esul )
:endCho eo( his,idCon ,ok) :beginCho eo( his,id)
:ge Resul s(idExec, esul )
:begin(w,idCho )
[w,idCho ,cus ome , esul ]
:end(w,idCho ,"done")
[w,idCho ]
T ackO de
Send esul
Ge pa ams
C ea e cho eog aphy
End cho eog aphy
cho : new Cho eo_T ackO de ;
:pa icipa eCho eo( his,idCho ,
"Deli e ySe ice","",cho );
11
gua d ! ecei ed
gua d ecei ed 18
: ([cus ome ," ackO de F omCus ome ",
[op,pa ams],idCho ])
[w,idCho ,cus ome ,[op,pa ams]]
[w,idCho ,cus ome ,["Ge A ailableT acks",pa ams]]
:absCond("Ge A ailableT acks",pa ams,idExec)
[w,idCho ,cus ome ,idExec]
[w,idCho ,cus ome ,idExec]
:w([cus ome ,"a ailableT ackingO de s",
esul ,idCho ])
:absCond("Ge Resul ",idExec, esul )
[w,idCho ,cus ome , esul ]
35
36
37
38
[w,idCho ,cus ome , esul ]
: ([cus ome ," ackO de F omCus ome ",
[op,pa ams],idCho ])
[w,idCho ,cus ome ,[op,pa ams]]
[w,idCho ,cus ome ,idExec]
[w,idCho ,cus ome ,idExec]
[w,idCho ]
:absCond("Ge O de S a us",pa ams,idExec)
[w,idCho ,cus ome ,["Ge O de S a us",pa ams]]
:w([cus ome ,"o de T ackingS a us",
esul ,idCho ])
[w,idCho ]
[w,idCho ]
S a cho eog aphy
Ge a ailable acking o de s
Ge an o de s a us
End cho eog aphy
Figu e 3. Deli e y Se ice o ches a ion wo k low and ackO de cho eog aphy.
5. O e iew o he T ans o ma ion
Al hough he ans o ma ion p ocess is no he aim o
his pape , he main co ela ions be ween he concep s a he
modelling and he implemen a ion le els a e p o ided. The
ans o ma ion o egula Pe i-ne s has been pe o med in
he li e a u e, bu he ans o ma ion om he modi ica ions
o UML o e e ence Pe i-ne and i s di ec execu ion ha e
no been p o ided ye .
Implemen ing abs ac mRIs in o DENEB wo k lows im-
plies, as was shown, he execu ion o a cho eog aphy p o-
cess ini ia ed om an o ches a ion p ocess (bo h, he co -
esponding skele on in he o ches a ion pa and he cho e-
og aphy, a e au oma ically gene a ed). Depending whe he
he ole is he in e ac ion ini ia o o no ( his in o ma-
ion is ex ac ed om he ole model) he wo k low c ea es
he cho eog aphy o pa icipa es in i by means o he use
o :c ea eCho eo() o :pa icipa eCho eo()
synch onisa ion channels, espec i ely. These channels
synch onise h ough he DENEB’s sys em ne . The e o e,
o ches a ion wo k lows and cho eog aphies can execu e in
an independen manne . The pa ame e s in mRIs (inpu and
ou pu ) a e implemen ed in DENEB h ough he :begin
and :end synch onisa ion channels which allow o pass in-
o ma ion om he o ches a ion wo k low o he cho eog-
aphy and ice e sa, espec i ely.
Fu he de ails abou he co ela ion and ans o ma ion
p ocess can be ob ained in [15]. F om he poin o iew
o implemen a ion, ans o ma ions among MacMAS/UML
models and DENEB’s en i ies a e pe o med using XSLT
code in o de o ans o m he XMI o he UML model in o
ex ended Pe i-Ne s Modelling Language (PNML), which
is also based on XML. The au oma ically gene a ed PNML
code ep esen s he DENEB’s implemen a ion ne s, which
can be loaded and execu ed in he pla o m a un- ime.
6. Conclusions
Success ul de elopmen and execu ion o lexible and
adap able SOA sys ems need om bes p ac ices o sol e
some impo an d awbacks ha appea when dealing wi h
cho eog aphy and o ches a ion aspec s. Al hough hey a e
wo sides o he same coin, i is commonly accep ed ha
bo h o hem need o be deal in a sepa a ed, bu coo di-
na ed way along he ull de elopmen and execu ion li e
cycle. In his pape , we ha e shown how he in eg a ion
o a MDD app oach, MaCMAS, wi h a lexible de elop-
men and execu ion amewo k o Web p ocesses, DENEB,
exploi s his sepa a ion a he design and execu ion s ages.
The in eg a ed app oach allows a e y lexible way o deal-
ing wi h business p ocesses, acili a ing hei e olu ion in
highly dynamic scena ios. F om his s udy, new challenges
ha e been opened, as o example ying o pe o m di ec
ans o ma ions om models o implemen a ion using well
known desc ip ion s anda ds (such as he Business P ocess
Modeling No a ion – BPMN, o example) and ule-based
ans o ma ion p ocesses (such as he ATLAS T ans o ma-
ion Language – ATL, o example).
Re e ences
[1] A. A kin e al. Web Se ice Cho eog aphy In e ace
(WSCI). Technical epo , Wo ld Wide Web Conso ium
(W3C), Aug. 2002.
[2] P. B e e on, B. A. Ki chenham, D. Budgen, M. Tu ne , and
M. Khalil. Lessons om applying he sys ema ic li e a-
u e e iew p ocess wi hin he so wa e enginee ing domain.
Jou nal o Sys ems and So wa e, 80(4):571–583, 2007.
[3] L. Cabac, M. Du igneau, D. Mold , and H. R¨olke. Mod-
eling dynamic a chi ec u es using ne s-wi hin-ne s. In 26 h
In e na ional Con e ence on Applica ion and Theo y o Pe i
Ne s – ICATPN 2005, pages 148–167, 2005.
[4] T. Co enie , A. V. D. Be g, and T. El ad. Modeling Aspec -
O ien ed Composi ions. In 7 h In e na ional Wo kshop on
Aspec -O ien ed Modeling, Oc 2005.
[5] D. Gele n e . Gene a i e communica ion in Linda. ACM
T ansac ions on P og amming Languages and Sys ems,
7(1):80–121, 1985.
[6] F. Cu be a, R. Khala , N. Mukhi, S. Tai, and S. Wee -
awa ana. The nex s ep in web se ices. Communica ions o
he ACM, 46(10):29–34, 2003.
[7] J. Fab a, P. Al a ez, J. A. Ba˜na es, and J. Ezpele a. RLinda:
a Pe i ne based implemen a ion o he Linda coo dina ion
pa adigm o Web se ices in e ac ions. In 7 h In e na ional
Con e ence on Elec onic Comme ce and Web Technologies
– EC-Web 2006, numbe 4082 in Lec u e No es in Compu e
Science, pages 184–193. Sp inge Ve lag, Sep 2006.
[8] J. Fab a, P. ´
Al a ez, J. A. Ba˜na es, and J. Ezpele a. A ame-
wo k o he de elopmen and execu ion o ho izon al p o o-
cols in open BPM sys ems. In Fou h In e na ional Con e -
ence on Business P ocess Managemen – BPM’06, numbe
4102 in Lec u e No es in Compu e Science, pages 209–224.
Sp inge Ve lag, 2006.
[9] S. K. Johnson and A. W. B own. A model-d i en de elop-
men app oach o c ea ing se ice-o ien ed solu ions. In 4 h
In e na ional Con e ence on Se ice-O ien ed Compu ing –
ICSOC 2006, pages 624–636, 2006.
[10] O. Kumme , F. Wienbe g, M. Du igneau, M. K¨ohle ,
D. Mold , and H. R¨olke. Renew – he Re e ence Ne Wo k-
shop. In E. Vee beek, edi o , Tool Demons a ions. 24 h In-
e na ional Con e ence on Applica ion and Theo y o Pe i
Ne s – ATPN 2003., pages 99–102, June 2003.
[11] H. Lee. The iple-a supply chain: Adap abili y, agili y,
and alignmen . Ha a d Business Re iew, 82(10):102–112,
2004.
[12] J. Mendling and M. Ha ne . F om In e -O ganiza ional
Wo k lows o P ocess Execu ion: Gene a ing BPEL om
WS-CDL. In On The Mo e o Meaning ul In e ne Sys ems
and Ubiqui ous Compu ing – OTM 2005, numbe 3762 in
Lec u e No es in Compu e Science. Sp inge Ve lag, No
2005.
[13] M. Papazoglou, P. T a e so, S. Dus da , and F. Leymann.
Se ice-O ien ed Compu ing Resea ch Roadmap. Techni-
cal epo , Technical epo / ision pape on Se ice o ien ed
compu ing Eu opean Union In o ma ion Socie y Technolo-
gies (IST), 2006.
[14] C. Pel z. Web Se ice O ches a ion and Cho eog aphy. A
look a WSCI and BPEL4WS. Web Se ices Jou nal, pages
1–5, jul 2003.
[15] J. Pe˜na,J.Fab a,A.Ruiz-Co ´es, and J. Ezpele a. A Model-
D i en De elopmen App oach o Speci ying and Imple-
men ing he O ches a ion and Cho eog aphy o Se ice-
O ien ed Solu ions. Technical epo , e e ence RR-0707,
Depa men o Compu e Science and Sys ems Enginee ing
– I3A Uni e si y o Za agoza, July 2007.
[16] J. Pe˜na, M. G. Hinchey, M. Resinas, R. S e i , and J. L.
Rash. Designing and managing e ol ing sys ems using a
mas-p oduc -line app oach. Jou nal o Science o Compu e
P og amming, 2006.
[17] J. Pe˜na, M. G. Hinchey, and A. Ruiz-Co s. Mul iagen sys-
em p oduc lines: Challenges and bene i s. Communica-
ions o he ACM, 49(12), Decembe 2006.
[18] S. Wee awa ana, F. Cu be a, F. Leymann, T. S o ey, and D.
Fe guson. Web se ices pla o m a chi ec u e, chap e Mod-
eling Business P ocesses: BPEL, pages 313–340. P en ice
Hall, 2005.
[19] N. C. Suazo and J. Agui e. Aspec -o ien ed Web se ices
o ches a ion. In 2nd In e na ional Con e ence on Elec ical
and Elec onics Enginee ing, Sep 2005.
[20] T. And ews e al. Business P ocess Execu ion Language o
Web Se ices (BPEL4WS). Technical epo , BEA Sys ems,
IBM Co p., Mic oso Co p., SAP AG, and Siebel Sys ems,
May 2003.
[21] R. Ten-Ho e and P. Walke . Ja a Business In eg a ion (JBI)
1.0, inal elease. Technical epo , BEA Sys ems & IBM &
Mic oso & SAP AG & Siebel Sys ems, May 2005.
[22] R. K. Thiaga ajan, A. K. S i as a a, A. K. Puja i, and V. K.
Bulusu. BPML: A P ocess Modeling Language o Dynamic
Business Models. In Fou h IEEE In e na ional Wo kshop
on Ad anced Issues o E-Comme ce and Web-Based In o -
ma ion Sys ems – WECWIS’02, page 239. IEEE Compu e
Socie y, 2002.
[23] O. Zimme mann, P. K ogdahl, and C. Gee. Elemen s o
Se ice-O ien ed Analysis and Design. Technical epo ,
IBM de elope Wo ks, June 2004.