SlideShare une entreprise Scribd logo
1  sur  41
Agile Requirements
How to Model Lightweight Requirements using Examples
1
Speaker Bio
2
• Excella Business Analysis
Center of Excellence Lead
• CBAP, PMP, PMI-ACP,
CSM, CSPO
• President of the IIBA DC
Chapter
• Contact Information:
– rebecca.halstead@excella.com
– http://excella.com/people/rebecca-
halstead.aspx
• Specification by Example
• Executable Specifications
• Scenarios
• Automated Acceptance Tests (AAT)
• Behavior Driven Development (BDD)
• Acceptance Test Driven Development
(AATDD)
• Gherkin Syntax
Today’s Topic
3
Requirements using Examples
Tooling
Documentation
Collaboration
Three Elements of this Technique
4
Building in Quality
5
Plan Collaborate Deliver
Build the
right thing
Build the thing
right
Characteristics of “good” requirements
6
Communicating Requirements
7
Level of Documentation
8
• Using Examples:
– Makes abstract
concepts more
relatable
– Minimizes
misinterpretation
– Highlights
success,
alternative and
exception cases
How do you specify the right amount?
9
Optimism Bias
10
An Example of Using an
Example…
Developing examples
12
1. Feature 2. User Story 3. Collaborate 4. Scenarios 5. Examples
How it all relates
13
Background:
You are developing an
online ordering website
for a local company that
grows, harvests and sells
botanicals directly to
customers.
Feature:
Calculate customer order
Feature
14
1. Feature 2. User Story 3. Collaborate 4. Scenarios 5. Examples
Calculate Order Feature
15
User Story:
As a customer, I want to review shipping costs in
my shopping cart before checking out, so that I
can see if I will receive free shipping.
User Story
16
1. Feature 2. User Story 3. Collaborate 4. Scenarios 5. Examples
Collaborate
17
How do I
describe
what I
want?
How do I
validate
that this
work is
done?
How do I
code this
feature?
What are
the details
of this
feature?
1. Feature 2. User Story 3. Collaborate 4. Scenarios 5. Examples
What is Gherkin?
18
Scenario: Standard Shipping Rate
Given I am a customer
And my order amount is $49.99
When I view my cart
Then I see that shipping costs are $3.99
Scenarios
19
1. Feature 2. User Story 3. Collaborate 4. Scenarios 5. Examples
Scenario: Free Shipping Rate
Given I am a customer
And my order amount is $50.00
When I view my cart
Then I see no shipping costs
Scenarios
20
1. Feature 2. User Story 3. Collaborate 4. Scenarios 5. Examples
Scenario Outline: Shipping Rate
Given I am a customer
And my order amount is “<order_total>”
When I view my cart
Then I see the “<shipping_cost>”
Scenarios
21
1. Feature 2. User Story 3. Collaborate 4. Scenarios 5. Examples
Examples:
Examples
22
order_total shipping_cost
$12.79 $3.99
$49.99 $3.99
$50.00 $0.00
$250.00 $0.00
1. Feature 2. User Story 3. Collaborate 4. Scenarios 5. Examples
Alternate Method
23
Story As a customer, I want to review shipping costs in my shopping cart before
checking out, so that I can see if I will receive free shipping.
Scenario Customer adds less than $50.00 worth of botanicals to his cart.
Business Rule Standard shipping for orders under $50.00 and free for orders over $50.00.
GIVEN
Precondition(s) Order amount: $49.99
Fixed Data Product Id: 12299
Quantity: 3
WHEN
Action View cart
Input Data
THEN
Output Data Shipping cost = $3.99
Postcondition Shipping rate determined
Based on examples from: http://ebgconsulting.com
Feature: Application Access
Scenario: User with valid credentials
Imperative (Narrative)
GIVEN I am an unauthenticated user
AND I am on the login page
AND I enter a valid name in the Name field
AND I enter the corresponding password in the Password field
WHEN I select the Login button
THEN I should see the welcome page
Imperative Style…
24
Implementation Detail – what if
decide to use Token-based
authentication or single sign-on?
UI Detail – what if the user interface
changes and you select name from
a drop-down list or select a radio
button?
Feature: Application Access
Scenario: User with valid credentials
Declarative (Informative)
GIVEN I am an unauthenticated user
AND I am on the login page
WHEN I submit valid credentials
THEN I should see the welcome page
Declarative Style…
25
Feature: Application Access
Scenario: User with valid credentials
Side-by-side Comparison
26
Imperative (Narrative) Declarative (Informative)
GIVEN I am an unauthenticated user
AND I am on the login page
AND I enter a valid name in the Name field
AND I enter the corresponding password
in the Password field
WHEN I select the Login button
THEN I should see the welcome page
GIVEN I am an unauthenticated user
AND I am on the login page
WHEN I submit valid credentials
THEN I should see the welcome page
—If the user interface is constantly changing, it is better to
use imperative.
—Declarative is easier to maintain.
—Developers prefer the imperative style.
—If a stakeholder is concerned about the user’s interaction
experience, use imperative.
—Declarative specifies implementation details.
Myth or Fact?
27
• Make each line of the acceptance criteria
stand on its own
• Use active voice, not passive
• Have a single action trigger the expected
behavior (WHEN condition)
• Use parameters to allow concise
expression of examples
Guidelines
28
Exercise #1
Okay Example:
GIVEN an active user with valid credentials and that user has previously
submitted a ticket
WHEN that user finds a previously submitted ticket in an active status
THEN that user has the option of sending a message
Better Example:
GIVEN I am an active user with valid credentials
AND I previously submitted a ticket
AND the ticket is in an active status
WHEN I find a previously submitted ticket
THEN I should see an option for sending a message
Exercise #1, Scenario 1
30
Okay Example:
GIVEN I am an unregistered user
WHEN I enter username “jsmith” and password “secret123!”
THEN I see a profile successfully created message on the Welcome page
Better Example:
GIVEN I am an unregistered user
WHEN I successfully create a user profile
THEN I see a profile successfully created message on the Welcome page
Exercise #1, Scenario 2
31
Okay Example:
GIVEN I add three items costing $5.25 each to my shopping cart
AND I am shipping to VA
WHEN I view my shopping cart
THEN I see an order total of $20.69
Better Example:
GIVEN I add these items to my shopping cart:
| item_id | quantity | price
| 10000 | 2 | $2.49
| 29901 | 1 | $11.98
AND I am shipping to “<state>”
WHEN I view my shopping cart
THEN I see an order total of “<order_total>”
Exercise #1, Scenario 3
32
Exercise #2
Exercise #2
34
Product Name: CoffeeSpot
Mobile Application
Vision: The CoffeeSpot application allows customers to request
a spot to decrease wait time at a specified location. It allows
administrators to provide an alternate work location to the
remote workforce while minimizing unclaimed inventory.
Personas Big Picture Product Details
Joe Cupps
(Administrator)
Indicate
Available
Spots
Show
Available
Spots
Track Usage
Details
Claim Spot
View Usage
Details
Release
Spot
Lisa Java
(Customer)
To automate or not to
automate…
ACCEPTANCE TESTS
End-to-end system tests
INTEGRATION TESTS
Tests that verify integrated
components or subsystems
UNIT TESTS
Tests that verify components in isolation
Test Pyramid
36
Exploratory
Testing
Adapted from: https://www.ibm.com/developerworks/library/j-aopwork11/
• Consistency makes it easier to automate
• BAs need to continue to own acceptance
tests
• Involve developers early
• Use a Gherkin editor
• Automate an end-to-end user journey
Tips for Automation
37
• Automated acceptance tests does not mean no
manual testing
• Business users find G-W-T difficult to
understand
• No all Product Owners see the value in
automation
• Factor in reduced team capacity due to
instrumenting the tests
• Automate by user journeys
• Provide BAs with a tool for maintaining
Lessons Learned
38
Books
• Gojko Adzic, Specification by Example: How Successful Teams
Deliver the Right Software
• Mario Cardinal, Executable Specifications with Scrum: A Practical
Guide to Agile Requirements Discovery
Blogs
• http://ebgconsulting.com/blog
• http://dannorth.net
• http://watirmelon.com/
• http://gojko.net/
Want to learn more?
39
Benefits of Failure:
http://www.ted.com/talks/tim_harford
Optimism Bias:
http://www.ted.com/talks/tali_sharot_the_optimism_bias
Gherkin Syntax:
http://docs.behat.org/guides/1.gherkin.html
http://www.concordion.org/Technique.html
Expert Panel:
http://www.infoq.com/articles/virtual-panel-bdd
More resources
40
• Advanced Certified Scrum Product Owner (CSPO) –
Agile Business Analysis (BA) 3/31/14 9AM - 4/1/14
5PM
– Discount Code: IIBADC
• Certified ScrumMaster (CSM) Training 4/23/14 9AM -
4/24/14 5PM
• Advanced Certified Scrum Product Owner (CSPO)
4/28/14 9AM - 4/29/14 5PM
For more details: http://www.eventbrite.com/o/excella-consulting-
2232953017
Excella Agile Courses
41

Contenu connexe

Tendances

Uncovering Need and Validating Ideas with UserTesting by Marieke McCloskey
Uncovering Need and Validating Ideas with UserTesting by Marieke McCloskeyUncovering Need and Validating Ideas with UserTesting by Marieke McCloskey
Uncovering Need and Validating Ideas with UserTesting by Marieke McCloskeyUserTesting
 
Minimum Viable Product
Minimum Viable ProductMinimum Viable Product
Minimum Viable ProductBernard Leong
 
Lean Better : Basic Lean Principles for Startups
Lean Better : Basic Lean Principles for StartupsLean Better : Basic Lean Principles for Startups
Lean Better : Basic Lean Principles for StartupsUjjwal Trivedi
 
2008 09 06 Eric Ries Haas Columbia Customer Development Engineering
2008 09 06 Eric Ries Haas Columbia Customer Development Engineering2008 09 06 Eric Ries Haas Columbia Customer Development Engineering
2008 09 06 Eric Ries Haas Columbia Customer Development Engineeringguest472f47
 
Boost Your Intelligent Assistants with UX Testing
Boost Your Intelligent Assistants with UX TestingBoost Your Intelligent Assistants with UX Testing
Boost Your Intelligent Assistants with UX TestingApplause
 
Best Practices for Benchmarking the Website User Experience featuring Measuri...
Best Practices for Benchmarking the Website User Experience featuring Measuri...Best Practices for Benchmarking the Website User Experience featuring Measuri...
Best Practices for Benchmarking the Website User Experience featuring Measuri...UserZoom
 
Usability testing - have fun and improve your work
Usability testing - have fun and improve your workUsability testing - have fun and improve your work
Usability testing - have fun and improve your workonthegosystems
 
Tips for involving users in your website design - commercial property markete...
Tips for involving users in your website design - commercial property markete...Tips for involving users in your website design - commercial property markete...
Tips for involving users in your website design - commercial property markete...estatesgazette.com, RBI
 
Minimum Viable Product
Minimum Viable ProductMinimum Viable Product
Minimum Viable ProductEric Ries
 
Clean up the mess with MVP
Clean up the mess with MVPClean up the mess with MVP
Clean up the mess with MVPGena Drahun
 
Guerilla Usability Testing
Guerilla Usability TestingGuerilla Usability Testing
Guerilla Usability TestingAndy Budd
 
Why should I care about the Minimum Viable Product (MVP)
Why should  I care about the Minimum Viable Product  (MVP)Why should  I care about the Minimum Viable Product  (MVP)
Why should I care about the Minimum Viable Product (MVP)Nektarios Sylligardakis
 
Mke agile 032014 Slicing the cake: User Story Decomposition
Mke agile 032014   Slicing the cake: User Story DecompositionMke agile 032014   Slicing the cake: User Story Decomposition
Mke agile 032014 Slicing the cake: User Story DecompositionDave Neuman
 
The Art of the Minimum Viable Product (MVP)
The Art of the Minimum Viable Product (MVP)The Art of the Minimum Viable Product (MVP)
The Art of the Minimum Viable Product (MVP)Movel
 
Empowering Data-Driven Marketers: How UX Research & Usability Testing Can Pos...
Empowering Data-Driven Marketers: How UX Research & Usability Testing Can Pos...Empowering Data-Driven Marketers: How UX Research & Usability Testing Can Pos...
Empowering Data-Driven Marketers: How UX Research & Usability Testing Can Pos...UserZoom
 
User testing methodology
User testing methodologyUser testing methodology
User testing methodologyJames Hatfield
 

Tendances (20)

Uncovering Need and Validating Ideas with UserTesting by Marieke McCloskey
Uncovering Need and Validating Ideas with UserTesting by Marieke McCloskeyUncovering Need and Validating Ideas with UserTesting by Marieke McCloskey
Uncovering Need and Validating Ideas with UserTesting by Marieke McCloskey
 
Minimum Viable Product
Minimum Viable ProductMinimum Viable Product
Minimum Viable Product
 
Lean Better : Basic Lean Principles for Startups
Lean Better : Basic Lean Principles for StartupsLean Better : Basic Lean Principles for Startups
Lean Better : Basic Lean Principles for Startups
 
2008 09 06 Eric Ries Haas Columbia Customer Development Engineering
2008 09 06 Eric Ries Haas Columbia Customer Development Engineering2008 09 06 Eric Ries Haas Columbia Customer Development Engineering
2008 09 06 Eric Ries Haas Columbia Customer Development Engineering
 
Boost Your Intelligent Assistants with UX Testing
Boost Your Intelligent Assistants with UX TestingBoost Your Intelligent Assistants with UX Testing
Boost Your Intelligent Assistants with UX Testing
 
Best Practices for Benchmarking the Website User Experience featuring Measuri...
Best Practices for Benchmarking the Website User Experience featuring Measuri...Best Practices for Benchmarking the Website User Experience featuring Measuri...
Best Practices for Benchmarking the Website User Experience featuring Measuri...
 
Usability testing - have fun and improve your work
Usability testing - have fun and improve your workUsability testing - have fun and improve your work
Usability testing - have fun and improve your work
 
Tips for involving users in your website design - commercial property markete...
Tips for involving users in your website design - commercial property markete...Tips for involving users in your website design - commercial property markete...
Tips for involving users in your website design - commercial property markete...
 
Minimum Viable Product
Minimum Viable ProductMinimum Viable Product
Minimum Viable Product
 
Clean up the mess with MVP
Clean up the mess with MVPClean up the mess with MVP
Clean up the mess with MVP
 
Testing Your MVP
Testing Your MVPTesting Your MVP
Testing Your MVP
 
Building an MVP
Building an MVPBuilding an MVP
Building an MVP
 
Guerilla Usability Testing
Guerilla Usability TestingGuerilla Usability Testing
Guerilla Usability Testing
 
Why should I care about the Minimum Viable Product (MVP)
Why should  I care about the Minimum Viable Product  (MVP)Why should  I care about the Minimum Viable Product  (MVP)
Why should I care about the Minimum Viable Product (MVP)
 
Mke agile 032014 Slicing the cake: User Story Decomposition
Mke agile 032014   Slicing the cake: User Story DecompositionMke agile 032014   Slicing the cake: User Story Decomposition
Mke agile 032014 Slicing the cake: User Story Decomposition
 
The Art of the Minimum Viable Product (MVP)
The Art of the Minimum Viable Product (MVP)The Art of the Minimum Viable Product (MVP)
The Art of the Minimum Viable Product (MVP)
 
Empowering Data-Driven Marketers: How UX Research & Usability Testing Can Pos...
Empowering Data-Driven Marketers: How UX Research & Usability Testing Can Pos...Empowering Data-Driven Marketers: How UX Research & Usability Testing Can Pos...
Empowering Data-Driven Marketers: How UX Research & Usability Testing Can Pos...
 
Website Testing WINS!
Website Testing WINS!Website Testing WINS!
Website Testing WINS!
 
Front-end Culture @ Booking.com
Front-end Culture @ Booking.comFront-end Culture @ Booking.com
Front-end Culture @ Booking.com
 
User testing methodology
User testing methodologyUser testing methodology
User testing methodology
 

En vedette

CHAPTER 6 REQUIREMENTS MODELING: SCENARIO based Model , Class based moddel
CHAPTER 6 REQUIREMENTS MODELING: SCENARIO based Model , Class based moddelCHAPTER 6 REQUIREMENTS MODELING: SCENARIO based Model , Class based moddel
CHAPTER 6 REQUIREMENTS MODELING: SCENARIO based Model , Class based moddelmohamed khalaf alla mohamedain
 
Computer Systems - Input, Process, Output
Computer Systems - Input, Process, OutputComputer Systems - Input, Process, Output
Computer Systems - Input, Process, Outputcorb201
 
Flow oriented modeling
Flow oriented modelingFlow oriented modeling
Flow oriented modelingramyaaswin
 
Modeling System Requirements
Modeling System RequirementsModeling System Requirements
Modeling System RequirementsAsjad Raza
 
Data Flow Diagram
Data Flow DiagramData Flow Diagram
Data Flow Diagramnethisip13
 
Dfd examples
Dfd examplesDfd examples
Dfd examplesMohit
 
Agile Model Developement- Daniel Leroux
Agile Model Developement-  Daniel LerouxAgile Model Developement-  Daniel Leroux
Agile Model Developement- Daniel LerouxRoopa Nadkarni
 
Software design, software engineering
Software design, software engineeringSoftware design, software engineering
Software design, software engineeringRupesh Vaishnav
 
Quality assurance and management, software engineering
Quality assurance and management, software engineeringQuality assurance and management, software engineering
Quality assurance and management, software engineeringRupesh Vaishnav
 
Software QA Fundamentals by Prabhath Darshana
Software QA Fundamentals by Prabhath DarshanaSoftware QA Fundamentals by Prabhath Darshana
Software QA Fundamentals by Prabhath DarshanaShamain Peiris
 
Laws of test automation framework
Laws of test automation frameworkLaws of test automation framework
Laws of test automation frameworkvodqancr
 
Data flow oriented modeling
Data flow oriented modelingData flow oriented modeling
Data flow oriented modelingKavithaGowri
 
Data Flow 1
Data Flow 1Data Flow 1
Data Flow 1MISY
 
Data Flow Diagram and Sequence Diagram
Data Flow Diagram and Sequence DiagramData Flow Diagram and Sequence Diagram
Data Flow Diagram and Sequence DiagramHamna Shahzad
 
Modelling System Requirements: Events & Things
Modelling System Requirements: Events & ThingsModelling System Requirements: Events & Things
Modelling System Requirements: Events & Thingswmomoni
 
Sheet Four - Data Flow Diagram
Sheet Four - Data Flow DiagramSheet Four - Data Flow Diagram
Sheet Four - Data Flow DiagramAmr E. Mohamed
 
Data flow diagram
Data flow diagramData flow diagram
Data flow diagramipoyish29
 

En vedette (20)

CHAPTER 6 REQUIREMENTS MODELING: SCENARIO based Model , Class based moddel
CHAPTER 6 REQUIREMENTS MODELING: SCENARIO based Model , Class based moddelCHAPTER 6 REQUIREMENTS MODELING: SCENARIO based Model , Class based moddel
CHAPTER 6 REQUIREMENTS MODELING: SCENARIO based Model , Class based moddel
 
Computer Systems - Input, Process, Output
Computer Systems - Input, Process, OutputComputer Systems - Input, Process, Output
Computer Systems - Input, Process, Output
 
Flow oriented modeling
Flow oriented modelingFlow oriented modeling
Flow oriented modeling
 
Modeling System Requirements
Modeling System RequirementsModeling System Requirements
Modeling System Requirements
 
Data Flow Diagram
Data Flow DiagramData Flow Diagram
Data Flow Diagram
 
Dfd examples
Dfd examplesDfd examples
Dfd examples
 
Agile Model Developement- Daniel Leroux
Agile Model Developement-  Daniel LerouxAgile Model Developement-  Daniel Leroux
Agile Model Developement- Daniel Leroux
 
Software design, software engineering
Software design, software engineeringSoftware design, software engineering
Software design, software engineering
 
Quality assurance and management, software engineering
Quality assurance and management, software engineeringQuality assurance and management, software engineering
Quality assurance and management, software engineering
 
Software QA Fundamentals by Prabhath Darshana
Software QA Fundamentals by Prabhath DarshanaSoftware QA Fundamentals by Prabhath Darshana
Software QA Fundamentals by Prabhath Darshana
 
Laws of test automation framework
Laws of test automation frameworkLaws of test automation framework
Laws of test automation framework
 
Se 20150507
Se 20150507Se 20150507
Se 20150507
 
AIG Seven QC Tools
AIG Seven QC ToolsAIG Seven QC Tools
AIG Seven QC Tools
 
Data flow oriented modeling
Data flow oriented modelingData flow oriented modeling
Data flow oriented modeling
 
Data flow diagram
Data flow diagramData flow diagram
Data flow diagram
 
Data Flow 1
Data Flow 1Data Flow 1
Data Flow 1
 
Data Flow Diagram and Sequence Diagram
Data Flow Diagram and Sequence DiagramData Flow Diagram and Sequence Diagram
Data Flow Diagram and Sequence Diagram
 
Modelling System Requirements: Events & Things
Modelling System Requirements: Events & ThingsModelling System Requirements: Events & Things
Modelling System Requirements: Events & Things
 
Sheet Four - Data Flow Diagram
Sheet Four - Data Flow DiagramSheet Four - Data Flow Diagram
Sheet Four - Data Flow Diagram
 
Data flow diagram
Data flow diagramData flow diagram
Data flow diagram
 

Similaire à Modeling Requirements Using Examples

​Build the ‘Right’ Regression Suite using Behavior Driven Testing (BDT)
​Build the ‘Right’ Regression Suite using Behavior Driven Testing (BDT)​Build the ‘Right’ Regression Suite using Behavior Driven Testing (BDT)
​Build the ‘Right’ Regression Suite using Behavior Driven Testing (BDT)Thoughtworks
 
Testable Requirements
Testable Requirements Testable Requirements
Testable Requirements Bharti Rupani
 
Using Stories to Test Requirements and Systems
Using Stories to Test Requirements and SystemsUsing Stories to Test Requirements and Systems
Using Stories to Test Requirements and SystemsPaul Gerrard
 
Growing software from examples
Growing software from examplesGrowing software from examples
Growing software from examplesSeb Rose
 
Build the "right" regression suite using Behavior Driven Testing (BDT)
Build the "right" regression suite using Behavior Driven Testing (BDT)Build the "right" regression suite using Behavior Driven Testing (BDT)
Build the "right" regression suite using Behavior Driven Testing (BDT)Anand Bagmar
 
How to Ace Your Product Management Interview by League Senior PM
How to Ace Your Product Management Interview by League Senior PMHow to Ace Your Product Management Interview by League Senior PM
How to Ace Your Product Management Interview by League Senior PMProduct School
 
Building the "right" regression suite using Behavior Driven Testing (BDT)
Building the "right" regression suite using Behavior Driven Testing (BDT)Building the "right" regression suite using Behavior Driven Testing (BDT)
Building the "right" regression suite using Behavior Driven Testing (BDT)Anand Bagmar
 
Writing test cases from user stories and acceptance criteria
Writing test cases from user stories and acceptance criteria Writing test cases from user stories and acceptance criteria
Writing test cases from user stories and acceptance criteria An Nguyen
 
[UserZoom Webinar] The Online Shopping Experience: Benchmarking Four Ecommerc...
[UserZoom Webinar] The Online Shopping Experience: Benchmarking Four Ecommerc...[UserZoom Webinar] The Online Shopping Experience: Benchmarking Four Ecommerc...
[UserZoom Webinar] The Online Shopping Experience: Benchmarking Four Ecommerc...UserZoom
 
B4 u solution_writing test cases from user stories and acceptance criteria
B4 u solution_writing test cases from user stories and acceptance criteriaB4 u solution_writing test cases from user stories and acceptance criteria
B4 u solution_writing test cases from user stories and acceptance criteriab4usolution .
 
Build the Right Regression Suite with Behavior-Driven Testing
Build the Right Regression Suite with Behavior-Driven TestingBuild the Right Regression Suite with Behavior-Driven Testing
Build the Right Regression Suite with Behavior-Driven TestingTechWell
 
Payment Methods Usability Research
Payment Methods Usability ResearchPayment Methods Usability Research
Payment Methods Usability ResearchTim Broadwater
 
Lecture_four-_Requirements_Modeling (1).pptx
Lecture_four-_Requirements_Modeling (1).pptxLecture_four-_Requirements_Modeling (1).pptx
Lecture_four-_Requirements_Modeling (1).pptxGracePeter10
 
The complete guide to BDD + Cucumber Best Practices and Anti-Patterns.
The complete guide to BDD + Cucumber Best Practices and Anti-Patterns.The complete guide to BDD + Cucumber Best Practices and Anti-Patterns.
The complete guide to BDD + Cucumber Best Practices and Anti-Patterns.Test Evolve
 
UK Online Fashion UX Benchmarking slides
UK Online Fashion UX Benchmarking slidesUK Online Fashion UX Benchmarking slides
UK Online Fashion UX Benchmarking slidesarthurmoan
 
Ecommerce shopper research-11.15.17_jb
Ecommerce shopper research-11.15.17_jbEcommerce shopper research-11.15.17_jb
Ecommerce shopper research-11.15.17_jbEye Square
 
Db workshop - art of story splitting and writting
Db  workshop - art of story splitting and writtingDb  workshop - art of story splitting and writting
Db workshop - art of story splitting and writtingPhil van Dulm Consultancy
 

Similaire à Modeling Requirements Using Examples (20)

1501 meetup
1501 meetup1501 meetup
1501 meetup
 
​Build the ‘Right’ Regression Suite using Behavior Driven Testing (BDT)
​Build the ‘Right’ Regression Suite using Behavior Driven Testing (BDT)​Build the ‘Right’ Regression Suite using Behavior Driven Testing (BDT)
​Build the ‘Right’ Regression Suite using Behavior Driven Testing (BDT)
 
Testable requirements
Testable requirementsTestable requirements
Testable requirements
 
Testable Requirements
Testable Requirements Testable Requirements
Testable Requirements
 
Behavior Driven Development
Behavior Driven DevelopmentBehavior Driven Development
Behavior Driven Development
 
Using Stories to Test Requirements and Systems
Using Stories to Test Requirements and SystemsUsing Stories to Test Requirements and Systems
Using Stories to Test Requirements and Systems
 
Growing software from examples
Growing software from examplesGrowing software from examples
Growing software from examples
 
Build the "right" regression suite using Behavior Driven Testing (BDT)
Build the "right" regression suite using Behavior Driven Testing (BDT)Build the "right" regression suite using Behavior Driven Testing (BDT)
Build the "right" regression suite using Behavior Driven Testing (BDT)
 
How to Ace Your Product Management Interview by League Senior PM
How to Ace Your Product Management Interview by League Senior PMHow to Ace Your Product Management Interview by League Senior PM
How to Ace Your Product Management Interview by League Senior PM
 
Building the "right" regression suite using Behavior Driven Testing (BDT)
Building the "right" regression suite using Behavior Driven Testing (BDT)Building the "right" regression suite using Behavior Driven Testing (BDT)
Building the "right" regression suite using Behavior Driven Testing (BDT)
 
Writing test cases from user stories and acceptance criteria
Writing test cases from user stories and acceptance criteria Writing test cases from user stories and acceptance criteria
Writing test cases from user stories and acceptance criteria
 
[UserZoom Webinar] The Online Shopping Experience: Benchmarking Four Ecommerc...
[UserZoom Webinar] The Online Shopping Experience: Benchmarking Four Ecommerc...[UserZoom Webinar] The Online Shopping Experience: Benchmarking Four Ecommerc...
[UserZoom Webinar] The Online Shopping Experience: Benchmarking Four Ecommerc...
 
B4 u solution_writing test cases from user stories and acceptance criteria
B4 u solution_writing test cases from user stories and acceptance criteriaB4 u solution_writing test cases from user stories and acceptance criteria
B4 u solution_writing test cases from user stories and acceptance criteria
 
Build the Right Regression Suite with Behavior-Driven Testing
Build the Right Regression Suite with Behavior-Driven TestingBuild the Right Regression Suite with Behavior-Driven Testing
Build the Right Regression Suite with Behavior-Driven Testing
 
Payment Methods Usability Research
Payment Methods Usability ResearchPayment Methods Usability Research
Payment Methods Usability Research
 
Lecture_four-_Requirements_Modeling (1).pptx
Lecture_four-_Requirements_Modeling (1).pptxLecture_four-_Requirements_Modeling (1).pptx
Lecture_four-_Requirements_Modeling (1).pptx
 
The complete guide to BDD + Cucumber Best Practices and Anti-Patterns.
The complete guide to BDD + Cucumber Best Practices and Anti-Patterns.The complete guide to BDD + Cucumber Best Practices and Anti-Patterns.
The complete guide to BDD + Cucumber Best Practices and Anti-Patterns.
 
UK Online Fashion UX Benchmarking slides
UK Online Fashion UX Benchmarking slidesUK Online Fashion UX Benchmarking slides
UK Online Fashion UX Benchmarking slides
 
Ecommerce shopper research-11.15.17_jb
Ecommerce shopper research-11.15.17_jbEcommerce shopper research-11.15.17_jb
Ecommerce shopper research-11.15.17_jb
 
Db workshop - art of story splitting and writting
Db  workshop - art of story splitting and writtingDb  workshop - art of story splitting and writting
Db workshop - art of story splitting and writting
 

Plus de Excella

DCSUG - What's Really Going On? Observer Worksheet
DCSUG - What's Really Going On? Observer WorksheetDCSUG - What's Really Going On? Observer Worksheet
DCSUG - What's Really Going On? Observer WorksheetExcella
 
DCSUG - We Are The Leaders We Have Been Waiting For by Lyssa Adkins
DCSUG - We Are The Leaders We Have Been Waiting For by Lyssa AdkinsDCSUG - We Are The Leaders We Have Been Waiting For by Lyssa Adkins
DCSUG - We Are The Leaders We Have Been Waiting For by Lyssa AdkinsExcella
 
DCSUG - Servant Leadership Handout
DCSUG - Servant Leadership HandoutDCSUG - Servant Leadership Handout
DCSUG - Servant Leadership HandoutExcella
 
DCSUG - Servant Leadership
DCSUG - Servant LeadershipDCSUG - Servant Leadership
DCSUG - Servant LeadershipExcella
 
DCSUG - Applying Analysis in an Agile World
DCSUG - Applying Analysis in an Agile WorldDCSUG - Applying Analysis in an Agile World
DCSUG - Applying Analysis in an Agile WorldExcella
 
DCSUG - The Art and Practice of the Agile Leader
DCSUG - The Art and Practice of the Agile LeaderDCSUG - The Art and Practice of the Agile Leader
DCSUG - The Art and Practice of the Agile LeaderExcella
 
DCSUG - Finding Lean in Agile
DCSUG - Finding Lean in AgileDCSUG - Finding Lean in Agile
DCSUG - Finding Lean in AgileExcella
 
DCSUG - Impact Mapping
DCSUG - Impact MappingDCSUG - Impact Mapping
DCSUG - Impact MappingExcella
 
DCSUG - Happiness: A Key Component of Agile
DCSUG - Happiness: A Key Component of AgileDCSUG - Happiness: A Key Component of Agile
DCSUG - Happiness: A Key Component of AgileExcella
 
The Awkward Teenager of Testing
The Awkward Teenager of TestingThe Awkward Teenager of Testing
The Awkward Teenager of TestingExcella
 
Let's Sharpen Your Agile Ax, It's Story Splitting Time
Let's Sharpen Your Agile Ax, It's Story Splitting TimeLet's Sharpen Your Agile Ax, It's Story Splitting Time
Let's Sharpen Your Agile Ax, It's Story Splitting TimeExcella
 
Managing for Happiness by Jurgen Appelo at DCSUG on 8/9/2016
Managing for Happiness by Jurgen Appelo at DCSUG on 8/9/2016Managing for Happiness by Jurgen Appelo at DCSUG on 8/9/2016
Managing for Happiness by Jurgen Appelo at DCSUG on 8/9/2016Excella
 
The 7 Secrets of Highly Effective Retrospectives (DCSUG)
The 7 Secrets of Highly Effective Retrospectives (DCSUG)The 7 Secrets of Highly Effective Retrospectives (DCSUG)
The 7 Secrets of Highly Effective Retrospectives (DCSUG)Excella
 
Get Your Productivity Game On!!
Get Your Productivity Game On!!Get Your Productivity Game On!!
Get Your Productivity Game On!!Excella
 
How to Structure Multi Team Organizations
How to Structure Multi Team OrganizationsHow to Structure Multi Team Organizations
How to Structure Multi Team OrganizationsExcella
 
Tactics to Kickstart Your Journey Toward DevOps
Tactics to Kickstart Your Journey Toward DevOpsTactics to Kickstart Your Journey Toward DevOps
Tactics to Kickstart Your Journey Toward DevOpsExcella
 
Intro to Mocking - DjangoCon 2015
Intro to Mocking - DjangoCon 2015Intro to Mocking - DjangoCon 2015
Intro to Mocking - DjangoCon 2015Excella
 
Tactics to Kickstart Your Journey Toward Continuous Delivery
Tactics to Kickstart Your Journey Toward Continuous DeliveryTactics to Kickstart Your Journey Toward Continuous Delivery
Tactics to Kickstart Your Journey Toward Continuous DeliveryExcella
 
Using ansible vault to protect your secrets
Using ansible vault to protect your secretsUsing ansible vault to protect your secrets
Using ansible vault to protect your secretsExcella
 
Using Lean Thinking to Increase the Value of Agile
Using Lean Thinking to Increase the Value of AgileUsing Lean Thinking to Increase the Value of Agile
Using Lean Thinking to Increase the Value of AgileExcella
 

Plus de Excella (20)

DCSUG - What's Really Going On? Observer Worksheet
DCSUG - What's Really Going On? Observer WorksheetDCSUG - What's Really Going On? Observer Worksheet
DCSUG - What's Really Going On? Observer Worksheet
 
DCSUG - We Are The Leaders We Have Been Waiting For by Lyssa Adkins
DCSUG - We Are The Leaders We Have Been Waiting For by Lyssa AdkinsDCSUG - We Are The Leaders We Have Been Waiting For by Lyssa Adkins
DCSUG - We Are The Leaders We Have Been Waiting For by Lyssa Adkins
 
DCSUG - Servant Leadership Handout
DCSUG - Servant Leadership HandoutDCSUG - Servant Leadership Handout
DCSUG - Servant Leadership Handout
 
DCSUG - Servant Leadership
DCSUG - Servant LeadershipDCSUG - Servant Leadership
DCSUG - Servant Leadership
 
DCSUG - Applying Analysis in an Agile World
DCSUG - Applying Analysis in an Agile WorldDCSUG - Applying Analysis in an Agile World
DCSUG - Applying Analysis in an Agile World
 
DCSUG - The Art and Practice of the Agile Leader
DCSUG - The Art and Practice of the Agile LeaderDCSUG - The Art and Practice of the Agile Leader
DCSUG - The Art and Practice of the Agile Leader
 
DCSUG - Finding Lean in Agile
DCSUG - Finding Lean in AgileDCSUG - Finding Lean in Agile
DCSUG - Finding Lean in Agile
 
DCSUG - Impact Mapping
DCSUG - Impact MappingDCSUG - Impact Mapping
DCSUG - Impact Mapping
 
DCSUG - Happiness: A Key Component of Agile
DCSUG - Happiness: A Key Component of AgileDCSUG - Happiness: A Key Component of Agile
DCSUG - Happiness: A Key Component of Agile
 
The Awkward Teenager of Testing
The Awkward Teenager of TestingThe Awkward Teenager of Testing
The Awkward Teenager of Testing
 
Let's Sharpen Your Agile Ax, It's Story Splitting Time
Let's Sharpen Your Agile Ax, It's Story Splitting TimeLet's Sharpen Your Agile Ax, It's Story Splitting Time
Let's Sharpen Your Agile Ax, It's Story Splitting Time
 
Managing for Happiness by Jurgen Appelo at DCSUG on 8/9/2016
Managing for Happiness by Jurgen Appelo at DCSUG on 8/9/2016Managing for Happiness by Jurgen Appelo at DCSUG on 8/9/2016
Managing for Happiness by Jurgen Appelo at DCSUG on 8/9/2016
 
The 7 Secrets of Highly Effective Retrospectives (DCSUG)
The 7 Secrets of Highly Effective Retrospectives (DCSUG)The 7 Secrets of Highly Effective Retrospectives (DCSUG)
The 7 Secrets of Highly Effective Retrospectives (DCSUG)
 
Get Your Productivity Game On!!
Get Your Productivity Game On!!Get Your Productivity Game On!!
Get Your Productivity Game On!!
 
How to Structure Multi Team Organizations
How to Structure Multi Team OrganizationsHow to Structure Multi Team Organizations
How to Structure Multi Team Organizations
 
Tactics to Kickstart Your Journey Toward DevOps
Tactics to Kickstart Your Journey Toward DevOpsTactics to Kickstart Your Journey Toward DevOps
Tactics to Kickstart Your Journey Toward DevOps
 
Intro to Mocking - DjangoCon 2015
Intro to Mocking - DjangoCon 2015Intro to Mocking - DjangoCon 2015
Intro to Mocking - DjangoCon 2015
 
Tactics to Kickstart Your Journey Toward Continuous Delivery
Tactics to Kickstart Your Journey Toward Continuous DeliveryTactics to Kickstart Your Journey Toward Continuous Delivery
Tactics to Kickstart Your Journey Toward Continuous Delivery
 
Using ansible vault to protect your secrets
Using ansible vault to protect your secretsUsing ansible vault to protect your secrets
Using ansible vault to protect your secrets
 
Using Lean Thinking to Increase the Value of Agile
Using Lean Thinking to Increase the Value of AgileUsing Lean Thinking to Increase the Value of Agile
Using Lean Thinking to Increase the Value of Agile
 

Dernier

FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024The Digital Insurer
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...apidays
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...apidays
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyKhushali Kathiriya
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Jeffrey Haguewood
 
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu SubbuApidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbuapidays
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsNanddeep Nachan
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxRustici Software
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherRemote DBA Services
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...Zilliz
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoffsammart93
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfsudhanshuwaghmare1
 
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...Zilliz
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDropbox
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesrafiqahmad00786416
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processorsdebabhi2
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 

Dernier (20)

FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
 
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu SubbuApidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectors
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptx
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challenges
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 

Modeling Requirements Using Examples

  • 1. Agile Requirements How to Model Lightweight Requirements using Examples 1
  • 2. Speaker Bio 2 • Excella Business Analysis Center of Excellence Lead • CBAP, PMP, PMI-ACP, CSM, CSPO • President of the IIBA DC Chapter • Contact Information: – rebecca.halstead@excella.com – http://excella.com/people/rebecca- halstead.aspx
  • 3. • Specification by Example • Executable Specifications • Scenarios • Automated Acceptance Tests (AAT) • Behavior Driven Development (BDD) • Acceptance Test Driven Development (AATDD) • Gherkin Syntax Today’s Topic 3 Requirements using Examples
  • 5. Building in Quality 5 Plan Collaborate Deliver Build the right thing Build the thing right
  • 9. • Using Examples: – Makes abstract concepts more relatable – Minimizes misinterpretation – Highlights success, alternative and exception cases How do you specify the right amount? 9
  • 11. An Example of Using an Example…
  • 12. Developing examples 12 1. Feature 2. User Story 3. Collaborate 4. Scenarios 5. Examples
  • 13. How it all relates 13
  • 14. Background: You are developing an online ordering website for a local company that grows, harvests and sells botanicals directly to customers. Feature: Calculate customer order Feature 14 1. Feature 2. User Story 3. Collaborate 4. Scenarios 5. Examples
  • 16. User Story: As a customer, I want to review shipping costs in my shopping cart before checking out, so that I can see if I will receive free shipping. User Story 16 1. Feature 2. User Story 3. Collaborate 4. Scenarios 5. Examples
  • 17. Collaborate 17 How do I describe what I want? How do I validate that this work is done? How do I code this feature? What are the details of this feature? 1. Feature 2. User Story 3. Collaborate 4. Scenarios 5. Examples
  • 19. Scenario: Standard Shipping Rate Given I am a customer And my order amount is $49.99 When I view my cart Then I see that shipping costs are $3.99 Scenarios 19 1. Feature 2. User Story 3. Collaborate 4. Scenarios 5. Examples
  • 20. Scenario: Free Shipping Rate Given I am a customer And my order amount is $50.00 When I view my cart Then I see no shipping costs Scenarios 20 1. Feature 2. User Story 3. Collaborate 4. Scenarios 5. Examples
  • 21. Scenario Outline: Shipping Rate Given I am a customer And my order amount is “<order_total>” When I view my cart Then I see the “<shipping_cost>” Scenarios 21 1. Feature 2. User Story 3. Collaborate 4. Scenarios 5. Examples
  • 22. Examples: Examples 22 order_total shipping_cost $12.79 $3.99 $49.99 $3.99 $50.00 $0.00 $250.00 $0.00 1. Feature 2. User Story 3. Collaborate 4. Scenarios 5. Examples
  • 23. Alternate Method 23 Story As a customer, I want to review shipping costs in my shopping cart before checking out, so that I can see if I will receive free shipping. Scenario Customer adds less than $50.00 worth of botanicals to his cart. Business Rule Standard shipping for orders under $50.00 and free for orders over $50.00. GIVEN Precondition(s) Order amount: $49.99 Fixed Data Product Id: 12299 Quantity: 3 WHEN Action View cart Input Data THEN Output Data Shipping cost = $3.99 Postcondition Shipping rate determined Based on examples from: http://ebgconsulting.com
  • 24. Feature: Application Access Scenario: User with valid credentials Imperative (Narrative) GIVEN I am an unauthenticated user AND I am on the login page AND I enter a valid name in the Name field AND I enter the corresponding password in the Password field WHEN I select the Login button THEN I should see the welcome page Imperative Style… 24 Implementation Detail – what if decide to use Token-based authentication or single sign-on? UI Detail – what if the user interface changes and you select name from a drop-down list or select a radio button?
  • 25. Feature: Application Access Scenario: User with valid credentials Declarative (Informative) GIVEN I am an unauthenticated user AND I am on the login page WHEN I submit valid credentials THEN I should see the welcome page Declarative Style… 25
  • 26. Feature: Application Access Scenario: User with valid credentials Side-by-side Comparison 26 Imperative (Narrative) Declarative (Informative) GIVEN I am an unauthenticated user AND I am on the login page AND I enter a valid name in the Name field AND I enter the corresponding password in the Password field WHEN I select the Login button THEN I should see the welcome page GIVEN I am an unauthenticated user AND I am on the login page WHEN I submit valid credentials THEN I should see the welcome page
  • 27. —If the user interface is constantly changing, it is better to use imperative. —Declarative is easier to maintain. —Developers prefer the imperative style. —If a stakeholder is concerned about the user’s interaction experience, use imperative. —Declarative specifies implementation details. Myth or Fact? 27
  • 28. • Make each line of the acceptance criteria stand on its own • Use active voice, not passive • Have a single action trigger the expected behavior (WHEN condition) • Use parameters to allow concise expression of examples Guidelines 28
  • 30. Okay Example: GIVEN an active user with valid credentials and that user has previously submitted a ticket WHEN that user finds a previously submitted ticket in an active status THEN that user has the option of sending a message Better Example: GIVEN I am an active user with valid credentials AND I previously submitted a ticket AND the ticket is in an active status WHEN I find a previously submitted ticket THEN I should see an option for sending a message Exercise #1, Scenario 1 30
  • 31. Okay Example: GIVEN I am an unregistered user WHEN I enter username “jsmith” and password “secret123!” THEN I see a profile successfully created message on the Welcome page Better Example: GIVEN I am an unregistered user WHEN I successfully create a user profile THEN I see a profile successfully created message on the Welcome page Exercise #1, Scenario 2 31
  • 32. Okay Example: GIVEN I add three items costing $5.25 each to my shopping cart AND I am shipping to VA WHEN I view my shopping cart THEN I see an order total of $20.69 Better Example: GIVEN I add these items to my shopping cart: | item_id | quantity | price | 10000 | 2 | $2.49 | 29901 | 1 | $11.98 AND I am shipping to “<state>” WHEN I view my shopping cart THEN I see an order total of “<order_total>” Exercise #1, Scenario 3 32
  • 34. Exercise #2 34 Product Name: CoffeeSpot Mobile Application Vision: The CoffeeSpot application allows customers to request a spot to decrease wait time at a specified location. It allows administrators to provide an alternate work location to the remote workforce while minimizing unclaimed inventory. Personas Big Picture Product Details Joe Cupps (Administrator) Indicate Available Spots Show Available Spots Track Usage Details Claim Spot View Usage Details Release Spot Lisa Java (Customer)
  • 35. To automate or not to automate…
  • 36. ACCEPTANCE TESTS End-to-end system tests INTEGRATION TESTS Tests that verify integrated components or subsystems UNIT TESTS Tests that verify components in isolation Test Pyramid 36 Exploratory Testing Adapted from: https://www.ibm.com/developerworks/library/j-aopwork11/
  • 37. • Consistency makes it easier to automate • BAs need to continue to own acceptance tests • Involve developers early • Use a Gherkin editor • Automate an end-to-end user journey Tips for Automation 37
  • 38. • Automated acceptance tests does not mean no manual testing • Business users find G-W-T difficult to understand • No all Product Owners see the value in automation • Factor in reduced team capacity due to instrumenting the tests • Automate by user journeys • Provide BAs with a tool for maintaining Lessons Learned 38
  • 39. Books • Gojko Adzic, Specification by Example: How Successful Teams Deliver the Right Software • Mario Cardinal, Executable Specifications with Scrum: A Practical Guide to Agile Requirements Discovery Blogs • http://ebgconsulting.com/blog • http://dannorth.net • http://watirmelon.com/ • http://gojko.net/ Want to learn more? 39
  • 40. Benefits of Failure: http://www.ted.com/talks/tim_harford Optimism Bias: http://www.ted.com/talks/tali_sharot_the_optimism_bias Gherkin Syntax: http://docs.behat.org/guides/1.gherkin.html http://www.concordion.org/Technique.html Expert Panel: http://www.infoq.com/articles/virtual-panel-bdd More resources 40
  • 41. • Advanced Certified Scrum Product Owner (CSPO) – Agile Business Analysis (BA) 3/31/14 9AM - 4/1/14 5PM – Discount Code: IIBADC • Certified ScrumMaster (CSM) Training 4/23/14 9AM - 4/24/14 5PM • Advanced Certified Scrum Product Owner (CSPO) 4/28/14 9AM - 4/29/14 5PM For more details: http://www.eventbrite.com/o/excella-consulting- 2232953017 Excella Agile Courses 41