Refinement-Preserving Plug-In Components

Abstract We present a formal framework for characterising plug-in relationships between components whereby one does not cause the other to deadlock. We define the notion of a stable relation φ between co-operating processes such that whenever P' and Q are related by φ, then any component-wise refinements P' and Q' are related by φ. We use stable relations to ensure that plug-in components can be separately refined whilst maintaining integrity of the original relational properties. We ground our notions in the CSP failures semantic model. The aim is to underpin a mixed-paradigm approach combining different specification methods, including state-based deductive formalisms such as Action Systems, and event-based model checking formalisms such as CSP/FDR. The objective is to play to the strengths and overcome limitations of each technique, by treating different system aspects with individual tools and notations which are most appropriate.

[1]  A. W. Roscoe,et al.  The Timed Failures-Stability Model for CSP , 1999, Theor. Comput. Sci..

[2]  C. A. R. Hoare,et al.  A Theory of Communicating Sequential Processes , 1984, JACM.

[3]  A. W. Roscoe,et al.  Verifying an infinite family of inductions simultaneously using data independence and FDR , 1999, FORTE.

[4]  Ranko S. Lazic,et al.  A semantic study of data independence with applications to model checking , 1999 .

[5]  Andrew William Roscoe,et al.  The Theory and Practice of Concurrency , 1997 .

[6]  Michael J. Butler A CSP approach to action systems , 1992 .

[7]  Ralph-Johan Back,et al.  Decentralization of Process Nets with Centralized Control , 1983, PODC.

[8]  Steve A. Schneider,et al.  How to Drive a B Machine , 2000, ZB.

[9]  Jane Sinclair,et al.  Routing - A Challenge to Formal Methods , 1999, International Conference on Parallel and Distributed Processing Techniques and Applications.

[10]  S. J. Creese,et al.  Verifying End-to-End Protocols using Induction with CSP/FDR , 1999, IPPS/SPDP Workshops.

[11]  John C. Kelly,et al.  Formal Methods Specification and Analysis Guidebook for the Verification of Software and Computer Systems Volume II: A Practitioner's Companion , 1997 .

[12]  A. W. Roscoe,et al.  Using CSP to Detect Errors in the TMN Protocol , 1997, IEEE Trans. Software Eng..

[13]  Catherine A. Meadows,et al.  The NRL Protocol Analyzer: An Overview , 1996, J. Log. Program..

[14]  J. Michael Spivey,et al.  The Z notation - a reference manual , 1992, Prentice Hall International Series in Computer Science.

[15]  Michael J. Butler,et al.  csp2B: A Practical Approach to Combining CSP and B , 1999, Formal Aspects of Computing.

[16]  C. A. R. Hoare,et al.  Communicating sequential processes , 1978, CACM.

[17]  W. H. J. Feijen,et al.  Beauty Is Our Business: A Birthday Salute to Edsger W.Dijkstra , 1990 .

[18]  Jane Sinclair,et al.  Deductive Reasoning versus Model Checking: Two Formal Approaches for System Development , 1999, IFM.

[19]  Steve A. Schneider,et al.  Using a Process Algebra to Control B Operations , 1999, IFM.

[20]  Steve Schneider,et al.  Concurrent and Real Time Systems , 1999 .

[21]  Carroll Morgan,et al.  Of wp and CSP , 1990 .

[22]  Gavin Lowe,et al.  Breaking and Fixing the Needham-Schroeder Public-Key Protocol Using FDR , 1996, Softw. Concepts Tools.

[23]  Michael J. Butler,et al.  An Approach to the Design of Distributed Systems with B AMN , 1997, ZUM.