Presentation is loading. Please wait.

Presentation is loading. Please wait.

RobustBPEL2: Transparent Autonomization in Business Processes through Dynamic Proxies Onyeka Ezenwoye S. Masoud Sadjadi Autonomic Computing Research Lab.

Similar presentations


Presentation on theme: "RobustBPEL2: Transparent Autonomization in Business Processes through Dynamic Proxies Onyeka Ezenwoye S. Masoud Sadjadi Autonomic Computing Research Lab."— Presentation transcript:

1 RobustBPEL2: Transparent Autonomization in Business Processes through Dynamic Proxies Onyeka Ezenwoye S. Masoud Sadjadi Autonomic Computing Research Lab Florida International University ISADS 2007

2 Introduction The Trend Organizations need to integrate applications and data with other divisions, customers, partners, etc. This is commonly known as Enterprise Application Integration (EAI) or Business Process Integration (BPI)

3 Introduction The Problem The existing marketplace is littered with proprietary middleware/protocols (e.g. Java RMI,.NET, CORBA, etc) for service interaction. These protocols do not openly support inter-organization service interactions over the internet. Java RMI App 1App N … Firewall Enterprise A Enterprise B Enterprise C Enterprise D Internet.NET App 1App N … CORBA App 1App N … etc. App 1App N …

4 Web services What is a Web Service Web services are applications that communicate through middleware (WSDL) over the internet. Core Technologies XML (eXtensible Markup Language) SOAP (Simple Object Access Protocol) WSDL (Web Service Description Language)

5 Business Processes Service Aggregation Production Service Customer Accounting Service Inventory Service Delivery Service Sales Service (a workflow)

6 Business Process Execution Language (BPEL) BPEL is workflow language for recursive composing aggregate Web service XML based A BPEL process is defined in terms of its interactions with partners. A partner may provide service to the process, require service from the process or both.

7 *A Loan Approval Process *www.activebpel.org Web Service Client

8 BPEL Workflow Design Structure Non-DAG  Support for iterations, loops Data Movement Centralized Service Orchestration application

9 BPEL Workflow Design Composition System User-directed  Language-based (xml-based)  Graph-based Fault tolerance Non Has fault and event handlers

10 BPEL Challenges Not modular enough to support Separation of concerns Maintainability Evolution BPEL is not dynamic No runtime workflow alteration for optimization or fault-tolerance

11 BPEL Challenges Minimal fault handling. Supports compensation handling. Dynamism through middleware application, messaging.

12 Our Approach Transparent Adaptation Allows introduction of new code (component) at run-time does not tangle cross-cutting concerns with original application (separates functional code from non-functional code) preserves desirable original behavior is transparent to the original code (the original code is unaware of the adaptation)

13 RobustBPEL Why RobustBPEL BPEL is susceptible to failures of partner services BPEL provides no fault tolerance BPEL is not dynamic BPEL not modular enough for aspect programming Provide robustness in the event of failure of invoked services. Allow for runtime introduction of components

14 RobustBPEL RobustBPEL-1 (Static Proxies) [ICEIS-06] RobustBPEL-2 (Dynamic Proxies) [ISADS- 07]

15 RobustBPEL Encapsulate BPEL activities with generic hooks. Hooks will point to “proxy” Web Service. Fault tolerance and adaptation will be provided through Proxy service Fault tolerance Task level Retry Alternate resource

16 *A Loan Approval Process *www.activebpel.org Web Service Client

17 A better Loan Approval Process Web Service Monitor Web Service

18 Generated Dynamic Proxy Generated Adapt-Ready BPEL RobustBPEL-2 Generator File or DocumentProcessorData Flow XML Configuration File XML Configuration File Local Disk Parser Dynamic Proxy Compiler Adapt-Ready BPEL Compiler Template for Proxy Class Original BPEL Original BPEL Binding stub for WS i Legend: Generator

19 The Proxy Proxy is specific but dynamic Interface for proxy is specific One proxy from every adapted process Discovers and bind to alternate services

20 Aggregate Web Service Client Program 1 2 WS 1 pt 1 WS n pt n............ n partner Web services Service port type (pt)Service dependency 1 Web service (WS)Sequence of events Legend: Architectural diagrams showing the sequence of interactions among the components in a typical aggregate Web service.

21 Adapt-Ready Aggregate Web Service 1 2 WS 1 pt 1 WS n pt n............ Static Proxy 4 WS i1 pt i WS ip pt i............ WS j1 pt j WS jq pt j............ pt i 3 p equivalent Web services for WSi q equivalent Web services for WSj n partner Web services Absence of Faults Presence of Faults generated to handle the faults by two selected partner Web services (WS i and WS j ) Client Program Service port type (pt) Service dependency (static binding) 1 Web service (WS)Sequence of events Legend: Service dependency (dynamic binding) Sequence of interactions in RobustBPEL-1

22 1 2 WS 1 pt 1 WS n pt n............ Dynamic Proxy 4 UDDI ~WS i pt j ~WS j pt j UDDI registry services Dynamically identified equivalent Web services for W Si and WSj n partner Web services 5 pt j pt i 3 Absence of Faults Presence of Faults Adapt-Ready Aggregate Web Service generated to handle the faults by two selected partner Web services (WS i and WS j ) Client Program Service port type (pt) Service dependency (static binding) 1 Web service (WS)Sequence of events Legend: Service dependency (dynamic binding) Sequence of interactions in RobustBPEL-2

23 Questions?


Download ppt "RobustBPEL2: Transparent Autonomization in Business Processes through Dynamic Proxies Onyeka Ezenwoye S. Masoud Sadjadi Autonomic Computing Research Lab."

Similar presentations


Ads by Google