Home
EARS: The Easy Approach to Requirements Syntax
Contents
1. EARS The Easy Approach to Requirements Syntax John Terzakis Intel Corporation jonn terzakis intel com July 21 2013 ICCGI Conference Version 1 0 Nice France Legal Disclaimers Intel Trademark Notice Intel and the Intel Logo are trademarks of Intel Corporation in the U S and other countries Non Intel Trademark Notice Other names and brands may be claimed as the property of others Copyright 2013 Intel Corporation All Rights Reserved No part of this presentation may be copied without the written permission of Intel Corporation Agenda e Requirements overview e Issues with requirements e Overcoming issues with requirements e Identifying ubiquitous requirements e EARS and EARS examples e Using EARS to rewrite requirement examples e EARS at Intel e Wrap up Copyright 2013 Intel Corporation All Rights Reserved No part of this presentation may be copied without the written permission of Intel Corporation Requirements Overview Copyright 2013 Intel Corporation All Rights Reserved No part of this presentation may be copied without the written permission of Intel Corporation What is a Requirement A requirement is a statement of one of the following 1 What a system must do 2 Aknown limitation or constraint on resources or design 3 How well the system must do what it does The first definition is for Functional Requirements The second and third definit
2. EARS Requirements Examples from Intel e While in Manufacturing Mode the software shall boot without user intervention e Type State driven e Where both 3G and Wi Fi radios are available the software shall prioritize Wi Fi connections above 3G e Type Optional feature e While on DC power if the software detects an error then the software shall cache the error message instead of writing the error message to disk e Type Complex Note Requirements slightly modified from original form Copyright 2013 Intel Corporation All Rights Reserved Pi No part of this presentation may be copied without the written inte permission of Intel Corporation ni Wrap up Copyright 2013 Intel Corporation All Rights Reserved No part of this presentation may be copied without the written permission of Intel Corporation Session Summary In this session we have e Provided a brief overview of requirements e Discussed issues with requirements and listed tools to overcome them e Taught how to identify ubiquitous requirements vs those that are not e Introduced the concept of EARS e Reviewed examples using the EARS template e Rewrote requirements using the EARS template e Observed practical applications of EARS at Intel Copyright 2013 Intel Corporation All Rights Reserved No part of this presentation may be copied without the written permission of Intel Corporation Final Thoughts e EARS is a struct
3. EARS Background Case study involved Rolls Royce group working on aircraft engine control systems Software was safety critical contained thousands of components and involved up to twenty different suppliers Rolls Royce identified 8 major problems with existing natural language requirements e Ambiguity e Duplication e Vagueness e Wordiness e Complexity e Inappropriate implementation e Omission e Untestability Rewriting requirements using EARS demonstrated a significant reduction in all eight problem types From EARS Easy Approach to Requirements Syntax Alistair Mavin et al 17th IEEE International Requirements Engineering Conference RE 09 page 321 Copyright 2013 Intel Corporation All Rights Reserved No part of this presentation may be copied without the written permission of Intel Corporation Identifying Ubiquitous Requirements Copyright 2013 Intel Corporation All Rights Reserved No part of this presentation may be copied without the written permission of Intel Corporation Ubiquitous Requirements Ubiquitous Requirements e State a fundamental system property e Do not require a stimulus in order to execute e Are universal exist at all times Requirements that are not ubiquitous do not occur at all times They e Require an event or trigger in order to execute or e Denote a state of the system or e Denote an optional feature Most requirements are not ubiquitous
4. No part of this presentation may be copied without the written permission of Intel Corporation Planguage Example Name Create Invoice Requirement When an Order is shipped and Order Terms are not Prepaid the system shall create an Invoice Rationale Task automation decreases error rate reduces effort per order Meets corporate business principle for accounts receivable Priority High Priority Reason If not implemented business process reengineering will be necessary and program ROI will drop by 400K per year lt Finance study Status Committed Contact Hugh P Essen Source Send Shipping Created by Julie English Version 1 1 Modified Date 20 Oct 11 Copyright 2013 Intel Corporation All Rights Reserved No part of this presentation may be copied without the written permission of Intel Corporation Express Requirements Using EARS EARS Easy Approach to Requirements Syntax e Is an effective method of expressing requirements e Was created by Alistair Mavin and others from Rolls Royce PLC and presented at the 2009 Requirements Engineering RE 09 conference e Differentiates between five types or patterns of requirements Ubiquitous always occurring e Event driven e Unwanted behaviors e State driven Optional features Copyright 2013 Intel Corporation All Rights Reserved No part of this presentation may be copied without the written permission of Intel Corporation
5. lt system name gt shall lt sysiem response gt Optional WHERE lt feature is included gt the lt system name gt Feature shall lt system response gt combinations of the above patterns Copyright 2013 Intel Corporation All Rights Reserved No part of this presentation may be copied without the written permission of Intel Corporation Ubiquitous Requirements e Define a fundamental property of the system e Have no preconditions or trigger e Do not require a pattern keyword e Have the format The lt system name gt shall lt system response gt Copyright 2013 Intel Corporation All Rights Reserved No part of this presentation may be copied without the written permission of Intel Corporation Ubiquitous Examples e The software package shall include an installer e The software shall be written in Java e The software shall be available for purchase on the company web site and in retail stores Copyright 2013 Intel Corporation All Rights Reserved No part of this presentation may be copied without the written permission of Intel Corporation Event Driven Requirements e Are initiated when and only when a trigger occurs or is detected e Use the When keyword e Have the format WHEN lt trigger gt lt optional precondition gt the lt system name gt shall lt system response gt Copyright 2013 Intel Corporation All Rights Reserved No part of this presentation may be
6. Copyright 2013 Intel Corporation All Rights Reserved No part of this presentation may be copied without the written permission of Intel Corporation About Ubiquitous Requirements Question ubiquitous requirements Things that may seem universal are often subject to unstated triggers or preconditions Most legitimate ubiquitous requirements state a fundamental property of the software e The software shall be distributed on CD ROM and DVD media e The software shall prevent Unauthorized Access to patient data Software functions that appear ubiquitous are often not e The software shall wake the PC from standby e The software shall log the date time and username of failed logins The last 2 requirements are missing a trigger Copyright 2013 Intel Corporation All Rights Reserved No part of this presentation may be copied without the written permission of Intel Corporation Ubiquitous Requirements or Not The SW shall display a count of the number of participants The installer SW shall be available in Greek The SW shall phone the Alarm Company The SW shall mute the microphone The SW shall download the book without charge The SW shall warn the user of low battery Copyright 2013 Intel Corporation All Rights Reserved No part of this presentation may be copied without the written permission of Intel Corporation Ubiquitous or Not 1 The installer software sh
7. Rights Reserved No part of this presentation may be copied without the written permission of Intel Corporation Training e Develop internal training e Attend external training e Partner requirements authors with requirements subject matter experts e Create communities of practice to share best Known requirements methods internally Copyright 2013 Intel Corporation All Rights Reserved No part of this presentation may be copied without the written permission of Intel Corporation Consistent Requirements Syntax Here is a generic syntax for functional requirements optional items are in square brackets Trigger Precondition Actor Action Object Example When an Order is shipped and Order Terms are not Prepaid the system shall create an Invoice e Trigger When an Order is shipped e Precondition Order Terms are not Prepaid e Actor the system e Action create e Object an Invoice Copyright 2013 Intel Corporation All Rights Reserved No part of this presentation may be copied without the written permission of Intel Corporation Good Requirements Checklist Utilize a checklist that defines the attributes of a well written requirement For example a Good Requirement is v Complete v Prioritized v Correct v Unambiguous v Concise v Verifiable v Feasible v Consistent v Necessary v Traceable Most of these attributes apply equally to a single requirement and th
8. Where a thesaurus Is part of the software package the installer shall prompt the user before installing the thesaurus e Where hardware encryption is installed the software shall encrypt data using the hardware instead of using a software algorithm e Where a HDMI port is present the software shall allow the user to select HD content for viewing Copyright 2013 Intel Corporation All Rights Reserved No part of this presentation may be copied without the written permission of Intel Corporation Complex Requirements e Describe complex conditional events involving multiple triggers states and or optional features e Use a combination of the keywords When If Then While and Where e Have the format e lt Multiple Conditions gt the lt system name gt shall lt sysiem response gt Copyright 2013 Intel Corporation All Rights Reserved No part of this presentation may be copied without the written permission of Intel Corporation Complex Examples e When the landing gear button is depressed once if the software detects that the landing gear does not lock into position then the software shall sound an alarm e Where a second optical drive is installed when the user selects to copy disks the software shall display an option to copy directly from one optical drive to the other optical drive e While in start up mode when the software detects an external flash card the software shall use the externa
9. report the malfunction What type of EARS Pattern Unwanted behavior Copyright 2013 Intel Corporation All Rights Reserved No part of this presentation may be copied without the written permission of Intel Corporation Example 4 Original The software shall mute the microphone Rewritten using EARS While the mute button is depressed the software shall mute the microphone What type of EARS Pattern State driven Copyright 2013 Intel Corporation All Rights Reserved E gt intel No part of this presentation may be copied without the written permission of Intel Corporation Example 5 Original The software shall download the book without charge Rewritten using EARS Where the book Is available in digital format the software Shall allow the user to download the book without charge for a trial period of 3 days What type of EARS Pattern Optional feature Copyright 2013 Intel Corporation All Rights Reserved No part of this presentation may be copied without the written permission of Intel Corporation Example 6 Original The software shall warn the user of low battery Rewritten using EARS While on battery power if the battery charge falls below 10 remaining then the system shall display a warning message to switch to AC power What type of EARS Pattern Complex Copyright 2013 Intel Corporation All Rights Reserved No part of this presen
10. 2013 Intel Corporation All Rights Reserved No part of this presentation may be copied without the written permission of Intel Corporation Complete A requirement Is when it contains sufficient detail for those that use it to guide their work Every gap forces designers and developers to guess who do you want specifying your product Copyright 2013 Intel Corporation All Rights Reserved intel No part of this presentation may be copied without the written permission of Intel Corporation Correct A requirement Is when it Is error free Requirements can be checked for errors by stakeholders amp Subject Matter Experts SMEs Requirements can be checked against source materials for errors Correctness is related to other attributes ambiguity consistency and verifiability Copyright 2013 Intel Corporation All Rights Reserved No part of this presentation may be copied without the written permission of Intel Corporation Concise A requirement is when it contains just the needed information expressed in as few words as possible Requirements often lack conciseness because of e Compound statements multiple requirements in one e Embedded rationale examples or design Overly complex grammar Copyright 2013 Intel Corporation All Rights Reserved esa intel No part of this presentation may be copied without the written permission of Intel Corporation Feasible A requiremen
11. all be available in Greek e Yes This is a fundamental property of the installer software The software shall display a count of the number of participants e No There is likely an event that causes the count to be displayed The software shall phone the Alarm Company e No We dont want the software phoning the Alarm Company unless there is a fault or problem The software shall mute the microphone e No The muting occurs during some state the system Is in The software shall download the book without charge e No There is apt to be an optional condition under which books are downloaded for free The software shall warn the user of low battery e No There is a state or an event needed for this warning to occur Copyright 2013 Intel Corporation All Rights Reserved No part of this presentation may be copied without the written permission of Intel Corporation EARS and EARS Examples Copyright 2013 Intel Corporation All Rights Reserved No part of this presentation may be copied without the written permission of Intel Corporation EARS Patterns Pattern Name Pattern Ubiquitous The lt system name gt shall lt system resoonse gt Event Driven WHEN lt trigger gt lt optional precondition gt the lt system name gt shall lt system response gt Unwanted IF lt unwanted condition or event gt THEN the lt system Behavior name gt shall lt system response gt State Driven WHILE lt system state gt the
12. copied without the written permission of Intel Corporation Event Driven Examples e When an Unregistered Device is plugged into a USB port the OS shall attempt to locate and load the driver for the device e When a DVD is inserted into the DVD player the OS shall Spin up the optical drive e When the water level falls below the Low Water Threshold the software shall open the water valve to fill the tank to the High Water Threshold Copyright 2013 Intel Corporation All Rights Reserved No part of this presentation may be copied without the written permission of Intel Corporation Unwanted Behavior Requirements e Handle unwanted behaviors including error conditions failures faults disturbances and other undesired events e Use the If and then keywords e Have the format IF lt unwanted condition or event gt THEN the lt system name gt shall lt system response gt Copyright 2013 Intel Corporation All Rights Reserved No part of this presentation may be copied without the written permission of Intel Corporation Unwanted Behavior Examples f the measured and calculated speeds vary by more than 10 then the software shall use the measured speed e f the memory checksum Is invalid then the software shall display an error message e If the ATM card inserted is reported lost or stolen then software shall confiscate the card Copyright 2013 Intel Corporation Al
13. e entire set of requirements see Backup for details Copyright 2013 Intel Corporation All Rights Reserved No part of this presentation may be copied without the written permission of Intel Corporation Planguage A Constrained Natural Language Many requirements defects can be eliminated by using a constrained natural language Planguage Is an example e Developed by Tom Gilb in 1988 and explained in detail in his book Competitive Engineering e Is a combination of the words Planning and Language e An informal but structured keyword driven planning language e g Name Description Rationale e Can be used to create all types of requirements Competitive Engineering Butterworth Heinemann 2005 Copyright 2013 Intel Corporation All Rights Reserved No part of this presentation may be copied without the written permission of Intel Corporation Planguage Keywords for Any Requirement Name A short descriptive name Requirement Text that defines the requirement following EARS Rationale The reasoning that justifies the requirement Priority sets the importance of the requirement relative to others in the product Priority Reason A brief justification for the assigned priority level Status The current state of the requirement Contact The person to contact with questions about the requirement Source The original inspiration for the requirement Copyright 2013 Intel Corporation All Rights Reserved
14. equirements at any level Consistency is improved by referring to the original statement where needed instead of repeating statements Copyright 2013 Intel Corporation All Rights Reserved intel No part of this presentation may be copied without the written permission of Intel Corporation Traceable A requirement Is traceable If it is uniquely and persistently identified with a Tag Requirements can be traced to and from designs tests usage models and other project artifacts Traceability enables improved e Change impact assessment e Schedule and effort estimation e Coverage analysis requirements to tests for example e Scope management prioritization and decision making Not Traceable The software shall prompt the user for the PIN Traceable Prompt_PIN The software shall prompt the user for the PIN Copyright 2013 Intel Corporation All Rights Reserved No part of this presentation may be copied without the written permission of Intel Corporation intel Leap ahead
15. ions are for Non Functional Requirements NFRs This session will focus on improving requirements defined by 1 amp 2 Copyright 2013 Intel Corporation All Rights Reserved No part of this presentation may be copied without the written intel permission of Intel Corporation Examples of Functional and Non Functional Requirements Video over IP Conference Calling Functional Requirements Non Functional Requirements e Add Participant e Voice and Video Quality e Count Participants e Reliability e Drop Participant e Availability e Lock Call to New Participants e Ease of Use e Summon Operator e Cost e Mute voice e Localization Copyright 2013 Intel Corporation All Rights Reserved No part of this presentation may be copied without the written permission of Intel Corporation Issues with Requirements Copyright 2013 Intel Corporation All Rights Reserved No part of this presentation may be copied without the written permission of Intel Corporation Issues with Requirements e Authors often lack formal training on writing requirements e Authors write requirements using unconstrained natural language e Introduces ambiguity vagueness and subjectivity e Not always clear concise and coherent e Often not testable e Some times missing triggers e Logic is not always complete if but no else e Authors copy and paste poor requirements which multiplies the number of requirements with defec
16. irable Nice to Have e High Medium Low e Other ordinal scales based on cost value etc Not Prioritized All requirements are critical and must be implemented Prioritized 80 of requirements High 15 Medium and 5 Low Copyright 2013 Intel Corporation All Rights Reserved r No part of this presentation may be copied without the written inte permission of Intel Corporation Unambiguous A requirement is when it possesses a single interpretation Ambiguity is often dependent on the background of the reader Reduce ambiguity by defining terms writing concisely and testing understanding among the target audience Augment natural language with diagrams tables and algorithms to remove ambiguity and enhance understanding Copyright 2013 Intel Corporation All Rights Reserved intel No part of this presentation may be copied without the written permission of Intel Corporation Verifiable A requirement is if it can be proved that the requirement was correctly implemented Verification may come via demonstration analysis inspection or testing Requirements are often unverifiable because they are ambiguous can t be decided or are not worth the cost to verity Copyright 2013 Intel Corporation All Rights Reserved No part of this presentation may be copied without the written intel permission of Intel Corporation Consistent A requirement Is when it does not conflict with any other r
17. l flash card to store photos ee Copyright 2013 Intel Corporation All Rights Reserved No part of this presentation may be copied without the written permission of Intel Corporation Using EARS to Rewrite Requirement Examples Copyright 2013 Intel Corporation All Rights Reserved No part of this presentation may be copied without the written permission of Intel Corporation B Example 1 Original Se The installer software shall be available in Greek Rewritten using EARS no change The installer software shall be available in Greek What type of EARS Pattern Ubiquitous Copyright 2013 Intel Corporation All Rights Reserved No part of this presentation may be copied without the written permission of Intel Corporation Example 2 Original The software shall display a count of the number of participants Rewritten using EARS When the user selects the caller count from the menu the software shall display a count of the number of participants in the audio call in the Ul What type of EARS Pattern Event Driven Copyright 2013 Intel Corporation All Rights Reserved No part of this presentation may be copied without the written permission of Intel Corporation Example 3 Original The software shall phone the Alarm Company Rewritten using EARS lf the alarm software detects that a sensor has malfunctioned then the alarm software shall phone the Alarm Company to
18. l Rights Reserved ys No part of this presentation may be copied without the written inte permission of Intel Corporation State Driven Requirements e Are triggered while the system Is in a specific state e Use the While keyword or optionally the keyword During e Have the format WHILE lt system state gt the lt system name gt shall lt sysiem response gt Copyright 2013 Intel Corporation All Rights Reserved No part of this presentation may be copied without the written permission of Intel Corporation State Driven Examples e While in Low Power Mode the software shall keep the display brightness at the Minimum Level e While the heater is on the software shall close the water intake valve e While the autopilot is engaged the software shall display a visual indication to the pilot Copyright 2013 Intel Corporation All Rights Reserved No part of this presentation may be copied without the written intel permission of Intel Corporation a Optional Feature Requirements e Are invoked only in systems that include the particular optional feature e Use the Where keyword e Have the format WHERE lt feature is included gt the lt system name gt shall lt system response gt Copyright 2013 Intel Corporation All Rights Reserved No part of this presentation may be copied without the written permission of Intel Corporation Optional Feature Examples e
19. t is feasible if there is at least one design and implementation for It Requirements may have been proven feasible in previous products Evolutionary or breakthrough requirements can be shown feasible at acceptable risk levels through analysis and prototyping Not Feasible The software shall allow an unlimited number of concurrent users Feasible The software shall allow a maximum of twenty concurrent users Copyright 2013 Intel Corporation All Rights Reserved x No part of this presentation may be copied without the written inte permission of Intel Corporation Necessary A requirement is when at least one of the following apply e It is included to be market competitive e It can be traced to a need expressed by a customer end user or other stakeholder e It establishes a new product differentiator or usage model e It is dictated by business strategy roadmaps or sustainability needs Copyright 2013 Intel Corporation All Rights Reserved intel No part of this presentation may be copied without the written permission of Intel Corporation Prioritized A requirement is prioritized when it ranked or ordered according to its importance All requirements are in competition for limited resources There are many possible ways to prioritize e Customer Value Development Risk Value to the Company Competitive Analysis Cost Effort TTM several scales can be used for prioritization e Essential Des
20. tation may be copied without the written permission of Intel Corporation EARS at Intel Copyright 2013 Intel Corporation All Rights Reserved No part of this presentation may be copied without the written permission of Intel Corporation History of EARS at Intel e EARS was introduced at Intel in 2010 e Although originally developed for the aircraft industry it was easily adapted to a wide variety of projects at Intel e Integrated into existing Requirements Engineering training materials e Rapidly adopted by requirements authors due to its power and simplicity e Praised by developers amp validation teams for providing clarity and removing ambiguity from requirements Copyright 2013 Intel Corporation All Rights Reserved No part of this presentation may be copied without the written permission of Intel Corporation EARS Requirements Examples from Intel e The software shall include an online help file e Type Ubiquitous e When the software detects the J7 jumper is shorted it shall clear all stored user names and passwords e Type Event driven e f the software detects an invalid DRAM memory configuration then it shall abort the test and report the error e Type Unwanted behavior Note Requirements slightly modified from original form Copyright 2013 Intel Corporation All Rights Reserved No part of this presentation may be copied without the written permission of Intel Corporation
21. ts Copyright 2013 Intel Corporation All Rights Reserved No part of this presentation may be copied without the written permission of Intel Corporation Examples of Issues with Requirements 1 The software shall support a water level sensor e What does the word support mean 2 Ihe thesaurus software shall display about five alternatives for the requested word e How many is about five Three Four Six Ten More e Under what conditions are they displayed 3 The software shall blink the LED on the adapter using a 50 on 50 off duty cycle e Does the software blink the LED at all times Or is there a trigger that initiates the blinking 4 Ifa boot disk is detected in the system the software shall boot from it e What if a boot disk is not present The logic is incomplete Copyright 2013 Intel Corporation All Rights Reserved No part of this presentation may be copied without the written permission of Intel Corporation Overcoming Issues with Requirements Copyright 2013 Intel Corporation All Rights Reserved No part of this presentation may be copied without the written permission of Intel Corporation Tools to Overcome Requirements Issues e Training e Use a consistent requirements syntax e Check requirements against goodness criteria e Use a constrained natural language e g Planguage e Express requirements using EARS Copyright 2013 Intel Corporation All
22. ured aid to writing better requirements Focuses on the different patterns for requirements using keywords When If Then While Where and combinations e EARS helps to identify which requirements are truly ubiquitous Some requirements written as if they were ubiquitous are really not e EARS is beneficial to both developers and testers in understanding the intent of requirements Removes ambiguity improves clarity and properly identifies underlying conditions or triggers EARS is Powerful Start Using it Today Copyright 2013 Intel Corporation All Rights Reserved No part of this presentation may be copied without the written inte permission of Intel Corporation Contact Information Thank You For more information please contact John Terzakis john terzakis intel com Copyright 2013 Intel Corporation All Rights Reserved No part of this presentation may be copied without the written permission of Intel Corporation Backup Copyright 2013 Intel Corporation All Rights Reserved No part of this presentation may be copied without the written permission of Intel Corporation Papers on EARS EARS Easy Approach to Requirements Syntax Alistair Mavin et al 17th IEEE International Requirements Engineering Conference RE 09 Big EARS The Return of Easy Approach to Requirements Syntax Alistair Mavin et al 18th IEEE International Requirements Engineering Conference RE 10 Copyright
Download Pdf Manuals
Related Search
Related Contents
B-RAD USER MANUAL FINAL annually - Breathe Pure Air Elite - Dustbane GQ-S000091L Impex MWB-716 Owner's Manual 取扱説明書 天吊り金具 (CelingMount15) SILQUEST A-189 SILANE GS0006-7 König ANT-UHF70-KN television antenna AXIS P33-VE - Axis Communications Copyright © All rights reserved.
Failed to retrieve file