Teaching Formal Methods in Context

The Software Engineering Programme at Oxford teaches formal methods as an integral part of its programme of professional education in software engineering. This paper explains how the methods are taught—in the context of emerging trends in software development, and in the context of existing practice—and how their use is promoted through course design and motivating examples.

[1]  Jeannette M. Wing Invited Talk: Weaving Formal Methods into the Undergraduate Computer Science Curriculum , 2000, AMAST.

[2]  Ronald J. Norman Object-oriented systems analysis and design , 1996 .

[3]  Anneke Kleppe,et al.  MDA explained - the Model Driven Architecture: practice and promise , 2003, Addison Wesley object technology series.

[4]  Benjamin S. Blanchard,et al.  System Engineering Management , 1991 .

[5]  Timothy Lethbridge,et al.  What knowledge is important to a software professional? , 2000, Computer.

[6]  Andrew P. Martin,et al.  Generalising the Z schema calculus: database schemas and beyond , 2003, Tenth Asia-Pacific Software Engineering Conference, 2003..

[7]  Jim Davies,et al.  A method for the automatic generation of test suites from object models , 2004, Inf. Softw. Technol..

[8]  Rex L. Page Software is discrete mathematics , 2003, ICFP '03.

[9]  Jeannette M. Wing A specifier's introduction to formal methods , 1990, Computer.

[10]  Jean-Raymond Abrial,et al.  The B-book - assigning programs to meanings , 1996 .

[11]  Vicki L. Almstrum,et al.  Support for teaching formal methods , 2001, SGCS.

[12]  H. Arbeláez,et al.  Korth cm. International business : environment and management. Prentice hall, inc, englewood cliffs, 1985, 2a ed , 1985 .

[13]  Andrew Simpson Supplementing the understanding of Z: a formal approach to database design , 2003 .

[14]  Ian Sommerville,et al.  Software engineering (6th ed.) , 2001 .

[15]  Kim B. Bruce,et al.  Has our curriculum become math-phobic? (an American perspective) , 2000, ITiCSE '00.

[16]  C. Neville Dean,et al.  Teaching and learning formal methods , 1996 .

[17]  David Edmond Refining Database Systems , 1995, ZUM.

[18]  Sriram K. Rajamani,et al.  SLAM and Static Driver Verifier: Technology Transfer of Formal Methods inside Microsoft , 2004, IFM.

[19]  Roberto Souto Maior de Barros,et al.  On the Formal Specification and Derivation of Relational Database Applications , 1994, US-Brazil Joint Workshops on the Formal Foundations of Software Systems.

[20]  Hans H. Kron,et al.  Programming-in-the-Large Versus Programming-in-the-Small , 1975 .