Available to those who have QVscribe for Teams, QVscribe assists authors of requirements based on the Easy Approach to Requirements Syntax (EARS), with both EARS templates and a conformance check against these EARS templates.
Within the QVscribe ribbon, QVscribe for Teams users will have access to an EARS templates button. When you want to author a requirement, you can select an appropriate EARS template from the list.
When a template is selected it will appear at the cursor location on the document. See the example below.
You can then easily fill in the areas in the template to create a well-structured requirement.
All 12 EARS templates are described in detail below.
EARS Type |
Description |
Template |
Event-driven |
An Event-driven requirement is activated when a triggering event is detected at the system boundary |
WHEN <trigger> the <system name> shall <system response> |
Option |
An Option requirement is used for systems that include a particular feature |
WHERE <feature is included> the <system name> shall <system response> |
State-driven |
A State-driven requirement is active while some pre-condition remains true |
WHILE <pre-condition> the <system name> shall <system response> |
Ubiquitous |
A Ubiquitous requirement is continually active |
The <system name> shall <system response> |
Unwanted behaviour |
An Unwanted Behaviour requirement defines the required system response to an unwanted external event |
IF <trigger> THEN the <system name> shall <system response> |
Complex |
A Complex requirement contains a combination of the basic EARS patterns |
See table 3 below |
Complex EARS Template |
Label |
WHERE <feature is included> WHILE <pre-condition> IF <trigger> THEN the <system name> shall <system response> |
Optional feature, state-driven, and unwanted-behaviour |
WHERE <feature is included> WHILE <pre-condition> WHEN <trigger> the <system name> shall <system response> |
Optional feature, state-driven, and event-driven |
WHERE <feature is included> WHILE <pre-condition> the <system name> shall <system response> |
Optional feature, and state-driven |
WHERE <feature is included> WHEN <trigger> the <system name> shall <system response> |
Optional feature, and event-driven |
WHERE <feature is included> IF <trigger> THEN the <system name> shall <system response> |
Optional feature, and unwanted-behaviour |
WHILE <pre-condition> IF <trigger> THEN the <system name> shall <system response> |
State-driven, and unwanted-behaviour |
WHILE <feature is included> WHEN <trigger> the <system name> shall <system response> |
State-driven, and event-driven |