EARS or the Easy Approach to Requirement Syntax is a standard for writing requirements that will improve the quality of your written requirements. Read more here.
EARS Templates in QVscribe
When users are viewing a requirement in QVscribe's authoring view, there is an option to insert an EARS template.
Select Template Type
Select from one or more of the EARS templates made available within QVscribe.
Insert a Template
Expand any option to view the full template and display the link to insert it into the authoring view. Click the grey icon to insert the template into your requirement.
Edit the Template
Once the template has been added to the requirement section, you are able to modify it freely. After modification QVscribe will check for conformance with any EARS template and score it according to the active configuration.
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 |