not your mama's acceptance criteria: a product …...business objective 2b increase sales...

Post on 11-Mar-2020

1 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Not Your Mama's Acceptance Criteria: A Product Owner's Guide to 

Writing Excellent User Stories

Presenter:Candase Hokanson, Senior Project ManagerSeilevel

Not Your Mama’s Acceptance CriteriaA Product Owner’s Guide to Writing Excellent User Stories

July11,2019

Candase Hokanson

OUR

AGENDA

TOPICIntroduction 10 min

Identify user stories 25 min

Elaborate user stories 5 min

Refine user stories 15 min

Q&A 5 min

Requirements Architecture

Business Objective

Feature

User Story

Acceptance Criteria

This Presentation

Feature

Epic

User Story

Acceptance Criteria

Scrum

Portfolio Epic

Solution Epic

Program Epic

Acceptance Criteria

Scaled Agile Framework

Feature

User Story

User Story Lifecycle

Identifying

Elaborating & 

Designing

Refining

Ready

DevelopingTesting (QA)

Testing (UAT/BAT)

Accepting

Using in Production

BA

BAUX

ARCH

PO

Dev

BA

PO

Dev

Dev

PO

Dev

PM

PMBAQA

SME

SME

BA

PO

SME

Biz

ARCH

ARCH

Getting to “Ready”

Identifying Elaborating Refining Ready

Identify & prioritize features

Create process flows

Identify user stories

Facilitate design working sessions

Create mock‐ups

Elicit initial story point estimates

Create more detailed models

Construct acceptance criteria

Hold “storytime” session with team

Update story size as needed

Understand objectives

Prioritize stories

IdentifyIdentify & 

prioritize features

Understand business objectives

Create process flows

Identify User Stories

Business Objectives Model

BusinessProblem 1

BusinessObjective 1

ProductConcept

Feature 1

BusinessProblem 2

BusinessObjective 3

BusinessObjective 2

BusinessProblem 6

BusinessProblem 5

BusinessProblem 4

BusinessProblem 3

Feature 3

Feature 3

BusinessObjective 4

BusinessObjective 6

BusinessObjective 5

Feature 2

Feature 4

Feature 4

Business Objective 2b

Increase salesvolume from

channels otherthan local

booths

Case Study Business Objectives Model

Business Problem 1

Cookie sales have declined5% in the last

two years

Business Objective 1

Increase 2019revenue by

10%

Product ConceptBusiness Problem 2

Customers arenot finding

cookie booths locally

Booth locator

Cookie eStore

Business Objective 2a

Make it easierto find the

local boothsonline

Business Problem 3

Customers don’thave cash/checkso aren’t buying

at booth

IdentifyIdentify & 

prioritize features

Understand business objectives

Create process flows

Identify user stories

Feature Tree

4. Feature

Product Concept

1. Feature 2. Feature 3. Feature

5. Feature 6. Feature

1.1 User Story1.2 User Story1.1.1 Acceptance Criteria

R1 R2 R3

1.4 User Story1.3 User Story

1.5 User Story1.6 User Story

R2 R2 R2

Story Maps

http://www.tacticalprojectmanagement.com/6‐takeaways‐from‐the‐agile‐conference/

Sample Features

1. View cookie menu

Cookie eStore

2. Add cookies to cart 4. Track order status 6. Find a local cookie booth

3. Check out with Order 5. Associate order with local chapter

IdentifyIdentify features

Understand business objectives

Create process flows

Identify User Stories

Using Process Flows in agile

Step 1

Step 1.1

Step 1.1.1

L1 steps typically align to Features

L2 steps typically align to User Stories

L3 steps typically align to Acceptance Criteria

Example L1 Process Flow

1. View cookie menu

Feature: View cookie menu

The ability for shoppers to use the cookie eStore app on their smartphone to view the variety of cookies that are available to choose from.

3. Check out2. Add cookies to cart

Example L2 Process Flow

2.1 Select cookies desired

2.4 Update quantity

2.2 Add cookies to cart

2.3 Update quantity?

2.5 Remove item from cart

Yes2.6 View cart 

totalRemove it

No

IdentifyIdentify features

Understand business objectives

Create process flows

Identify User Stories

Write User Stories

2. Add cookies to cart

2.1 Select cookies desired

2.2 Add cookies to cart

2.3 Update quantity?

2.4 Update quantity

2.5 Remove item from cart

2.6 Calculate & display cart total

User Story: Calculate & display cart total

As a cookie shopper, I want to see a running total of all of the items I’ve added to my cart, so that I can ensure I stay within my budget.

As a <role>, I want to <do something> so I can <achieve some outcome>.

FORMAT

2.1 As an online shopper, I want to see the menu of cookie flavors, so that I may select the ones I want to purchase.

2. 1 As an online shopper, I want to know how many of each flavor are available for purchase, so that I do not try to purchase unavailable cookies.

2.5 As an online shopper, I want to want to be able to remove cookies from my cart so that I do not have to start all over on my order when I add cookies accidentally to the cart.

Sample User Stories

Elaborate & DesignCreate Mock‐upsFacilitate design 

working sessions

What is design?

DefineProcess the findings from your empathy work to form a user point of view for your design.

PrototypeTransform your ideas into a physical form so that you can experience and interact with them.

TestTry out high‐resolution products to refine prototypes, learn more about the user, and refine your original point of view.

IdeateGenerate/explore a wide variety of possible solutions, allowing you to step beyond the obvious and explore a range of ideas.

EmpathizeWork to fully understand the experience of the user for whom you are designing. 

Facilitate Sessions with a User‐Centric Design Focus

Create Mock‐ups

LOGO

Filters

Menu

COOKIE PHOTO

Cart

Add to Cart

QTY: 1

Items: 0 Total: $0.00

RefineConstruct acceptance criteria

Create more detailed models

Example L3 Process Flows

2.2 Add cookies to cart

2.3 Update Quantity

2.4 Remove item from cart

2.2.1 taxable item?

2.2.2 Find local tax rate

2.2.3 Find local product priceYes

2.2.4 Calculate item total price

2.2.5 Add item price to cart total

2.2.6 Display cart total

2.3.1 Calculate price delta

2.3.2 Add price delta to cart total

=Current local price + (if applicable) [Current local price * local tax rate](discounts are already factored into current local price table)

=Quantity delta * item total price

2.3.3 Update displayed total

2.4.1 Identify item (s) total price

2.4.2 Subtract price from cart

=Last item quantity * item total price

2.4.3 Update displayed total

No

Display Action Response tables show how the UI should behave

LOGO

What We Do

Cart

Find A Booth Contact UsVolunteer

COOKIE PHOTO

Filters

CookiesHome Press

Description

COOKIE PHOTO

Description

COOKIE PHOTO

Description

COOKIE PHOTO

Description

COOKIE PHOTO

Description

COOKIE PHOTO

Description

Add to Cart

Items: 0 Total: $0

Participant:Chapter:

QTY: 1Add to CartQTY: 1Add to 

CartQTY: 1

Add to CartQTY: 1 Add to 

CartQTY: 1 Add to CartQTY: 1

RefineConstruct acceptance criteria

Create more detailed models

Given, When, Then overview

Given a user is…‐logged in‐viewing a page‐has already taken an actionThese build from the preceding acceptance criteria

PreconditionWhen they…‐click something‐enter something incorrectly‐take any other actionThese are the user behaviors associated with normal, alternate, AND exception flows

User TriggerThen…‐display something‐notify someone‐process something‐validate somethingThese are how the system responds, and can include several AND clauses, but not OR clauses

Postcondition

AC02Given the menu of products is being displayed onlineWhen an online shopper views the menu itemsThen the menu items must be organized by category.

Example Acceptance CriteriaAC01

Given an online shopper wants to buy cookies onlineWhen an online shopper enters the eStoreThen the online shopper must be able to view the pictures and descriptions of the menu items.

AC03Given the online shopper wants to know more about a productWhen the shopper clicks on the descriptionThen the description page for that product must be displayed.

Ready

Prioritize Stories

MVP:Minimum Viable Product

Sample Product Concept for Cookie Buyer

1. View cookie menu

1.1 Select to view cookie list

2. Add cookies to cart

3. Associate order w/ chapter

4. Check out with cookie order

6. Find a local cookie booth

5. Track order status

1.2 Browse cookies

1.3 Search cookie types

1.5 View cookie details

2.1 Select to add cookie to cart

2.3 Increase cookie quantity

2.4 Decrease cookie quantity

2.5 Remove cookie from cart

2.2 View calculated cookie cart total

1.4 Filter cookies by nutritional content

1.6 Scroll through cookie gallery

3.1 Select city and state

3.2 View list of active city chapters

3.3 Select chapter to link to

3.4 Review list of active chapter members

3.5 Select members to credit order to

4.1 Select to check out

4.2 Populate shipping information

4.3 Populate billing information

4.4 Select shipping speed

4.5 Submit order

4.6 View order confirmation

5.1 View order status

5.2 Receive shipment notification

5.3 Receive shipment delay notifications  

Proposed MVP

6.1 Search booths by city

6.2 Search booths by chapter

6.3 View booth hours

5.4 Receive out of stock notifications

5.5 Update shipping information

5.6 Cancel order

6.4 Explore cookie booth map

6.5 Volunteer to help with local booth

Getting to Ready Overview

• Get the first pass of the backlog set up

Identify

• Understand your users and give the developers context of the overall product

Elaborate

• Add the details needed to the stories to build

Refine

• Prioritize the stories and ensure they are ready to go into a sprint

Ready

Questions?

36

Candase HokansonBusiness Architect, Seilevel

Candase.hokanson@seilevel.com

S www.seilevel.com

@Seilevel

www.facebook.com/Seilevel

Download  6 Requirements Models for Agile Projects Whitepaper https://page.seilevel.com/6‐requirements‐models/

top related