TRANSFORMING WEB SERVICES CHOREOGRAPHIES WITH PRIORITIES AND TIME - - PowerPoint PPT Presentation

transforming web services choreographies with priorities
SMART_READER_LITE
LIVE PREVIEW

TRANSFORMING WEB SERVICES CHOREOGRAPHIES WITH PRIORITIES AND TIME - - PowerPoint PPT Presentation

TRANSFORMING WS-CDL WITH PRIORITIES AND TIME CONSTRAINTS INTO PRIORITIZED-TIME PETRI NETS TRANSFORMING WEB SERVICES CHOREOGRAPHIES WITH PRIORITIES AND TIME CONSTRAINTS INTO PRIORITIZED-TIME PETRI NETS V. Valero M.E. Cambronero G. Daz J.J.


slide-1
SLIDE 1

TRANSFORMING WS-CDL WITH PRIORITIES AND TIME CONSTRAINTS INTO PRIORITIZED-TIME PETRI NETS

TRANSFORMING WEB SERVICES CHOREOGRAPHIES WITH PRIORITIES AND TIME CONSTRAINTS INTO PRIORITIZED-TIME PETRI NETS

  • V. Valero

M.E. Cambronero

  • G. Díaz

J.J. Pardo

Departamento de Sistemas Informáticos Universidad de Castilla-La Mancha Valentin.Valero@uclm.es

FLACOS 2007

slide-2
SLIDE 2

TRANSFORMING WS-CDL WITH PRIORITIES AND TIME CONSTRAINTS INTO PRIORITIZED-TIME PETRI NETS

CONTENTS

1

MOTIVATION AND GOALS

2

WS-CDL

3

TIME AND PRIORITIES IN WS-CDL

4

PRIORITIZED-TIME PETRI NETS (PTPNs)

5

PTPN SEMANTICS

6

CASE STUDY

7

CONCLUSIONS

slide-3
SLIDE 3

TRANSFORMING WS-CDL WITH PRIORITIES AND TIME CONSTRAINTS INTO PRIORITIZED-TIME PETRI NETS

CONTENTS

1

MOTIVATION AND GOALS

2

WS-CDL

3

TIME AND PRIORITIES IN WS-CDL

4

PRIORITIZED-TIME PETRI NETS (PTPNs)

5

PTPN SEMANTICS

6

CASE STUDY

7

CONCLUSIONS

slide-4
SLIDE 4

TRANSFORMING WS-CDL WITH PRIORITIES AND TIME CONSTRAINTS INTO PRIORITIZED-TIME PETRI NETS

CONTENTS

1

MOTIVATION AND GOALS

2

WS-CDL

3

TIME AND PRIORITIES IN WS-CDL

4

PRIORITIZED-TIME PETRI NETS (PTPNs)

5

PTPN SEMANTICS

6

CASE STUDY

7

CONCLUSIONS

slide-5
SLIDE 5

TRANSFORMING WS-CDL WITH PRIORITIES AND TIME CONSTRAINTS INTO PRIORITIZED-TIME PETRI NETS

CONTENTS

1

MOTIVATION AND GOALS

2

WS-CDL

3

TIME AND PRIORITIES IN WS-CDL

4

PRIORITIZED-TIME PETRI NETS (PTPNs)

5

PTPN SEMANTICS

6

CASE STUDY

7

CONCLUSIONS

slide-6
SLIDE 6

TRANSFORMING WS-CDL WITH PRIORITIES AND TIME CONSTRAINTS INTO PRIORITIZED-TIME PETRI NETS

CONTENTS

1

MOTIVATION AND GOALS

2

WS-CDL

3

TIME AND PRIORITIES IN WS-CDL

4

PRIORITIZED-TIME PETRI NETS (PTPNs)

5

PTPN SEMANTICS

6

CASE STUDY

7

CONCLUSIONS

slide-7
SLIDE 7

TRANSFORMING WS-CDL WITH PRIORITIES AND TIME CONSTRAINTS INTO PRIORITIZED-TIME PETRI NETS

CONTENTS

1

MOTIVATION AND GOALS

2

WS-CDL

3

TIME AND PRIORITIES IN WS-CDL

4

PRIORITIZED-TIME PETRI NETS (PTPNs)

5

PTPN SEMANTICS

6

CASE STUDY

7

CONCLUSIONS

slide-8
SLIDE 8

TRANSFORMING WS-CDL WITH PRIORITIES AND TIME CONSTRAINTS INTO PRIORITIZED-TIME PETRI NETS

CONTENTS

1

MOTIVATION AND GOALS

2

WS-CDL

3

TIME AND PRIORITIES IN WS-CDL

4

PRIORITIZED-TIME PETRI NETS (PTPNs)

5

PTPN SEMANTICS

6

CASE STUDY

7

CONCLUSIONS

slide-9
SLIDE 9

TRANSFORMING WS-CDL WITH PRIORITIES AND TIME CONSTRAINTS INTO PRIORITIZED-TIME PETRI NETS MOTIVATION AND GOALS

MOTIVATION AND GOALS

WEB SERVICES THERE IS A NEED OF A TECHNOLOGY FOR COMPOSITION

slide-10
SLIDE 10

TRANSFORMING WS-CDL WITH PRIORITIES AND TIME CONSTRAINTS INTO PRIORITIZED-TIME PETRI NETS MOTIVATION AND GOALS

MOTIVATION AND GOALS

Trasport HTTP,BEEP,IIOP,JMS,SMTP XML,Encodings SOAP Trasport Description WSDL Discovery UDDI Reliable Messaging Context Transactions Coordination Qualityof Service Security Qualityof Service BusinessProcessLanguages: BPEL,CI,XPDL,BPML BusinessCollaborationLanguage: ChoreographyDescriptionLanguage

slide-11
SLIDE 11

TRANSFORMING WS-CDL WITH PRIORITIES AND TIME CONSTRAINTS INTO PRIORITIZED-TIME PETRI NETS MOTIVATION AND GOALS

MOTIVATION AND GOALS

Choreography layer: Collaboration of parties, establishing their common and complementary observable behaviour. Independent of platform or programming model. A contract among the different participants. Basic element: interactions.

slide-12
SLIDE 12

TRANSFORMING WS-CDL WITH PRIORITIES AND TIME CONSTRAINTS INTO PRIORITIZED-TIME PETRI NETS MOTIVATION AND GOALS

MOTIVATION AND GOALS

PRIORITIES TIME

+

slide-13
SLIDE 13

TRANSFORMING WS-CDL WITH PRIORITIES AND TIME CONSTRAINTS INTO PRIORITIZED-TIME PETRI NETS MOTIVATION AND GOALS

MOTIVATION AND GOALS

<?xml version="1.0" encoding=’MF-P’?> <package xmlns="http://www.w3.org/2004/12/ws-chor/cdl" ::::::::::::::::::::::: <choreography name="SeatReservation" root="true"> ::::::::::::::::::::::: <sequence> <choice> <interaction name="requesttriptraveler" :::::::::::::::::::::::

  • peration="RequestingTrip">

<participate fromRole="tns:Traveler" toRole="tns:ARSforTraveler"/> <exchange name="request" ......... </exchange> <exchange name="response" ......... </exchange> </interaction> <interaction name="requesttripTA" :::::::::::::::

  • peration="RequestingTripTA">

<participate fromRole="tns:TravelAgent" toRole="tns:ARSforTravelAgent"/> <exchange name="request" ......... </exchange> <exchange name="response" ......... </exchange> </interaction> </choice> <choice> <sequence> <interaction name="reservationtriptraveler" :::::::::

  • peration="ReservatingTrip">

<participate fromRole="tns:Traveler" toRole="tns:ARSforTraveler"/> <exchange name="request" ......... </exchange> <exchange name="response" ......... </exchange> <priority value="4" /> </interaction> <interaction name="bookseattraveler" ::::::::::::::::

  • peration="Bookingseat">

<participate fromRole="tns:Traveler" toRole="tns:ARSforTraveler"/> <exchange name="request" ......... </exchange> <exchange name="response" ......... </exchange> <priority value="4" /> <timeout time-to-complete =" 48" /> </interaction> </sequence> <sequence> <interaction name="reservationtripTA" :::::::::::::::::::::::

  • peration="ReservatingTripTA">

<participate fromRole="tns:TravelAgent" toRole="tns:ARSforTravelAgent"/> <exchange name="request" ......... </exchange> <exchange name="response" ......... </exchange> <priority value="2" /> </interaction> <interaction name="bookseatTA" :::::::::::::

  • peration="BookingseatTA">

<participate fromRole="tns:TravelAgent" toRole="tns:ARSforTravelAgent"/> <exchange name="request" :::::::::::::::: </exchange> <exchange name="response" :::::::::::::::: </exchange> <priority value="2" /> <timeout time-to-complete =" 48" /> </interaction> </sequence> </choice> </sequence> </choreography> </package>

WS-CDL DOCUMENT

t ,1,[4,10]

1

t ,3,[2,5]

2 3

t ,3,[2,5]

4

t ,1,[4,10]

PRIORITIZED−TIME PETRI NET

slide-14
SLIDE 14

TRANSFORMING WS-CDL WITH PRIORITIES AND TIME CONSTRAINTS INTO PRIORITIZED-TIME PETRI NETS MOTIVATION AND GOALS

MOTIVATION AND GOALS

The PTPN representation provides a graphical view of the global behaviour. A tool can be used to simulate and analyse the system.

slide-15
SLIDE 15

TRANSFORMING WS-CDL WITH PRIORITIES AND TIME CONSTRAINTS INTO PRIORITIZED-TIME PETRI NETS WS-CDL

WS-CDL Elements

Participants, Role Types and Relationship Types. Information Types, Variables and Tokens. Channels. Choreographies. Activities and Ordering Structures. Workunits.

slide-16
SLIDE 16

TRANSFORMING WS-CDL WITH PRIORITIES AND TIME CONSTRAINTS INTO PRIORITIZED-TIME PETRI NETS WS-CDL

CHOREOGRAPHIES

They establish the common rules that govern the ordering

  • f exchanged messages and the collaborative behaviour.
slide-17
SLIDE 17

TRANSFORMING WS-CDL WITH PRIORITIES AND TIME CONSTRAINTS INTO PRIORITIZED-TIME PETRI NETS WS-CDL

CHOREOGRAPHIES

Parts of a choreography:

(PROGRESSION) LIFE − LINE FINALIZER BLOCK EXCEPTION BLOCK

ABNORMAL TERMINATION CORRECT TERMINATION

slide-18
SLIDE 18

TRANSFORMING WS-CDL WITH PRIORITIES AND TIME CONSTRAINTS INTO PRIORITIZED-TIME PETRI NETS WS-CDL

CHOREOGRAPHIES

Activities: Work that the choreography must perform.

ORDERING STRUCTURES BASIC ACTIVITIES

NOACTION ACTIVITIES ASSIGN, SILENT AND ACTIVITIES INTERACTION CHOICE PARALLEL SEQUENCE

slide-19
SLIDE 19

TRANSFORMING WS-CDL WITH PRIORITIES AND TIME CONSTRAINTS INTO PRIORITIZED-TIME PETRI NETS TIME AND PRIORITIES IN WS-CDL

TIME AND PRIORITIES IN WS-CDL

Some parties may establish time restrictions for some interactions. Some parties may desire to favor some interactions by means of priorities.

slide-20
SLIDE 20

TRANSFORMING WS-CDL WITH PRIORITIES AND TIME CONSTRAINTS INTO PRIORITIZED-TIME PETRI NETS TIME AND PRIORITIES IN WS-CDL

TIME AND PRIORITIES IN WS-CDL

Interaction activities may have a time-out associated. Date and Time variables can be used in the guards of workunits to delay the execution. Priorities can be introduced in interactions.

slide-21
SLIDE 21

TRANSFORMING WS-CDL WITH PRIORITIES AND TIME CONSTRAINTS INTO PRIORITIZED-TIME PETRI NETS PRIORITIZED-TIME PETRI NETS (PTPNs)

PRIORITIZED-TIME PETRI NETS

Definition (PTPN) A PTPN is a tuple N = (P, T, F,α,β,π). P Finite set of places T Finite set of transitions (T = T1 ∪ T2) F Flow relation (F ⊆ (P ×T)∪(T ×P)) α : T → N Earliest Static Firing Time β : T → N ∪ {∞} Latest Static Firing Time π : T → N Priority function

slide-22
SLIDE 22

TRANSFORMING WS-CDL WITH PRIORITIES AND TIME CONSTRAINTS INTO PRIORITIZED-TIME PETRI NETS PRIORITIZED-TIME PETRI NETS (PTPNs)

PRIORITIZED-TIME PETRI NETS

Firing rule: When a transition becomes enabled a local clock is set. The transition can be fired when its clock has a value in its associated time interval. No time can elapse when a clock of a transition in T2 reaches its latest firing time.

slide-23
SLIDE 23

TRANSFORMING WS-CDL WITH PRIORITIES AND TIME CONSTRAINTS INTO PRIORITIZED-TIME PETRI NETS PRIORITIZED-TIME PETRI NETS (PTPNs)

PRIORITIZED-TIME PETRI NETS

p p p p

t ,1,[4,10] t ,2,[1,1]

1 2

t ,2,[1,1]

3

t ,3,[2,5]

4 1 2

p3

4

p5

6

Relative Time Bounds

t t

3 1

t2 t

4

[3,9] [0,0] −−−−− −−−−−

slide-24
SLIDE 24

TRANSFORMING WS-CDL WITH PRIORITIES AND TIME CONSTRAINTS INTO PRIORITIZED-TIME PETRI NETS PTPN SEMANTICS

PTPN SEMANTICS

A subset of WS-CDL must be considered. Transitions are labelled with the roletypes involved in their execution. The obtained PTPNs are 1-safe.

slide-25
SLIDE 25

TRANSFORMING WS-CDL WITH PRIORITIES AND TIME CONSTRAINTS INTO PRIORITIZED-TIME PETRI NETS PTPN SEMANTICS

PTPN SEMANTICS

There is one initial place which activates the PTPN when it is marked. There are two exit places: correct and erroneous. Only

  • ne of them can be finally marked.

Input place Correct termination Erroneous termination

slide-26
SLIDE 26

TRANSFORMING WS-CDL WITH PRIORITIES AND TIME CONSTRAINTS INTO PRIORITIZED-TIME PETRI NETS PTPN SEMANTICS

PTPN SEMANTICS

Some elements of WS-CDL do not require a translation: RoleTypes, RelationshipTypes, ParticipantTypes, ChannelTypes and InformationTypes. Variables in general are not considered. Date and Time variables used to delay the execution are considered. Only a root choreography is considered. Activities and workunits are considered.

slide-27
SLIDE 27

TRANSFORMING WS-CDL WITH PRIORITIES AND TIME CONSTRAINTS INTO PRIORITIZED-TIME PETRI NETS PTPN SEMANTICS

CHOREOGRAPHIES

N Ne

peok peer p

in

pein

Na

aok

paer p t ,0,[0,0]

2

t ,0,[0,0]

3

t ,0,[0,0]

4

t ,0,[0,0]

5

pcin pain= p

  • k

pcok =

f

f p

er

f f

pcer t ,0,[0,0]

1

slide-28
SLIDE 28

TRANSFORMING WS-CDL WITH PRIORITIES AND TIME CONSTRAINTS INTO PRIORITIZED-TIME PETRI NETS PTPN SEMANTICS

BASIC ACTIVITIES

Interaction activities:

{r , r }

2 1

t ,l,[0,x]

1

{r , r }

2 1

pin

t ,l,[x+1,x+1]

2

pok per pin

{r , r }

2 1

pok per

t ,l,[0, ]

1

(a) With time-out (b) Without time-out

slide-29
SLIDE 29

TRANSFORMING WS-CDL WITH PRIORITIES AND TIME CONSTRAINTS INTO PRIORITIZED-TIME PETRI NETS PTPN SEMANTICS

BASIC ACTIVITIES

Assign, Noaction and Silent activities: pin pok per

1

{r}

t ,0,[0,0]

slide-30
SLIDE 30

TRANSFORMING WS-CDL WITH PRIORITIES AND TIME CONSTRAINTS INTO PRIORITIZED-TIME PETRI NETS PTPN SEMANTICS

WORKUNITS

Delayed Workunit:

w

p

er

  • k

a

p

  • k

w

p

in w

p

Na

er a

p

in a

p = =

1

t ,M,[x,y]

slide-31
SLIDE 31

TRANSFORMING WS-CDL WITH PRIORITIES AND TIME CONSTRAINTS INTO PRIORITIZED-TIME PETRI NETS PTPN SEMANTICS

WORKUNITS

General Workunit:

in w

p

block ¬

  • k

a

p

w

p

er t ,M,[0,0] 2

g ¬ Na

er a

p

in a

p t ,M,[0,0]

6

  • k

w

p =

5

t ,M,[0,0]

4

t ,M,[0,0] t ,M,[0,0]

1

t ,M,[0, ]

3

slide-32
SLIDE 32

TRANSFORMING WS-CDL WITH PRIORITIES AND TIME CONSTRAINTS INTO PRIORITIZED-TIME PETRI NETS PTPN SEMANTICS

ORDERING STRUCTURES

Sequence:

pain psin p

er

b

Na

aok

paer p =

N

p

in

p

  • k

b

b b = psok

= pser t ,M,[0,0]

1

t ,M,[0,0]

2

slide-33
SLIDE 33

TRANSFORMING WS-CDL WITH PRIORITIES AND TIME CONSTRAINTS INTO PRIORITIZED-TIME PETRI NETS PTPN SEMANTICS

ORDERING STRUCTURES

Parallel:

N

p

in

p

  • k

b p

er

b b b

pain

aok

p pper

Na

paer t ,M,[0,0]

1

ppin t ,M,[0,0]

2

t ,M,[0,0]

3

t ,M,[0,0]

4

t ,M,[0,0]

5

ppok

slide-34
SLIDE 34

TRANSFORMING WS-CDL WITH PRIORITIES AND TIME CONSTRAINTS INTO PRIORITIZED-TIME PETRI NETS PTPN SEMANTICS

ORDERING STRUCTURES

Choice without general guarded workunits:

aok

p t ,M,[0,0]

1

Na

paer t ,M,[0,0]

2

t ,M,[0,0]

3

t ,M,[0,0]

4

t ,M,[0,0]

5

pain

N

p

  • k

b p

er

b b

p

in

b

q pcok pcin pcer

slide-35
SLIDE 35

TRANSFORMING WS-CDL WITH PRIORITIES AND TIME CONSTRAINTS INTO PRIORITIZED-TIME PETRI NETS PTPN SEMANTICS

ORDERING STRUCTURES

Choice with repetitive general guarded workunit:

  • k

pc

block ¬ in w

p t’ ,M,[0,0]

2 1

t’ ,M,[0,0] pcer g ¬ t ,M,[0,0]

1 in b er a

p t ,M,[0,0]

N

p

  • k

b p

er

b b

p q pcin t ,M,[0,0]

2

t ,M,[0,0]

5 3

t’ ,M,[0, ] g’ ¬

  • k

a

p

4

t ,M,[0,0] in w p’ t’ ,M,[0,0]

4

r’ ,M,[0,0]

1 2

r’ ,M,[0,0]

3

r’ ,M,[0,0] r ,M,[0,0]

1 2

r ,M,[0,0]

3

r ,M,[0,0] t ,M,[0,0]

6

Na ’ p’

ain in a

p

3

t ,M,[0, ] ∞ ∞

slide-36
SLIDE 36

TRANSFORMING WS-CDL WITH PRIORITIES AND TIME CONSTRAINTS INTO PRIORITIZED-TIME PETRI NETS CASE STUDY

CASE STUDY

Airline ticket reservation system: Three role types: Traveler, Travel Agent, ARS. Request for flight information from travelers and travel agents. Bookings from travelers are prioritary. Reservations are valid for two days (up to confirmation).

slide-37
SLIDE 37

TRANSFORMING WS-CDL WITH PRIORITIES AND TIME CONSTRAINTS INTO PRIORITIZED-TIME PETRI NETS CASE STUDY

PTPN FOR THE AIRLINE TICKET RESERVATION SYSTEM

t ,5,[0,0]

4

t ,5,[0,0]

7

t ,4,[49,49]

12

t ,2,[49,49]

15

t ,2,[0,48]

14

t ,4,[0,48]

13

t ,5,[0,0]

10

t ,5,[0,0]

16

t ,5,[0,0]

17

t ,5,[0,0]

18

t ,5,[0,0]

19 {Traveler,ARS} {TravelAgent,ARS}

t ,5,[0,0]

5

t ,0,[0, ]

2

t ,0,[0, ]

3

t ,5,[0,0]

1

∞ ∞

{TravelAgent,ARS}

t ,2,[0, ]

9 {Traveler,ARS} 8

t ,4,[0, ] ∞ ∞ t ,5,[0,0]

11 {Traveler,ARS} {Traveler,ARS} {TravelAgent,ARS} {TravelAgent,ARS}

  • k

er in

t ,0,[0,0]

6

slide-38
SLIDE 38

TRANSFORMING WS-CDL WITH PRIORITIES AND TIME CONSTRAINTS INTO PRIORITIZED-TIME PETRI NETS CONCLUSIONS

CONCLUSIONS

Choreographies establish the collaboration of the different parties. Time constraints are supported by WS-CDL. WS-CDL can be extended with priorities. A PTPN semantics can be provided for WS-CDL with time and priorities.

slide-39
SLIDE 39

TRANSFORMING WS-CDL WITH PRIORITIES AND TIME CONSTRAINTS INTO PRIORITIZED-TIME PETRI NETS CONCLUSIONS

CONCLUSIONS

PTPNs are a formal way to express the WS-CDL semantics. PTPNs can be used to simulate and analyse the system.

slide-40
SLIDE 40

TRANSFORMING WS-CDL WITH PRIORITIES AND TIME CONSTRAINTS INTO PRIORITIZED-TIME PETRI NETS CONCLUSIONS

CURRENT AND FUTURE WORK

A comparison with other semantics models of WS-CDL would be valuable. WST can be extended to support the PTPN semantics.