Model-based specification

Model-based specification is an approach to formal specification where the system specification is expressed as a system state model. This state model is constructed using well-understood mathematical entities such as sets and functions. System operations are specified by defining how they affect the state of the system model.

The most widely used notations for developing model-based specifications are VDM and Z  (pronounced Zed, not Zee). These notations are based on typed set theory. Systems are therefore modelled using sets and relations between sets.

Another well-known approach to formal specification is algebraic specification.