MIRA - Model-based Integrated Requirements Analysis
Interface Behaviour requirements
Interface Behaviour requirements are another special type of Requirements.
They are used to structure requirements on the interface behaviour of a system.
Every interface behaviour has a Detail section.
Additionally, every interface behaviour can be formalized to a Formal Specification.
Detail Section
The Detail section consists of a set of fields to specify the interface behaviour:
- Scope: The system under development
- Condition type: The condition type of the temporal specification. Specifically, these are
Always (ubiquitous), When (event), If (undesired behavior), While (state).
- Trigger: The action that triggers the specification. Only accessible if the condition type is When or If.
- Precondition: The precondition of the specification. Disabled when condition type is Always.
- Response type: The response type of the temporal specification.
- Response type: The event that will be triggered.
Examples
Always (ubiquitous): The emergency system shall always be able to supply energy
When (event), then (state): When the emergency system is on and an emergency situation occurs, then (state) the system shall supply energy
When (event), then (event): When the emergency system is on and an emergency situation occurs, then the central control system shall be informed within 5 seconds
While (state), then (state): While the emergency system is providing energy, then the central control system shall be informed every 10 seconds
If (undesired behavior), then (event): If the emergency system cannot provide energy, then the central control system shall be informed within one second
Connection of interface behaviour to component architecture
In the section Detail of an interface behaviour, a simple connection to the component architecture can be done by setting the scope of the interface behaviour to a component of the component architecture.
When the scope of an interface behaviour is connected with a component, then the reference to this use case is also listed below the component.
Double-clicking on the reference opens the corresponding requirement editor.