Behavioural type systems, usually associated to concurrent or distributed computations, encompass concepts such as interfaces, communication protocols, and contracts, in addition to the traditional input/output operations. The behavioural type of a software component specifies its expected patterns of interaction using expressive type languages, so types can be used to determine automatically whether the component interacts correctly with other components. Two related important notions of behavioural types are those of session types and behavioural contracts. This article surveys the main accomplishments of the last 20 years within these two approaches.
We propose two abstract semantics of the global view of choreographies given in terms of partial orders. The first semantics is formalised as pomsets of communication events while the second one is based on hypergraphs of events. These semantics can accommodate different levels of abstractions. We discuss the adequacy of our models by considering their relation with communicating machines, that we use to formalise the local view. Our approach increases expressiveness and allows us to overcome some limitations that affect alternative semantics of global views. This will be illustrated by discussing some interesting examples. Finally, we show that the two semantics are equivalent and have different merits. More precisely, the semantics based on pomsets yields a more elegant presentation, but it is less suitable for implementation. The semantics based on hypergraphs instead is amenable to a straightforward implementation. 2 to social interaction, to providing e-health and e-government services. For such (and other) reasons, developers are required to carefully design their applications so that unintended behaviours do not happen at runtime.The problem. It is widely accepted that distributed systems and applications are not easy to design, implement, verify, deploy, and maintain. A key issue to tackle is the coordination of distributed components. For this, two primary (and in our view, complementary) approaches have been identified: orchestration and choreography. We focus here on the latter. More precisely, we propose a new semantics of a model of choreographies for message-passing software. We argue that our semantics offer a framework that (i) generalises existing linguistic constructs of choreographies by removing some unnecessary constraints adopted elsewhere, (ii) allows architects to design the coordination of distributed applications without forcing them to consider low level details, and (iii) enables the possibility of tool support at earlier stages of the development.Choreographies have been advocated as a suitable methodology for the design and analysis of distributed applications since, unlike models based on orchestration, they do not require an explicit coordinator. Roughly, a choreography describes how two or more distributed components coordinate with each other by exchanging messages. Among the possible interpretations of what choreographies are (see [2] for a discussion and references), we embrace the one suggested by W3C's [23]:Using the Web Services Choreography specification, a contract containing a global definition of the common ordering conditions and constraints under which messages are exchanged, is produced that describes, from a global viewpoint [...] observable behaviour [...]. Each party can then use the global definition to build and test solutions that conform to it. The global specification is in turn realised by combination of the resulting local systems [...] This description conceptualises two views, a global and a local one, which enable the relations represented by the follo...
Abstract. Decentralised smart contracts represent the next step in the development of protocols that support the interaction of independent players without the presence of a coercing authority. Based on protocols a la BitCoin for digital currencies, smart contracts are believed to be a potentially enabling technology for a wealth of future applications. The validation of such an early developing technology is as necessary as it is complex. In this paper we combine game theory and formal models to tackle the new challenges posed by the validation of such systems.
scite is a Brooklyn-based organization that helps researchers better discover and understand research articles through Smart Citations–citations that display the context of the citation and describe whether the article provides supporting or contrasting evidence. scite is used by students and researchers from around the world and is funded in part by the National Science Foundation and the National Institute on Drug Abuse of the National Institutes of Health.
customersupport@researchsolutions.com
10624 S. Eastern Ave., Ste. A-614
Henderson, NV 89052, USA
This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.
Copyright © 2024 scite LLC. All rights reserved.
Made with 💙 for researchers
Part of the Research Solutions Family.