• No results found

Service -realization. Imported web -service interfaces. Web -service usage interface. Web -service specification. client. build/buy reuse/buy

N/A
N/A
Protected

Academic year: 2021

Share "Service -realization. Imported web -service interfaces. Web -service usage interface. Web -service specification. client. build/buy reuse/buy"

Copied!
11
0
0

Loading.... (view fulltext now)

Full text

(1)

Business Processes

MikeP.PapazoglouandJianYang

Infolab,TilburgUniversity,POBox90153,5000LE,Tilburg,Netherlands

fmikep,[email protected],

Abstract. E-businessisshiftingattentionfromcomponentbasedtoweb

servicebasedapplications.Mostenterprisesspendmostoftheirtime

as-sembling applications by consumingweb servicesratherthanworrying

aboutthedesignprinciplesunderlyingthem,theirgranularityorthe

de-velopmentofcomponentsthatimplementthem.Inthispaperwepresent

adesignmethodologyforwebservicesandbusinessprocesses.Wediscuss

howbusinessprocessshouldbe describedso thatservicescanbe

prop-erlyidentiedandprovidestrategiesandprinciplesregardingfunctional

andnon-functionalaspectsofwebservicedesign.

1 Introduction

Manyenterprisesarespendingasignicantamountoftheirtimeassembling

ap-plicationsthatprovidewebservicefunctionalityratherthanworryingaboutthe

designprinciples underlying the web services,theirgranularityorthe

develop-mentofcomponentsthat implementthem. Onequestionarisesnaturally:what

isthe properwayto designweb servicessothat theycanbeeÆcientlyusedin

businessapplications, canbemanaged, reused,pricedand metered?

Implementing a thin SOAP/WSDL/UDDI [3,2,4] layer on top of existing

applicationsor componentsthatrealizethewebservicesisnotenoughto build

reliable,manageable,andre-usablewebservices.Thereisstillalistofissuesthat

need to be addressedand researched in connectionwith design methodologies

andengineeringprinciples before webservicesbecometheprominentparadigm

fordistributedcomputingandelectronic business.

Wecancertainly borrowseveralideasfromtheareaof componentsoftware

development. Although it provides some technical insights such as reusability

andplug-replaceability,specication,and designprincipleswhichcanbeuseful

to web servicedesign, these twoconcepts are dierentin termsof the level of

abstractionand(functionalandnon-functional)concerns.

Whatis missing is a sound design methodologyand engineeringprinciples

for developing web service based applications. The methodology we propose

herein is based on coreweb service infrastructure,i.e., WSDL and WSFL [1].

It consists of two parts:a framework for business process analysis and service

design principles. The former provides the means for identifying web services

(2)

application scenariofrom thebusiness domain of e-travellingand in particular

the specications of the open travel agency [11]. OTA has specied a set of

businessprocessesforobtainingservicesrelatingtothetravelindustry.Wewill

demonstratehowthedesignprinciples areappliedintermsofthisexample.

2 Service Interface and Specication

Whendesigning anapplication, developersdevelopalogicalmodelof what an

enterprisedoesin termsofbusiness objects(such asproduct, customer, order,

bill,etc)andtheservicesthebusinessrequiresfromthesebusinessobjects(what

isthe stock level,what isthedeliveryscheduleand soon).Thedevelopermay

implementthese conceptsasablendofserviceinterfacesand components(the

business objects). Components are normally used to implement (realize) the

servicefunctionality. Frequently, theinterfacesthatthecomponentsrealizeare

too low level and not representative of the actual business services provided.

Thisimpliesthat wearedealingwithtwolargelycomplementaryelements:the

serviceinterfaceanditscorrespondingimplementationcomponent(service

real-ization),illustratedinFigure1.Itisimportanttodistinguishbetweenthesetwo

elementsbecauseinmanycasestheorganisationsthatprovideserviceinterfaces

arenotthesamewiththeorganisationsthat implement theservices.Aservice

isabusiness conceptthatshould bespeciedwithanapplicationortheuserof

theserviceinmind,whiletheservicerealizationmaybeprovidedbyasoftware

package,e.g.,anERP package,aspecial purposebuiltcomponent,commercial

o the shelf applications (COTS), ora legacy application. To a service client

is irrelevant whether the servicesare provided by a ne-grainedsuite of

com-ponents, or a single monolithic ERP. It is important that the developer who

implementsthe servicestill thinks aboutgranularity so theycanchange parts

of the implementation with the minimum of disruption to other components,

applications and services. The granularity of components should be theprime

concernof thedeveloperresponsibleforprovidingcomponentimplementations

forservices,whereasservicedesigners should bemoreinterestedin theprocess

operationsandassemblypotentialoftheprovided services.

Theonlywayoneservicecaninteractwith anotherisviaitsinterface.The

interface simply provides the mechanismby which services communicate with

applicationsandother services.Technically,theserviceinterfaceisthe

descrip-tionofthesignaturesofasetofoperationsthatareavailabletotheserviceclient

forinvocation.Theservicespecicationmustexplicitlydescribealltheinterfaces

thataclientofthisserviceexpectsaswellastheserviceinterfaces(if any)that

must be provided by the environment into which the service is assembled. As

these service interfaces areprovided by other servicesthe service specication

servesasameanstodenehowtheserviceinterfacecanberelatedtothe

inter-faces ofthe imported servicesandhowitcanbeimplementedoutofimported

serviceinterfaces.Inthis sensethe servicespecicationhasamission identical

(3)

Service -realization

Web -service

Implementation

(outsourced )

Web -service

specification

Imported

web -service

interfaces

Web -service

usage

interface

Web -service

client

reuse/buy

build/buy

build

Web -service

Implementation

(in -house)

Web -service

Implementation

(outsourced )

Service -realization

Web -service

Implementation

(outsourced )

Web -service

specification

Imported

web -service

interfaces

Web -service

usage

interface

Web -service

client

reuse/buy

build/buy

build

Web -service

Implementation

(in -house)

Web -service

Implementation

(outsourced )

Component

Component

Component

Fig.1.ServiceRealization StrategyandArchitecture

andhowtodeneanewwebserviceinterface(<PortType>)asacollection

(as-sembly)ofexisting ones(imported <PortType>s).Aservicespecication,thus,

denes the encapsulation boundary of a service, and consequently determines

thegranularityofreplaceabilityofwebserviceinterfacecompositions. Justlike

components, servicescan be plug-replaceable, onlyif service specications are

self- contained and symmetrical [6]. As service development requires that we

dealwithmultipleimportedserviceinterfacesitisusefultointroducethisstage

the concept of service usage interface. A service usage interface is simply the

interfacethataclientoftheserviceexpectsto see.

3 Describing Business Process Features

The key focal point of web service design is the business process. A business

processleveragesthe<port type>elementinWSDLtodeneitsbasicprocess

activityinterface.Abusinessprocesscanbemodelledasastatemachinewhere

activitiesaremodelledaswebserviceinvocations,whicharesequencedbystate

transitionevents(controlowactivities).

Determineobjectivesanddescribethebusinessprocessstructure:The

(4)

thebusinessprocess.Thefunctions ofabusiness processareexpressedinterms

oftheactivitiesortheservicesthatneedtobeperformedbyaspecicbusiness

process.Forinstance,theregistrationofanewcustomerisanactivityinasales

orderprocess. Thedescriptionofaprocessencompassesthefollowingactions:

1. Identify,groupanddescribetheactivitiesthattogetherimplementabusiness

process:Theobjectiveofthisactionistoidentifytheservicesthatneedtobe

combinedinordertogenerateabusinessprocessandthendescribetheusage

interfaceoftheoverallbusinessprocess.Thestructureofabusinessprocess

describes how an individual process activity (<PortType>) is linked with

another in order to achievea business process. To assemble ahigher-level

servicebycombiningotherwebservices,theservicedesigner needsto:

{ Selecttheservicestocomposebylookingathowtheseservicesandtheir

operationswithinabusinessprocessrelatetooneanother.

{ Connectthe usageinterfaceof thebusiness process tothe interfacesof

importedservicesandplugthemtogether.

2. Describeactivitydependencies,conditionsorsynchronisation:Aprocess

def-initioncanorganiseactivitiesintovarying structures:

{ Hierarchical activity denitions: in a hierarchical denition processes

activitieshaveahierarchicalstructure.Forinstance,theactivityof

send-inganinsurancepolicy foratravelplan canbedividedinto three

sub-activities:computetheinsurancepremium,notifyinsurance,mail

insur-ancepremiumtothecustomer.

{ Conditional activity denitions: in processdenitions that havea

con-ditionalactivitystructureactivitiesareperformedonlyifcertain

condi-tionsaremet.Forinstance, itmaybecompanypolicy tosendasecond

billing notice to a traveller when an invoice is more than two months

overdue.

{ Activitydependencydenitions:processdenitionsareincomplete

with-out further indication of the activity structure. In any process

deni-tion,sub-activitiescanexecuteonlyafter theirparentactivityhas

com-menced.Thismeansthatsub-activitiesareimplicitlydependentontheir

parentactivity.Inothercasestheremightbeanexplicitdependency

be-tween activities: an activity may only be able to start when another

specic activity hascompleted. Forinstance, an itinerary conrmation

cannotbesentto atravellerunlessallightshavebeenreservedbyan

airline.

3. Describethe implementation of the businessprocess:Writethe application,

e.g.,provideaWSFLdenition,that mapstheoperationsandinterfacesof

importedservicesto thoseof anotherin orderto createtheusageinterface

ofthebusiness process(higher-levelwebservice).

Describe business activity responsibilities (roles): The second step in

the service design methodology is to identify responsibilities associated with

business process activities and the service providers that are responsible for

(5)

isexpectedtoproperlyfullthebusinessresponsibilityofimplementingtheweb

service, orset of web services, which performthat activitywithin the process

under therolethat theprovideris expectedto undertake.Toexplicatethis we

usetheOTAtravelreservationsexampleandassumethatthisbusiness process

is expressed in WSFL. For each activity, we would identify service provider

responsible for theexecution of the process step(for example, servicesoered

byatravelagentorbyanairlinecompany)and denetheassociationbetween

activitiesin theowmodeland operationsoeredbytheservice. Inthetravel

reservations example, we may dene the business process for handling travel

reservations as a WSFL ow model. However, we do not bind the activities

to particular serviceproviders.Instead weidentify thegeneric serviceprovider

(role)that is requiredforeachactivity(forexample, sometravelagentforthe

activityprocessbookthetrip,andsomeairlineservicefortheactivityorderand

issuethetickets).Wewouldthen denetheWSDLwebserviceinterfaceofthe

owmodel,thatis,theWSFL<serviceProviderType>oftheowmodel.This

interfacehastwofacets:onefacetdenestheinterfacethataserviceclientwould

usewhenrequestingtheprocessingofatravelreservation,thatis,theoperations

thatthewebserviceprovidesforusebyservicerequesters.Forexample,service

would provide an operation that takes a trip order asinput and passes it on

(throughaWSFLowsource)totheactivitiesintheowmodelforprocessing.

Theotherfacetidentiestheoperationsthattheservicerequiresfromtheother

serviceproviders.

4 Service Design Principles

Theservicedesignprinciplesthatunderlyingtheservicedesignstagesdescribed

aboverevolvearoundtwowell-known software designguidelines: coupling and

cohesion.Theseguaranteethatservicesareself-contained,modularandableto

supportservicecomposability.

4.1 Service coupling

It is importantthat the groupingof activitiesin business processes isas

inde-pendentas possible from other such groupingsin other processes. One way of

measuring service design quality is coupling, orthe degree of interdependence

betweentwobusiness processes.Theobjectiveisto minimise coupling,that is,

to make (self-contained) business processesas independent as possible by not

havinganyknowledgeof orrelying onany other business processes.Low

cou-plingbetweenbusinessprocessesindicatesawell-partitionedsystemthatavoids

theproblemsofserviceredundancyandduplication.

Couplingcanbeachievedbyreducingthenumberofconnectionsbetween

ser-vicesinabusinessprocess,eliminatingunnecessaryrelationshipsbetweenthem,

and byreducingthenumberof necessaryrelationships,if possible.Coupling is

(6)

cicrepresentational or computational details of oneanother. Thecentral

tacticstemsfromtheideaofabstractclassesinobject-orienteddesignwhere

compositeclassesandactionsminimisesdependenciesonirrelevant

represen-tationalandcomputationaldetails [7].Theseconcernsleadtothe

exploita-tionofinteroperabilityandreusabilityforservicedesign.Thissolvesseveral

serviceoptionsrelatedtodesign,including:

(a) Interchangeable/replaceable services: existing services may be swapped

bynewserviceimplementations{oronessuppliedbyadierentprovider

oeringbetter performance orpricing { withoutdisruptingthe overall

businessprocessfunctionality.

(b) Multiple service versions: dierentversionsof aservicemaywork best

in parts of a business processes depending on the application's needs.

For example, a stock exchange service may provide dierent levels of

detail, e.g., nancial details, charts, market projections, depending on

thechargingoptions.

2. Identitycoupling:Connection channelsbetweenservicesshouldbeunaware

ofwhoisprovidingtheservice.Itisnotdesirabletokeeptrackofthetargets

(recipients)ofservicemessages,especiallywhentheyarelikelytochangeor

whendiscoveringthebestserviceproviderisnotatrivialmatter.

3. Communicationprotocolcoupling:Asenderofamessageshouldrelyonlyon

thoseeectsnecessarytoachieveeectivecommunication.Forexample,

one-waystylesofoperationwhereaserviceendpointreceivesamessagewithout

havingto sendanacknowledgementplacesthelowest possibledemands on

theserviceperformingtheoperation.Theservicethatperformstheoperation

doesnotassumeanything aboutwhen theeects oftheoperation hold, or

evenrequirethatanoticationbesentbackindicatingcompletion.

Lowcoupling increasesthe degreeofisolation of onebusiness processfrom

changes thathappentoanother; simpliesdesignunderstanding;andincreases

thereusepotentialofwebservices.

4.2 Service cohesion

Cohesion is the degree of the strength of functional relatednessof operations

within aservice. Designers should create strong, highly cohesivebusiness

pro-cesses,businessprocesseswhoseservicesandserviceoperationsarestronglyand

genuinely relatedto oneanother.Theguidelines bywhichto increasecohesion

areas follows:

1. Functional service cohesion: A functionally cohesive business process

con-tains services that all contribute to the execution of one and only one

problem-related task. At the same time the operations in the services of

thebusiness processmustalsobehighlyrelatedtoone another.

2. Communicational service cohesion: A communicationally cohesivebusiness

(7)

relatedto elementsinotherbusiness processes.

3. Logical servicecohesion:A logicallycohesivebusiness processis onewhose

activitiesall contributeto tasksof the samegeneral category. These tasks

areselectedandinvokedoutsidethebusinessprocess.

Highcohesionincreasestheclarityandeaseofcomprehensionofthedesign;

simplies maintenance and future enhancements; achieves service granularity

at a fairly reasonable level; and often supports low coupling. The ne grain

of highly related functionality supports increased reuse potential as a highly

cohesiveservicemodule canbeusedforveryspecicpurposes.

5 Non Functional Service Design Guidelines

Non-functionalservicecharacteristicsdescribethebroadercontextofaservice,

e.g., what business function the web service accomplishes, how it ts into a

broader business process context aswell ascharacteristicsof thehosting

envi-ronmentsuchaswhethertheserviceproviderensuressecurityandprivacy,what

kindofauditing,securityandprivacypolicyisenforcedbytheserviceprovider,

whatlevelsofqualityofserviceareavailableandsoon,e.g,non-functional

char-acteristicsofwebservicessuchasthosedescribedbytheWebServiceEndpoint

Language(WSEL).

5.1 Service provisioningstrategies

Serviceprovisioningiscentralto operatingrevenuegeneratingwebservices

be-tweenorganisations. It is acomplexmixture of technical and business aspects

forsupportingserviceclientactivitiesandinvolveschoicesforservicerealization,

serviceenrolment,auditing,metering,billingandmanagingoperationsthat

con-trolthebehaviourofaserviceduringuse.Theprovisioningrequirementsforweb

servicesimposeseriousimplicationsforthedesignmethodologyofservices.

5.1.1Servicerealizationstrategies Theseparationofspecicationfrom

im-plementation allows web services to be realized in dierent ways. It becomes

importantthentoplaneectivelywhendecidinghowtorealizeorprovision

ser-vices,considerthediversityofrealizationalternativesandmaketherightchoice.

Thereareimportantfactorsthatneedtobeconsideredduring thisprocessand

thesearesimilarto thefactorsconsideredwhenrealizingcomponents[8]:

{ Gapanalysis.This techniquedecidestheservicerealizationstrategyby

in-crementallyaddingmoreimplementationdetailstoanabstractserviceusage

interface.Duringthisprocessaservicerealizationarchitecturecanbeusedto

(8)

alizationarchitecture,withavailablesoftwareserviceimplementations.Figure1

showshowimportedserviceinterfaces,whicharepartofabusiness processare

realizedin termsofalreadyexisting interfacesandimplementations.Theticker

arrowsinthisguredenotethedierentprovisioningpossibilities,suchreusing,

buildingorbuyingserviceinterfacesandtheirunderlyingimplementations.This

gure also illustrates that service interfaces may be provided by one service

providerwhileanother provider,e.g.,an ASPcompany,mayoertheir

under-lying implementation. Agap analysis strategymaybe developedin stages and

results in a recommendation to do development work, reuse or purchase web

services.

Theservicerealizationstrategyinvolveschoosingfromanincreasingdiversity

ofdierentoptionsforservices,inadditiontoservicereuse,whichmaybemixed

in variouscombinationsincluding:

1. Purchasing/leasing/paying per use for services. This option is covered in

somedetailinthesectiononservicemeteringandbilling.

2. Outsourcingservicedesignandimplementation.Onceaserviceisspecied,

thedesignofits interfacesorsets ofinterfacesand thecodingof itsactual

implementationmaybeoutsourced.

3. Usingwrappers and/oradapters. Non-component implementations for

ser-vices may include database functionalityor legacysoftwarein theform of

adaptersorwrappers.

5.1.2Servicebilling strategies Fromtheperspectiveoftheserviceprovider

acomplex tradingweb- serviceis acommercialisablesoftware commodity. For

example,aserviceprovidermaydecideto oersimpleservices(withnoquality

of service guarantee) for free, while it would charge a nominal fee for use of

itscomplex(addedvalue)webservices.With complextradingwebservicesthe

qualityofserviceplaysahighroleofimportanceandtheserviceisoeredfora

price.Thesetypesofservicesareverydierentfromthesellingofshrink-wrapped

softwarecomponents,in that paymentshould be onanexecution basisforthe

deliveryoftheservice,ratherthanonaone-opaymentforanimplementation

ofthesoftware.Forcomplextradingwebservices,theserviceprovidermayhave

dierentchargingalternatives.Thesemayinclude:

1. Paymentonaper usebasis.With this alternativeaclientis charged some

nominalfeeeachtimetheyinvoketheservice.

2. Paymentonasubscriptionbasis.With thisalternativeaclientischargeda

setamountofmoneyforagivenperiodoftime.

3. Paymentonaleasingbasis.Thisalternativeissimilartosubscription;

how-ever, it is geared towards web services that may provide high value for a

shorterperiodoftime.

4. Lifetimeservices. Theseservices areoered for aset amount ofmoney for

theirentirelifetime.

(9)

distributetheirfunctionalitywithasimpleSLAagreementthatallowsfora

futurechargingmechanismtocome intoplay.

6. Free with hidden value.This term refersto services that mayactually get

advantage from clients using them. For example, a client may use a web

serviceforfreebutmayhavetopayasubscriptionfeewhenitwishestosee

moreservicesrelatedto thefreeservice.

A service design methodology should take into account several important

aspectsrelatingtotheaccountingprocessforserviceprovisioning,suchasservice

metering,ratingandbilling.

Service meteringmodel:Useofaservicebyaclientmustbemeteredifthe

serviceproviderrequiresusage-basedbilling.Thentheserviceproviderneedsto

audit theserviceasitisused andbillfor it.This couldtypicallybedoneona

periodicbasisandrequiresthatameteringandaccountingmodelfortheuseof

theservicebeestablished.Themodelcouldallowtheestablishmentofaservice

contractforeachnewsubscriberandtackingandbillingforusingthesubscribed

hostedservices.Toachievethis,theservice-meteringmodelcouldoperateonthe

assumptionthatwebserviceswithahighdegreeofvaluearecontractedvia,for

example, SLAs. The metering model cancover dierent payment possibilities

suchasfee-for-usemodel,thesubscriptionmodel, andtheleasemodel.

Service rating/billing model: Software organisations that are used to the

traditional up-frontlicense/ongoingmaintenance pricingstructure forsoftware

should come up with annuity-based pricing models for the web services they

provide.Thepricing (rating)model coulddetermine subscriberratesbasedon

subscription and usage events. For example,the pricing model could calculate

charges for services based on the quality and precision of the service and on

individual meteringeventsbasedon aservice-ratingscheme. Thebillingmodel

associates rating details with the correct client account. It provides adequate

information to allow the retrievaland payment of billing details by the client

andthecorrectdisbursementofpaymentstotheserviceprovider'ssuppliers(who

areinturnserviceprovidersoeringwholesaleservicestotheoriginalprovider).

5.2 Service policy managementmodels

Asawide rangeof servicesisprovided acrossanetworkitis onlynaturalthat

services would introducepolicy management models that determine

dierenti-atedservicesaccordingtobusiness rulesorapplication-levelpolicies. Thereare

manyreasonswhybusinessesmightwanttogivedierentlevelsofserviceto

dif-ferentcustomersorwhytheymightneeddierentlevelsofpriorityto dierent

business transaction models involvingweb services.Therefore, itis nosurprise

that such criteriaare considered to be equally important to technical policies

suchassecurityorauthentication.

Considerfor example astock quote service where dierent clients may be

(10)

providingmoretimelystockquotepricesandothernancialdata,e.g.,nancial

charting,stockgrowthtrends,andsoon.Moreover,there mightbeclientswho

wouldneedsomecharacteristicsofdataqualitybutnoothers.Forinstance,some

investorsmaybeinterested in streaming market quotes and data while others

maynot.Therefore,serviceproviderscanmixdierentlevelsofserviceprecision,

granularity,timelinessandscope.Anotherpossibilityistodierentiateservices

basedontechnicalqualitydetailssuchasresponsetime,performancebandwidth

used, and reliability. Ifaservice isdesignedto coverafairlywide spectrumof

servicelevelsaccordingto somesetof policies thenit islikelythat thisservice

wouldachievemuch higherlevelsofuse[10].

5.3 Service programmingstyle

Services havetwo programmingstyles: RPC or document-based. Determining

theserviceprogrammingstyleis largelyadesignissue asdierentapplications

impose dierentprogramming-stylerequirementsforwebservices.Considerfor

exampleanapplicationthat dealswithpurchaseorderrequests,purchaseorder

conrmations and delivery information. This application requires that request

messages may contain purchase orders in the form of XML documents while

response messagesmaycontainpurchase orderreceipts ordeliveryinformation

againintheformofXMLdocuments.Thistypeofapplicationusesdata-oriented

web-services.Moreover,thereisnorealurgencyforaresponsemessagetofollow

arequestimmediatelyifatall.Incontrastto this,consideranapplication that

providesbusinesseswithup-to-the-instantcreditstandings.Beforecompleting

abusiness transaction, abusiness mayrequireto check apotential customer's

creditstanding.Inthisscenario,arequestwouldbesenttothecreditcheckweb

serviceprovider,e.g.,abank,processed,andaresponseindicatingthepotential

customer'screditratingwouldbereturnedinrealtime.Thistypeofwebservice

relies on an RPC programming style. In this type of applications the client

invokingtheweb-serviceneedsanimmediateresponseormayevenrequirethat

thewebservicesinteractinaback-and-forthconversationalway.

5.4 Authorisation design considerations

Since web servicesshould allowaccess to sanctioned clients, securityis a rst

order business consideration. Normally, an integrated approach to security is

required whereby all technical system aspects as well asbusiness policies and

processesaretakenintoconsideration.

Increasingly authorisationcapabilities areemerging asamajor security

re-quirement for e-business. An enterprise not only needs to know who the

re-questersaccessingtheirservicesare;italsoneedstocontrolthewhatwebservices

thatrequesterhasaccessto,what factorsaectavailabilityoftheweb-services

to that customer, andwhat auditing isrequired to ensurethenon-repudiation

(11)

risedrequestersandapplications inmuchthesamewaythatWeb sitesrestrict

access to authorised clients and applications. Authorisation can usually take

placeforeachoperationwithinthewebservice.Alternatively,theremaybe

oc-casionswhenauthorisationforawebservice(orbusinessprocess)asawholeis

moreappropriate,forinstance whereahighgranularityofsecurityisnot

criti-cal [9].There are dierentauthenticationmodels forclientauthentication.For

instance, anauthenticationmodelmayrequirethat aclientauthenticates itself

by presentingits encoded credentialsor may requirethat XML signatures be

generatedforwebservicerequests.

Onceawebservicedesignmethodologyhasbeenapplied,webservice

speci-cationinWSDLcanensueonthebasisofthefollowingsteps:(1)specifyingthe

serviceinterface;(2)makingoperationparameters;(3)messagingandtransport;

(4)implementing.Anexampleofthiscanbefoundin[5].

6 Conclusion

Inthis paperwearguethat withoutdesignmethodologiesandsound

engineer-ingprinciples webservicescannotbeproperlydevelopedto achievewhatthey

promised: reusability and plug-replaceability, exibility and extensibility. We

thenproposeamethodologywhichprovidesaframeworkforidentifyingweb

ser-vices frombusiness processesandprinciples in webservicedesignwhichcovers

bothfunctionalperspectivessuchascouplingandcohesion,and non-functional

perspectivessuch asprovision,billing, pricingand metering.The design

strat-egy is in line with the web servicestandardsWSDL and WSFL,and software

engineeringprinciples.

References

1. "Web Service Flow Language (WSFL 1.0)",

http://www-4.ibm.com/software/solutions/webservices/pdf/WSFL.pdf.

2. "WebServiceDenitionLanguage",http://www.w3.org/TR/wsdl.

3. "SimpleObjectAccessProtocol(SOAP)1.1",http://www.w3.org/TR/SOAP.

4. UDDI Project, "UDDI Technical White Paper", September, 2000,

http://www.udddi.org.

5. Bilal Siddiqui, "Deploying Web services with WSDL",

http://www-106.ibm.com/developerworks/library/ws-intwsdl/.

6. D.F. d'Souza, A.C. Wills, "Objects, componentsand frameworks with UML",

Addison-Wesley,LongmanInc.,1999.

7. D.deChampeaux,D.Lea,andP.Faure, "Object-orientedsystemdevelopment",

Addison-Wesleypublishingco.,1993.

8. P.Allen,"Realizinge-BusinesswithComponents", Addison-Wesley,2001.

9. P.Cauldwell, et.al., "XMLWebServices", WroxPressLtd.,2001.

10. CBDiForum "Design Pattern:Dierentiated Service", www.cdbiforum.com, pp

3-8,December2000.

11. OpenTravelAlliance,OTA, "2001CSpecications", http://www.opentravel.org,

Figure

Fig. 1. Service Realization Strategy and Architecture

References

Related documents

creditor. ƒ “Creditor” means any person who offers or extends credit creating a debt or to whom a debt is owed, but does not include any person to the extent that he receives

Among them, this study has found that age of women, perceived ideal number of children, women's age at first marriage, radio exposure, religion and knowledge of family

Our conclusion is that the classical formulation of the &#34;dutch book argument&#34; may be slightly improved, by stating that the said normalized implied probabilities always

Although the average wage penalty associated with inactivity is insignificant over the 1991-1997 period, being made redundant and then experiencing a spell of inactivity in an

This research focused on investigating the effect of cockle shell content when used as partial fine aggregate replacement towards workability, compressive strength and

We will become a vigorous rural area whose inhabitants have a sense of community and co-operate across all sec- toral and municipal borders, while our commitment and knowledge

The Prosecutors Office consists of the Supreme Public Prosecutors Office (headed by the Prosecutor- General), eight High Public Prosecutors Offices (headed by a

We report a rare finding of two male breast cancer patients with HER2-positive breast cancer who also developed thyroid cancer.. We reviewed 45 male breast cancer patients treated