Formal Specification: a Roadmap Axel van Lamsweerde published on ICSE (International Conference on Software Engineering). Jing Ai 10/28/2003. What are Formal Specifications?.
Generally speaking, a formal specification is the expression, in some formal language and at some level of abstraction, of a collection of properties some system should satisfy.
The specification is expressed in a language made of three components:
Due to the fairly large collection of properties, specification is organized into units linked through structuring relationships:
Each unit in general has:
Formal specifications may concern different classes of consumers having fairly different background, abstractions and languages: