Formal methods into practice: case studies in the application of the B method

The paper reports on an investigation into the application of the B method of formal software development. Six case studies are described, each exploring a different aspect of the use of the B methodology and toolkit. The case studies are drawn from a diverse range of applications and address different aspects of the software development lifecycle. The notation, method and tool support are assessed and conclusions are drawn concerning the use of B and formal methods generally.

[1]  Albert William Crew,et al.  Multiprocessor shared-memory information exchange , 1989 .

[2]  Frank Waters,et al.  The B Book , 1971 .

[3]  Cliff B. Jones,et al.  Systematic software development using VDM , 1986, Prentice Hall International Series in Computer Science.

[4]  Lindsey C. Smith Formalising CORE requirements , 1993 .

[5]  R. Fink,et al.  Data Management in Clinical Laboratory Information Systems , 1993 .

[6]  Peter A. Lindsay,et al.  mural: A Formal Development Support System , 1991, Springer London.

[7]  W E Vesely,et al.  Fault Tree Handbook , 1987 .

[8]  Brian Ritchie,et al.  Experiences in Using the Abstract Machine Notation in a GKS Case Study , 1994, FME.

[9]  Babak Dehbonei,et al.  Formal Methods in the Railways Signalling Industry , 1994, FME.

[10]  J. B. Wordsworth Software Engineering with B , 1996 .

[11]  Brian Ritchie,et al.  Invariants, Frames and Postconditions: a Comparison of the VDM and B Notations , 1993, FME.

[12]  Juan Bicarregui A Model Oriented Analysis of a Communications Protocol , 1993 .

[13]  Kevin Lano The B language and method - a guide to practical formal development , 1996, FACIT: Formal approaches to computing and information technology.

[14]  Juan Bicarregui Algorithm Refinement with Read and Write Frames , 1993, FME.

[15]  Carroll Morgan,et al.  Programming from specifications , 1990, Prentice Hall International Series in computer science.

[16]  Stuart Anderson,et al.  The Formalization and Analysis of a Communications Protocol , 1991 .

[17]  Brian Matthews,et al.  Formal Methods in Practice: A Comparison of Two Support Systems for Proof , 1995, SOFSEM.

[18]  Nancy G. Leveson,et al.  Analyzing Software Safety , 1983, IEEE Transactions on Software Engineering.

[19]  John A. McDermid,et al.  Software fault trees and weakest preconditions: a comparison and analysis , 1993, Softw. Eng. J..

[20]  Lindsey C. Smith,et al.  Combining formal specification and CORE: an experimental investigation , 1995, Softw. Eng. J..

[21]  Juan Bicarregui,et al.  Operation Semantics with Read and Write Frames , 1994, Refine.

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