13
VerChor A Framework for Verifying Choreographies FASE 2013 - Rome - March, 20th, 2013 P . Poizat Université Paris Ouest - LIP6 joint work with M. Güdemann, G. Salaün, and A. Dumont

VerChor A Framework for Verifying Choreographiesconvecs.inria.fr/doc/presentations/Poizat-FASE-13.pdfFASE 2013 - Rome - March, 20th, 2013 1 top-down •choreography: global perspective

  • Upload
    others

  • View
    0

  • Download
    0

Embed Size (px)

Citation preview

Page 1: VerChor A Framework for Verifying Choreographiesconvecs.inria.fr/doc/presentations/Poizat-FASE-13.pdfFASE 2013 - Rome - March, 20th, 2013 1 top-down •choreography: global perspective

VerChor A Framework for Verifying Choreographies

FASE 2013 - Rome - March, 20th, 2013

P. Poizat Université Paris Ouest - LIP6

!!

joint work with M. Güdemann, G. Salaün, and A. Dumont

Page 2: VerChor A Framework for Verifying Choreographiesconvecs.inria.fr/doc/presentations/Poizat-FASE-13.pdfFASE 2013 - Rome - March, 20th, 2013 1 top-down •choreography: global perspective

Context

➜ composition of services / business processes

FASE 2013 - Rome - March, 20th, 2013 1

•choreography: global perspective specifies interactions among roles

•peers: local perspective implement roles (1-1) set of peers = distributed system

•communication model synchronous or asynchronous (buffers)

Page 3: VerChor A Framework for Verifying Choreographiesconvecs.inria.fr/doc/presentations/Poizat-FASE-13.pdfFASE 2013 - Rome - March, 20th, 2013 1 top-down •choreography: global perspective

Context

➜ composition of services / business processes

FASE 2013 - Rome - March, 20th, 2013 1

top-down

•choreography: global perspective specifies interactions among roles

•peers: local perspective implement roles (1-1) set of peers = distributed system

•communication model synchronous or asynchronous (buffers)

Page 4: VerChor A Framework for Verifying Choreographiesconvecs.inria.fr/doc/presentations/Poizat-FASE-13.pdfFASE 2013 - Rome - March, 20th, 2013 1 top-down •choreography: global perspective

Context

➜ composition of services / business processes

FASE 2013 - Rome - March, 20th, 2013 1

top-down

•choreography: global perspective specifies interactions among roles

•peers: local perspective implement roles (1-1) set of peers = distributed system

•communication model synchronous or asynchronous (buffers)

Page 5: VerChor A Framework for Verifying Choreographiesconvecs.inria.fr/doc/presentations/Poizat-FASE-13.pdfFASE 2013 - Rome - March, 20th, 2013 1 top-down •choreography: global perspective

Context

➜ composition of services / business processes

FASE 2013 - Rome - March, 20th, 2013 1

top-down

•choreography: global perspective specifies interactions among roles

•peers: local perspective implement roles (1-1) set of peers = distributed system

•communication model synchronous or asynchronous (buffers)

Page 6: VerChor A Framework for Verifying Choreographiesconvecs.inria.fr/doc/presentations/Poizat-FASE-13.pdfFASE 2013 - Rome - March, 20th, 2013 1 top-down •choreography: global perspective

Context

➜ composition of services / business processes

FASE 2013 - Rome - March, 20th, 2013 1

top-down

•choreography: global perspective specifies interactions among roles

•peers: local perspective implement roles (1-1) set of peers = distributed system

•communication model synchronous or asynchronous (buffers)

Page 7: VerChor A Framework for Verifying Choreographiesconvecs.inria.fr/doc/presentations/Poizat-FASE-13.pdfFASE 2013 - Rome - March, 20th, 2013 1 top-down •choreography: global perspective

Issue

FASE 2013 - Rome - March, 20th, 2013 2

•do (projected) peers implement the choreography? !

Page 8: VerChor A Framework for Verifying Choreographiesconvecs.inria.fr/doc/presentations/Poizat-FASE-13.pdfFASE 2013 - Rome - March, 20th, 2013 1 top-down •choreography: global perspective

Issue

FASE 2013 - Rome - March, 20th, 2013 2

•do (projected) peers implement the choreography? !

Page 9: VerChor A Framework for Verifying Choreographiesconvecs.inria.fr/doc/presentations/Poizat-FASE-13.pdfFASE 2013 - Rome - March, 20th, 2013 1 top-down •choreography: global perspective

Issue

FASE 2013 - Rome - March, 20th, 2013 2

•do (projected) peers implement the choreography? !

•if synchronous communication: yes

Page 10: VerChor A Framework for Verifying Choreographiesconvecs.inria.fr/doc/presentations/Poizat-FASE-13.pdfFASE 2013 - Rome - March, 20th, 2013 1 top-down •choreography: global perspective

Issue

FASE 2013 - Rome - March, 20th, 2013 2

•do (projected) peers implement the choreography? !

•if asynchronous communication: no further, unbounded system

•if synchronous communication: yes

Page 11: VerChor A Framework for Verifying Choreographiesconvecs.inria.fr/doc/presentations/Poizat-FASE-13.pdfFASE 2013 - Rome - March, 20th, 2013 1 top-down •choreography: global perspective

Synchronizability and Realizability

FASE 2013 - Rome - March, 20th, 2013 3

•let C be a choreography SC be the system made up of n peers P1, ..., Pn obtained from C synch(SC): SC with synchronous communication asynch(SC,n): SC with n-bounded asynchronous communication following (Basu et.al., POPL 2012) :

•synchronizable(C): synch(SC) behaves as asynch(SC,1)

synchronizability involves equivalence checking finite systems only but important result for infinite systems if synchronizable(C) then asynch(SC,n+1) behaves as asynch(SC,n)

•realizable(C): synchronizable(C) and synch(SC) behaves as C

Page 12: VerChor A Framework for Verifying Choreographiesconvecs.inria.fr/doc/presentations/Poizat-FASE-13.pdfFASE 2013 - Rome - March, 20th, 2013 1 top-down •choreography: global perspective

Properties: Overview

FASE 2013 - Rome - March, 20th, 2013 4FASE 2013 - Rome - March, 20th, 2013 4

Page 13: VerChor A Framework for Verifying Choreographiesconvecs.inria.fr/doc/presentations/Poizat-FASE-13.pdfFASE 2013 - Rome - March, 20th, 2013 1 top-down •choreography: global perspective

The VerChor Platform

FASE 2013 - Rome - March, 20th, 2013 5

choreography design

BPMNWS-CDL Chor...

intermediary format (CIF)model transformation

formal models (LNT) verification scripts (SVL)

python scripts

CADP toolbox

script execution

diagnostic Texte