27
flow : Web services composition standards exposed W.M.P. van der Aalst Presented By – Prachi Jain

Don’t go with the flow : Web services composition standards exposed W.M.P. van der Aalst Presented By – Prachi Jain

Embed Size (px)

Citation preview

Page 1: Don’t go with the flow : Web services composition standards exposed W.M.P. van der Aalst Presented By – Prachi Jain

Don’t go with the flow :

Web services composition standards

exposed

W.M.P. van der Aalst

Presented By – Prachi Jain

Page 2: Don’t go with the flow : Web services composition standards exposed W.M.P. van der Aalst Presented By – Prachi Jain

The Problem

Many web services composition languages Remarkable how much attention these

different standards receive Fundamental issues – semantics, expressiveness

and adequacy not addressed Having standards is good, but too many and

most of them die before becoming mature These languages have no clear semantics PDL, XPDL, BPSS, EDOC, BPML, ebXML,

BPEL4WS

Page 3: Don’t go with the flow : Web services composition standards exposed W.M.P. van der Aalst Presented By – Prachi Jain

The Goal

Overcome the problems Critically evaluate the so-called

standards for web services composition i.e. Don’t go with the flow

Page 4: Don’t go with the flow : Web services composition standards exposed W.M.P. van der Aalst Presented By – Prachi Jain

The Trends

2 trends in the world of E-business Technology push – technologies taking XML-

based standards and Internet as starting point Need to improve efficiency of processes from a

business perspective

Need to utilize potential of Internet Technology by automating business processes across enterprise boundaries

Page 5: Don’t go with the flow : Web services composition standards exposed W.M.P. van der Aalst Presented By – Prachi Jain

Goal of Web Services

Goal of web services Exploit XML technology and Internet Integrate applications that can be published,

located and invoked on the web

Page 6: Don’t go with the flow : Web services composition standards exposed W.M.P. van der Aalst Presented By – Prachi Jain

The Need for Web Services Composition Languages

Integrate business processes across enterprise boundaries Simple interactions using standard messages

and protocols not enough Require long running interactions driven by

explicit process model Hence the need for Web Services

Composition Language

Page 7: Don’t go with the flow : Web services composition standards exposed W.M.P. van der Aalst Presented By – Prachi Jain

Web Services Composition Languages

BPEL4WS, WSFL, XLANG, WSCI and BPML Also known as

Web Services Flow Languages Web Services Execution Languages Web Services Orchestration Languages Web Enabled Workflow Languages

Page 8: Don’t go with the flow : Web services composition standards exposed W.M.P. van der Aalst Presented By – Prachi Jain

Overview of Web Services Technology

Page 9: Don’t go with the flow : Web services composition standards exposed W.M.P. van der Aalst Presented By – Prachi Jain

SOAP Simple Object Access Protocol Protocol for exchange of information

In decentralized, distributed environment Using typed message exchange and remote

invocation XML-based Protocol. 3 parts

Envelope that defines framework for describing what is a message and how to process it

Set of encoding rules for expressing instances of application defined datatypes

Convention for representing Remote Procedure calls and responses

Page 10: Don’t go with the flow : Web services composition standards exposed W.M.P. van der Aalst Presented By – Prachi Jain

WSDL Web Services Description Language

XML format for describing network services based on standard messaging layer like SOAP

Defines services as a collection of network endpoints or ports

Abstract definition of endpoints and messages

Separated from concrete network deployment or data format bindings

Page 11: Don’t go with the flow : Web services composition standards exposed W.M.P. van der Aalst Presented By – Prachi Jain

WSDL Allows reuse of abstract definitions

Messages – abstract descriptions of data being exchanged

Port types – abstract collection of operations Concrete Protocol and data format

specifications for a particular port type constitute reusable binding

Port – Network Address + Reusable Binding Service – Collection of Ports

Page 12: Don’t go with the flow : Web services composition standards exposed W.M.P. van der Aalst Presented By – Prachi Jain

UDDI Universal Description Discovery & Integration Set of services supporting description and

discovery of Businesses, Organizations and other web service

providers The web services they make available Technical interfaces which may be used to access

those services Can be used to build “yellow pages” for web

services

Page 13: Don’t go with the flow : Web services composition standards exposed W.M.P. van der Aalst Presented By – Prachi Jain

Web Services Composition Languages Build directly on top of WSDL Provides and/or uses one or more WSDL

services WSDL service – ports that provide operations

Each operation One-way: receives a message Request-Response: receives and sends a message Solicit-Response: sends and receives a message Notification: Sends a message

Page 14: Don’t go with the flow : Web services composition standards exposed W.M.P. van der Aalst Presented By – Prachi Jain

Web Services Composition Languages

WSDL services and corresponding operations glued together to provide composed services

Process model needed to glue such services Process model specifies order of execution of

operations Web services composition language provides

the means to specify such a process model Example – BPEL4WS – Business Process

Execution Language for Web Services

Page 15: Don’t go with the flow : Web services composition standards exposed W.M.P. van der Aalst Presented By – Prachi Jain

Difference between WSDL and Composition Language WSDL is stateless – language not aware of

states in-between operations WSDL – only state notion supported is state

in between sending and receiving a message in request-response or solicit-response operation

Technology supporting web service composition language will have to record states more complex than simple request-response

Triggered development of languages like BPEL4WS, WSFL, XLANG, etc

Page 16: Don’t go with the flow : Web services composition standards exposed W.M.P. van der Aalst Presented By – Prachi Jain

Overview of so-called standards BPEL4WS builds on

IBM’s WSFL ( Web Services Flow Language) Microsoft’s XLANG ( Web Services for Business

Process Design) XLANG

Block-structured language Basic control flow structures

Sequence, switch – Conditional Routing While – Looping All – Parallel Routing Pick – Race Conditions based on timing or external

triggers

Page 17: Don’t go with the flow : Web services composition standards exposed W.M.P. van der Aalst Presented By – Prachi Jain

Overview of so-called standards WSFL

Not limited to block structure Allows directed graphs

Graphs can be nested but need to be acyclic Iteration only supported through exit conditions

Activity/subprocess iterated until exit condition is met Control flow part identical to workflow language used by

IBM’s MQ Series Workflow Workflow language very different from most languages Correspondence between WSFL and MQ series workflow –

defined by same set of people

Similarly, XLANG completely based on current Microsoft middleware solution

Therefore hardly qualifies as a standard

Page 18: Don’t go with the flow : Web services composition standards exposed W.M.P. van der Aalst Presented By – Prachi Jain

Other so-called standards Sun, BEA, SAP and Intalio introduced WSCI (Web

Service Choreography Interface) Intalio initiated Business Process Management

Initiative (BPMI.org) which developed BPML ( Business Process Markup Language)

OASIS and UN/CEFACT support ebXML ( Electronic Business using eXtensible Markup Language)

Abundance of overlapping standards for web services composition

These competing standards without clear added value referred as Web Services Acronym Hell (WSAH)

Page 19: Don’t go with the flow : Web services composition standards exposed W.M.P. van der Aalst Presented By – Prachi Jain

Other so-called standards Workflow Management Coalition (WfMC)

released XPDL (XML Process Definition Language) Support exchange of workflow specifications

between different workflow products Standards of WfMC not adopted by workflow

vendors Some systems can export to XPDL None of the systems can import XPDL from

another system and still produce meaningful results

Still no consensus on the workflow constructs that need to be supported and their semantics

Page 20: Don’t go with the flow : Web services composition standards exposed W.M.P. van der Aalst Presented By – Prachi Jain

Comparing BPEL4WS, XLANG, WSFL, XPDL and WFM products Development of web services composition

language driven by software vendors – IBM, Microsoft, Sun, BEA, SAP and Intalio

Standards often based on existing products WSFL copy of IBM’s FlowMark/MQ Series Workflow

Language Standards involving multiple software

vendors, often a compromise between competing viewpoints Tend to be imprecise or unnecessarily complex XPDL – imprecise standard therefore allowing

vendors to have their own interpretation

Page 21: Don’t go with the flow : Web services composition standards exposed W.M.P. van der Aalst Presented By – Prachi Jain

Comparing BPEL4WS, XLANG, WSFL, XPDL and WFM products Look for objective methods for comparing Use set of workflow patterns for comparing

Patterns correspond to a routing construct often required when designing a workflow

Patterns have been used for comparing about 20 workflow management systems

Author shows comparison for BPEL4WS, XLANG, WSFL, XPDL and four concrete workflow management systems.

Page 22: Don’t go with the flow : Web services composition standards exposed W.M.P. van der Aalst Presented By – Prachi Jain

t

Page 23: Don’t go with the flow : Web services composition standards exposed W.M.P. van der Aalst Presented By – Prachi Jain

Comparing BPEL4WS, XLANG, WSFL, XPDL and WFM products First 5 patterns – basic routing constructs

e.g. sequence, one can find in any language Other patterns refer to more advanced

constructs not supported by most standards ‘+’ refers to direct support

Construct in the language that directly supports the pattern

‘-’ refers to no direct support Does not mean that it is not possible to realize the

pattern through some workaround ‘+/-’ represents feature that only partially

supports a pattern

Page 24: Don’t go with the flow : Web services composition standards exposed W.M.P. van der Aalst Presented By – Prachi Jain

Observations BPEL4WS indeed combination of XLANG and

WSFL WSFL and MQ Series Workflow are identical XPDL is less expensive than BPEL4WS

XPDL can be seen as Greatest Common Denominator of exisiting workflow languages rather than Least Common Multiple

Relevant differences between Web Services Composition Languages and Workflow Management Systems for routing constructs FLOWer is block structured like XLANG Other 3 are graph based like WSFL and XPDL

Page 25: Don’t go with the flow : Web services composition standards exposed W.M.P. van der Aalst Presented By – Prachi Jain

Lessons Learned Well – established process modeling

techniques combining expressiveness, simplicity and formal semantics exist

Software industry has chosen to ignore these Hence, too many standards

Driven by concrete products and/or commercial interests

Users need to ignore standardization proposals that are not using well established process modeling techniques Force vendors to address real problems

Page 26: Don’t go with the flow : Web services composition standards exposed W.M.P. van der Aalst Presented By – Prachi Jain

What has been done since then ?

BPEL4WS has been renamed by the OASIS WS-BPEL technical committee to WS-BPEL

Truly, Web Services Acronym Hell (WSAH)

Page 27: Don’t go with the flow : Web services composition standards exposed W.M.P. van der Aalst Presented By – Prachi Jain

Questions

?