Abstract
We introduce a pattern language for using formal methods in computer system engineering. We focus on the Z notation, but many of the patterns are adaptable to other formal notations, or can be used to help choose a notation, or to decide on a style of formality. As in other pattern languages, we are providing a new presentation of existing practice, to make it accessible to computer systems engineering. We propose an initial classification of Z patterns, present selected examples, and outline issues of tool support.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
Christopher Alexander, Sara Ishikawa, Murray Silverstein, Max Jacobson, Ingrid Fiksdahl-King, and Shlomo Angel. A Pattern Language: Towns, Buildings, Construction. Oxford University Press, 1977.
Kent Beck. Smalltalk Best Practice Patterns. Prentice Hall, 1997.
J. P. Bowen, M. G. Hinchey, and D. Till, editors. ZUM’97: The Z Formal Specification Notation, 10th International Conference of Z Users, Reading, UK, volume 1212 of LNCS. Springer, 1997.
William J. Brown, Raphael C. Malveau, Hays W. McCormick III, and Thomas J. Mowbray. AntiPatterns. Wiley, 1998.
Peter J. Brown. Writing Interactive Compilers and Interpreters. Wiley, 1979.
James O. Coplien. A generative development-process pattern language. In James O. Coplien and Douglas C. Schmidt, editors, Pattern Languages of Program Design. Addison-Wesley, 1995.
Mark d’Inverno and Michael Luck. Understanding Agent Systems. Springer Verlag, 2001.
Martin Fowler. Analysis Patterns. Addison-Wesley, 1997.
Erich Gamma, Richard Helm, Ralph Johnson, and John Vlissides. Design Patterns. Addison-Wesley, 1995.
M. A. Hewitt, C. M. O’Halloran, and C. T. Sennett. Experiences with PiZA, an animator for Z. In [Bowen et al. 1997], pages 37–51.
ISO/IEC 13568. Information Technology—Z Formal Specification Notation—Syntax, Type System and Semantics: International Standard, 2002.
Craig Larman. Applying UML and Patterns, 2nd edition. Prentice Hall, 2001.
Cristina Videira Lopes and Karl Lieberherr. Generative patterns. In ECOOP’94 Workshop on Patterns, Bologna, Italy, 1994.
Keith C. Mander and Fiona Polack. Rigorous specification using structured systems analysis and Z. Information and Software Technology, 37(5):285–291, 1995.
Fiona Polack, Mark Whiston, and Keith C. Mander. The SAZ project: Integrating SSADM and Z. In FME’93: Industrial Strength Formal Methods, Odense, Denmark, volume 670 of LNCS, pages 541–557. Springer, 1993.
Mark Saaltink. The Z/EVES system. In [Bowen et al. 1997], pages 72–85.
J. Michael Spivey. The fuzz Manual. The Spivey Partnership, 2nd edition, 1992. ftp://ftp.comlab.ox.ac.uk/pub/Zforum/fuzz.
J. Michael Spivey. The Z Notation: a Reference Manual. Prentice Hall, 2nd edition, 1992.
Susan Stepney and David Cooper. Smart card operating system: Specification, refinement, and proof. Technical Report YCS-2003, York, 2003. (in press).
Susan Stepney and Ian Nabney. The DeCCo papers. Technical Report YCS-2003, York, 2003. (in press).
Susan Stepney, David Cooper, and Jim Woodcock. An electronic purse: Specification, refinement, and proof. Technical Monograph PRG-126, Programming Research Group, Oxford University Computing Laboratory, 2000.
Susan Stepney, Fiona Polack, and Ian Toyn. A meta-pattern for diagram patterns. 2003. (in preparation).
Susan Stepney, Fiona Polack, and Ian Toyn. Patterns to guide practical refactoring. 2003. (these proceedings).
Susan Stepney, Fiona Polack, and Ian Toyn. A Z patterns catalogue I: specification and refactoring, v0.1. Technical Report YCS-2003-349, York, 2003.
Susan Stepney. A tale of two proofs. In Third Northern Formal Methods Workshop. BCS-FACS, 1998.
Susan Stepney. Formaliser Home Page. http://public.logica.com/~formaliser/, 2001.
Ian Toyn. CADiZ web pages. http://www-users.cs.york.ac.uk/~ian/cadiz/, 2002.
Samuel H. Valentine. Z−−, an executable subset of Z. In J. E. Nicholls, editor, Z User Workshop, York 1991, Workshops in Computing, pages 157–187. Springer, 1992.
M. M. West and B. M. Eaglestone. Software development: Two approaches to animation of Z specifications using Prolog. IEE/BCS Software Engineering Journal, 7(4):264–276, July 1992.
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2003 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Stepney, S., Polack, F., Toyn, I. (2003). An Outline Pattern Language for Z: Five Illustrations and Two Tables. In: Bert, D., Bowen, J.P., King, S., Waldén, M. (eds) ZB 2003: Formal Specification and Development in Z and B. ZB 2003. Lecture Notes in Computer Science, vol 2651. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-44880-2_2
Download citation
DOI: https://doi.org/10.1007/3-540-44880-2_2
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-40253-4
Online ISBN: 978-3-540-44880-8
eBook Packages: Springer Book Archive