In these sections of a description class the considered part of a system is described as it should be. This means that the behavior of the system is described as it should be with the machine. The structure of such a statement is the same as for a statement in the domain knowledge part.
The difference between the two sections REQUIREMENT and MACHINE SPECIFICATIONS is that a property in the REQUIREMENT SPECIFICATIONS section can not be implemented directly. More formally a requirement specification property has to contain at least one function or predicate symbol having the scope eh (see Section 2.1.2.2).
In contrast to this properties in MACHINE SPECIFICATIONS section have to be implementable. This means a machine specification property has to contain only function and predicate symbols that are visible for the machine, i.e. having the scopes eh, mv, or mh.
The following example illustrates the difference. Property R_AL3 is a requirement specification since safeLight has scope eh. It is not possible for the machine to establish safe light directly. Property M_AL7 is the corresponding machine specification. Here the previous predicate symbol safeLight is replaced by the actuators that are controlled directly by the machine.
Example: Requirement and Machine Specifications
There are also some requirements not dealing with the behavior of a system and which can not be formalized using the introduced temporal logic. Such requirements are also stated in the REQUIREMENTS/SPECIFICATIONS section using the keyword NonFormal. In these cases only a natural language version of the requirement is given.
Example: Nonformalizable Requirement