23 research outputs found
Protocol modelling : synchronous composition of data and behaviour
This thesis develops and explores a technique called Protocol Modelling, a mathematics
for the description of orderings. Protocol Modelling can be viewed as a hybrid
of object orientation, as it supports ideas of data encapsulation and object instantiation;
and process algebra, as it supports a formally defined idea of process and process composition.
The first half of the thesis focuses on describing and defining the Protocol Modelling
technique. A formal denotational semantics for protocol machines is developed and
used to establish various properties; in particular that composition is closed and preserves
type safety. The formal semantics is extended to cover instantiation of objects.
Comparison is made with other process algebras and an approach to unification of
different formulations of the semantics of process composition is proposed.
The second half of the thesis explores three applications of Protocol Modelling:
Object Modelling. This explores the use of Protocol Modelling as a medium for object
modelling, and the facility to execute protocol models is described. Protocol Modelling
is compared with other object modelling techniques; in particular by contrasting
its compositional style with traditional hierarchical inheritance.
Protocol Contracts. This proposes the use of protocol models as a medium for expressing
formal behavioural contracts. This is compared with more traditional forms
of software contract in the generalization of the notion of contractual obligation as a
mechanism for software specification.
Choreographed Collaborations. In this application Protocol Modelling is used as a
medium to describe choreographies for asynchronous multiparty collaborations. A
compositional approach to choreography engineering, enabled by the synchronous
semantics of Protocol Modelling, is explored and results established concerning sufficient
conditions for choreography realizability. The results are extended to address
choreographies that employ behavioural rules based on data
Protocol modelling : synchronous composition of data and behaviour
This thesis develops and explores a technique called Protocol Modelling, a mathematics
for the description of orderings. Protocol Modelling can be viewed as a hybrid
of object orientation, as it supports ideas of data encapsulation and object instantiation;
and process algebra, as it supports a formally defined idea of process and process composition.
The first half of the thesis focuses on describing and defining the Protocol Modelling
technique. A formal denotational semantics for protocol machines is developed and
used to establish various properties; in particular that composition is closed and preserves
type safety. The formal semantics is extended to cover instantiation of objects.
Comparison is made with other process algebras and an approach to unification of
different formulations of the semantics of process composition is proposed.
The second half of the thesis explores three applications of Protocol Modelling:
Object Modelling. This explores the use of Protocol Modelling as a medium for object
modelling, and the facility to execute protocol models is described. Protocol Modelling
is compared with other object modelling techniques; in particular by contrasting
its compositional style with traditional hierarchical inheritance.
Protocol Contracts. This proposes the use of protocol models as a medium for expressing
formal behavioural contracts. This is compared with more traditional forms
of software contract in the generalization of the notion of contractual obligation as a
mechanism for software specification.
Choreographed Collaborations. In this application Protocol Modelling is used as a
medium to describe choreographies for asynchronous multiparty collaborations. A
compositional approach to choreography engineering, enabled by the synchronous
semantics of Protocol Modelling, is explored and results established concerning sufficient
conditions for choreography realizability. The results are extended to address
choreographies that employ behavioural rules based on data
Contracts in distributed systems
We present a parametric calculus for contract-based computing in distributed
systems. By abstracting from the actual contract language, our calculus
generalises both the contracts-as-processes and contracts-as-formulae
paradigms. The calculus features primitives for advertising contracts, for
reaching agreements, and for querying the fulfilment of contracts. Coordination
among principals happens via multi-party sessions, which are created once
agreements are reached. We present two instances of our calculus, by modelling
contracts as (i) processes in a variant of CCS, and (ii) as formulae in a
logic. With the help of a few examples, we discuss the primitives of our
calculus, as well as some possible variants.Comment: In Proceedings ICE 2011, arXiv:1108.014
Protocol Modelling Semantics for Embedded Systems
The properties of a domain oriented modelling approach or language are determined by the dominant semantics of the domain. A significant subclass that needs particular attention, because of its prevalence, is that of deterministic interactive embedded systems. Embedded systems contain both hardware and software components interacting with each other and with the users. The components should be modelled separately, and behaviour should be explicitly defined in order to ensure correct interaction between the components. In this paper we argue that a semantic framework known as Protocol Modelling provides a good basis for modelling interactive deterministic embedded systems. Firstly, we explain how Protocol Modelling represents interaction, and how it supports Hoare’s CSP composition operator, thus allowing components of the solution to be modelled separately. Secondly, we show how Protocol Modelling can employ different modelling notations, focusing particularly on Coloured Petri Nets and State Charts. Finally, we describe how it guarantees local reasoning about the trace behaviour of a composite based on consideration of the components. We illustrate these explanations using a simple mobile phone case study.