Compensation-based long-running transactions (LRTs) are the main error recovery mechanism in business process modelling languages. Correctly implementing LRTs is difficult, especially in a concurrent setting. To ease this task we are developing a full-fledged formal approach to the description, design, analysis and verification of long-running transactions. The existing calculi Sagas and compensating CSP rely on different compensation policies regarding concurrent processes. Unfortunately they either require synchronization before compensating or they include unrealistic traces. We therefore propose a new policy that improves existing ones using realistic distributed compensations. In this thesis we formalize the behaviour of the new policy using three semantics: i) a denotational semantics to compare it with previous policies, ii) an operational semantic based on an encoding into Petri nets as a foundation for richer semantic domains that record causal dependencies between events, iii) an easily extendable small-step SOS semantics, that facilitates model checking. We prove the correspondence between the different semantics showing their observational equivalence. Moreover we develop a tool for each of the semantics in Maude to improve and validate our theory. Finally, we introduce a logical framework to model and analyse LRTs based on dynamic logic. We use it to derive sufficient conditions under which a compensable program is guaranteed to restore a correct state after a fault

Formal specification, verification and analysis of long-running transactions

2013

Abstract

Compensation-based long-running transactions (LRTs) are the main error recovery mechanism in business process modelling languages. Correctly implementing LRTs is difficult, especially in a concurrent setting. To ease this task we are developing a full-fledged formal approach to the description, design, analysis and verification of long-running transactions. The existing calculi Sagas and compensating CSP rely on different compensation policies regarding concurrent processes. Unfortunately they either require synchronization before compensating or they include unrealistic traces. We therefore propose a new policy that improves existing ones using realistic distributed compensations. In this thesis we formalize the behaviour of the new policy using three semantics: i) a denotational semantics to compare it with previous policies, ii) an operational semantic based on an encoding into Petri nets as a foundation for richer semantic domains that record causal dependencies between events, iii) an easily extendable small-step SOS semantics, that facilitates model checking. We prove the correspondence between the different semantics showing their observational equivalence. Moreover we develop a tool for each of the semantics in Maude to improve and validate our theory. Finally, we introduce a logical framework to model and analyse LRTs based on dynamic logic. We use it to derive sufficient conditions under which a compensable program is guaranteed to restore a correct state after a fault
2013
Inglese
QA75 Electronic computers. Computer science
Bruni, Dr. Roberto
Scuola IMT Alti Studi di Lucca
File in questo prodotto:
File Dimensione Formato  
Kauer_phdthesis.pdf

accesso aperto

Tipologia: Altro materiale allegato
Dimensione 1.05 MB
Formato Adobe PDF
1.05 MB Adobe PDF Visualizza/Apri

I documenti in UNITESI sono protetti da copyright e tutti i diritti sono riservati, salvo diversa indicazione.

Utilizza questo identificativo per citare o creare un link a questo documento: https://hdl.handle.net/20.500.14242/152388
Il codice NBN di questa tesi è URN:NBN:IT:IMTLUCCA-152388