Sessions and Pipelines for Structured Service Programming

  • Authors:
  • Michele Boreale;Roberto Bruni;Rocco Nicola;Michele Loreti

  • Affiliations:
  • Dipartimento di Sistemi e Informatica, Università di Firenze,;Dipartimento di Informatica, Università di Pisa,;Dipartimento di Sistemi e Informatica, Università di Firenze,;Dipartimento di Sistemi e Informatica, Università di Firenze,

  • Venue:
  • FMOODS '08 Proceedings of the 10th IFIP WG 6.1 international conference on Formal Methods for Open Object-Based Distributed Systems
  • Year:
  • 2008

Quantified Score

Hi-index 0.00

Visualization

Abstract

Service-oriented computing is calling for novel computational models and languages with primitives for client-server interaction, orchestration and unexpected events handling. We present CaSPiS, a process calculus where the notions of session and pipelining play a central role. Sessions are two-sided and can be equipped with protocols executed by each side. Pipelining permits orchestrating the flow of data produced by different sessions. The calculus is also equipped with operators for handling (unexpected) termination of the partner's side of a session. Several examples are presented to provide evidence for the flexibility of the chosen set of primitives. Our main result shows that in CaSPiSit is possible to program a "graceful termination" of nested sessions, which guarantees that no session is forced to hang forever after the loss of its partner.