COM6845 Software Verification and Testing: Course Material
This module explores selected formal methods for the description,
construction and analysis of software systems. Their objective is
software reliability in applications where failure is unacceptable,
e.g., e-commerce, telecommunication, transport, energy. Focus is on
the development of formal specifications, on the verification of their
behavioural properties, and on testing methods. A more detailed course
description can be found here.
All lecture notes and exercise sheets will be posted on this website.
Exercises: They will be discussed in the Thursday's
meetings. They need not be delivered and will not be marked.
More on Logic:
- Judith L. Gersting. Mathematical Structures for Computer Science, W. H. Freeman & Co, 2006.
- André Arnold. Finite Transition Systems, Prentice Hall, 1994.
- Michael Huth and Mark Ryan. Logic in Computer Science, Cambridge University Press, 1999.
- Jim Woodcock and Jim Davies. Using Z, Prentice Hall, 1996.
- J. M. Spivey. Understanding Z: A Specification Language and its Formal Semantics, Cambridge University Press, 1988.
- J.-R. Abrial. The B-Book, Cambridge University Press, 1996.
- Edmund M. Clarke, Jr., Orna Grumberg and Doron A. Peled. Model Checking, The MIT Press, 1999.
- Roger S. Pressman. Software Engineering: A Practitioner's Approach, McGraw-Hill, 1992.
- Lee Copeland. A Practitioner's Guide to Software Test Design, Artech House Publishers, 2003.
- Glenford J.Myers. The Art of Software Testing, John Wiley & Sons, 1979.
More on Relations:
- Mathematical Logic. H.-D. Ebbinghaus, J. Flum, W. Thomas, Springer 1994.
- Melvin Fitting. First-Order Logic and Automated Theorem Proving, Springer, 1996.
- Handbook of Philosophical Logic. D. Gabbay, F. Guenthner (eds)-Vol1: Elements of Classical Logic, Reidel, 1983.
The Using Z Book:
- G. Schmidt, T. Ströhlein. Relations and Graphs: Discrete Mathematics for Computer Scientists, Springer, 1993.