Toronto ECE 1770 - Web Service Composition

Unformatted text preview:

Web Service CompositionWeb ServicesWeb Services (2)OverviewSlide 5Web Service Composition (2)Basic RequirementsStandardsBPEL4WSBPEL - OverviewBPEL - Process OverviewBPEL - Process ModelsBPEL - ActivitiesBPEL - Containers and PartnersBPEL - CodeBPEL - OthersBPEL – Example ProcessWSCIWSCI - ActionsWSCI - SnippetBPMLSummarySlide 23Some Open/Closed Source EnginesDiscussionWeb Service CompositionPrepared byRobert MaFebruary 5, 2007ECE 1770 –Web Service CompositionWeb ServicesConsider the following set of web servicesECE 1770 –Web Service CompositionWeb Services (2)What about between organizations?ECE 1770 –Web Service CompositionOverviewBusinesses today requires to quickly adapt to customer needs and market conditionsEAI and B2B interactions (through web services)Needs to be flexible internally and externallyWithout a common set of standard, each organization is left to build their own set of proprietary business protocolsLeaving little flexibility for true web services collaborationECE 1770 –Web Service CompositionWeb Service CompositionDefinition:Provides an open, standards-based approach for connecting web services together to create higher-level business processes.Standards are designed to reduce the complexity required to compose web services, hence reducing time and costs, and increase overall efficiency in businessesECE 1770 –Web Service CompositionWeb Service Composition (2)ECE 1770 –Web Service CompositionBasic RequirementsAbility to invoke services in a asynchronous mannerAchieve reliability, scalability, and adaptability required by Today’s IT environmentManage exception and transactional integrityStudies shown nearly 80% of the time spent in building business processes are spent in exception managementProvide dynamic, flexible, and adaptable frameworkProvide a clear separation between the process logic and the web services usedAble to compose higher-level services from existing processesECE 1770 –Web Service CompositionStandardsBPEL4WS (a.k.a. BPEL) – Business Process Execution Language for Web ServicesIBM and MicrosoftWSCI – Web Services Choreography InterfaceSun, SAP, BEA, and IntalioBPML – Business Process Management LanguageBPMI.org (chartered by Intarlio, Sterling Commerce, Sun, CSC, and others)ECE 1770 –Web Service CompositionBPEL4WSXML-Based languageIt describes the control logic for web services coordination in a business processInterpreted and executed by a BPEL engineECE 1770 –Web Service CompositionBPEL - OverviewUse Web Services Standard as a base1. Every BPEL is exposed as a web service using WSDL. And the WSDL describes the public entry and exit points of the process2. Interacts through WSDL interfaces with external web services3. WSDL data types are used to describe information flow within the BPEL processECE 1770 –Web Service CompositionBPEL - Process OverviewECE 1770 –Web Service CompositionBPEL - Process ModelsProvides support for two business process modelsExecutableModels the behavior of participants in a specific business interaction, a private workflowAbstractBusiness protocols in BPEL, specify the public message exchanges between partiesECE 1770 –Web Service CompositionBPEL - ActivitiesBasic Activities: Interacts with external services <invoke>, <receive>, and <reply>Structured Activities: Internal process control flowsequential flow, conditional branching, looping, and etc.ECE 1770 –Web Service CompositionBPEL - Containers and PartnersContainersData exchanges in the message flowe.g. WSDL messageTypePartnersAny services that the process invokes OR any services that the invokes the process<partners><partner name=”buyer” … myRole=”agent”/><partner name=”supplier” … myRole=”requestor” partnerRole=”supplier”/></partners><containers><container name=”request” messageType=”tns:orderRequest”/><container name=”response” messageType=”tns:orderResponse”/></containers>ECE 1770 –Web Service CompositionBPEL - CodeA sequence<sequence><receive partner=”buyer” … operation=”sendOrder” container=”request”/><invoke partner=”supplier” … operation=”request” container=”order”/><reply partner=”buyer” … operation=”response” container=”proposal”/></sequence>ECE 1770 –Web Service CompositionBPEL - OthersTransactions and ExceptionsBuilding on top of WS-Coordination and WS-Transaction specificationsTransactionA set of activities can be grouped in a single transaction through the <scope> tagCan specify compensation handlers (rollback) if there is an errorException HandlingThrough the use of throw and catch (similar to Java)ECE 1770 –Web Service CompositionBPEL – Example ProcessECE 1770 –Web Service CompositionWSCIXML-based languageDefines the choreography describing the messages between web services that participate in a collaborative exchangeOnly describes the observable behavior between web servicesNo single controlling process managing the interactionECE 1770 –Web Service CompositionWSCI - ActionsActions <action> represents a unit of work and would typically map to a specific WSDL operationWSDL describes the entry points of each serviceWSCI describes the interactions among these operationsExternal services are invoked through <call> tagSupports transaction and exception handlingECE 1770 –Web Service CompositionWSCI - Snippet<process name=”Purchase” instantiation=”message”><sequence><action name=”ReceiveOrder” role=”Agent” operation=”tns:Order”></action><action name=”Confirm” role=”Agent” operation=”tns:Confirm”><correlate correlation=”tns:ordered”/><call process=”tns:Purchase”/></action></sequence></process>Note: this WSCI is from the perspective of the “Agent”, there would also be WSCI file for other parties in the processECE 1770 –Web Service CompositionBPMLXML-based languageIncorporates WSCI into the standardWSCI used to describe public interactionsBPML used to develop private logic implementations Provides similar process flow constructs and activities as BPELTransactional support and exception handlingECE 1770 –Web Service CompositionSummaryBPEL and BPML focuses on creation of business processesDescribe an executable process from the partner’s perspectiveWSCI focuses on public


View Full Document

Toronto ECE 1770 - Web Service Composition

Download Web Service Composition
Our administrator received your request to download this document. We will send you the file to your email shortly.
Loading Unlocking...
Login

Join to view Web Service Composition and access 3M+ class-specific study document.

or
We will never post anything without your permission.
Don't have an account?
Sign Up

Join to view Web Service Composition 2 2 and access 3M+ class-specific study document.

or

By creating an account you agree to our Privacy Policy and Terms Of Use

Already a member?