web service composition validation via distributed compiler and graph theory agenda

18
Web Service Composition Validation via Distributed Compiler and Graph Theory

Upload: uqac

Post on 05-Nov-2023

0 views

Category:

Documents


0 download

TRANSCRIPT

Web Service Composition Validation via Distributed

Compiler and Graph Theory

Agenda

1. Introduction

3. Problem

4. Background

5. Solution by validation

6. Simulation

7. Conclusion

2. Web service composition

Karawash; A., Mcheick; H., Dbouk; M,

Japan; ICIS2013

Introduction

• Web Service Definition

Web service is a software system designed to support interoperable

machine-to-machine interaction over a network.

Karawash; A., Mcheick; H., Dbouk; M,

Japan; ICIS2013

Introduction

• Services-Oriented Architecture (SOA)

– Components

• Service Providers

• Service Registry

• Service Requestors

– Operations

• Publish

• Find

• Bind

– WSDL

• WSDL (Web Services Description Language) is an XML-based language for

describing Web services and how to access them.

Karawash; A., Mcheick; H., Dbouk; M,

Japan; ICIS2013

Introduction

• Business Process Execution Language (BPEL) – BPEL, is an XML-based web service composition language for business

processes. It is used to facilitate the peer-to-peer interactions between services

according to the contract described by WSDL [Li K., 2005].

Karawash; A., Mcheick; H., Dbouk; M,

Japan; ICIS2013

Web service composition

• Web Service Composition Definition:

Web service composition refers to the creation of new web services by

combination of existing ones, or Technique of composing the functionalities

of relatively simpler services to produce a ‘meaningful’ arbitrarily complex

application. Car Rental

Web Service

Hotel

Web Service

Airline

Web Service

E-Market place

Web Service

Corporate travel

Web Service HTTP/SOAP/XML

HTTP/HTML

WAP/XML

Karawash; A., Mcheick; H., Dbouk; M,

Japan; ICIS2013

Web service composition

• Example : • A = 2*x+3*y

• B = 2*x

Services at Provider 3:

FOR 1:

“A = 2*x + 3*y”

FOR 2:

“B = 2*x “

Services at Provider 2:

EQ1:“2*x”

EQ2: “3*y”

Services at Provider 1:

“ADD” & “MULT”

+

*

UDDI 1 UDDI 2

ADD

MULT

EQ1

EQ2

FOR 1

FOR 2

PROVIDER 1

ATOMIC

OPERATIONS

PROVIDER 2

COMPLEX

OPERATIONS

PROVIDER 3

COMPLEX

OPERATIONS

Client 1 Client 2

BPEL 1 BPEL 2 BPEL 3

invoke Send

WSDL

Web

service

Karawash; A., Mcheick; H., Dbouk; M,

Japan; ICIS2013

Problem of web service composition

A client has only the permission to get information as meta-

data (WSDL) about each service before being used (invoked).

But building a new composed service needs to know the internal design

of the other services to be invoked.

Because service composition is dynamic, automatic, done “on the

fly” and the client have no permission to access the business flow of the

service, thus some compositions of web services face deadlocks and

infinite loops.

Service Business Process (BPEL)

Meta-Data (WSDL)

Meta-Data (WSDL)

Service Provider

Service Registry Meta-Data

service3

Meta-Data

service2

Meta-Data

service1

Service

composition

using meta

data

Service Requester

Karawash; A., Mcheick; H., Dbouk; M,

Japan; ICIS2013

Problem of web service composition

• Problem Example

R=P /I^2

Local

server

current

V= I * R

P = V * I

Invoke

get-Volt

Invoke

Get-

power

UDDI 1 UDDI 2

Get-resistance

Get-current

Get-volt

Get-power

Get-server-volt

PROVIDER 1

COMPLEX

OPERATIONS

PROVIDER 2

COMPLEX

OPERATIONS

PROVIDER 3

COMPLEX

OPERATIONS

Client 1 Client 2

BPEL 1 BPEL 2 BPEL 3

Get-server-power

invoke Send

WSDL

Web

service

What are the Voltage and

the Power in the 1st

Provider?

-----------------------------------

Ohm’s Law:

Voltage = Current * Resistance

(V = I * R)

Power = Voltage * Current

(P = V * I)

Resistance = Power/ current^2

(R = P / I^2)

Karawash; A., Mcheick; H., Dbouk; M,

Japan; ICIS2013

Problem of web service composition

What's about the composition of this complex service?

Can you detect any problem?

Karawash; A., Mcheick; H., Dbouk; M,

Japan; ICIS2013

Problem of web service composition

• 1st Real example:

TIBCO Web Service

Goes in an infinite

Loop

TIBCO provides a powerful Web

services integration and management

platform that lets you leverage Web

services to improve the way you do

business.

https://www.tibcommunity.com/message/70086

Karawash; A., Mcheick; H., Dbouk; M,

Japan; ICIS2013

Problem of web service composition

• 2nd Real example:

WHEN DISTRIBUTING

TRANSACTIONS USING

WEB SERVICES ATOMIC

TRANSACTIONS, DEADLOCK

MAY OCCUR.

http://www-

01.ibm.com/support/docview.wss?uid=swg1PM07820

Karawash; A., Mcheick; H., Dbouk; M,

Japan; ICIS2013

Problem of web service composition

• No compile step in service composition as in Java programming.

No real tools are available for the validation technique, academic efforts

are discussed, and challenges are presented [Manuel Palomo-Duarte, 2012].

• This work proposes a new idea:

• A compile step to inform designers and validate service composition at

the design phase before execution of a web service.

Karawash; A., Mcheick; H., Dbouk; M,

Japan; ICIS2013

Solution by validation

Please refer to this Springer chapter to read the complete solution model:

http://link.springer.com/chapter/10.1007%2F978-3-319-00804-2_15

Karawash; A., Mcheick; H., Dbouk; M,

Japan; ICIS2013

Simulation

Karawash; A., Mcheick; H., Dbouk; M,

Japan; ICIS2013

Conclusion

The web service revolution gave us the permission to benefit from the already built

services to design other complex services. But invoking blindly other services may

not always give the desired result.

Since of millions of web services we cannot build a centralized compiler for all the

services together, so the dynamic distributed compiler per each new composite

service is the solution.

Karawash; A., Mcheick; H., Dbouk; M,

Japan; ICIS2013

References

Srivastava B. & Koehler J.: Srivastava B. et Koehler J., Web Service Composition - Current Solutions and Open Problems, IBM India &

Switzerland Research, ICAPS 2003 Workshop on planning for Web services, Vol. 35.

Manuel Palomo-Duarte, Service Composition Verification and Validation, University of Cadiz, DOI: 10.4018/978-1-61350-159- 7.ch010,

Spain (2012).

Amirjavid F. et al, 2011: Amirjavid, F., Mcheick, H. et Dbouk, M., Job division in service oriented computing based on time aspect, Int. J.

Communication Networks and Distributed Systems, Vol. 6, No. 1, 2011.

Li K., 2005: Li, K.; LUMINA: USING WSDL-S FOR WEB SERVICE DISCOVERY, Master Thesis; University of Georgia December 2005.

Colombo M. Et al., 2006: Colombo, M., Nitto, E. D., and Mauri, M. (2006).

Scene: A service composition execution environment supporting dynamic changes disciplined through rules. International Conference on

Service Oriented Computing (ICSOC), Springer Berlin / Heidelberg.

Silva et al., 2009: Silva, E.; Pires, L. F.; Sinderen, M. v., Supporting dynamic service composition at runtime based on end-user requirements.

Centre for Telematics and Information Technology University of Twente. The Netherlands P.O. Box 217, 7500 AE Enschede (2009).

Eid M. Et al., 2008: Eid, M. A., Alamri, A., El-Saddik, A., A reference model for dynamic web service composition systems, International Journal

of Web and Grid Services, (2008).

Shen L. Et al., 2007: Shen, L., Li, L., Ren, S., and Mu, Y., Dynamic composition of web service based on coordination model, The Joint

International Conferences on Asia-Pacific, Web Conference and Web-Age Information Management (2007).

Aho I. et al, 2007: I. Aho, Alfied V. 11. Aho, Alfred V. Compilers, principles, techniques, and tools, QA76.76.C65A37, (2007).

Karawash; A., Mcheick; H., Dbouk; M,

Japan; ICIS2013

Thanks for your attention!

Questions?

For more details: Ahmad Karawash

[email protected]