DEF/specification language

Uit Werkplaats
< DEF
Ga naar: navigatie, zoeken


Similar terms and concepts

{{{similar}}}

...

Definition

DEF/specification language

A →formal language intended to write →specifications of →artefacts to be constructed for a certain problem domain

Explanation

Relations with other concepts

Relations

states
→specifications state →properties. When a specification language is →formal, its semantics determines which kinds of properties can be specified. The most universal specification language is higher order predicate logic, but is it also the best? There is much to say for domain specific languages that allow to specify only properties form a limited set, abstracting from everything not essential for that domain.
is implementation of
This relation does not lay extra claims on the specification language.
satisfies
→specifications and →blueprints are both built upon abstractions from reality. The →formal relation satisfies can only be established if the blueprint language is semantically at least as rich as the specification language.

Stakeholders

The specification of the overall artefact must be suitable as basis for a contract between a designer and a customer.
Typical customers are neither engineer nor trained to understand →formal documents. For the latter, they usually rely on a Domain expert. ...
The specification of a constituent part of an artefact must be suitable as basis for a contract between a provider and a designer.
The designer, hopefully with engineering skills and well-trained in understanding of →formal languages ...

activities

specify
validate
implement
validate
design
verify

Pragmatics

Of course, a good specification language must be →formal, so that there is no doubt about what is specified. But an example shows that not each formal language is suitable as specification language. It must also be →declarative. What is needed for a good specification language can be answered by checking the place of →specifications in the Rationality Square for Engineering and the stakeholders and activities involved.

Examples

{{{examples}}}

Open questions

{{{open}}}


This is a definition from Taxonomy of Computer Science (Hanno Wupper et al. 2008).