Terminology
Here are brief defintions of some useful terms that we use throughout the term, taken from Pamela Zave and Michael Jackson’s “Four Dark Corners of Requirements Engineering” in ACM Transactions on Software Engineering and Methodology, Vol. 6, No. 1, 1997:
- The environment is the portion of the real world relevant to the software development project.
- The machine is a computer-based machine that will be constructed and connected to the environment, as a result of the software development project.
- A designation is an informal description of the meaning of an atomic formal term referring to the environment.
- A definition is a formal description of an atomic term, using other defined or designated terms.
- A statement (assertion, property) in the indicative mood1 describes the environment as it would be without or in spite of the machine.
- A statement (assertion, property) in the optative mood describes the environment as we would like it to be because of the machine.
- A shared action is an action in the environment in which the machine also participates.
- An unshared action is an action in the environment in which the machine does not participate.
- An environment-controlled action is an action in the environment that is controlled, performed, or initiated by the environment.
- A machine-controlled action is an action in the environment that is not controlled, performed, or initiated by the environment. The intention is that such an action will be controlled by the machine when it is connected to the environment.
- A requirement is an optative property, intended to express the desires of the customer concerning the software development project.
- A statement of domain knowledge or domain assumption is an indicative property intended to be relevant to the software development project.
- A specification is an optative property, intended to be directly implementable and to support satisfaction of the requirements.
-
The Wikipedia article on Grammatical mood can help with some of these terms. Indicative mood “is used for factual statements and positive beliefs”. Example: “Paul is eating an apple.” The Optative mood “indicates a wish or hope regarding a given action”. ↩︎