Process calculi for long running transactions
This presentation is the property of its rightful owner.
Sponsored Links
1 / 59

Process Calculi for Long Running Transactions PowerPoint PPT Presentation


  • 60 Views
  • Uploaded on
  • Presentation posted in: General

Process Calculi for Long Running Transactions. Hern án Melgratti IMT Lucca Joint work with R. Bruni and U. Montanari. Two words about Composition. Two words about Composition. Orchestration Structured Flow. Two words about Composition. Orchestration Structured Flow Link-based Flow.

Download Presentation

Process Calculi for Long Running Transactions

An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

Presentation Transcript


Process calculi for long running transactions

Process Calculi for Long Running Transactions

Hernán Melgratti

IMT Lucca

Joint work with R. Bruni and U. Montanari

Dagstuhl Seminar: Autonomous and Adaptive Web Services


Two words about composition

Two words about Composition

Dagstuhl Seminar: Autonomous and Adaptive Web Services


Two words about composition1

Two words about Composition

  • Orchestration

    • Structured Flow

Dagstuhl Seminar: Autonomous and Adaptive Web Services


Two words about composition2

Two words about Composition

  • Orchestration

    • Structured Flow

    • Link-based Flow

Dagstuhl Seminar: Autonomous and Adaptive Web Services


Two words about composition3

Two words about Composition

  • Orchestration

    • Structured Flow

    • Link-based Flow

Dagstuhl Seminar: Autonomous and Adaptive Web Services


Two words about composition4

Two words about Composition

  • Orchestration

    • Structured Flow

    • Link-based Flow

  • Choreography

B

A

C

Dagstuhl Seminar: Autonomous and Adaptive Web Services


Two words about composition5

Two words about Composition

  • Orchestration

    • Structured Flow

    • Link-based Flow

  • Choreography

    • Global View

A  B

B  C

C  A

B

1

A

2

3

C

Dagstuhl Seminar: Autonomous and Adaptive Web Services


Two words about composition6

Two words about Composition

  • Orchestration

    • Structured Flow

    • Link-based Flow

  • Choreography

    • Global View

B

1

A

2

3

C

Dagstuhl Seminar: Autonomous and Adaptive Web Services


Two words about composition7

Two words about Composition

  • Orchestration

    • Structured Flow

    • Link-based Flow

  • Choreography

    • Global View

    • Local View

 A

 C

 B

 C

B

1

A

2

 B

 A

3

C

Dagstuhl Seminar: Autonomous and Adaptive Web Services


Flows compensations

Flows & Compensations

Transactional Process

A3

A2

A1

A5

A4

Dagstuhl Seminar: Autonomous and Adaptive Web Services


Flows compensations1

Flows & Compensations

Transactional Process

A3

A2

B3

B2

A1

A5

B1

B5

A4

B4

Dagstuhl Seminar: Autonomous and Adaptive Web Services


Flows compensations2

Flows & Compensations

Transactional Process

A3

A2

B3

B2

A1

A5

B1

B5

A4

B4

Dagstuhl Seminar: Autonomous and Adaptive Web Services


Pc for compensable flows

PC for Compensable Flows

  • Structured Activity Compensation (StAc) [BCFGHV02, BF04]

  • Compensating CSP (cCSP) [BHF04]

  • Sagas Calculi [BMM05]

  • BPEL0 [PZZSXH06]

Dagstuhl Seminar: Autonomous and Adaptive Web Services


Basic ccsp bhf04

(Basic) cCSP [BHF04]

Dagstuhl Seminar: Autonomous and Adaptive Web Services


Trace semantics ccsp 1

Trace Semantics cCSP(1)

  • Each P is associated with a set of traces

    • set of special events  = { , !, ? } (disjoint from )

    • traces p,q,... are -event-terminated sequences of actions in .

      • A,B,..., trace leading to normal termination

      • A,B,...,! trace leading to interrupt throw

      • A,B,...,? trace leading to interrupt yield

Dagstuhl Seminar: Autonomous and Adaptive Web Services


Trace semantics ccsp 2

Trace Semantics cCSP(2)

A1

A2

B1

B2

Dagstuhl Seminar: Autonomous and Adaptive Web Services


Trace semantics ccsp 21

Trace Semantics cCSP(2)

A1

A2

B1

B2

Dagstuhl Seminar: Autonomous and Adaptive Web Services


Trace semantics ccsp 22

Trace Semantics cCSP(2)

A1

A2

B1

B2

Dagstuhl Seminar: Autonomous and Adaptive Web Services


Trace semantics ccsp 23

Trace Semantics cCSP(2)

A1

A2

B1

B2

Dagstuhl Seminar: Autonomous and Adaptive Web Services


Trace semantics ccsp 24

Trace Semantics cCSP(2)

THROWW

A1

A2

B1

B2

Dagstuhl Seminar: Autonomous and Adaptive Web Services


Trace semantics ccsp 25

Trace Semantics cCSP(2)

THROWW

A1

A2

B1

B2

Dagstuhl Seminar: Autonomous and Adaptive Web Services


Trace semantics ccsp 26

Trace Semantics cCSP(2)

THROWW

A1

A2

B1

B2

Dagstuhl Seminar: Autonomous and Adaptive Web Services


Parallel sagas

Parallel Sagas

Dagstuhl Seminar: Autonomous and Adaptive Web Services


Parallel sagas1

Parallel Sagas

Dagstuhl Seminar: Autonomous and Adaptive Web Services


Semantics of parallel sagas 1

Semantics of Parallel Sagas (1)

  • Activities may succeed or fail

Dagstuhl Seminar: Autonomous and Adaptive Web Services


Semantics of parallel sagas 11

Semantics of Parallel Sagas (1)

  • Activities may succeed or fail

  • A Saga under either

    • Commits

    • Aborts

    • Fails

Dagstuhl Seminar: Autonomous and Adaptive Web Services


Semantics of parallel sagas 2

Semantics of Parallel Sagas (2)

and = A1;…;An

 S 

Ak

A1

Aj

An

Dagstuhl Seminar: Autonomous and Adaptive Web Services


Semantics of parallel sagas 21

Semantics of Parallel Sagas (2)

and = A1;…;An

 S 

Ak

A1

Aj

An

and = A1;…;Ak-1;Bk-1;…;B1

 S 

Ak

A1

Aj

An

B1

Bj

Dagstuhl Seminar: Autonomous and Adaptive Web Services


Semantics of parallel sagas 22

Semantics of Parallel Sagas (2)

and = A1;…;An

 S 

Ak

A1

Aj

An

and = A1;…;Ak-1;Bk-1;…;B1

 S 

Ak

A1

Aj

An

B1

Bj

and = A1;…;Ak-1;Bk-1;…;Bj+1

 S 

*

Ak

A1

Aj

An

B1

Bj

Dagstuhl Seminar: Autonomous and Adaptive Web Services


Semantics of parallel sagas 3

Semantics of Parallel Sagas (3)

B1

Bj

Bn

B’1

B’j

A1

A2

A’1

C1

Ck

Cm

C’1

C’k

C’m

A1;(B1;…;Bj-1;B’j-1;…;B’1 | C1;…Cm;C’m;…;C’1);A’1

Dagstuhl Seminar: Autonomous and Adaptive Web Services


Semantics of parallel sagas 31

Semantics of Parallel Sagas (3)

B1

Bj

Bn

B’1

B’j

A1

A2

A’1

C1

Ck

Cm

C’1

C’k

C’m

A1;(B1;…;Bj-1;B’j-1;…;B’1 | 0);A’1

A1;(B1;…;Bj-1;B’j-1;…;B’1 | C1;C’1);A’1

A1;(B1;…;Bj-1;B’j-1;…;B’1 | C1;…Cm;C’m;…;C’1);A’1

Dagstuhl Seminar: Autonomous and Adaptive Web Services


Ccsp vs parallel sagas calculus

cCSP vs Parallel Sagas Calculus

  • [ A % A° | B % B° | THROWW ] =traces

Dagstuhl Seminar: Autonomous and Adaptive Web Services


Ccsp vs parallel sagas calculus1

cCSP vs Parallel Sagas Calculus

  • [ A % A° | B % B° | THROWW ] =traces

    • (A;A°) | (B;B°)

naive Sagas

Dagstuhl Seminar: Autonomous and Adaptive Web Services


Ccsp vs parallel sagas calculus2

cCSP vs Parallel Sagas Calculus

  • [ A % A° | B % B° | THROWW ] =traces

    • (A;A°) | (B;B°)

    • SKIP  (A;A°)  (B;B°)  (A|B);(A°|B°)

naive Sagas

cCSP

Dagstuhl Seminar: Autonomous and Adaptive Web Services


Ccsp vs parallel sagas calculus3

cCSP vs Parallel Sagas Calculus

  • [ A % A° | B % B° | THROWW ] =traces

    • (A;A°) | (B;B°)

    • SKIP  (A;A°)  (B;B°)  (A|B);(A°|B°)

    • SKIP  (A;A°)  (B;B°)  (A;A°)|(B;B°)

naive Sagas

cCSP

revised Sagas

Dagstuhl Seminar: Autonomous and Adaptive Web Services


Ccsp vs parallel sagas calculus4

cCSP vs Parallel Sagas Calculus

  • [ A % A° | B % B° | THROWW ] =traces

    • (A|B) ; (A°|B°)

    • (A;A°) | (B;B°)

    • SKIP  (A;A°)  (B;B°)  (A|B);(A°|B°)

    • SKIP  (A;A°)  (B;B°)  (A;A°)|(B;B°)

naïve cCSP

naïve Sagas

cCSP

revised Sagas

Dagstuhl Seminar: Autonomous and Adaptive Web Services


Ccsp vs sagas calculi

No Interruption

Interruption

Centralized

Compensation

Naïve cCSP

cCSP

Distributed

Compensation

Revised Sagas

Naïve Sagas

cCSP vs Sagas Calculi

Dagstuhl Seminar: Autonomous and Adaptive Web Services


Interaction based transactions 1

Interaction-based transactions (1)

  • Transactional Pi (t) [BLZ03]

  • Committed Join (cJoin) [BMM04]

  • Error handling in Pi [ML04]

  • Web-Pi [LZ05]

  • Pik, Pike [CD03]

Dagstuhl Seminar: Autonomous and Adaptive Web Services


Interaction based transactions 11

Interaction-based transactions (1)

Hotel

Client

Dagstuhl Seminar: Autonomous and Adaptive Web Services


Interaction based transactions 12

Interaction-based transactions (1)

Hotel

Client

Dagstuhl Seminar: Autonomous and Adaptive Web Services


Interaction based transactions 13

Interaction-based transactions (1)

Hotel

Client

Dagstuhl Seminar: Autonomous and Adaptive Web Services


Interaction based transactions 14

Interaction-based transactions (1)

Hotel

Client

Dagstuhl Seminar: Autonomous and Adaptive Web Services


Interaction based transactions 2

Interaction-based transactions (2)

Hotel

Client

Dagstuhl Seminar: Autonomous and Adaptive Web Services


Transactional pi 1

Transactional Pi (1)

Hotel

Client

Dagstuhl Seminar: Autonomous and Adaptive Web Services


Transactional pi 11

Transactional Pi (1)

Hotel

Client

Dagstuhl Seminar: Autonomous and Adaptive Web Services


Transactional pi 12

Transactional Pi (1)

Hotel

Client

Dagstuhl Seminar: Autonomous and Adaptive Web Services


Transactional pi 13

Transactional Pi (1)

Hotel

Client

Dagstuhl Seminar: Autonomous and Adaptive Web Services


Transactional pi 2

Transactional Pi (2)

Hotel

Client

Dagstuhl Seminar: Autonomous and Adaptive Web Services


Transactional pi 21

Transactional Pi (2)

Hotel

Client

Dagstuhl Seminar: Autonomous and Adaptive Web Services


Transactional pi 22

Transactional Pi (2)

Hotel

Client

Dagstuhl Seminar: Autonomous and Adaptive Web Services


Transactional pi 23

Transactional Pi (2)

Hotel

Client

Dagstuhl Seminar: Autonomous and Adaptive Web Services


Cjoin

cJoin

Hotel

Client

Dagstuhl Seminar: Autonomous and Adaptive Web Services


Cjoin1

cJoin

Hotel

Client

Dagstuhl Seminar: Autonomous and Adaptive Web Services


Cjoin2

cJoin

Hotel

Client

Dagstuhl Seminar: Autonomous and Adaptive Web Services


Cjoin3

cJoin

Hotel

Client

Dagstuhl Seminar: Autonomous and Adaptive Web Services


Cjoin4

cJoin

Hotel

Client

Dagstuhl Seminar: Autonomous and Adaptive Web Services


Cjoin5

cJoin

Hotel

Client

Dagstuhl Seminar: Autonomous and Adaptive Web Services


Comparison

Comparison

Dagstuhl Seminar: Autonomous and Adaptive Web Services


Last words

Last words

  • Flow Composition

    • We lack generalized synchronization/ communication capabilities

    • We need to handle loops

  • Interaction Based

    • Relation with proposals for standards

    • Comparison of expressive power

Dagstuhl Seminar: Autonomous and Adaptive Web Services


  • Login