A Taxonomy o Va iabili y in Web Se ice Flows ∗
Se gio Segu a, Da id Bena ides, An onio Ruiz-Co ´
es and Pablo T inidad
Depa men o Compu e Languages and Sys ems
Uni e si y o Se ille
email:{segu a, bena ides, a uiz, inidad}@ dg.lsi.us.es
Abs ac
The combina ion o So wa e P oduc Lines (SPL) and
Se ice-O ien ed A chi ec u es (SOA) de elopmen p ac-
ices is expec ed o become a new de elopmen pa adigm
maximizing euse and business in eg a ion. Howe e , mul-
iples issues mus be s ill add essed in o de o cla i y he
connec ions be ween bo h ields. One o he key ques ions o
answe is how SPL p ac ices can be used o suppo se ice-
o ien ed applica ions. In his con ex , iden i ying and man-
aging he poin s o a iabili y in composi e Web se ices
eme ges as an ine i able s ep o making possible such in-
eg a ion. In his posi ion pape we gi e a i s s ep owa d
such di ec ion by in oducing a comp ehensible o e iew o
he main a iabili y poin s in Web se ice lows.
1 In oduc ion
So wa e P oduc Lines (SPL) [8] and Se ice-O ien ed
A chi ec u es (SOA) [18] app oaches o so wa e de elop-
men pu sue di e en goals om a common pe spec i e:
so wa e euse. On he one hand, SPL ocus on manag-
ing commonali ies and a iabili ies among a se o ela ed
so wa e sys ems. On he o he hand, SOA enable assem-
bly, o ches a ion and main enance o se ice-based solu-
ions implemen ing business p ocesses.
Con ibu ions abou he connec ions be ween bo h de el-
opmen app oaches, SPL and SOA, a e s a ing o eme ge in
he SPL communi y [22]. Howe e , mul iple issues mus
be s ill add essed o s udying how SPL p ac ices could
suppo he de elopmen o se ice–o ien ed sys ems. In
his con ex , a ele an issue o be analyzed is how manag-
ing a ia ions o speci ic cus ome s o ma ke segmen s in
SOA.
Se ice–o ien ed applica ions a e no ied o an speci ic
echnology. Howe e , mos common implemen a ion o
∗This wo k has been pa ially suppo ed by he Eu opean Commission
(FEDER) and Spanish Go e nmen unde CICYT p ojec Web–Fac o ies
(TIN2006-00472)
SOA-based sys ems use Web se ices as a sui able in e-
g a ion echnology. A Web se ice is a so wa e sys em
designed o suppo in e ope able machine- o-machine in-
e ac ion o e a ne wo k using Web s anda ds p o ocols
[2]. The main goal is o achie e in e ope abili y among
applica ions in a language and pla o m independen man-
ne . Howe e , he eal s eng h o Web se ices is ob ained
when combining hem and o ches a ing hem in o de o
deli e added- alue se ices. In his con ex , Web Se -
ice Flows (WS- low) a e a common way o implemen ing
composi e Web se ices in SOA. WS- lows a e composi e
Web se ices implemen ed using a p ocess-based app oach.
Roughly speaking, a WS- low p ocess de ines an execu able
business p ocess in which pa icipan s a e Web se ices.
Resea ch in he ield o a iabili y in con en ional Web
se ices [12, 16, 19] and p ocess wo k low [7, 10, 11, 15,
20] is me ely add esed in he li e a u e. In [13] a high-
le el classi ica ion o app oaches o WS- low adap abili y is
p esen ed. A mo e echnological classi ica ion o WS- low
a iabili y poin s in se ice in oca ion is in oduced by he
IBM s a in [9]. Howe e , an explici classi ica ion o he
main a iabili y poin s in WS- low is s ill missed.
In his pape we gi e a i s s ep owa d a p oposal o
managing a iabili y in WS- low in he con ex o SPL
and SOA. In pa icula , we i s in oduce WS- low and
BPEL. Secondly, we desc ibe and classi y he main a i-
abili y poin s in WS- low. The goal is o p o ide he s a ing
poin o a base o knowledge abou a iabili y in WS- lows
ha can be la e used o bo h, i)e alua ing he di e en
mechanisms o implemen ing a iabili y in WS- low and
ii)iden i ying ac o s ha a ec he selec ion o such a i-
abili y mechanisms.
The emainde o his pape is o ganized as ollow: in
Sec ion 2 WS- lows and BPEL a e in oduced. The main
a iabili y poin s iden i ied in WS- lows a e desc ibed in
Sec ion 3. Finally, we summa ize ou main conclusions and
desc ibe ou u u e wo k in Sec ion 4.
2 Web Se ice Flows
AWeb Se ice Flow (WS- low) is a composi e Web se -
ice implemen ed using a p ocess-based app oach [13].
Simila ly o con en ional p ocess wo k low, WS- lows
speci y se o asks which a e execu ed by he pa icipan s o
a p ocess. Addi ionally, a WS- low de ines he execu ion o -
de o asks, he da a exchange among he pa icipan s and
he business ules. In con as wi h adi ional wo k lows,
he main cha ac e is ic o a WS- low is ha i wo ks wi h
a single ype o pa icipan s: Web se ices. Figu e 1 de-
pic s an example o a WS- low o a a el agency o a el
a angemen . The WS- low in okes he Web se ices o di -
e en ai lines, ca en al companies and ho els o e ing o
he cus ome a alue-added se ice o a el ese a ion.
The e exis mul iple p oposed languages o de in-
ing WS- lows such as WSCI [21], BPML [4] o BPEL
[14]. Howe e , he Business P ocess Execu ion Language
(BPEL) is ecognized as de ac o s anda d in his a ea.
BPEL in oduces basic and s uc u ed ac i i ies, con ol
s uc u es such as loops and condi ional b anches, syn-
ch onous and asynch onous communica ion, e c. Al hough
BPEL p ocesses a e de ined in XML o ma , mos de el-
opmen IDEs p o ide a g aphical no a ion o i . Once a
BPEL p ocess is de ined i can be execu ed in any BPEL-
complian execu ion engine such as ac i eBPEL [1]. The
execu ion engine o ches a es he in oca ions o he pa ici-
pan s Web se ices acco ding o he p ocess de ini ion.
3 Va iabili y in WS-Flows
In his sec ion we explo e he main a iabili y poin s in
WS- low. In pa icula , we ocus on he a iabili y in he in-
oca ion o se ices and he wo k low s uc u e. Va iabili y
in o he ad anced aspec s o se ices such as secu i y is ou
o he scope o his pape because o space cons ain s.
3.1 Se ice in oca ion
A se ice in oca ion is an ac i i y in which he wo k-
low in okes ano he se ice and exchange messages wi h
i e u ning con ol back o he wo k low. Figu e 2 summa-
izes he main a iabili y poin s iden i ied in he in oca ion
o se ices using a ea u e model. In pa icula , we ha e
iden i ied ou main a iabili y poin s:
•Binding Time. The selec ion o he se ice o in oke
can be pe o med ei he du ing he de elopmen o he
execu ion o he wo k low. In he i s case, he se ice
e e ence is de ined in design- ime o cing o edeploy
he wo k low i changes in he pa icipan s need o be
done. On he o he hand, mos lexible app oaches p o-
pose selec ing pa icipan s in un- ime making he ap-
plica ion adap able o changes in he execu ion en i-
onmen . Addi ionally, pa ne selec ion du ing un-
ime can be pe o med ei he by he use o au oma i-
cally acco ding o some selec ion policies.
Figu e 3 shows a possible implemen a ion o un- ime
au oma ed pa ne selec ion using a so-called se ice
egis y [3]. Fi s , he in o ma ion o he se ices (e.g.,
di e en ai lines Web se ices) is egis e ed in a se -
ice egis y. Then, he wo k low send a que y o he
egis y o de e mine a ma ching se ice acco ding o a
se o pa ame e s (e.g., a se ice wi h ime o esponse
≤10s) and he p ede ined selec ion policies. Finally,
he se ice e e ence ob ained as a esul o he que y
is used o in oke he ma ching se ice.
2. Que y 1. Regis e
Se ices
In o ma ion
3. Uses
Se ice Regis y
Figu e 3. Se ice Regis y
•Pa ne Selec ion C i e ia. Selec ion c i e ia help o
de e mine which o he a ailable se ices o e ing he
same unc ionali y will be selec ed o i s in oca ion
[17]. In his con ex , wo main a iabili y poin s a e
iden i ied:
E alua ion Con ex . Selec ion c i e ia can be ei he
ha d-coded in he wo k low o delega ed o an ex e -
nal en i y. The i s op ion is e y limi ed since wo k-
low and selec ion c i e ia a e highly coupled. On he
o he hand, de ining he selec ion c i e ia in an inde-
penden manne is a p e e ed app oach since i allows
managing changes mo e e icien ly. Figu e 4 depic s
an example in which he selec ion c i e ia a e de ined
ou o he scope o he wo k low. No ice ha changes
in he selec ion c i e ia would be welcome since hey
would no a ec he wo k low.
De ini ion Time. Selec ion c i e ia can be modi ied ei-
he in design- ime o un- ime. Simila ly o he pa -
ne selec ion, he i s op ion o ce o edeploy he
wo k low o esponds o changes meanwhile he sec-
ond al e na i e is much mo e lexible since i allows
adap ing he p ocess wo k low dynamically.
•MessagesExchange. Messages exchange be ween ex-
ecu able se ice wo k lows and o he se ices a e yp-
ically pe o med using wo di e en communica ion
Clien
Figu e 1. A possible WS- low o T a el A angemen
Se ice In oca ion
Pa ne Selec ion P o ocol
Pa ne Selec ion C i e ia
Message Exchange
E alua ion Con ex De ini ion Time
Ha d-coded Delega ed
Synch onous Asynch onous SOAP/HTTP
SOAP/JMS SOAP/SMTP
XML/HTTP
Design- ime Run- ime
Use -D i en Au oma ed Run- imeDesign- ime
Binding Time
Figu e 2. Va iabili y Poin s in Se ice In oca ion
I om = Eu ope
I om = Asia
T ade
I om = A ica
Figu e 4. Wo k low-independen selec ion
c i e ia
pa e ns: synch onous o asynch onous. Synch onous
eques / esponse message exchange consis s on send-
ing a eques message o he se ice and wai o i o
esponse. Al hough his is he mos common and na -
u al app oach, i is clea ly no easible i he se ices
equi e signi ican ime o esponse since i blocks he
wo k low p ocessing. Hence, when he pa icipan se -
ices can ake a long ime o esponse and such e-
sponse is no needed o wo k low p ocessing, an asyn-
ch onous pa e n is ypically used.
In he asynch onous model he communica ion is pe -
o med be ween wo wo k lows, he so-called se ice
p o ide and se ice eques o o clien . In his si ua-
ion, he clien need no block on he call. Ins ead, he
clien implemen s a callback in e ace, and once he e-
sul s a e a ailable, he se ice p o ide simply makes
a callback in oca ion on he clien . Figu e 5 illus a es
an example o asynch onous messages exchange.
Reques
Call-back
Se ice P o ide Clien
Figu e 5. Asynch onous Model
•P o ocols. Mul iples p o ocols can be used o se -
ice in e ac ions o e a ne wo k, i.e. SOAP/HTTP,
SOAP/JMS, XML/HTTP, e c. Thus, he selec ion o
a sui able se o p o ocols o he communica ion wi h
se ices is a key a iabili y poin .
3.2 P ocess Wo k low S uc u e
The p ocess wo k low s uc u e de e mines all he as-
pec s ela ed o he way in which he p ocess is execu ed:
he execu ion o de , he da a exchange be ween pa icipan s,
he business ules, he e o s ea men , e c. Hence, wo
main a iabili y poin s a e iden i ied in his con ex :
•Con ol Flow. The wo k low s uc u e de e mines he
asks o be execu ed, he execu ion o de and e en
he ype o pa icipan in he p ocess. The e o e, he
con ol low will commonly ha e loca ions likely o
change in esponse o changes in he business p ocess.
Hence, o ins ance, suppose he a el agency decides
o change he o de in which ligh a es a e consul ed
o ce ain cus ome s, e.g. p io i izing low-cos ai -
lines o young people.
•Da a Flow. Du ing he execu ion o a WS- low pa ic-
ipan s exchange di e en kind o da a in XML o ma .
Simila ly o he con ol low, da a is likely o change as
consequence o changes in he business p ocess. As an
example, suppose he a el agency is asked o p o ide
addi ional secu i y in o ma ion in he cases in which
passenge s a el o a speci ic coun y.
4 Conclusions and Fu u e Wo k
In his pape we expose he need o an explici clas-
si ica ion o a iabili y in WS- low as a s a ing poin o
handling a iabili y h ough se ices in he con ex o SPL
and SOA. In pa icula , we iden i ied and classi y he main
a iabili y poin s in he in oca ion o se ices and he wo k-
low s uc u e. In some cases he dis inc ion be ween
de elopmen - ime and un- ime is exposed explici ly be-
cause o i s ele ance. Howe e , we emphasize ha he ime
in which a iabili y is esol ed will depend mainly o he
echnology used.
Many challenges emain o ou u u e wo k. Once he
main a iabili y poin s a e iden i ied is ime o conside
he a ailable echnological app oaches o implemen ing i .
Hence, we a e al eady e alua ing he di e en implemen a-
ion p oposals paying special a en ion o he way in which
hey suppo he a iabili y poin s p esen ed in his pape .
Finally, ou main goal is o de elop a p o o ype de el-
opmen ool o he gene a ion o a SPL o composi e Web
se ices. Al hough ou wo k is s ill imma u e we plan o
de elop a amewo k o he au oma ed o semi-au oma ed
gene a ion o BPEL code om a gi en ex ended ea u e
model [6]. The amewo k will implemen a co e business
p ocess in which a iable pa s will be gene a ed au oma -
ically acco ding o he ea u e selec ion. Fo such pu pose,
we will s a by associa ing ea u es and ea u e a ibu es
o Web se ices and Quali y-o -Se ice (QoS) pa ame e s
espec i ely [5].
Re e ences
[1] Ac i eBPEL. www.ac i ebpel.o g/.
[2] G. Alonso, F. Casa i, H. Kuno, and V. Machi aju. Web
Se ices: Concep s, A chi ec u es and Applica ions.
Sp inge -Ve lag, 2004.
[3] D. A dagna and B. Pe nici. Adap i e Se ice Com-
posi ion in Flexible P ocesses. IEEE T ansac ions on
So wa e Enginee ing, 33(6):369–384, 2007.
[4] A. A kin. Business P ocess Modeling Language
(BPML). Ve sion 1.0, 2002. h p://www.bpmi.o g/.
[5] D. Bena ides, A. Du ´
an, M.A. Se ano, and
C. Mon es-Oca. Quali y o se ice a iabili y in sys-
em amilies based on web se ices. In Simposio de In-
o m´
a ica y Telecomunicaciones SIT 2002, pages 205–
218, Se illa, Spain, 2002.
[6] D. Bena ides, A. Ruiz-Co ´
es, and P. T inidad. Au o-
ma ed easoning on ea u e models. LNCS, Ad anced
In o ma ion Sys ems Enginee ing: 17 h In e na ional
Con e ence, CAiSE 2005, 3520:491–503, 2005.
[7] F. Casa i, S. Ilnicki, L. Jin, V. K ishnamoo hy, and
M. Shan. Adap i e and Dynamic Se ice Composi-
ion in eFlow. In Con e ence on Ad anced In o ma-
ion Sys ems Enginee ing, olume 1789, pages 13–31.
Sp inge Ve lag, 2000.
[8] P. Clemen s and L. No h op. So wa e P oduc Lines:
P ac ices and Pa e ns. SEI Se ies in So wa e Engi-
nee ing. Addison–Wesley, Augus 2001.
[9] G. Goldszmid and C. Osipo . Make composi e
business se ices adap able wi h poin s o a iabili y.
choosing he igh implemen a ion. IBM, Ap il 2007.
h p://www.ibm.com/de elope wo ks/lib a y/a -
cbspo 1/.
[10] Y. Han, A. She h, and Ch . Bussle . A Taxonomy o
Adap i e Wo k low Managemen . In CSCW-98 Wo k-
shop, Towa ds Adap i e Wo k low Sys ems, 1998.
[11] P. Heinl, S. Ho n, S. Jablonski, J. Neeb, K. S ein, and
M. Teschke. A comp ehensi e app oach o lexibili y
in wo k low managemen sys ems. SIGSOFT So w.
Eng. No es, 24(2):79–88, 1999.
[12] A. Ruokonen J. Jiang and T. Sys a. Pa e n-based Va i-
abili y Managemen in Web Se ice De elopmen .
IEEE, No embe 2005.
[13] D. Ka as oyano a and A. Buchmann. Ex ending Web
Se ice Flow Models o P o ide o Adap abili y. In
P oceedings o he OOPSLA ’04 Wo kshop on ”Bes
P ac ices and Me hodologies in Se ice-o ien ed A -
chi ec u es: Pa ing he Way o Web-se ices Success”,
Vancou e , Canada, Oc obe 2004.
[14] OASIS. Web Se ices Business P ocess Execu ion
Language Ve sion 2.0, May 2006. h p://www.oasis-
open.o g/.
[15] M. Reiche and P. Dadam. ADEPT lex -suppo ing
dynamic changes o wo k lows wi hou losing con ol.
Jou nal o In elligen In o ma ion Sys ems, 10(2):93–
129, 1998.
[16] S. Robak and B. F anczyk. Modeling Web Se ices
Va iabili y wi h Fea u e Diag ams. In Re ised Pa-
pe s om he NODe 2002 Web and Da abase-Rela ed
Wo kshops on Web, Web-Se ices, and Da abase Sys-
ems, pages 120–128, London, UK, 2003. Sp inge -
Ve lag.
[17] A. Ruiz-Co ´
es, O. Ma ´
ın-D´
ıaz, A. Du ´
an-To o, and
M. To o. Imp o ing he au oma ic p ocu emen o
web se ices using cons ain p og amming. In . J.
Coope a i e In . Sys , 14(4):439–468, 2005.
[18] E. Thomas. Se ice-O ien ed A chi ec u e: A Field
Guide o In eg a ing Xml and Web Se ices. P en ice
Hall, 2004.
[19] N. Yasemin Topaloglu and R. Capilla. Modeling he
Va iabili y o Web Se ices om a Pa e n Poin o
View. In ECOWS, pages 128–138, 2004.
[20] an de Aals , W. M. P., and S. Jablonski. Dealing
wi h wo k low change: iden i ica ion o issues and so-
lu ions. In e na ional Jou nal o Compu e Sys ems
Science and Enginee ing, 15(5):267–276, Sep embe
2000.
[21] W3C. Web se ice cho eog aphy in e ace 1.0, Au-
gus 2002. h p://www.w3.o g/TR/wsci/.
[22] C. Wienands. Syne gies be ween Se ice-O ien ed
A chi ec u e and So wa e P oduc Lines, 2006.
Siemens Co po a e Resea ch. P ince on, NJ.