Process calculi for long running transactions
Download
1 / 59

Process Calculi for Long Running Transactions - PowerPoint PPT Presentation


  • 84 Views
  • Uploaded on

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.

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about ' Process Calculi for Long Running Transactions' - myrrh


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


ad