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.
* 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