We study a simple software architecture, in which application processes are coordinated by writing into and reading from a global set. This architecture underlies Splice, which is developed and used at the company Hollandse Signaalapparaten. Our approach is distinguished by viewing the architecture as a component itself, described formally by means of process algebra. Two results are proved. First a distributed implementation of the architecture is given, in which each component maintains a local set and data items are exchanged between these local sets. The implementation is proved to be behaviourally equivalent to the conceptual view of having one global set. Next we show that every requirements specification expressible as a finite process has a distributed implementation on this architecture.

Distributed systems (msc 68M14), Mathematical aspects of software engineering (specification, verification, metrics, requirements, etc.) (msc 68N30), Models and methods for concurrent and distributed computing (process algebras, bisimulation, transition nets, etc.) (msc 68Q85)
Software Engineering [SEN]
Specification and Analysis of Embedded Systems

van de Pol, J.C. (2000). Expressiveness of basic Splice. Software Engineering [SEN]. CWI.