Axiomatic semantics of communicating sequential processes
ACM Transactions on Programming Languages and Systems (TOPLAS) - Lecture notes in computer science Vol. 174
Parallel program design: a foundation
Parallel program design: a foundation
Design and validation of computer protocols
Design and validation of computer protocols
Formal specification and design of a message router
ACM Transactions on Software Engineering and Methodology (TOSEM)
A Proof System for Communicating Sequential Processes
ACM Transactions on Programming Languages and Systems (TOPLAS)
Refining Interfaces of Communicating Systems
TAPSOFT '91 Proceedings of the International Joint Conference on Theory and Practice of Software Development, Volume 2: Advances in Distributed Computing (ADC) and Colloquium on Combining Paradigms for Software Developmemnt (CCPSD)
Interface Refinement in Reactive Systems (Extended Abstract)
CONCUR '92 Proceedings of the Third International Conference on Concurrency Theory
Proofs of Networks of Processes
IEEE Transactions on Software Engineering
Hi-index | 0.00 |
We identify a type of refinement that we call interaction refinement that is very useful in designing distributed systems. An interaction refinement step is one in which a system designer decides to implement a given 'high-level' interaction as a particular sequence of 'low-level' interactions. For example a particular high-level interaction may be specified as 'identify-client' involving a 'client process' and a 'server process'. The designer may decide to implement this interaction as a series of low-level interactions between the two processes, with the client process first sending to the server process an id, followed by a password, and perhaps allow the client several attempts at getting the password right, etc. Here the designer is not refining the internal structure of either the client process or the server process; rather he is implementing the 'identify-client' interaction between the two processes in terms of a sequence of 'low-level' communications between them. By contrast, other types of refinement that are normally considered are concerned with refining the internal structure of one or more of the processes, the interactions between the processes being taken as a given. We motivate the idea of interaction refinement with simple and natural examples and develop a preliminary formalism that can be used to establish correctness of systems developed using interaction refinement. We also compare our work with previous work which allow one to deal with restricted kinds of interaction refinement.