• Aucun résultat trouvé

Multicriteria Evaluation Based Framework for Composite Web Service Selection

N/A
N/A
Protected

Academic year: 2021

Partager "Multicriteria Evaluation Based Framework for Composite Web Service Selection"

Copied!
32
0
0

Texte intégral

(1)

Multicriteria Evaluation Based Framework for

Composite Web Service Selection

Samir Youcef and Salem Chakhar

Laboratoire d’Analyse et de Modélisation

des Systèmes pour l’Aide à la Décision

Université de Paris-Dauphine

21 February 2008

(2)

Web service architecture

Web services selection Proposed model Conclusion

Elementary Web Service

Web service definition (W3C)

B

Web service is a software system designed to support

interoperable machine to machine interaction over a network

B

Interoperability among services is insured by the open

protocols:

Description: XML (eXtensible Markup language)

Transport: SOAP (Simple Object Access Protocol)

Interface: WSDL (Web Service Description Language)

WSDL is limited to simple operations:

How compose the different operations (Need a standard

description of the process)

(3)

Composite Web service

Composition languages

WSFL (Web Services Flow Language): IBM

XLANG (XML Business Process Language): Microsoft

PBML (Business Process Modeling Language): BPMI.org

BPEL4WS

BPEL4WS is the merger of WSFL, XLANG et PBML

BPEL4WS constructors

Basic: invoke, receive, reply, wait, assign,...

Structured: sequence, switch, while, flow, pick,...

(4)

Web service architecture

Web services selection Proposed model Conclusion

Conventional Web service architecture

B

A Web service can be discovered in UDDI registry.

SOAP HTTP,FTP... Search UDDI Publication of the WSDL Decsription

Service customer Service provider

Recuperation of the WSDL description

Bind

(5)

Web services selection

B

Composite Web service=A+B+C (What is the best composition?)

Search UDDI Publication of the WSDL Decsription Service customer Recuperation of the WSDL description Bind Service A: provider 1, provider 2. Service B: provideer 1, provider 2, provider 3. Service C: provider 1, provider 2.

Travel site: airline booking, hotel reservation, car reservation http

(6)

Web service architecture

Web services selection

Proposed model Conclusion

Web services selection

Quality of service (QoS)

QoS is a combinaison of several properties:

Qualitative: security, reputation,...

Quantitative: response time, availability,...

Previous studies

Single evaluation criterion

Successive evaluation ("general level" of different

composition)

Local strategy selection

(7)

Web services selection

Limitations

A single criterion does not permit to encompass all the

facets of the problem

Weighted sum-like aggregation rules may lead to the

compensation problem

Several QoS evaluation criteria are naturally qualitative

Proposed solution

Using multicreteria evaluation of the different composition

Extend the conventional Web service architecture, using

QoS

(8)

Web service architecture Web services selection

Proposed model

Conclusion

Extended conventional Web service architecture

Multicriterai Evalutaion? yes no infer evaluate Multicriteria Evaluation Component (MEC) W-IRIS DecisionDeck Conventional Evaluation Customer Provider UDDI registry

response find response

bind publish

(9)

Extended conventional Web service architecture

Multicriterai Evalutaion? yes no infer evaluate Multicriteria Evaluation Component (MEC) W-IRIS DecisionDeck Conventional Evaluation Customer Provider UDDI registry

response find response

bind publish

(10)

Web service architecture Web services selection

Proposed model

Conclusion

Extended conventional Web service architecture

Multicriterai Evalutaion? yes no infer evaluate Multicriteria Evaluation Component (MEC) W-IRIS DecisionDeck Conventional Evaluation Customer Provider UDDI registry

response find response

bind publish

(11)

Extended conventional Web service architecture

Multicriterai Evalutaion? yes no infer evaluate Multicriteria Evaluation Component (MEC) W-IRIS DecisionDeck Conventional Evaluation Customer Provider UDDI registry

response find response

bind publish

(12)

Web service architecture Web services selection

Proposed model

Conclusion

Extended conventional Web service architecture

Multicriterai Evalutaion? yes no infer evaluate Multicriteria Evaluation Component (MEC) W-IRIS DecisionDeck Conventional Evaluation Customer Provider UDDI registry

response find response

bind publish

(13)
(14)

Web service architecture Web services selection

Proposed model

Conclusion

Definitions

Elementary Web service definition

Web service s

i

,

i

∈ {

1

, ..,

n

}

is characterized by the tuple:

F

i

: description functionality

Q

i

: specification of its QoS

C

i

: cost specification

P

i

: set of providers of functionality F

i

, i

∈ {

1

, ...,

n

}

Composite Web service definition

G

= (

X

,

V

)

composite graphe associated with s

1

, ...,

s

n

A composite Web service is an instance

{

s

1

, ...,

s

n

}

of G,

such: s

1

P

1

,...,s

n

P

n

s

i

j

: ith elementary Web service offered by the jth provider

Decision Deck, February 21-02-2008 Multicriteria Framework for Composite Web Selection

(15)

Potential composite Web services

Algorithm CompositionsConstruction

INPUT:

G

=

(X

,V

)

:

composition

graph

P

= {P

1

,

P

2

, · · · ,

P

n

}

:

providers

OUTPUT:

C

:

potential compositions

T

Construct

Tree(

X

,

P

)

t

1

WHILE

t

<=

Q

ni=1

|P

i

|

X

t

ElementaryPath(

T

)

//X

t

= {s

,

s

· 2

, · · · ,

s

· n

}

FOR each

(S

h

,S

k

) ∈

V

V

t

← (s

h·

,

s

·k

)

END

FOR

c

t

G

t

= (X

t

,

V

t

)

C

C

c

t

t

t

+

1

END

WHILE

r . . . . . . . . . . . . s1 1 s 2 1 s 3 1 s 4 1 s1 2 s 2 2 s 3 2 s 3 2 s2 2 s1 2 s1 3 s 2 3 s 1 3 s 2 3 s1 4 s 1 4 s1 5 s 2 5 s 3 5 s 4 5 s55 s 1 5 s 2 5 s 3 5 s 4 5 s 5 5 s1 6 s 2 6 s 1 6 s 2 6 . . .

(16)

Web service architecture Web services selection

Proposed model

Conclusion

Potential composite Web services

Algorithm CompositionsConstruction

INPUT:

G

=

(X

,V

)

:

composition

graph

P

= {P

1

,

P

2

, · · · ,

P

n

}

:

providers

OUTPUT:

C

:

potential compositions

T

Construct

Tree(

X

,

P

)

t

1

WHILE

t

<=

Q

ni=1

|P

i

|

X

t

ElementaryPath(

T

)

//X

t

= {s

,

s

· 2

, · · · ,

s

· n

}

FOR each

(S

h

,S

k

) ∈

V

V

t

← (s

h·

,

s

·k

)

END

FOR

c

t

G

t

= (X

t

,

V

t

)

C

C

c

t

t

t

+

1

END

WHILE

r . . . . . . . . . . . . s1 1 s 2 1 s 3 1 s 4 1 s1 2 s 2 2 s 3 2 s 3 2 s2 2 s1 2 s1 3 s 2 3 s 1 3 s 2 3 s1 4 s 1 4 s1 5 s 2 5 s 3 5 s 4 5 s55 s 1 5 s 2 5 s 3 5 s 4 5 s 5 5 s1 6 s 2 6 s 1 6 s 2 6 . . .

(17)

Potential composite Web services

Algorithm CompositionsConstruction

INPUT:

G

=

(X

,V

)

:

composition

graph

P

= {P

1

,

P

2

, · · · ,

P

n

}

:

providers

OUTPUT:

C

:

potential compositions

T

Construct

Tree(

X

,

P

)

t

1

WHILE

t

<=

Q

ni=1

|P

i

|

X

t

ElementaryPath(

T

)

//X

t

= {s

,

s

· 2

, · · · ,

s

· n

}

FOR each

(S

h

,S

k

) ∈

V

V

t

← (s

h·

,

s

·k

)

END

FOR

c

t

G

t

= (X

t

,

V

t

)

C

C

c

t

t

t

+

1

END

WHILE

r . . . . . . . . . . . . s1 1 s 2 1 s 3 1 s 4 1 s1 2 s 2 2 s 3 2 s 3 2 s2 2 s1 2 s1 3 s 2 3 s 1 3 s 2 3 s1 4 s 1 4 s1 5 s 2 5 s 3 5 s 4 5 s55 s 1 5 s 2 5 s 3 5 s 4 5 s 5 5 s1 6 s 2 6 s 1 6 s 2 6 . . .

(18)

Web service architecture Web services selection

Proposed model

Conclusion

Potential composite Web services

Algorithm CompositionsConstruction

INPUT:

G

=

(X

,V

)

:

composition

graph

P

= {P

1

,

P

2

, · · · ,

P

n

}

:

providers

OUTPUT:

C

:

potential compositions

T

Construct

Tree(

X

,

P

)

t

1

WHILE

t

<=

Q

ni=1

|P

i

|

X

t

ElementaryPath(

T

)

//X

t

= {s

,

s

· 2

, · · · ,

s

· n

}

FOR each

(S

h

,S

k

) ∈

V

V

t

← (s

h·

,

s

·k

)

END

FOR

c

t

G

t

= (X

t

,

V

t

)

C

C

c

t

t

t

+

1

END

WHILE

r . . . . . . . . . . . . s1 1 s 2 1 s 3 1 s 4 1 s1 2 s 2 2 s 3 2 s 3 2 s2 2 s1 2 s1 3 s 2 3 s 1 3 s 2 3 s1 4 s 1 4 s1 5 s 2 5 s 3 5 s 4 5 s55 s 1 5 s 2 5 s 3 5 s 4 5 s 5 5 s1 6 s 2 6 s 1 6 s 2 6 . . .

(19)

Potential composite Web services

Algorithm CompositionsConstruction

INPUT:

G

=

(X

,V

)

:

composition

graph

P

= {P

1

,

P

2

, · · · ,

P

n

}

:

providers

OUTPUT:

C

:

potential compositions

T

Construct

Tree(

X

,

P

)

t

1

WHILE

t

<=

Q

ni=1

|P

i

|

X

t

ElementaryPath(

T

)

//X

t

= {s

,

s

· 2

, · · · ,

s

· n

}

FOR each

(S

h

,S

k

) ∈

V

V

t

← (s

h·

,

s

·k

)

END

FOR

c

t

G

t

= (X

t

,

V

t

)

C

C

c

t

t

t

+

1

END

WHILE

r . . . . . . . . . . . . s1 1 s 2 1 s 3 1 s 4 1 s1 2 s 2 2 s 3 2 s 3 2 s2 2 s1 2 s1 3 s 2 3 s 1 3 s 2 3 s1 4 s 1 4 s1 5 s 2 5 s 3 5 s 4 5 s55 s 1 5 s 2 5 s 3 5 s 4 5 s 5 5 s1 6 s 2 6 s 1 6 s 2 6 . . .

(20)

Web service architecture Web services selection

Proposed model

Conclusion

Potential composite Web services

Algorithm CompositionsConstruction

INPUT:

G

=

(X

,V

)

:

composition

graph

P

= {P

1

,

P

2

, · · · ,

P

n

}

:

providers

OUTPUT:

C

:

potential compositions

T

Construct

Tree(

X

,

P

)

t

1

WHILE

t

<=

Q

ni=1

|P

i

|

X

t

ElementaryPath(

T

)

//X

t

= {s

,

s

· 2

, · · · ,

s

· n

}

FOR each

(S

h

,S

k

) ∈

V

V

t

← (s

h·

,

s

·k

)

END

FOR

c

t

G

t

= (X

t

,

V

t

)

C

C

c

t

t

t

+

1

END

WHILE

r . . . . . . . . . . . . s1 1 s 2 1 s 3 1 s 4 1 s1 2 s 2 2 s 3 2 s 3 2 s2 2 s1 2 s1 3 s 2 3 s 1 3 s 2 3 s1 4 s 1 4 s1 5 s 2 5 s 3 5 s 4 5 s55 s 1 5 s 2 5 s 3 5 s 4 5 s 5 5 s1 6 s 2 6 s 1 6 s 2 6 . . .

(21)

Potential composite Web services

Algorithm CompositionsConstruction

INPUT:

G

=

(X

,V

)

:

composition

graph

P

= {P

1

,

P

2

, · · · ,

P

n

}

:

providers

OUTPUT:

C

:

potential compositions

T

Construct

Tree(

X

,

P

)

t

1

WHILE

t

<=

Q

ni=1

|P

i

|

X

t

ElementaryPath(

T

)

//X

t

= {s

,

s

· 2

, · · · ,

s

· n

}

FOR each

(S

h

,S

k

) ∈

V

V

t

← (s

h·

,

s

·k

)

END

FOR

c

t

G

t

= (X

t

,

V

t

)

C

C

c

t

t

t

+

1

END

WHILE

r . . . . . . . . . . . . s1 1 s 2 1 s 3 1 s 4 1 s1 2 s 2 2 s 3 2 s 3 2 s2 2 s1 2 s1 3 s 2 3 s 1 3 s 2 3 s1 4 s 1 4 s1 5 s 2 5 s 3 5 s 4 5 s55 s 1 5 s 2 5 s 3 5 s 4 5 s 5 5 s1 6 s 2 6 s 1 6 s 2 6 . . .

(22)

Web service architecture Web services selection

Proposed model

Conclusion

Potential composite Web services

Algorithm CompositionsConstruction

INPUT:

G

=

(X

,V

)

:

composition

graph

P

= {P

1

,

P

2

, · · · ,

P

n

}

:

providers

OUTPUT:

C

:

potential compositions

T

Construct

Tree(

X

,

P

)

t

1

WHILE

t

<=

Q

ni=1

|P

i

|

X

t

ElementaryPath(

T

)

//X

t

= {s

,

s

· 2

, · · · ,

s

· n

}

FOR each

(S

h

,S

k

) ∈

V

V

t

← (s

h·

,

s

·k

)

END

FOR

c

t

G

t

= (X

t

,

V

t

)

C

C

c

t

t

t

+

1

END

WHILE

r . . . . . . . . . . . . s1 1 s 2 1 s 3 1 s 4 1 s1 2 s 2 2 s 3 2 s 3 2 s2 2 s1 2 s1 3 s 2 3 s 1 3 s 2 3 s1 4 s 1 4 s1 5 s 2 5 s 3 5 s 4 5 s55 s 1 5 s 2 5 s 3 5 s 4 5 s 5 5 s1 6 s 2 6 s 1 6 s 2 6 . . .

(23)

Evaluation of compositions

General formula:

v

j

(

x

) = Φ

j

[

g

j

(

x

), Ω(Γ

+

(

x

))

(1)

Response time:

v

1

(

x

) =

g

j

(

x

) +

max

{

v

1

(

y

) :

y

∈ Γ

+

(

x

)}

(2)

or

v

1

(

x

) =

g

j

(

x

)

+

X

y∈Γ

+

(x)

π(

x

,

y

) ·

v

1

(

y

)

(3)

Security

v

4

(

x

) =

min

{

g

j

(

x

),

min

y∈Γ

+

(x)

{

v

4

(

y

)}}

(4)

(24)

Web service architecture Web services selection

Proposed model Conclusion

Evaluation of compositions

s s s s s s 1 2 3 4 5 6 P P 1 2 Composition graph flow switch join s s s s s s 1 2 3 4 5 6 P P 1 2 C1 2 2 1 4 2 3 s s s s s s 1 2 3 4 5 6 P P 1 2 C1 3 2 2 3 2 2

(25)

Evaluation of compositions

Response time of composite Web service:

s

s

s

s

s

s

1 2 3 4 5 6

P

P

1 2

flow

switch

join

2 2 1 4 2 3

2

2

4

3

1

2

V( )=2

s

63

(26)

Web service architecture Web services selection

Proposed model

Conclusion

Evaluation of compositions

Response time of composite Web service:

s

s

s

s

s

s

1 2 3 4 5 6

P

P

1 2

flow

switch

join

2 2 1 4 2 3

2

2

4

3

1

2

V( )=2

V( )=6

s

63

s

52

bottom

up algorithm

(27)

Evaluation of compositions

Response time of composite Web service:

s

s

s

s

s

s

1 2 3 4 5 6

P

P

1 2

flow

switch

join

2 2 1 4 2 3

2

2

4

3

1

2

V( )=2

V( )=6

V( )=4

s

63

s

52

s

44

(28)

Web service architecture Web services selection

Proposed model

Conclusion

Evaluation of compositions

Response time of composite Web service:

s

s

s

s

s

s

1 2 3 4 5 6

P

P

1 2

flow

switch

join

2 2 1 4 2 3

2

2

4

3

1

2

V( )=2

V( )=6

V( )=4

V( )= 5

s

6 3

s

52

s

4

s

4 1 3

bottom

up algorithm

(29)

Evaluation of compositions

Response time of composite Web service:

s

s

s

s

s

s

1 2 3 4 5 6

P

P

1 2

flow

switch

join

2 2 1 4 2 3

2

2

4

3

1

2

V( )=2

V( )=6

V( )=4

V( )=5

s

6 3

s

52

s

4

s

V( )=3

s

4 1 3 2 2

(30)

Web service architecture Web services selection

Proposed model

Conclusion

Evaluation of compositions

Response time of composite Web service:

s

s

s

s

s

s

1 2 3 4 5 6

P

P

1 2

flow

switch

join

2 2 1 4 2 3

2

2

4

3

1

2

V( )=2

V( )=6

V( )=4

V( )=5

s

6 3

s

52

s

4

s

V( )=

V( )=7

s

3

s

2 4 1 3 2 2 1

bottom

up algorithm

(31)

Conclusion

Proposed model

General framework to composite Web services using QoS

Multicriteria evaluation based approach

QoS criterion evaluation

Generate the different potentials compositions

Futur research

Finalization of the being developed prototype

Extension for the framework to support dynamic

composition (composition graph)

Quantitatives criteria: random variables (response time,

availability,...)

(32)

Web service architecture Web services selection Proposed model Conclusion

Second Workshop Decision Deck

Area:

Web services

Topic:

Performance evaluation of Web services

Laboratory:

Lamsade (Paris-Dauphine)

Home page:

http://www.lamsade.dauphine.fr/

youcef

Thank you for your attention !

Références

Documents relatifs

As discussed in the previous section, 2D quasiperiodic structures can be obtained fiom both the interference of multiple laser beams, and fiom multiple exposures with

لمعلا اذه زاجنإ يل هليهستو هقيفوت ىلع هل ليزجلا ركشلاو ، هلاضفأو همعن ىلع لله دمحلا عضاوتملا. نيملاعلل ةمحرو ىرشبلاب ءاج نم ىلع

Directement héritière de ce corpus de recherche, appuyée sur une méthodologie qualitative solide qui utilise les outils de l’ethnographie urbaine,

Usually in the direct methods of the calculus of variations one studies the weak lower semicontinuity of / in a Sobolev space W lrP and we have the following result2. (i) /

In this demo we have presented a web-based tool for automatic evaluation of matching systems that is available for the research community at any time. The major benefit of this

Dans ce travail une simulation numérique non-linéaire en 3-D par éléments finis a été réalisée pour analyser le comportement du front de fissure et déterminer

Among these initiatives, The European Knowledge Hub MACSUR (Modelling European Agriculture with Climate Change for Food Security, http://macsur.eu/) and the

Dealing with multiple clients When a server interface of a component is bound to several client interfaces of other components, the C-SWN of the server must be modified in order to