You are on page 1of 20

Web Services in Mobile Devices

Varun Goyal
Computer Science Department
Rochester Institute Of Technology
Rochester, NY, USA

!" #$%&'()&
Moblle phones ln Loday's era are noL [usL small devlces LhaL provlde Lhe means of
communlcaLlon, raLher, Lhey are equlpped wlLh more processlng power, sLorage capaclLy and
baLLery performance. now, Lhe hand held devlces are noL only servlce consumers buL are also
capable of hosLlng and provldlng servlces Lo Lhelr peers. 1hese servlces deployed on moblle
devlces brlng ln Lhe ldea of Moblle Web Servlces Lo Lhe research communlLy. [10]
1hls summary paper descrlbes varlous aspecLs Lo web servlces ln moblle devlces, l.e.
whaL are Lhe llmlLaLlons of Lhe moblle devlce, connecLlvlLy lssues, how Lo opLlmlze Lhe web
servlce, comparlng dlfferenL proLocols and frameworks LhaL can be used, performance analysls
of SCA and 8LS1ful servlces, varlous llbrarles LhaL can be used Lo creaLe web servlces on
!!" !+&',-.)&/,+
1he lnLerneL enables qulck access Lo lnformaLlon and a varleLy of servlces ln Lhe form of
Web ages. 1hese Web ages offer one graphlc user lnLerface accesslble Lhrough a web
browser. 8ecenLly, Web ages have evolved Lo Web Servlces, whlch are user lnLerface
lndependenL servlces whlch enable appllcaLlons Lo lnLegraLe lnLerneL-speclflc servlces.
Moblle devlces wlLh Lhelr hardware llmlLaLlons are generally noL sulLable Lo use lnLerneL
Servlces vla Web ages. 1he separaLlon of user lnLerface and servlce loglc offered by Web
Servlces are a new chance Lo brlng lnLerneL servlces Lo moblle devlces. AppllcaLlons runnlng on
moblle devlces, provldlng access Lo Web Servlces, can Lhereby be adapLed Lo Lhe speclflc devlce
1o lnLegraLe Web Servlce Lechnologles ln moblle devlces one has Lo conslder Lhe
resLrlcLlons of Lhese devlces and Lhe moblle communlcaLlon sysLem. Moblle devlces have
several llmlLaLlons, such as slow CenLral rocesslng unlLs (Cus), small memorles, prlmlLlve
operaLlng sysLems and small dlsplays. Moblle communlcaLlon sysLems, especlally C8S and
uM1S, lmply llmlLed bandwldLh and hlgh laLencles.[11]
1hls paper alms aL presenLlng frameworks for creaLlng moblle web servlce provlders ln
SecLlon lll [3][4][6], comparlson beLween synchronous and asynchronous web servlce
framework for moblle web servlces ln SecLlon lv [2][10], performance analysls and opLlmlzaLlon
opLlon for moblle web servlces ln SecLlon v [7][8][11][12][13][13], personallzaLlon of web
servlces ln moblle uslng semanLlc web ln SecLlon vl [3], varlous Lools for moblle web servlce
developmenL ln SecLlon vll [9][14], cloud compuLlng ln moblle an lnLroducLlon ln SecLlon vlll

!!!" 0,$/12 32$ 42'5/)2 6'(728,'9%
8uslness processes and work ln general are becomlng lncreaslngly lndependenL from
locaLlon and oLher conLexLual llmlLaLlons, ralslng Lhe need for mulLlple access channels Lo
processes. AnoLher emerglng need ls shlfLlng beLween access modallLles. 1o address Lhls [4]
lnLroduces Lhe ldea of moblle servlce orlenLed archlLecLure (moblle SCA).
Servlce-CrlenLed ArchlLecLure ls a seL of prlnclples and meLhodologles for deslgnlng and
developlng sofLware ln Lhe form of lnLeroperable servlces. 1hese servlces are well-deflned
buslness funcLlonallLles LhaL are bullL as sofLware componenLs (dlscreLe pleces of code and/or
daLa sLrucLures) LhaL can be reused for dlfferenL purposes.
1he paper dlscusses Lhe experlmenL conducLed on proLoLype Lo successfully LesL web-
servlce consumpLlon" on llghLwelghL moblle devlces and concludes LhaL asynchronous call Lo
Lhe web servlce could help save power consumpLlon. 1hls ls furLher dlscussed ln SecLlon lv.
Web Servlces have successfully been lmplemenLed on C level wlLh a greaL response. As
a moblle web servlce glves Lwo machlnes Lo lnLeracL dlrecLly wlLhouL any human lnLeracLlon
Lhus allowlng lnLelllgence ln machlnes. WlLh Lhe avallablllLy of more processlng power, baLLery
backup, and advanced neLworklng feaLures allowlng moblle phones Lo Lransfer daLa aL a greaL
speed have made lL posslble for moblles Lo make use of Lhls advance servlce Lhus acLlng as Web
Servlce CllenLs. Powever, ln a sense, Lhls role of moblle Web Servlce cllenLs ls sLlll baslc and Lhe
comblnaLlon of cellular and Web Servlces domalns would only be compleLed lf lL would become
feaslble Lo also offer sLandard Web Servlce provlders on small moblle devlces. 1hus Lhe paper
[3] presenL Lhe ldea of Moblle Web Servlce rovlder or Moblle PosLs and presenL a framework
for Lhls.

6/:.'2 ;" <(%/) (')=/&2)&.'(1 %2&.> ,? 0,$/12 @,%&

1here are Lhree componenLs Lo Lhls archlLecLure: Servlce 8equesLor (CllenL), Servlce
rovlder (Server) and Servlce 8eglsLry (uuul). 1he servlce provlder publlshes lLs Web Servlces
wlLh Lhe servlce reglsLry. 1he servlce requesLor searches Lhe uuul reglsLry for Lhe servlces, and
Lhe uuul compaLlble servlce reglsLry refers Lhe respecLlve WSuL, as shown ln llgure 1. 1he
servlce requesLor accesses Lhe descrlbed Web Servlce, uslng SCA.
1hls framework uses a seL of opLlmlzaLlon Lechnlques known as Wlreless SCA (WSCA)
[12] furLher explalned ln secLlon vl and gSCA LoolklL [9] for developmenL furLher explalned ln
secLlon vll. 1hls belng a very baslc archlLecLure for a Moblle PosL, processlng of Lhese
proprleLary proLocols mlghL requlre addlLlonal resources llke processlng power and Llme,
delaylng Lhe response Llme of Lhe Moblle PosL. 1hus we dlscuss opLlmlzaLlon Lechnlques ln
secLlon vl.
1he paper [6] dlscusses abouL a model-based approach Lo speclfylng real-Llme moblle
web servlces and appllcaLlons and deploylng Lhem on dlsLrlbuLed moblle servlce framework.

1he above llgure 2 shows Lhe hlgh level moblle servlce archlLecLure experlmenLed for
deploylng moblle servlces ln Lhls paper. ln Lhls archlLecLure, 1he Moblle CllenLs and Lhe Moblle
Servlce App Servers (MSAS) share Lhe execuLlon of moblle servlces (buslness processes ln WS-
8LL). An acLlvlLy or a group of acLlvlLles can be execuLed on elLher Lhe cllenL or Lhe server
dependlng on Lhe deploymenL speclflcaLlon.
ln general, Lhe communlcaLlon beLween Moblle CllenLs and Lhe MSAS uslng Wlreless
Access neLwork(WA) offers more predlcLable real-Llme communlcaLlon, buL lL ls more llmlLed
ln bandwldLh Lhus noL cosL effecLlve however, Web servlce lnvocaLlons ouLslde on Lhe Wlreless
Access neLwork, are more abundanL ln bandwldLh, buL less predlcLable ln performance. 1hls
archlLecLure lmproves response Llme by reduclng Lhe amounL of Lrafflc Lo and from Lhe Moblle
CllenLs and movlng Llme-consumlng compuLaLlons Lo Lhe App Servers.

6/:.'2 A" B/%&'/$.&2- 7,$/12 %2'5/)2 (')=/&2)&.'2
!C" 4D+)=',+,.% 5% #%D+)=',+,.% 0,$/12 32$ 42'5/)2
uurlng Lhe deslgnlng phase of any web servlce Lhere arlses a quesLlon should Lhe web
servlce be synchronous or asynchronous, whlch one ls beLLer sulLed. 1he paper [10]
dlfferenLlaLes beLween Lheses for moblle 2 Web Servlces. lor 2 lnLeracLlon, synchronous
Mob-WS are noL Lhe rlghL cholce as Lhey block oLher operaLlons LhaL could be performed durlng
Lhe walLlng Llme. 1here ls no mechanlsm ln synchronous way of lnLeracLlon LhaL enables Lhe
dynamlc conLrol and monlLorlng of Mob-WS aL runLlme. Asynchronous lnLeracLlon sLraLegy
becomes a naLural cholce.
1hls paper presenLs a mlddleware LhaL provldes mechanlsms for managemenL, conLrol
and monlLorlng of long-llved Mob-WS aL runLlme, for 2. 1he mlddleware uLlllzes Lhe
Asynchronous Servlce Access roLocol whlch ls currenLly a proposed drafL from CASlS. 1he
asynchronous Mob-WS mlddleware reduces Lhe developmenL efforL and cosL for appllcaLlons
LhaL requlre Llme lndependenL communlcaLlon sLraLegy by provldlng underlylng communlcaLlon
Callback ls an lnLeracLlon based on Lhe prlnclple of "uon'L call us, we wlll call you back".
ln such scenarlos a cllenL appllcaLlon sends a requesL and walLs for Lhe response wlLhouL
blocklng lLs sLaLe. 1he response ls send back Lo Lhe cllenL when lL ls avallable. Callback resulLs ln
lncreased processlng efflclency slnce Lhe servlce solely performs lLs Lasks and ls noL bogged
down ln processlng and respondlng Lo sLaLus updaLes. 1hls also resulLs ln less neLwork Lrafflc
whlch ln Lurn requlres less amounL of resources. Powever callback may resulL ln delayed
reLrleval of response aL Lhe cllenL end, especlally when Lhe servlce has Lo lnform a loL of cllenLs
abouL Lhe sLaLus of Lhe servlce.
ln olllng, Lhe cllenL appllcaLlon repeaLedly asks for Lhe sLaLus of an exLernal servlce LhaL
lL has lnvoked. ln Lhls Lechnlque, Lhere ls no way for exLernal servlce Lo noLlfy Lhe cllenL abouL
lLs sLaLus. olllng resulLs ln lncreased Lrafflc over Lhe neLwork, whlch decreases Lhe processlng
efflclency of Lhe servlce slnce lL has Lo process and respond Lo sLaLus updaLe requesLs. lL also
requlres hlgh resource allocaLlon such as more powerful processors and more neLwork
bandwldLh. Powever polllng resulLs ln an lmmedlaLe reLrleval of response, or reLrleval of
response wlLhln an accepLable Llme frame whlch ls deLermlned by Lhe Llme spaclng beLween
Lwo polllng requesLs. Servlces LhaL need lnsLanL response noLlflcaLlons could lmplemenL polllng
whereas servlces LhaL need Lo be deployed on resource crlLlcal devlces could rely on callbacks
alone. 1hree dlfferenL Lypes of endpolnLs are deflned Lo caLer for Lhe Lhree dlsLlncL roles.
lnsLance resource ls where Lhe acLual work ls performed. Cn each lnvocaLlon of an
asynchronous Mob-WS, a new lnsLance ls creaLed havlng lLs own unlque LndpolnL 8eference
(L8) and conLexL daLa. lnsLance conLalns Lhe conLexLual lnformaLlon LhaL dlsLlngulshes one
execuLlon of an asynchronous servlce from anoLher. 1hls servlce lnsLance ls used by observers
Lo send messages Lo monlLor and conLrol Lhe sLaLus of an asynchronous Mob-WS. A servlce
lnsLance could be creaLed, paused, resumed or LermlnaLed, whlch ln Lurn conLrols Lhe Mob-WS
accordlng Lo Lhe correspondlng conLrol message. under normal condlLlons, Lhe asynchronous
Mob-WS evenLually compleLes lLs Lask and Lhe servlce lnsLance Lhereby noLlfles all Lhe cllenLs.
lacLory provldes a way of dolng some work and Lhe poLenLlal for geLLlng LhaL work
done. lL ls a focal polnL ln Lhe enLlre asynchronous sysLem and could be seen as a manager. lL
creaLes lnsLance resources LhaL carrles ouL Lhe acLual Lasks, malnLalns a llsL of all servlce
lnsLances, and could be used Lo search for speclflc servlce lnsLances. lacLory has a flxed and
unlque L8. AlLhough lacLory embodles Lhe knowledge of how Lhe work ls performed, lL does
noL do Lhe work lLself. lL acLs as a manager and noL as a worker, Lhe servlce lnsLance ls Lhe
worker LhaL does all Lhe work.
Cbserver provldes cllenL appllcaLlon a way Lo communlcaLe wlLh servlce lnsLance, and a
way Lo Lhe servlce lnsLance Lo communlcaLe wlLh Lhe cllenL appllcaLlon reacLlvely. Cbserver
mlghL query Lhe currenL sLaLus of Lhe servlce lnsLance or recelve noLlflcaLlons from lL, Lherefore,
observer subscrlbes Lo servlce lnsLance by uLlllzlng Web Servlce Addresslng properLles.

ln Lhe SysLem ArchlLecLure, as shown ln llgure 3, 1he cllenL could send a requesL elLher
over PyperLexL 1ransfer roLocol (P11) or user uaLagram roLocol (uu). 8equesL ls senL Lo
Lhe 8equesL Pandler LhaL deLermlnes Lhe requesL Lype (Sync or aSync). lf Asynchronous
message, 8equesL Pandler passes Lhe message Lo Lhe ASA Pandler whlch sends Lhe message
Lo lacLory or Lhe lnsLance. lacLory or lnsLance performs Lhe requesLed Lask and sends Lhe resulL
back Lo Lhe ASA Pandler whlch furLher passes lL Lo Lhe 8esponse Pandler. 1he 8esponse
Pandler sends lL back Lo Lhe cllenL over any LransporL proLocol preferred by Lhe cllenL.
Servlce MonlLorlng can be send as Slmple Cb[ecL Access roLocol (SCA) envelopes from
Lhe peer Cbserver for elLher Lhe Servlce lnsLance or lacLory. Servlce ConLrol ls a conLrol requesL
as a SCA envelope from Lhe cllenL ls recelved by Lhe ASA Pandler LhaL descrlbes Lo whlch
sLaLe Lhe servlce should be changed. An asynchronous Mob-WS aL any glven Llme could be ln
Lhe sLaLes [3], open.noLrunnlng, open.noLrunnlng.suspended, open.runnlng, closed.compleLed,
6/:.'2 E" 4D%&27 #')=/&2)&.'2
closed.abnormalCompleLed or closed.abnormalCompleLed.LermlnaLed. Cnce Lhe sLaLe ls
changed Lhe currenL sLaLe of Lhe asynchronous Mob-WS ls passed back Lo Lhe ASA Pandler
whlch delegaLes lL Lo Lhe 8esponse Pandler Lo be senL Lo Lhe cllenL LhaL Lrlggered Lhls conLrol
message sequence.
1hus ln Moblle devlces, Synchronous web servlces are noL feaslble as lL makes Lhe user
walL whlle each Web servlce processes requesLs and reLurns resulLs. Asynchronous Web
servlces lnvocaLlon solves Lhls performance lssue and enhances Lhe end user experlence by
lncreaslng server efflclency. Asynchronous web servlces are long llved buL due Lo cellular daLa
characLerlsLlcs, reachlng a moblle phone may be problemaLlc uslng P11. 1hus Lhe paper [2]
proposes sendlng Lhe SCA response Lo Lhe moblle uslng Lhe SMS proLocol. lf we assume LhaL
Lhe Moblle devlces can always send and recelve SMS (l.e. Lhey have subscrlbed Lo Lhe servlce)
and Lhe SMS wlll usually noL be delayed or losL, Lhls ls can be a very good framework.

1he paper proposes a gaLeway (as shown ln llgure 4.) LhaL lmplemenLs a paLLern of
subscrlbe/noLlfy accesslble Lhrough Web meLhods. 1he process, Lhe SMS CaLeway works as a
gaLeway beLween Lhe moblle neLwork and an organlzaLlon lnLraneL. 1he appllcaLlon on Lhe
user's devlce creaLes a web servlce call. 1he web servlce call ls Lhen enveloped as a MAM SCA
message and senL Lo Lhe Message CenLre as an SMS. 1he Message CenLre recelves Lhe message
and forwards lL Lo Lhe MAM Server. 1he MAM server, uslng prlvaLe l connecLlon and MAM
proLocol sends Lhe SMS Lo Lhe SMS CaLeway. 1he SMS CaLeway ls based on Web server
archlLecLure, exposlng lLs funcLlonallLy as Web Servlces and lssulng Web Servlce calls Lo noLlfy
cllenL appllcaLlons. 1he SMS CaLeway Lhen processes Lhe SMS's SCA Message, whlch Lhen
makes Lhe Web Servlce call Lo Lhe requlred CllenL WS. Slmllarly Lhe response ls recelved from
6/:.'2 F" <(%/) #')=/&2)&.'2 ,? 0,$/12 32$ 42'5/)2% &=,.:= 404 G(&28(D
Lhe CllenL WS by Lhe AppllcaLlon Server, whlch ls Lhen processed by Lhe SMS CaLeway whlch ln-
Lurn sends Lhe response back Lo Lhe user uslng MAM SCA SMS.
1hus, 1he lmplemenLaLlon ls sLandalone and provldes lLs own Web server wlLhouL
requlrlng lnLegraLlon wlLhln oLher Web servers, and uslng Lhls meLhod, MulLlple appllcaLlons
may be made avallable by a slngle gaLeway. 1he paper descrlbes Lwo Lypes of scenarlos ln
whlch moblle web servlces works: !"#$%&'( *+ 1here ls one flxed node and oLher moblle devlce.
A server Lo moblle communlcaLlon ls done Lhrough gaLeway and server Lo flxed node
communlcaLlon ls done Lhrough asynchronous lnvocaLlon by uslng besL posslble paLLern ln a
wlred llnk. !"#$%&'( ,+ 1wo or more moblle node wanL Lo access a web servlce of each oLher
Lhen Lhey communlcaLe Lhrough SMS gaLeway.
ln order Lo lncrease Lhe performance of moblle devlces durlng Lhe access of Web
Servlces, LelecommunlcaLlon servlces are used. ln Moblle web AppllcaLlon, all Web Servlces are
asynchronously called whlch lncrease Lhe speed of calllng as compared Lo synchronous Web
Servlces. AuLhors used an open wave moblle slmulaLor Lo slmulaLe Lhe web appllcaLlon. lrom
Lhe slmulaLlon resulL auLhors were able Lo flnd LhaL a comblnaLlon of asynchronous Web
Servlces and LelecommunlcaLlon servlce ls feaslble for moblle devlces LhaL also saves Lhe
llmlLed baLLery power and provldes greaLer flexlblllLy.

C" H2'?,'7(+)2 #+(1D%/% (+- I>&/7/J(&/,+ K2)=+/L.2%
Moblle devlces usually connecL Lo Web servlces over wlreless connecLlons. 1hese
wlreless llnks lead Lo hlgher response Llmes due Lo llmlLed bandwldLh and hlgh laLency
compared Lo wlred connecLlons. uue Lo Lhe usage of xML, message slzes ln Web servlces are
larger Lhan ln LradlLlonal web Lechnologles. 1herefore, compresslon of web servlce messages ls
aLLracLlve, especlally for moblle cllenLs wlLh poor connecLlvlLy and hlgh communlcaLlon cosLs.
1hus, Lhe focus of paper [7] ls on compresslon Lechnlques as a means Lo reduce xML overhead,
and perform experlmenLs based on a proLoLype phonebook Web servlce.
1hls paper dlscusses abouL Lwo dlfferenL compresslon Lechnlques, Cenerlc compresslon
and xML-aware compresslon. Cf Lhe xML-consclous compresslon Lechnlques, xMLM, gave
Lhe besL average compresslon raLlos. 8uL lL's noL good for compresslon ln moblle due Lo
requlremenL of loL of processlng power. CZl was Lhe besL of Lhe generlc compresslon
algorlLhms LesLed. LfflclenL xML (Llx) ls one of Lhe xML blnary formaL used for xML
compresslon developed by Aglle uelLa and laLer adopLed by W3C schools as basls for Lhe
speclflcaLlon of Lhe efflclenL xML formaL.
1he paper presenLs an experlmenL whose ob[ecLlve ls Lo show how dlfferenL Lechnlques
for reduclng Lhe slze of xML lnformaLlon affecL Lhe performance of Web servlces when
accessed over moblle neLworks, ln Lerms of response Llme, slze of Lhe Lransferred daLa and
communlcaLlon cosL. roLoLype Servlce used for Lhe experlmenL ls a phonebook web servlce,
whlch provldes an lnLerface whlch Lakes a person's name as lnpuL and reLurns Lhe phonebook
enLrles whlch saLlsfy LhaL name, Lo Lhe Web servlce cllenL.
MandaLory SCA elemenLs are noL compressed. (l.e. Lhe headers are noL compressed).
AlLhough lL would be more efflclenL Lo compress Lhe SCA elemenLs Loo buL Lhe prlmary focus
of Lhe paper ls for MlllLary use whlch requlres Lhe headers Lo noL be compressed as currenL
securlLy pollcles make such lnLermedlaLe lnspecLlon necessary. As Lhe paper chooses Lhe worsL
case scenarlo, so Lhey do noL compress Lhe requesL message as Lhe requesL message are qulLe
small compared Lo Lhe response message. rocess of experlmenL, Lhe cllenL sends an
uncompressed requesL message Lo Lhe Web servlce, Lhe web servlce processes Lhe requesL and
compresses Lhe resulL wlLh Lhe compresslon Lechnlque belng evaluaLed. 1he cllenL was
lmplemenLed ln !ava ML uslng a Sony Lrlcsson k610l phone emulaLor. 1echnologles used for
daLa Lransfer Lo moblle devlces uM1S, LuCL and C8S. Compresslon meLhod used Lo compress
Lhe response message, Lhe generlc ZLl8 compresslon mechanlsm and Llx v2.0, whlch ls a blnary
xML encodlng.
1hls paper descrlbes Lhe resulL of few experlmenLs conducLed by Lhe auLhors from
whlch lL can be concluded LhaL, Llx ls marglnally beLLer Lhan ZLl8 ln response Llme, as Lhe
moblle devlces used ln Lhe experlmenL could noL handle SCA/xML flles larger Lhan 32 kbyLes
Lhus compresslon meLhods are useful ln LhaL Lhey enable Lhe phone Lo work on flles LhaL would
be larger Lhan 32 kbyLe ln Lhelr uncompressed form. 8y uLlllzlng LhaL compresslon Lechnlque,
much more lnformaLlon can be Lransferred and processed before Lhls llmlL ls reached, Lhe cosL
of uslng Lhe servlce ls reduced as Lhe amounL of daLa Lransferred ls reduced due Lo compresslon
and reduclng Cu uLlllzaLlon and radlo uLlllzaLlon can boLh conLrlbuLe slgnlflcanLly Lo baLLery
1he paper [8] presenLs measuremenLs LhaL show LhaL Lhe LhroughpuL of a heavlly
loaded server can decrease subsLanLlally when lL ls requlred Lo compress Web servlce
responses. 1he maln conLrlbuLlons of Lhls paper are Lhe evaluaLlon of Web servlce performance
for moblle cllenLs as well as a scheme LhaL supporLs a server ln Lhe declslon wheLher Lo
compress Web servlce responses or noL.
1he experlmenLal uses web servlce used ls elecLronlc book lnvenLory sysLem. 1he cllenLs
send Lhe lS8n of a book Lo Lhe server and Lhe server reLurns lnformaLlon abouL Lhe book such
as Lhe LlLle, auLhor name, prlce, and so on. Ma[or parL of Lhe communlcaLlon are P11 headers,
SCA headers, xML schema and brackeLs. lor slngle requesL response, Lhe acLual conLenL's
LoLal slze ls of 389 byLes: (lS8n 10 byLes) + (lnformaLlon abouL Lhe book 379 byLes). Powever,
more Lhan 3900 byLes have Lo be senL for Lhe conversaLlon, due Lo overhead. 1he connecLlon
LlmeouL ls seL Lo 30 ms. 1o emulaLe poorly connecLed cllenLs Lhe auLhors use Lhe hosL runnlng
nlS1 neL Lo add addlLlonal delays and decrease Lhe avallable bandwldLh. 1he LesL appllcaLlon,
elecLronlc book lnvenLory sysLem, reLurns responses of dlfferenL slzes dependlng on Lhe

1he process followed ln Lhe experlmenL (as shown ln llgure 3.) ls Lhe laq sends Lhe
requesL Lo Lhe Wlnx Webserver roxy. 1hen Lhe proxy Lhen sends Lhe requesL Lo nlS1 neL
Llnux Server whlch emulaLes Lhe poorly connecLed cllenLs (for realLlme slmulaLlon) Lhen flnally
sends lL Lo llS server (whlch handles Lhe servlce requesL). now Lhls llS server ls connecLed Lo
ScllenL Llnux whlch generaLes dummy Lrafflc.
1he experlmenLs conducLed have shown LhaL boLh Lhe server and Lhe cllenLs, ln
parLlcular cllenLs LhaL are poorly connecLed, beneflL from Lhls approach. 1he paper presenLs a
CuallLy of Servlce (CoS) whlch suggesLs Lhe CoS aware web servlce Lo offer compresslon of xML
response daLa. rovlders of CoS aware Web servlces can speclfy CoS relaLed sLaLemenLs on Lhe
servlces Lhey offer, whlle Lhe cllenLs can speclfy CoS relaLed sLaLemenLs on servlces Lhey
requlre. ln Lhe experlmenLs, Lhe auLhors have used Lhe SCA headers for a slngle CoS aLLrlbuLe.
Powever Lhey suggesL LhaL WSuL ls a beLLer place for furLher lnLegraLlon of CoS lnformaLlon.
1he auLhors of Lhe paper [12] polnLs ouL LhaL use of xML wlLh lLs verbose and redundanL
naLure and xML-based proLocols ls problemaLlc. Some examples of xML lnefflclencles are LexL-
serlallzaLlon of numbers, end Lags, and namespaces. SCA as a proLocol bullL on Lop of xML
suffers from Lhe same lssues, and adds a few on lLs own. lor example, sLudles show LhaL uslng
SCA uses 3x-10x more bandwldLh Lhan !ava 8Ml. 1echnlques for compresslng SCA messages
have Lhus been proposed ln Lhe llLeraLure. 1hus Lhe paper proposes a seL of opLlmlzaLlon
Lechnlques, collecLlvely called Wlreless SCA (WSCA).
1he paper assumes LhaL Lhe moblle devlce always connecLs Lo a moblle gaLeway vla a
wlreless llnk, whlch ln Lurn ls connecLed Lo Lhe web servlce vla a wlred neLwork and LhaL
WSCA operaLes over Lhe wlreless llnk only. Wlreless SCA (WSCA), resLs on Lwo
llrsL, LhaL Lhe older Lechnlques Lo opLlmlze SCA aLLempLs Lo encode or
compress SCA messages so LhaL Lhe message could be recovered ln exacL form, Lhls ls
noL requlred, and recovery ln an equlvalenL form sufflces, auLhors call Lhls approach,
name Space Lqulvalency (nL).
Second, lf Lhe sender and recelver are aware of Lhe underlylng WSuL, subsLanLlal
addlLlonal bandwldLh savlngs can be obLalned. A slmple synchronlzaLlon proLocol ls
developed for use beLween Lhe moblle devlce and gaLeway. 1yplcally lL would need Lo
be execuLed only once offllne. AuLhors call Lhls WSuL Aware Lncodlng (WAL).
6/:.'2 M" NO>2'/72+& K2%&$2-

WSCA can dellver slgnlflcanL bandwldLh reducLlon compared Lo generlc SCA and also
reduce message loss and energy requlred for Lhe communlcaLlon. Comparlson of WSCA Lo a
generlc LexL compresslon algorlLhm, namely !zllb and SCA opLlmlzaLlon approaches such as
plaln W8xML Lells us LhaL, generlc LexL compresslon ls obllvlous Lo lnherenL sLrucLure ln an xML
documenL, and ls Lyplcally compuLe-lnLenslve, a drawback for moblle devlces, W8xML ls
obllvlous Lo SCA message sLrucLure and oLher xML-aware compresslon algorlLhms, Lyplcally
use sLaLlc, non-adapLlve Lechnlques and are guaranLeed Lo be exacL, unllke Lhe nL approach ln
ulfferenLlal Lncodlng Lechnlque (ulffLnc) ls orlenLed speclflcally Lowards compresslng
SCA messages by guesslng Lhe message sLrucLure aL boLh Lhe source and Lhe slnk, creaLlng a
skeleLon based on LhaL, and sendlng only Lhe dlfferences beLween Lhe skeleLon and Lhe acLual
1he baslc prlnclple of Wlreless SCA Lncodlng are Lo provlde sLaLlc encodlng based on
SCA schema, Lo leverage WSuL servlce descrlpLlon Lo creaLe adapLlve encodlng for Web
Servlce lnLerfaces, Lo requlre funcLlonal message equlvalence raLher Lhan exacL reproducLlon,
Lo llmlL compuLaLlonal cosL by favorlng codlflcaLlon and lookup over compuLaLlon wherever
posslble and Lo codlfy uslng a blnary packaglng scheme.
name Space Lqulvalency (nL): 1he seL of SCA elemenL Lags can be codlfled as
appllcaLlon-speclflc Lags, as provlded by W8xML. lL explolLs Lhe facL LhaL wlLhln any glven
documenL, Lhe cholce of a speclflc preflx sLrlng Lo denoLe assoclaLlon wlLh a namespace ls
arblLrary. Lxample, wlLhln a documenL, Lhe Lags <soap:Lnvelope> and <s0:Lnvelope> are
equlvalenL as long as Lhe preflxes soap and s0 are assoclaLed wlLh same namespace.
WSuL Aware Lncodlng (WAL): lf Lhe gaLeway and Lhe moblle cllenL boLh have access Lo
Lhe WSuL for each Web Servlce lnLerface used by Lhe cllenL appllcaLlon, Lhe WSuL can be
analyzed Lo creaLe Lhe requlslLe codlng Lables. We propose a proLocol for synchronlzlng Lhe
WSuL codlng Lables ln Lhe gaLeway wlLh Lhe cllenL. lrom Lhe LxperlmenLs conducLed by Lhe
auLhors and Lhelr resulLs lL can be concluded LhaL:
1. WSCA can reduce message slze by 3x-12x compared Lo SCA.
2. lL ouLperforms ulffLnc and W8xML by large facLors, ln some cases ulffLnc ln facL resulLs
ln message slze exploslon.
3. WSCA only ouLperforms !zllb for messages LhaL conslsL largely of sLrucLured xML.
4. lor messages LhaL conslsL largely of unsLrucLured LexL daLa, !zllb achleves 2x-3x beLLer
compresslon Lhan WSCA, however superlor compresslon of !zllb comes wlLh slgnlflcanL
lncreases ln compuLaLlon Llme.
usually Web Servlces are accesslble Lhrough sLandard lnLerneL proLocols llke P11, buL
wlLhln moblle communlcaLlon neLworks Lhls ls qulLe lnefflclenL. 1he Wlreless AppllcaLlon
roLocol (WA) sulLe provldes proLocols opLlmlzed for packeL orlenLed communlcaLlon over
moblle llnks. 1he lnLerconnecLlon Lo exlsLlng P11 Web Servlces ls achleved by Lhe use of a
WA gaLeway. 1he paper [11] presenLs a reallzaLlon Lo access Web Servlces from !2ML moblle
devlces uslng WA. lor Lhls, a !ava Wlreless Sesslon roLocol (WS) lmplemenLaLlon has been
developed. WA 1ransporL lmplemenLaLlon has been spllL ln several parLs:
a. LowesL layer: 1he sofLware package has Lhe ablllLy Lo consLrucL requesL roLocol
uaLa unlLs (uus) and Lo deLermlne Lhe ocLeL sLream for encoded uus, Lo
reconsLrucL reply uus from an ocLeL sLream recelved vla Lhe neLwork. 1he
payload can be encoded ln W8xML.
b. Mlddle Layer: ablllLy Lo send requesL uus and Lo recelve reply uus Lo and from
Lhe neLwork uslng user uaLagram roLocol (uu) packeLs. 1ransacLlon lu (1lu) ln
Lhls layer can be used Lo deLecL losL packeLs.
c. PlghesL Layer: lmplemenLaLlon of a SCA LransporL Lo be used Lo convey SCA
daLa from Lhe moblle appllcaLlon Lo Lhe web servlce and vlce versa.
W8xML Lncodlng ls Lhe blnary formaL LhaL allows compacL Lransmlsslon wlLh no loss of
funcLlonallLy or semanLlc lnformaLlon, enabllng more effecLlve use of xML daLa on narrowband
communlcaLlon channels. 1o lllusLraLe Lhe daLa reducLlon posslble by uslng W8xML encodlng, a
SCA call Lo Lhe 8abelllsh LranslaLlon Web Servlce of 308 byLes lengLh ls encoded ln W8xML.
1he resulLlng encoded message has a lengLh of 326 byLes, l.e. Lhe orlglnal lengLh has been
reduced by 33.
Analysls of uaLa 1ransfer volume: 1he LoLal volume of proLocol daLa - payload plus
proLocol overhead, such as headers - Lransferred for a glven payload varles dependlng on
whlch LransporL proLocol ls chosen. 1he proLocol overhead, whlch baslcally ls Lhe slze of Lhe
headers added Lo Lhe payload, can be reduced by more Lhan a Lhlrd by slmply chooslng WS
lnsLead of P11 Lo LransporL Lhe SCA messages. lurLher reducLlon, abouL 33, of daLa volume
could be obLalned by encodlng Lhe xML daLa uslng W8xML as descrlbed above.
Analysls of Memory looLprlnL: 1he memory fooLprlnL lncreases lf WS ls used lnsLead of
P11. Analysls of LaLency: lrom Lhe LesLs conducLed by Lhe auLhors lL can be concluded LhaL
Llme for Lransmlsslon of Lhe SCA messages (requesL and response) can be reduced by abouL a
Lhlrd by chooslng connecLlonless WS lnsLead of P11.
1hls paper shows LhaL Lhe performance ln Lerm of laLency can be lncreased uslng a WA
blndlng Lo SCA. WlLh WA lL ls posslble Lo access all exlsLlng P11 Web Servlces. 1he SCA
messages are reduced by a Lhlrd uslng Lhe W8xML encodlng. 1he connecLlonless WS avolds
1C's Lhree way handshake and reduces Lhe proLocol daLa overhead by more Lhan a Lhlrd
compared Lo Lhe P11 overhead.
1he auLhors of Lhe paper [13] refers Lo research ongolng ln Lhe fleld of Web Servlce
provlslonlng on Moblle devlces where Lhe servlces are provlsloned for Lhe moblle devlces and
Lhus proposes a web-servlce provlsloned from Lhe moblle devlces. 1he ob[ecLlve of Lhe paper ls
Lo reproduce and exLend researchers' work for developlng SCA-based moblle Web Servlces
framework. A furLher ob[ecLlve ls Lo explore Lhe feaslblllLy of provldlng 8LS1ful Web Servlces
from moblle devlces and Lo compare beLween Lhe Lwo frameworks ln Lerms of performance,
scalablllLy, rellablllLy and resource consumpLlon. 1hls paper proposes Lwo frameworks,
developed Lo allow deploylng, provldlng and execuLlng Web Servlces from moblle devlces: (1)
SupporLs 8LS1ful-based moblle Web Servlces. (2) SupporLs SCA-based moblle Web Servlces.
1hls research uses ConnecLed LlmlLed uevlce ConflguraLlon (CLuC), a conflguraLlon
deflned ln !ava for Moblle LdlLlon (!ML), due Lo lL ls a low level speclflcaLlon, sulLable for wlde
range of moblle devlces wlLh llmlLed memory capaclLy. Als and llbrarles are added Lo supporL
more feaLures Lhrough Moblle lnformaLlon uevlce roflle (Mlu).
8oLh of Lhe proposed frameworks l.e. SCA and 8LS1ful frameworks are ldenLlcal ln
maln archlLecLure, however Lhey dlffer ln Lhe deLalls of handllng and parslng Lhe requesL. Lach
framework conslsLs of flve maln bulldlng blocks: (1) Web ServlceServleL deploys new servlces
lnLo Lhe moblle devlce and lnvokes Lhe requesLed servlce. 1he flexlblllLy of allowlng Web
Servlce developers Lo cusLomlze Lhe parLlcular handllng of requesLs and responses ls also
supporLed by lL. (2) P11 LlsLener: 1he maln funcLlons of lL lnclude llsLenlng Lo lncomlng
requesLs Lhrough ServerSockeL class, accepLlng lncomlng cllenL's requesLs, lnlLlaLlng new Lhread
for each requesL Lo supporL concurrency and creaLlng lnpuL and ouLpuL sLream for
communlcaLlon. (3) 8equesL Pandler: 1he maln Lask for lL ls Lo process Lhe requesL. Powever
Lhe way Lhls Lask ls carrled ouL ls dlfferenL beLween Lhe Lwo frameworks. lor example ln SCA-
based MWSl Lhe requesL handler wlll unwrap Lhe lncomlng P11 CS1 requesL Lo exLracL Lhe
hldden SCA envelope Lhen lL wlll dlspaLch Lhe envelope Lo Lhe message parser. Powever Lhe
requesL handler for 8LS1ful-based MWSl wlll exLracL Lhe P11 requesL dlrecLly and send lL Lo
Lhe message parser. (4) arser Module: 1he maln funcLlon for lL ls Lo geL Lhe needed
lnformaLlon for lnvoklng a Web Servlce such as Lhe name of Lhe servlce, servlce u8L and some
parameLers. 1hen Lhe exLracLed lnformaLlon ls senL Lo Lhe ServlceServleL. Powever Lhe way Lhls
ls performed ls dlfferenL beLween Lhe Lwo frameworks. ln SCA-based MWSl, Lhe SCA parser
deserlallzes Lhe SCA ob[ecL and maps Lhe daLa Lypes lnLo !ava ob[ecLs uslng kSCA2 and
kxML2 LhaL are open source Als for SCA parslng. Powever ln 8LS1ful MWSl we have creaLed
our own sLrlng manlpulaLor based parser. 1hls parser wlll exLracL Lhe needed lnformaLlon LhaL
resldes expllclLly ln Lhe cllenL's requesL. (3) 8esponse Composer: lL ls responslble for
lnLerpreLlng Lhe resulL Lhen sendlng lL back Lo Lhe cllenL. So on a flrsL clalm Lhere ls noL much
dlfference beLween Lhe Lwo archlLecLures buL Lhe ma[or dlfferenL comes when Lhe
archlLecLures' performance, scalablllLy and amounL of resource consumpLlon ls LesLed.
erformance 1esL: erformance ls analyzed Lhrough measurlng Lhe effecL of varylng Lhe
requesL message slze on Lhe average processlng Llme. 8esulLs show LhaL: 1he average
processlng Llme lncreases when Lhe requesL message slze lncreases. And Lhe average
processlng Llme for SCA-based MWSl ls larger Lhan Lhe average processlng Llme for 8LS1ful-
based MWSl for Lhe same message requesL.
8ellablllLy & ScalablllLy 1esL: 1hls LesL ls accompllshed Lhrough LesLlng concurrency
where a number of cllenLs send requesLs Lo Lhe same hosL slmulLaneously. 8esulLs show LhaL:
as Lhe number of concurrenL requesLs lncreases, Lhe average process Llme also lncreases. And
8LS1ful-based MWSl ls more rlgld and robusL Lo changes ln Lhe number of concurrenL requesL
as compared Lo SCA-based MWSl.
8esource ConsumpLlon 1esL: 8esulLs show LhaL: as Lhe number of requesLs lncreases Lhe
average re[ecLed requesLs lncreases. And Lhe amounL of consumed memory ln SCA-based
framework ls much larger Lhan Lhe amounL of consumed memory ln 8LS1ful based framework
for Lhe same message slze.
8y performlng varlous LesLs on boLh framework lL ls concluded LhaL 8LS1ful-based
MWSls have proved Lo be more sulLable for Lhe moblle envlronmenL because lL does noL
requlre large welghL parsers. ln addlLlon, lL supporLs cachlng whlch wlll save Lhe llmlLed
neLwork bandwldLh and lncrease rellablllLy and scalablllLy. Also lL does noL consume large
amounLs of moblle resources. AnoLher feaLure of 8LS1ful Web Servlces ls Lhe loosely coupled
relaLlon beLween Lhe server and cllenL because of Lhe unlform lnLerface LhaL adds a balance
Lowards uslng lL for Lhe moblle envlronmenL. 1hls llghLens Lhe burden on llmlLed resource
moblle servers and allows conLlnuous provlslon of moblle Web Servlces and only requlres llghL
welghL processlng power.
lL ls essenLlal Lo have a mlddleware plaLform for moblle devlces Lo efflclenLly bulld
dlsLrlbuLed appllcaLlons ln a heLerogeneous moblle envlronmenL. Lspeclally for moblle eer-Lo-
eer (2) appllcaLlons and appllcaLlons whlch have Lo call back a moblle devlce, server
funcLlonallLles for moblle devlces are requlred. 1hus Lhe paper [13] lnLroduces Lhe server
bulldlng block of a moblle Web Servlce based mlddleware.
1he SCA deflnes Lhree roles, a Servlce-8equesLor (8), Servlce-rovlder (), and a Servlce-
8roker. A sofLware agenL lnLeracLlng wlLh oLher sofLware agenLs plays one or more roles. 1he
provlders, publlsh Lhelr servlces Lo a servlce reglsLry (servlce-broker). And Lhe requesLors use
Lhe 8roker Lo search for servlces and lnLegraLe Lhem by accesslng Lhe servlce descrlpLlon. 1o
achleve hlgh lnLeroperablllLy, all SCA enLlLles have Lo use a common language for servlce
descrlpLlon, messaglng and servlce reglsLraLlon such as xML.
P11 deflnes flxed cllenL and server roles. WlLhln one P11 sesslon, one devlce Lakes
Lhe cllenL role whlle anoLher devlce Lakes Lhe server role. ln Lhe Mlddleware, kSCA has been
exLended so LhaL each devlce can Lake boLh roles. P11 server llsLens Lo Lhe P11 server sockeL
for lncomlng requesLs. 8equesLs conLalnlng SCA conLenL are forwarded Lo P11-server 8lndlng
and requesLs wlLhouL SCA conLenL may access sLaLlc resource, llke P1ML pages and flles.
SCA-Server ls lmplemenLed, cllenL connecLs Lo Lhe SCA server for sendlng a P11
CS1/CL1 requesL, Lhe server sockeL accepLs Lhe cllenL connecLlon and reLurns a sockeL
conLalnlng an lnpuL daLa sLream. A P11 requesL message ls exLracLed, from Lhls lnpuL daLa
sLream, and glven Lo Lhe 8equesL Pandler for furLher processlng. 1he 8equesL Pandler de-
serlallzes xML daLa sLrucLures Lo general !ava ob[ecLs. 1hese ob[ecLs and necessary lnformaLlon
are Lhen senL Lo Lhe ueploymenL lnLerface. 8equesL Pandler Lhen calls Lhe 8esponse Pandler Lo
handle a response Lo Lhe cllenL. 8esponse Pandler geLs a resulL from Lhe ueploymenL lnLerface
and sends Lhe resulL Lo Lhe cllenL.

C!" H2'%,+(1/J(&/,+ ,? 0,$/12 32$ 42'5/)2%
now we know dlfferenL frameworks and opLlmlzaLlon Lechnlques for lmplemenLlng
moblle web servlces. Powever, we face an lssue of personallzaLlon of web servlces.
ersonallzaLlon of a servlce ls Lhe ablllLy Lo allow a user u Lo adapL a servlce A Lo flL user u's
parLlcular needs, and afLer such personallzaLlon, all subsequenL servlce rendered by servlce A
Lowards user u ls changed accordlngly. 1he currenL personallzaLlon soluLlons are servlce
speclflc, and use Lhelr own concepLual model for represenLaLlon of personallzaLlon lnformaLlon.
lor example, lf one wanLs Lo synchronlze lLs cellular phone calendar wlLh Coogle Calendar, Lhe
cellular phone calendar needs Lo be Lold LhaL Coogle refers Lo a calendar as "cals". Such a
personallzaLlon Lask could be qulLe complex and musL done manually by Lhe user. 1hls
moLlvaLed Lhe auLhors Lo propose a framework for personallzaLlon of moblle servlces called
Web Servlces ersonallzaLlon lramework (WSl), uslng semanLlc web.
CnLology formally represenLs knowledge as a seL of concepLs wlLhln a domaln, and Lhe
relaLlonshlps beLween Lhose concepLs. lL can be used Lo reason abouL Lhe enLlLles wlLhln LhaL
domaln and may be used Lo descrlbe Lhe domaln. 1he paper descrlbes, Lhe knowledge domaln
LhaL lncludes, Lhe servlces Lhemselves (l.e., whaL Lypes of servlces exlsL and how do Lhey relaLe
Lo each oLher). And Lhe personallzaLlon lnformaLlon used as parL of Lhese servlces (l.e., Lhe
dlfferenL personallzaLlon lnformaLlon elemenLs). ersonallzaLlon lnformaLlon rovlder (l)
conLalns Lhe personallzaLlon lnformaLlon speclflcaLlon for an exlsLlng servlce.
Coals of Lhe framework as descrlbed ln Lhe paper are, Lo speclfy a framework for
personallzaLlon of dlsLrlbuLed servlces whlch ls appllcable for many Lypes of devlces and
servlces, and ln parLlcular Lo supporL Lhe requlremenLs of moblle servlces. And Lo develop a Lool
whlch supporLs and slmpllfles Lhe pracLlcal usage of Lhls framework.
8equlremenLs of Lhe framework are (1) speclfylng whaL personallzaLlon lnformaLlon ls
used ln a servlce (henceforLh referred Lo as a personallzaLlon lnformaLlon speclflcaLlon). (2)
Speclfylng how developers of servlces can exLracL Lhe personallzaLlon lnformaLlon speclflcaLlon
of an exlsLlng servlce whlch ls already supporLed by Lhe personallzaLlon framework. (3)
rovldlng Lools Lo slmpllfy Lhe compleLe process (from lmplemenLaLlon Llme Lo run Llme) of
personallzlng exlsLlng and fuLure servlces.

6/:.'2 P" Q,7>,+2+&% ,? H2'%,+(1/J(&/,+ 6'(728,'9
ComponenLs of ersonallzaLlon framework (llgure 6.) are (1) CnLology access: allows
browslng Lhe exlsLlng onLology of servlces. (2) CeneraLor: generaLes Lhe personallzaLlon sLub for
a new servlce based on an exlsLlng servlce endpolnL or Lhe selecLlon of a servlce concepL ln Lhe
onLology. 1he Lool allows Lhe developer Lo selecL lndlvldual personallzaLlon lnformaLlon
elemenLs Lo be supporLed by Lhe servlce. (3) SLub - a sLub for slmpllfylng Lhe access Lo Lhe
requlred personallzaLlon lnformaLlon, and ls based on Lhe lnpuL glven Lo Lhe generaLor. (4)
Lnglne - supporLs Lhe lnference of personallzaLlon supporL aL run Llme.

ueslgn & lmplemenLaLlon of Lhe framework
(1) lf Lhe servlce ls already lmplemenLed and lf Lhe personallzaLlon elemenLs are accesslble,
a medlaLlon layer can be lnserLed Lo enable personallzaLlon. 1he medlaLlon layer wlll
communlcaLe wlLh Lhe personallzaLlon layer Lo recelve Lhe personallzaLlon lnformaLlon
whlch ls used Lo conflgure Lhe personallzaLlon elemenLs.
(2) lf Lhe servlce ls new and noL yeL lmplemenLed Lhen personallzaLlon can be supporLed by
havlng Lhe personallzaLlon layer lnLroduced ln Lhe xML Web Servlces layer. 1wo cases
are now posslble:
a. A new verslon of a servlce LhaL ls already deflned ln Lhe WSl: 8y whaL Lypes of
personallzaLlon lnformaLlon lL ls personallzed and can elLher be reLrleved dlrecLly
from a runnlng servlce lnsLance, or from Lhe l based on a servlce
lmplemenLaLlon ldenLlfler (e.g. uslng Lhe arLlflclal Lerm "lnsLanLmessenger").
b. A new servlce ln Lhe WSl: lf Lhe servlce concepL exlsLs ln Lhe personallzaLlon
onLology Lhe personallzaLlon lnformaLlon speclflcaLlon of Lhe servlce concepL wlll
be exLracLed and used. lf Lhe servlce concepL ls new, lL needs Lo be deflned and
added Lo Lhe exlsLlng onLology aL Lhe ersonallzaLlon lnformaLlon rovlder.
AL 8unLlme, when Lhe personallzaLlon sLub ls abouL Lo download personallzaLlon
lnformaLlon from Lhe l, lL wlll requesL a personallzaLlon lnformaLlon elemenL denoLed by Lhe
name x (e.g. "noLes" as ln Lhe calendar example ln Lhe lnLroducLlon). Powever, lf LhaL
personallzaLlon lnformaLlon uploaded Lo Lhe l uses anoLher Lerm A Lo denoLe Lhe same Lype
of personallzaLlon lnformaLlon. 1o ensure Lhe correcL reLrleval of all such lnformaLlon, Lhe sLub
wlll conLacL Lhe onLology and by lnference flnd all Lhe Lerms whlch are equlvalenL Lo Lerm x,
leL's say Lhe equlvalence class of x ls [ A, l, C }. 1he sLub wlll Lhen download all Lhe
personallzaLlon lnformaLlon elemenLs relaLed Lo Lhe Lerms x, A, l and C ln Lhe l. When Lhe
Lool accesses an exlsLlng servlce Lo reLrleve lLs personallzaLlon lnformaLlon speclflcaLlon, Lhe
servlce ls responslble for speclfylng Lhe servlce speclflcaLlon, l, and locaLlon of Lhe
personallzaLlon lnformaLlon sLorage.
lL can be concluded LhaL personallzaLlon layer ls an lmporLanL plece of Lhe framework,
whlch ls supporLed by a Lool, and whlch descrlbes Lhe approprlaLe sLeps Lowards enabllng
personallzaLlon of moblle servlces. 1hls framework can be used Lo provlde effecLlve soluLlon for
Lhe currenL personallzaLlon soluLlons whlch are servlce speclflc and use Lhelr own concepLual
model for represenLaLlon of personallzaLlon lnformaLlon. 1hus slmpllfylng and auLomaLlng Lhe
personallzaLlon Lask.

C!!" K,,1% ?,' 0,$/12 32$ 42'5/)2% B2521,>72+&
8ecenLly many Lools and Als have been developed for developmenL of moblle web
servlces. 1he paper [9] presenLs a gSCA sLub and skeleLon compller. A unlque SCA-Lo-C/C++
language blndlng for deploylng C/C++ appllcaLlons ln SCA Web Servlces, cllenLs, and peer-Lo-
peer compuLlng neLworks ls provlded by Lhe compller. Legacy C/C++/lorLran codes, embedded
sysLems, and real-Llme sofLware ln Web Servlces, cllenLs, and peers LhaL share compuLaLlonal
resources and lnformaLlon wlLh oLher SCA enabled appllcaLlons, posslbly across dlfferenL
plaLforms, language envlronmenLs, and dlsparaLe organlzaLlons locaLed behlnd flrewalls can be
lnLegraLed LogeLher by gSCA.
Slmllarly, paper [14] presenLs a moblle dlsLrlbuLed compuLlng plaLform for dlsLrlbuLed
servlces compuLlng ln moblle envlronmenL wlLh real-Llme communlcaLlon capablllLles known as
Wldrold. lL ls based on Web Servlces Sesslon lnlLlaLlon roLocol (Wl) for real-Llme servlce-
orlenLed communlcaLlon over l. Wldrold supporLs web servlces based communlcaLlon over l
Lhough lLs Wl componenL. Wl Lransforms Wldrold lnLo a moblle SCA web servlces endpolnL.
1wo-way web servlces can expose and enable appllcaLlons developed on Wldrold. 1hls makes
Wldrold well sulLed for dlsLrlbuLed compuLlng and SCA based appllcaLlons, such as
communlcaLlon enabled buslness process (CL8) and SofLware-as-a-Servlce (SaaS).
Wldrold also leads Lo a new Lype of dual-mode phone, wlLh one communlcaLlon mode
from Lhe blndlng wlLh Lhe physlcal moblle envlronmenL, e.g. CSM, CuMA, 3C, eLc., and one fully
web servlces enabled, servlce-orlenLed communlcaLlon over l mode from Wl. A proLoLype
Wldrold moblle compuLlng plaLform ls developed and LesLed. ln order Lo supporL advance web
servlces capablllLles on moblle endpolnLs,, we developed an endpolnL-edlLlon of Lwo-way web
servlces appllcaLlon proxy (2SA) whlch has a small memory fooLprlnL (2 Lo 3 M8) and can be
hosLed on a moblle endpolnL/handseL, e.g. smarL phone and uA.

C!!!" !+&',-.)&/,+ &, Q1,.- ),7>.&/+: /+ 0,$/12
Cloud CompuLlng refers Lo boLh Lhe appllcaLlons dellvered as servlces over Lhe lnLerneL
and Lhe hardware and sysLems sofLware ln Lhe daLacenLers LhaL provlde Lhose servlces. 1he
servlces Lhemselves have long been referred Lo as SofLware as a Servlce (SaaS). 1he daLacenLer
hardware and sofLware ls whaL we wlll call a Cloud. When a Cloud ls made avallable ln a pay-as-
you-go manner Lo Lhe general publlc, we call lL a ubllc Cloud, Lhe servlce belng sold ls uLlllLy
CompuLlng. We use Lhe Lerm rlvaLe Cloud Lo refer Lo lnLernal daLacenLers of a buslness or
oLher organlzaLlon, noL made avallable Lo Lhe general publlc. 1hus, Cloud CompuLlng ls Lhe sum
of SaaS and uLlllLy CompuLlng, buL does noL lnclude rlvaLe Clouds. eople can be users or
provlders of SaaS, or users or provlders of uLlllLy CompuLlng. [16]

1he prlmary consLralnLs for moblle compuLlng are llmlLed energy and wlreless
bandwldLh. 1he moLlvaLlon behlnd Lhe paper [1] ls Lo LesL weaLher cloud appllcaLlons are good
soluLlon Lo lmprovlng baLLery llfeLlme of a moblle devlce. Many appllcaLlons are Loo
compuLaLlon lnLenslve Lo perform on a moblle sysLem. lf a moblle user wanLs Lo use such
appllcaLlons, Lhe compuLaLlon musL be performed ln Lhe cloud.

varlous cosL/beneflL sLudles focus on wheLher Lo offload compuLaLlon Lo a server. 1he
followlng example provldes a slmple analysls for Lhls declslon.
Suppose Lhe compuLaLlon requlres - lnsLrucLlons. LeL ! and . be Lhe speeds, ln
lnsLrucLlons per second, of Lhe cloud server and Lhe moblle sysLem, respecLlvely. 1he same Lask
Lhus Lakes -/! seconds on Lhe server and -/. seconds on Lhe moblle sysLem. lf Lhe server and
moblle sysLem exchange 0 byLes of daLa and 1 ls Lhe neLwork bandwldLh, lL Lakes 0/1 seconds
Lo LransmlL and recelve daLa. 1he moblle sysLem consumes, ln waLLs, 2" for compuLlng, 2' whlle
belng ldle, and 23& for sendlng and recelvlng daLa. (1ransmlsslon power ls generally hlgher Lhan
recepLlon power, buL for Lhe purpose of Lhls analysls, Lhey are ldenLlcal.)
lf Lhe moblle sysLem performs Lhe compuLaLlon, Lhe energy consumpLlon ls 2" (-/.).
lf Lhe server performs Lhe compuLaLlon, Lhe energy consumpLlon ls [2' (-/!)] + [23& (0/1)].
1he amounL of energy saved ls
2" -/. - 2' -/! - 23& 0/1 ......(1)
Suppose Lhe server ls 4 Llmes fasLer-LhaL ls, ! = 4 .. We can rewrlLe Lhe formula as,
-/. (2" - 2'/45 - 23& 01 6666666. (2)
Lnergy ls saved when Lhls formula produces a poslLlve number. 1he formula ls poslLlve lf
0/1 ls sufflclenLly small compared wlLh -/. and 4 ls sufflclenLly large. 1he values of ., 2', 2",
and 237 are parameLers speclflc Lo Lhe moblle sysLem. lor example, an P lAC uA wlLh a 400-
MPz (. = 400) lnLel xScale processor has Lhe followlng values: 2" = 0.9 W, 2' = 0.3 W, and 23& =
1.3 W.
lf we use a four-core server, wlLh a clock speed of 3.2 CPz, Lhe server speedup 4 may be
glven by (!/.) = [(3.2 1,024 4 8)/400], where 8 ls Lhe speedup due Lo addlLlonal memory,
more aggresslve plpellnlng, and so forLh. lf we assume 8 = 3, we obLaln Lhe value of 4 = 160.
1he value of 4 can lncrease even more wlLh cloud compuLlng lf Lhe appllcaLlon ls
parallellzable, slnce we can offload compuLaLlon Lo mulLlple servers. lf we assume LhaL 4 = 160,
LquaLlon (2) becomes
C/400 (0.9 - 0.3/160) - 1.3 u/8 = (0.00223 C) - 1.3 u/8 .... (3)
lor offloadlng Lo break even, we
equaLe LquaLlon 3 Lo zero and
8o = 377.77 u/C .... (4)
where 1( ls Lhe mlnlmum
bandwldLh requlred for offload-
lng Lo save energy, deLermlned
by Lhe raLlo of (0/-). lf (0/-) ls
low, Lhen offloadlng can save
energy. 1hus, as llgure 7 shows,
offloadlng ls beneflclal when
large amounLs of compuLaLlon -
are needed wlLh relaLlvely small
amounLs of communlcaLlon 0.
6/:.'2 R" I??1,(-/+: Q,77.+/)(&/,+ SBT 5% Q,7>.&(&/,+ SQT
!U" Q,+)1.%/,+
1hls survey paper presenLed varlous frameworks llke Moblle PosL, Moblle SCA,
ulsLrlbuLed Moblle Web Servlce ArchlLecLure for creaLlng moblle web servlce provlders. 1hen
we dld a comparlson beLween synchronous and asynchronous web servlce framework for
moblle web servlces where we concluded LhaL asynchronous web servlce ls beLLer when
developlng web servlces for moblle devlces.
1hen we sLudled abouL performance analysls and opLlmlzaLlon Lechnlques avallable for
moblle web servlces and concluded we can opLlmlze Lhe web servlces by xML compresslon.
8oLh Lhe server and Lhe cllenLs, ln parLlcular cllenLs LhaL are poorly connecLed, beneflL from
xML compresslon. Llx ls marglnally beLLer Lhan ZLl8 ln response Llme. 8y uLlllzlng compresslon
Lechnlque, much more lnformaLlon can be Lransferred and processed before Lhls llmlL ls
reached, Lhe cosL of uslng Lhe servlce ls reduced as Lhe amounL of daLa Lransferred ls reduced
due Lo compresslon and reduclng Cu uLlllzaLlon and radlo uLlllzaLlon can boLh conLrlbuLe
slgnlflcanLly Lo baLLery llfe. erformance ln Lerm of laLency can be lncreased uslng a WA
blndlng Lo SCA. 1he SCA messages are reduced by a Lhlrd uslng Lhe W8xML encodlng. 1he
connecLlonless WS avolds 1C's Lhree way handshake and reduces Lhe proLocol daLa overhead
by more Lhan a Lhlrd compared Lo Lhe P11 overhead.
8y performlng varlous LesLs on boLh framework lL was concluded LhaL 8LS1ful-based
MWSls have proved Lo be more sulLable for Lhe moblle envlronmenL Lhan SCA-based MWSls
because lL does noL requlre large welghL parsers. lL can be concluded LhaL personallzaLlon layer
ls an lmporLanL plece of Lhe framework, whlch ls supporLed by a Lool, and whlch descrlbes Lhe
approprlaLe sLeps Lowards enabllng personallzaLlon of moblle servlces.
1hen we learnL abouL varlous Lools avallable for Moblle Web Servlces such as gSCA
whlch provldes LransparenL SCA Al Lhrough Lhe use of compller Lechnology LhaL hldes
lrrelevanL SCA-speclflc deLalls from Lhe user. 1he compller auLomaLlcally maps naLlve and
userdeflned C and C++ daLa Lypes Lo semanLlcally equlvalenL SCA daLa Lypes and vlce-versa. As
a resulL, full SCA lnLeroperablllLy ls achleved wlLh a slmple Al rellevlng Lhe user from Lhe
burden of SCA deLalls and enabllng hlm or her Lo concenLraLe on Lhe appllcaLlon-essenLlal
loglc. And we learnL abouL Wldrold, a Lwo-way web servlces and real-Llme communlcaLlon
enabled moblle compuLlng plaLform for dlsLrlbuLed servlces compuLlng, for Androld plaLform.
1hen flnally we learnL abouL cloud compuLlng and LhaL offloadlng ls beneflclal when
large amounLs of compuLaLlon C are needed wlLh relaLlvely small amounLs of communlcaLlon u.

U" V2?2'2+)2%
[1] kumar, k. , & Lu, ?. (2010). Cloud compuLlng for moblle users: Can offloadlng compuLaLlon
save energy?. -(9:;3#&, <=(4), 31-36.
[2] 8an[lL Slngh, ShakLl Mlshra, and u. S. kushwaha. 2009. An efflclenL asynchronous moblle
web servlce framework. !>?!@4A !(B3CD E$FD G(3#H 34, 6 (uecember 2009), 1-7.
[3] SaLlsh narayana Srlrama, MaLLhlas !arke, and Wolfgang rlnz. 2006. Moblle Web Servlce
rovlslonlng. ln 2&("##I'$FH (B 37# JIK%$"#I >$3LM -($B#&#$"# ($ A#M#"(99;$'"%3'($H %$I >$3LM
-($B#&#$"# ($ >$3#&$#3 %$I N#O J::M'"%3'($H %$I !#&K'"#H (AlC1-lClW '06). lLLL CompuLer
SocleLy, WashlngLon, uC, uSA, 120.
[4] 1ergu[eff, 8., Paa[anen, !., Leppanen, !., 1olvonen, S., , "Moblle SCA: Servlce CrlenLaLlon on
LlghLwelghL Moblle uevlces," N#O !#&K'"#HP ,QQRD >-N! ,QQRD >EEE >$3#&$%3'($%M -($B#&#$"# ($ ,
vol., no., pp.1224-1223, 9-13 !uly 2007.
[3] !orsLad, l., uo van 1hanh, , "A lramework and 1ool for ersonallsaLlon of Moblle Servlces
uslng SemanLlc Web," .(O'M# 0%3% .%$%F#9#$3P ,QQR >$3#&$%3'($%M -($B#&#$"# ($ , vol., no.,
pp.402-406, 1-1 May 2007.
[6] !lang, M., Zhlhul ?ang, ALhale, A., , "A Model-8ased Approach Lo lmplemenLlng 8eal-1lme
Moblle Servlces," -(9:;3#& !(B3C%&# %$I J::M'"%3'($HP ,QQSD -@.2!J- LQSD =,$I J$$;%M >EEE
>$3#&$%3'($%M , vol., no., pp.1193-1198, !uly 28 2008-Aug. 1 2008.
[7] !ohnsrud, L., Padzlc, u., Pafsoe, 1., !ohnsen, l.1., Lund, k., , "LfflclenL Web Servlces ln
Moblle neLworks," ($ N#O !#&K'"#HP ,QQSD E-@N! LQSD >EEE !'T37 E;&(:#%$ -($B#&#$"# , vol.,
no., pp.197-204, 12-14 nov. 2008.
[8] M 1lan, 1 volgL, 1 naumowlcz, P 8lLLer, ! Schlller, erformance conslderaLlons for moblle
web servlces, CompuLer CommunlcaLlons, volume 27, lssue 11, 1 !uly 2004, ages 1097-1103,
lSSn 0140-3664, 10.1016/[.comcom.2004.01.013.
[9] van Lngelen, 8.A., Calllvan, k.A., , "1he gSCA 1oolklL for Web Servlces and eer-Lo-eer
CompuLlng neLworks," -M;H3#& -(9:;3'$F %$I 37# ?&'IP ,QQ,D ,$I >EEE/J-. >$3#&$%3'($%M
!U9:(H';9 ($ , vol., no., pp. 128, 21-24 May 2002.
[10] Al[az, l., Pameed, 8., Walke, 8., , "1owards eer-Lo-eer Long-Llved Moblle Web Servlces,"
>$$(K%3'($H '$ >$B(&9%3'($ A#"7$(M(FUP ,QQRD >>A LQRD <37 >$3#&$%3'($%M -($B#&#$"# ($ , vol., no.,
pp.371-373, 18-20 nov. 2007.
[11] C. Cehlen and 8. 8ergs. erformance of moblle web servlce access uslng Lhe wlreless
appllcaLlon proLocol (WA). ln roceedlngs of Lhe World Wlreless Congress, 2004.
[12] naresh ApLe, kelLh ueuLsch, and 8avl !aln. 2003. Wlreless SCA: opLlmlzaLlons for moblle
wlreless web servlces. ln !:#"'%M '$3#&#H3 3&%"VH %$I :(H3#&H (B 37# *<37 '$3#&$%3'($%M "($B#&#$"#
($ N(&MI N'I# N#O (WWW '03). ACM, new ?ork, n?, uSA, 1178-1179.
[13] ham, Llnh, Cehlen, Culdo, , "8eallzaLlon and erformance Analysls of a SCA Server for
Moblle uevlces," N'&#M#HH -($B#&#$"# ,QQW X G#T3 ?#$#&%3'($ N'&#M#HH %$I .(O'M#
-(99;$'"%3'($H %$I !#&K'"#H YE;&(:#%$ N'&#M#HH5P **37 E;&(:#%$ , vol., no., pp.1-7, 10-13 Aprll
[14] Wu Chou, Ll Ll, , "Wldrold - A 1wo-way Web Servlces and 8eal-Llme CommunlcaLlon
Lnabled Moblle CompuLlng laLform for ulsLrlbuLed Servlces CompuLlng," !#&K'"#H -(9:;3'$FP
,QQSD !-- LQSD >EEE >$3#&$%3'($%M -($B#&#$"# ($ , vol.2, no., pp.203-212, 7-11 !uly 2008.
[13] AlShahwan, l., Moessner, k., , "rovldlng SCA Web Servlces and 8LS1ful Web Servlces
from Moblle PosLs," >$3#&$#3 %$I N#O J::M'"%3'($H %$I !#&K'"#H Y>->N5P ,Q*Q 4'B37 >$3#&$%3'($%M
-($B#&#$"# ($ , vol., no., pp.174-179, 9-13 May 2010.
[16] A. Mlchael, l. Armando, C. 8ean, u. !. AnLhony, k. 8andy, k. Andy, L. Cunho, . uavld, 8.
Arlel, S. lon, and Z. MaLel. Above Lhe clouds: A berkeley vlew of cloud compuLlng. 1echnlcal
reporL, unlverslLy of Callfornla, 8erkeley, 2008.