Download as pptx, pdf, or txt
Download as pptx, pdf, or txt
You are on page 1of 8

Formal Specification

Languages
Formal Specification Language

A formal specification language is a specification language in


computer science used during systems analysis, requirements
analysis and system design to describe a system at much
higher level than a programming.

The representation used in formal methods is called a formal specification language.


Formal Specification Language
• The language is “formal” in the sense that it can be used to express
specifications in a clear and unambiguous manner at a high level
abstraction.

• The programming or executable code for a system is at lower level of


abstraction.

The higher the level, the less detail.

The lower the level, the more detail.


Formal Specification Language

• Specification languages are not programming languages.


• They are mathematical description that may be used to develop an
implementation.

• Specification languages are not executable.


• It describes what the system should do, not (necessarily) how the system
should do it.
Specification Language Description
• There are two properties to describe a language: by its syntax and by
its semantics.

• Syntax: The structure of the expressions, statements, and program


unit (Grammar)

• Semantics: The meaning of the expressions, statements, and program


units. (grammatical tone)
Types of Formal Specification Languages

There are two types of Formal Specification Languages.

1. Algebraic Specification Languages (Uses algebra)


• Examples include LARCH ASL.
2. Model Based Specification Languages
• Examples include Z- Notation,
• OCL,
• B Method or B Specification Language,
• VDM SL.
Example of Specification Language: Z-
Notation
End of Lecture

You might also like