Abstract
This paper reports on the experiences of IBM Hursley in using the Z notation and the B-Method [Abr95] [Abr93] in developing new function for IBM's CICS product [IBM94].
A major constraint on the project was the need to produce code that not only corresponded to its required function, but also met a number of stringent non-functional requirements in areas such as integration, performance and maintenance.
The Z notation was used to capture the required function, and the resulting specification was hand-translated into AMN. The B-Toolkit, with project-specific extensions, was then used for the development down to PL/X code.
The success of this endeavour is discussed here. The use of Z and the B-Method were very successful in addressing the new functional requirements. Meeting the non-functional requirements, however, was more difficult.
Chapter PDF
Similar content being viewed by others
Keywords
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.
References
J.R. Abrial. B-Technology technical overview. 1993.
J.R. Abrial. The B-Book — Assigning Programs to Meanings. 1995.
J.R. Abrial, M.K.O. Lee, D.S. Neilson, P.N. Scharbach, and I.H. Sorensen. The B-method (software development). In W.J. Prehn, S.; Toetenel, editor, VDM 91. Formal Software Development Methods. 4th International Symposium of VDM Europe Proceeding., volume 2, pages 398–405. BP Res., Sunbury Res. Centre, Sunbury-on-Thames, UK, Springer-Verlag, Berlin, Germany, October 1991. The B-method is a formal software development process for the production of highly reliable, portable and maintainable software which is verifiably correct with respect to its functional specification. The method uses the abstract machine notation (AMN) as the language for specification, design and implementation within the process. AMN is a sugared and extended version of E.W. Dijkstra's (1976), guarded command notation with built-in structuring mechanisms for the construction of large systems. The method is supported over the entire spectrum of activities from specification to implementation by a set of computer-aided tools. (3 Refs).
B-Core (UK) Ltd. B-Toolkit User Manual, (available from B-Core (UK) Ltd. on request), 1993.
B. P. Collins and C. J. Nix. The use of software engineering, including the Z notation in the development of CICS. Quality Assurance, 14(3), September 1988.
B. P. Collins, J. E. Nicholls, and I. H. Sorensen. Introducing formal methods: The CICS experience with Z. IBM Technical Report TR12.260, 1989.
Dick, J. Fault grids: another way of presenting fault counts. Software Reliability and Metrics Club Newsletter, (16), 1995.
J. P. Hoare. Application of the B-Method to CICS. In J. P. Bowen and M. Hinchey, editors, Applications of Formal Methods. Prentice Hall International, 1995.
IBM Corporation. The IBM Publishing Systems BookMaster General Information. Manual GC34-5006, 1989.
IBM Corporation. CICS Family: General information. Manual GCS3-0155, 1994.
D. S. Neilson and Sorensen I. H. The B-technologies: A system for computer aided programming. In U. H. Engberg, K. G. Larsen, and P. D. Mosses, editors, Proceedings of the 6th Nordic Workshop on Programming Theory, pages 18–35. B-Core (UK) Ltd., BRICS Notes Series, Univ. Aarhus, Denmark, 17–19 October 1994.
J. M. Spivey. The Z Notation: A Reference Manual. Prentice Hall, Hemel Hempstead, 1989.
J. B. Wordsworth. Software Development with Z: a Practical Approach to Formal Methods in Software Engineering. Addison-Wesley, 1992.
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 1996 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Hoare, J., Dick, J., Neilson, D., Sørensen, I. (1996). Applying the B technologies to CICS. In: Gaudel, MC., Woodcock, J. (eds) FME'96: Industrial Benefit and Advances in Formal Methods. FME 1996. Lecture Notes in Computer Science, vol 1051. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-60973-3_81
Download citation
DOI: https://doi.org/10.1007/3-540-60973-3_81
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-60973-5
Online ISBN: 978-3-540-49749-3
eBook Packages: Springer Book Archive