Title: BondFlow: A Platform for Distributed Workflows over Web Services
1BondFlow A Platform for Distributed Workflows
over Web Services
- Janaka Balasooriya
- Department of Computer Science
- University of Missouri Rolla
- The BondFlow System was Developed
- in the Department of Computer Science
- Georgia State University
2Agenda
- Web Services Infrastructure and Research Issues.
- Distributed Workflows Over Web Services.
- Web Coordination Bonds
- Web Service Coordination Management Middleware
- BondFlow System
- Future Directions.
- The BondFlow system as a web based tool kit
- Incorporate WS-Security protocol in Web
Coordination Bonds - Minimum set of coordination primitives for web
service coordination - QA.
3Web Services Hide Network and System
Heterogeneity
- Conventional Distributed Systems
- Conventional middleware and Enterprise
Application Integration (EAI) technologies have
limited success. - Lacks interoperability.
RMI
B
Inter-Operability Protocols
C
A
CORBA
COM
- Web Services
- Uniform interface (WSDL Web Service Description
Language) - Common communication platform (SOAP Simple
Object Access Protocol) - Hide the network and system heterogeneity.
4Web Services Infrastructure Current State of the
Art
Directory
Web Services Can be
Look up
- Identified by a Uniform Resource Identifier
(URI) - Described and discovered
- Composed to create complex applications
- Loosely coupled
Publish
Service Requestor
WSDL
WS
Invoke/Response (SOAP)
Web Service Infrastructure Current State of the
Art
5Proliferation of The Web Service Technology
-
- Applicable In Many Application Domains
- E-Commerce (Supply Chain, Banking, Travel
Application) - Scientific applications (bio-medical, space
exploration ) - Open Grid Service Architecture (Open Grid
Services Architecture).
Statistics
- Web services based projects will reach 11
billion by 2008, compared to 1.1 billion in 2003
International Data Coorporation,
http//www.idc.com. - A Gartner (http//www.gartner.com) survey of 110
companies also indicates that 54 are already
working on or planning to work on Web services
projects.
6Web Service Applications Purchase Order Workflow
Receive Purchase Order
(RPO)
Initiate Product Scheduling
Decide on Shipper
Initiate Price Calculation
PS
PC
DS
Complete Price Calculation
Complete Product Scheduling
Arrange Logistics
Invoice Processing
(IP)
7Web Service Application Development Current
Practice and Research Issues
- Web Service Based Workflow Applications
- Web services are distributed across the network.
IPS
Composite Web Process
- Issues
- Detailed level Programming Confined only to
expert users. - Centralized Coordination Web services are not
live participants.
Developing Purchase Order Workflow Current
Practice
8Current State of the Art
- Web services are not active participants
- Composite applications require
- Centralized coordination
- Significant application development effort
- Performance and Security issues
- Many Workflow Composition Languages
- Currently, too many standards for Web service
composition and coordination - No fundamental Web service composition
framework - Solutions are not elegant
- Fundamental issues have not been filtered out
9Workflow Languages (http//www.ebpml.org/status.ht
m)
10Our Vision
BondFlow System
- Core set of primitives for web service
coordination - Web Coordination Bonds
WSCMM
WS
- Extend the Web service infrastructure beyond the
basic service architecture (invoke and respond)
Web Coordination Management Middleware (WSCMM)
Bonding Artifacts
WSCMM
WS
WSCMM
WS
WSCMM
WS
- Workflow configuration and execution platform
11Web Coordination Bonds Analogy Between Web Bonds
and Chemical Bonds
Chemical Bonding
H
- Chemical Bonds Simple but powerful enough to
produce complex compounds.
C
C
H
H
H
CH4
Four H atoms and One C atom
12Web Coordination Bonds
- Web Bonds enables an application to create and
enforce interdependencies, constraints and
automatic updates among groups of Web entities
HICSS, 04. - Two types Negotiation bonds and Subscription
bonds - Subscription Bonds
Semantics
Hotel (B)
Subscription Bond Change A then Try Change B,
Change C.
Flight (A)
Pickup (C)
- Automatic flow of information.
13Negotiation Bond
- Negotiation bonds enforce
- Dependencies and constraints across entities
- Trigger changes based on constraint
satisfaction.
B
Verify product availability
A
C
Online purchase
Verify payment Information
14Modeling Dependencies Using Web Bonds
Consumer web process
Produce web process
Negotiation bond
PlaceOrder()
AcceptOrder()
Subscription bond
Negotiation bond
Accept Delivery ( )
Dispatch Goods ( )
Producer-Consumer Relationship
- How capable web bonds are?
15Capabilities of Web Coordination Bonds
Modeling Power
- Web bonds have the modeling power of extended
Petri nets (Petri net with inhibitor arcs) HICSS
05. - Web bonds can express all the benchmark
patterns for workflows and for inter-process
communication HICSS 05.
Expressiveness
-
16Expressiveness Modeling Benchmark Workflow
Control Flow Patterns
Sequence Using Web Bonds
Sequence
A
B
C
A
B
C
AND split followed by AND join using web bonds
AND split followed by AND join
B
B
A
C
E
E
A
C
D
D
17Our Vision and Contributions
BondFlow System
- Core set of primitives for web service
coordination - Web Coordination Bonds
WSCMM
WS
- Extend the Web service infrastructure beyond the
basic service architecture (invoke and respond)
Web Coordination Management Middleware (WSCMM)
Bonding Artifacts
- Workflow configuration and execution platform
18Analogy Evolution of Database Applications vs
Web Service Applications
Proposed development for Web service
infrastructure
19Web Service Coordination Management Middleware
Requirements ICWS 06
High-level Description of the workflow
Composite Web process Code
Enforce Workflow Dependencies
WSCMS
Enorce Workflow Dependencies (Coodrination
Context)
IPS
Preserve State Information, WS Method
invocation
Process Messages
WSMS
Communication handling (Message Correlation,
State)
Composite Web Process
Stateless Web Service
Stateless Web Service
Functional decomposition of composite web
process ICWS 06
20Web Service Coordination Management Middleware
An Overview
WF j
WF k
WF i
- WSMS
- Preserve state
- Process messages
- Coordinator proxy object
- WSCMS
- Maintain coordination Information
- Enforce workflow dependencies
SOAP/Messaging System
Message Handler
WSMS
WSCMS
i
k
j
i
j
k
Coordination context
Coordinator object handler
Web Service
21Coordinator Proxy Object
- The coordinator object provides the same
interface as the web service provides to the
outer world. - Web service method invocations of the workflow
take place through the coordinator object. - The web bond coordination layer ensures that pre
and post method invocation dependencies are
satisfied.
The Coordinator Proxy Object
22Flow Within a Coordinator Object
- Each web service method call is encapsulated by
pre and post dependency check.
23Our Vision and Contributions
BondFlow System
- Core set of primitives for web service
coordination - Web Coordination Bonds
WSCMM
WS
- Extend the Web service infrastructure beyond the
basic service architecture (invoke and respond)
Web Coordination Management Middleware (WSCMM)
Bonding Artifacts
- Workflow configuration and execution platform
24BondFlow System Architecture HCW 05
-
- Web service interface module
- Proxy object generator module
- Workflow configuration module
- Execution module.
- Handheld based Execution MW 04
Web Service Interface Module
Lookup for Web services
Web Services Registry (UDDI)
S O A P
WS Locator
WSDL
WSDL Parser
Parsed WSDL
Workflow Execution Module
Proxy Object Generator Module
Web Bond Runtime
SOAP/ SyD
Workflow Configuration Module
JVM
25BondFlow System Developers Perspective
Search web service (WS)-UDDI directory
WSDL parser
Select suitable WSs for the workflow
Coordinator objects
Configure workflow
Select WS pairs for bonding
Create bonds between methods of selected WS
pairs.
Execute workflow
26Distributed Workflow Execution of the BondFlow
System
27Book Price Workflow
BN
CE
eB
AM
Barnes and Noble Price Quote (http//www.xmethod
s.net/sd/2001/BNQuoteService.wsdl )
eBay Price Watcher (http//www.xmethods.net/sd/
2001/EBayWatcherService.wsdl )
Amazon Query Service (http//majordojo.com/amazo
n_query/amazon_query.wsdl )
Currency Exchange (http//www.atlaz.net/webserv
ices/GetCurrencyExchange.wsdl )
28Purchase Order Workflow Using Web Bonds
Receive Purchase Order
Initiate Product Scheduling
Decide on Shipper
Initiate Price Calculation
Complete Price Calculation
Complete Product Scheduling
Arrange Logistics
Invoice Processing
29Performance Measurements
- Size of WSDL (number of methods) vs. Coordinator
Proxy Object Generation Time
- Proxy object generation time is very small and
wrapper size is less than 10 KB even for a Web
service with 17 methods.
30 Workflow Execution Timings
SB Subscription bond, NB Negotiation bond
- Bond related execution time is only a small
fraction the total workflow execution time .
31Footprint of Workflows
32Broader View
Negotiation Bonds
Subscription Bond
- Limitations of Web service composition
(orchestration) and coordination (choreography) - For experts only
- Web Services not live participants
- Centralized
Coordination among self-coordinating Web services
using Web bonds
33Future Directions
- Web based toolkit for workflow configuration and
deployment - Develop the BondFlow system as a web based
tool. - Handheld based execution of such workflows.
- Application of the BondFlow system in different
domains (Biological workflows, E-Commerce
applications)
34Future Directions
- Incorporation WS-Security protocol
- Specify how to preserve the confidentiality of
SOAP messages by attaching signatures and
encryption headers. - Specify how to attach security tokens (binary
format) to messages. - Goal
- Use WS-Security specifications to incorporate
security policies to Web Coordination Bond
related communication.
35Future Directions
- Extend the web coordination bond concept towards
distributed coordination theory. - Minimum set of coordination primitives that is
sufficient to model workflow dependencies. - Idea
- Group workflow dependencies into equivalent
classes. - Identify coordination primitives required that
covers all the equivalent classes.
36 37Related Publications
- ICWS 06 Janaka Balasooriya, Jaimini Joshi,
Sushil K. Prasad, and Shamkant Navathe,
Distributed Coordination of Workflows over Web
Services and Their Handheld-based
Execution, Accepted in the 4th Intl. Conf. on
Web Services (ICWS06), Chicago, September, 2006. - ICWS 05 Janaka Balasooriya and Sushil K.
Prasad, Toward Fundamental Primitives
and Infrastructure Enhancements for Distributed
Web Object Coordination and Workflows, In Proc.
of IEEE, 3rd Intl. Conf. on Web Services
(ICWS05), Orlando, July, 2005. - ICWS 05 Sushil K.Prasad, Anu G. Bourgeois,
Praveen Madiraju, Srilaxmi Malladi, and Janaka
Balasooriya, A Methodology for Engineering
Collaborative Applications over Mobile Web
Objects using SyD Middleware, In Proc. of IEEE,
3rd Intl. Conf. on Web Services (ICWS05),
Orlando, July, 2005 (acceptance rate 20)
38Related Publications
- HCW 05 Janaka Balasooriya, Mohini Padye,
Sushil Prasad, and Shamkanth B. Navathe,
BondFlow A System for Distributed Coordination
of Workflows over Web Services, In Proc. of
IEEE, 14th Heterogeneous Computing Workshop in
Conjunction with IPDPS 2005. Denver, Colorado,
USA, April. - HICSS05 Sushil K. Prasad and Janaka
Balasooriya, Fundamental Capabilities of Web
Coordination Bonds Modeling Petri Nets and
Expressing Workflow and Communication Patterns
over Web Services, In Proc. of IEEE, 38th Hawaii
Intl, Conf. on System Sciences (HICSS-38), Big
Island, Hawaii, January, 2005. - HICSS04 Sushil K. Prasad and Janaka
Balasoorya, Web Coordination Bonds A Simple
Enhancement to Web Services Infrastructure for
Effective Collaboration, In Proc. of IEEE, 37th
Hawaii Intl. Conf. on System Sciences
(HICSS-37), Big Island, Hawaii, January, 2004.
39Related Publications
MW 04 S. K Prasad ... et al. 2004. System on
Mobile Devices (SyD) A Middleware Testbed for
Collaborative Applications over Small
Heterogeneous Devices and Data Stores, Procs.
ACM/IFIP/USENIX 5th International Middleware
Conference, Toronto, Ontario, Canada, October
18th - 22nd
40Thank you !