Contract-oriented programming with timed session types

Atzei N.;Bartoletti M.
;
Cimoli T.;Lande S.;Murgia M.;Podda A. S.;Pompianu L.
2017-01-01

Abstract

Contract-oriented programming is a software engineering paradigm which proposes the use of behavioural contracts to discipline the interaction among software components. In a distributed setting, the various components of an application may be developed and run by untrustworthy parties, which could opportunistically diverge from the expected behaviour when they find it convenient. The use of contracts in this setting is essential: by binding the behaviour of each component to a contract, and by sanctioning contract violations, components are incentivized to behave in a correct and cooperative manner. This chapter is a step-by-step tutorial on programming contract-oriented distributed applications. The glue between components is a middleware which establishes sessions between services with compliant contracts, and monitors sessions to detect and punish violations. Contracts are formalised as timed session types, which describe timed communication protocols between two components at the endpoints of a session. We illustrate some basic primitives of contract-oriented programming: advertising contracts, performing contractual actions, and dealing with violations. We then show how to exploit these primitives to develop some small distributed applications.
2017
Inglese
Behavioural Types: from Theory to Tools
Nicola Atzei, et al.
Simon Gay, António Ravara
27
48
22
River Publishers
Gistrup
DANIMARCA
978-87-93519-82-4
https://www.riverpublishers.com/book_details.php?book_id=439
Comitato scientifico
internazionale
scientifica
no
info:eu-repo/semantics/bookPart
2.1 Contributo in volume (Capitolo o Saggio)
Atzei, N.; Bartoletti, M.; Cimoli, T.; Lande, S.; Murgia, M.; Podda, A. S.; Pompianu, L.
2 Contributo in Volume::2.1 Contributo in volume (Capitolo o Saggio)
7
268
reserved
Files in This Item:
File Size Format  
main.pdf

Solo gestori archivio

Description: Articolo principale
Type: versione pre-print
Size 518.07 kB
Format Adobe PDF
518.07 kB Adobe PDF & nbsp; View / Open   Request a copy

Items in DSpace are protected by copyright, with all rights reserved, unless otherwise indicated.

Questionnaire and social

Share on:
Impostazioni cookie