As computer systems continue to advance, the positions they hold in human society continue to gain power. Computers now control the flight of aircraft, the cooling systems in chemical plants, and feedback loops in nuclear reactors. Because of the vital roles these systems play, there has been growing concern about the reliability and safety of these advanced computers. Formal methods are now widely recognized as the most successful means of assuring the reliability of complex computer systems. Because formal methods are being mandated in more and more international standards, it is critical that engineers, managers, and industrial project leaders are well trained and conversant in the application of these methods. This book covers a broad range of issues relating to the pedagogy of formal methods. The contributors, all acknowledged experts, have based their contributions on extensive experiences teaching and applying formal methods in both academia and industry.The two editors, both well known in this area, propose various techniques that can help to dismiss myths that formal methods are difficult to use and hard to learn. Teaching and Learning Formal Methods will be an indispensable text for educators in the fields of computer science, mathematics, software engineering, and electronic engineering as well as to management and product leaders concerned with trainingrecent graduates.

Key Features

@introbul:Key Features @bul:* Offers proven methods for teaching formal methods, even to students who lack a strong background in mathematics * Addresses the important role that formal methods play in society and considers their growing future potential * Includes contributions from several pioneers in the area * Features a foreword written by Edsger W. Dijkstra


Graduate students in software engineering; academicians in mathematics, software engineering, and electronic engineering; project leaders in industry.

Table of Contents

J. Wordsworth, An Industrial Perspective on Educational Issues Relating to Formal Methods. D. Garlan, Effective Formal Methods Education for Professional Software Engineers. D.L. Parnas, Education for Computing Professionals. D.L. Parnas, Teaching Programming as Engineering. J. Wing, Hints to Specifiers. J.A. Foster and M. Barnett, Moore Formal Methods in the Classroom: A How-To Manual. N. Dean, Formal Methods and Modeling in Context. K.M. Finney and A.M. Fedorec, An Empirical Study of Specification Readability. V.L. Almstrum, Investigating Student Difficulties with Mathematical Logic. G. Malcolm and J.A. Goguen, An Executable Course in the Algebraic Semantics of Imperative Programs. D. Gries, Improving the Curriculum Through the Teaching of Calculation and Discrimination. W. Feijen and A.J.M. van Gasteren, Keep Your Design Simple. M. Gordon, Teaching Hardware and Software Verification in a Uniform Framework. Subject Index.


No. of pages:
© 1996
Morgan Kaufmann
Electronic ISBN:
Print ISBN:

About the editor

C. Dean

Neville Dean earned his M.A. in Mathematics and Theoretical Physics from St. John's College, Cambridge, where he was elected scholar and awarded the Hollinshead-Howles prize and the Phineas Quass prize. He earned a D.Phil. in Experimental Physics from the University of Sussex, and also holds a teaching certificate for higher education. He is Associate Fellow of the Institute of Mathematics and its Applications, a Member of the Institute of Physics, a Chartered Physicist, and a member of St. John's College at the University of Cambridge. Dean is a member of the IEEE Computer Society, the BCS special interest group in Formal Aspects of Computing, and the European Association for Theoretical Computer Science. He is a representative on the Mathematics Working Group of the Societe European pour la Formation des Ingenieurs. He is currently a Senior Lecturer at Anglia Polytechnic University.