After reading this chapter, you should understand:
- What is a Software Specification
- Two methods for Formal Specifications – Model oriented and Algebraic
- VDM as a vehicle for model oriented formal specification
- Creating VDM models through a number of examples
- Specification Refinement
- Formal Proof Obligations
Who cares how it works, just as long as it gives the right answer.
Walking on water and developing software from a specification are easy if both are frozen.
—Edward V Berard