Author:
BOREALE MICHELE,BRUNI ROBERTO,DE NICOLA ROCCO,LORETI MICHELE
Abstract
Service-oriented computing is calling for novel computational models and languages with well-disciplined primitives for client–server interaction, structured orchestration and unexpected events handling. We present CaSPiS, a process calculus where the conceptual abstractions of sessioning and pipelining play a central role for modelling service-oriented systems. CaSPiS sessions are two-sided, uniquely named and can be nested. CaSPiS pipelines permit 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 of the flexibility of the chosen set of primitives. One key contribution is a fully abstract encoding of Misra et al.'s orchestration language Orc. Another main result shows that in CaSPiS it 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.
Publisher
Cambridge University Press (CUP)
Subject
Computer Science Applications,Mathematics (miscellaneous)
Reference53 articles.
1. Sensoria – Software Engineering for Service-Oriented Overlay Computers
2. OASIS (2007) Web Services Business Process Execution Language Version 2.0, Working Draft. Available at http://docs.oasis-open.org/wsbpel/2.0/wsbpel-v2.0.pdf.
3. Computation Orchestration
4. How to Infer Finite Session Types in a Calculus of Services and Sessions
Cited by
8 articles.
订阅此论文施引文献
订阅此论文施引文献,注册后可以免费订阅5篇论文的施引文献,订阅后可以查看论文全部施引文献
1. Sibilla: A tool for reasoning about collective systems;Science of Computer Programming;2024-07
2. A Session-based Interaction model for Cloud Service;2020 The 8th International Conference on Information Technology: IoT and Smart City;2020-12-25
3. Java Session Language;Proceedings of the 2019 7th International Conference on Information Technology: IoT and Smart City;2019-12-20
4. HeadREST: A Specification Language for RESTful APIs;Models, Languages, and Tools for Concurrent and Distributed Programming;2019
5. From Behavioural Contracts to Session Types;Models, Languages, and Tools for Concurrent and Distributed Programming;2019