let's sharpen your agile ax ... it's story splitting time

47
www.excella.com Let’s Sharpen Your Agile Ax: It’s Story Splitting Time Brian Sjoberg (@onek2go) 10/24/2016

Upload: brian-sjoberg

Post on 14-Apr-2017

237 views

Category:

Business


0 download

TRANSCRIPT

www.excella.com

Let’s Sharpen Your Agile Ax: It’s Story

Splitting TimeBrian Sjoberg (@onek2go)10/24/2016

www.excella.com

• Agile/Lean Coach at Excella• Team and Organizational levels• DC Scrum User Group

Introduction

Credit; Jackson Sjoberg

Presenter
Presentation Notes
Help partner with individuals, teams and organizations to steamroll impediments to help them build amazing products. Magical key Drive it home at slower than walking pace. Studying roommate thought a train was coming through the house and came out to see this. Metaphor for professional life. Smoothing the road for individuals, teams and organizations. Agile Coach at Excella Focus on Org Transform DC Scrum User Group

www.excella.com

• User Story• Acceptance Criteria (AC)• Splitting Techniques

Outline

www.excella.com

User Story

4

www.excella.com

• Placeholder to facilitate communication• Represents a customer’s request to the

team that creates a product• Helps prevent misunderstanding• Best option so far

User Story

Presenter
Presentation Notes
A user story is a way in which a customer communicates a request to a team that creates a product (value) for the customer. We wouldn’t use user stories if there weren’t a possibility for misunderstanding. User stories are the best option we have yet learned for communicating requests between customers and teams that act as a placeholder for a conversation to occur at some point in the future

www.excella.com

Create Shared Understanding

I’m glad we all agree.Credit: User Story Mapping

www.excella.com

Create Shared Understanding

Oh!Credit: User Story Mapping

www.excella.com

Create Shared Understanding

Ah Ha!Credit: User Story Mapping

www.excella.com

Create Shared Understanding

I’m glad we all agree.Credit: User Story Mapping

Starving Student on a Low Budget

to find and purchase food quickly from my mobile device

I can fill my stomach without spending a lot of money

As a WHO

WHAT

WHY

What is most important? The Who, the What, or the Why?

I want

So that

Need to understand Why the Who wants the What.

Important to know Whom this work is going to benefit.

Presenter
Presentation Notes
We want to keep these short and easy to understand. They should still fit on a 3x5 card. Whom - We can more easily determine the best solution and uncover implicit needs. Why - It greatly informs the final shape the solution will take and can help flag up flaws or unintended side effects in the design. Tell example of PO telling people to build a bridge.

www.excella.com

1. Customer is the person/group requesting value from team building the product

2. Ideally, Product Owner would write the user story for the team but in reality that rarely happens

Notes about the customer

www.excella.com12

Presenter
Presentation Notes
That is about as rare as seeing a gun wielding cat riding a fire breathing unicorn.

www.excella.com

1. Customer is the person/group requesting value from team building the product

2. Ideally, Product Owner would write the user story for the team but in reality that rarely happens

3. Usually, an expert assists the customer and Product Owner in understanding what they really want/need

Notes about the customer

www.excella.com

• Who is the “Who” in a user story?

• Is the “Who” ever the team doing the work, e.g., “As a developer, I want to go do something, so that I can do something else.”?

• Who typically writes the user story?

Review

Presenter
Presentation Notes
PO or BA typically write stories. Ideally it would be the customer.

www.excella.com

Acceptance Criteria

15

www.excella.com16

Presenter
Presentation Notes
Present Tense Indicative Statements, i.e., they are either TRUE or FALSE.

www.excella.com

Correct• There is a button in

the upper left corner of the screen

Present Tense Indicative Statements

Incorrect• Put the button in the

upper left corner• There will be a button

in the upper left corner

• We need a button in the upper left corner

www.excella.com

Today Future

Presenter
Presentation Notes
Generally FALSE before the product has been built

www.excella.com

Presenter
Presentation Notes
Must be TRUE for the user story to be accepted

www.excella.com

Presenter
Presentation Notes
Include Functional and Non-Functional Requirements

www.excella.com

WYSIWYG

Presenter
Presentation Notes
Complete (All I See Is All There Is)

www.excella.com

Etc…TBD

Presenter
Presentation Notes
Un-ambiguous (no etc., TBDs)

www.excella.com

Correct• The drop down

contains each of the days of the week

• The screen loads in 1.5 seconds or less 95% of the time with strong 4G signal

Unambiguous

Incorrect• The drop down

contains Monday, Tuesday, etc…

• Load time is sufficiently fast

www.excella.com

Presenter
Presentation Notes
Give examples of product/feature being used when helpful

www.excella.com

• Present Tense Indicative Statements, i.e., they are either TRUE or FALSE

• Generally FALSE before the product has been built• Must be TRUE for the user story to be accepted• Include Functional and Non-Functional Requirements• Complete (All I See Is All There Is)• Un-ambiguous (no etc., TBDs)• Include Examples when helpful

Acceptance Criteria

Presenter
Presentation Notes
Domain model/glossary – shared understanding of terminology. For example, health care plan could include a Subscriber, Physician, Dependent, Provider, Third Party.

www.excella.com

Splitting Techniques

www.excella.com

Presenter
Presentation Notes
There are several “fault lines” along which you can split most stories These fault lines usually appear pretty clearly in the acceptance criteria (AC), if they are well-formed and complete

www.excella.com

Presenter
Presentation Notes
Helpful to well-form a story before you split it too far Until well-formed, it may appear irreducibly complex when it really isn’t

AC Splitting

AC• I can search by genres• I can search by artist• I can search by song title

As a <new user persona>

I want to search by genres

So that <new more specific benefit>

As a <new user persona>

I want to search by artist

So that <new more specific benefit>

As a <new user persona>

I want to search by song title

So that <new more specific benefit>

Presenter
Presentation Notes
Well defined Acceptance Criteria (AC) for a large story can typically be broken down into smaller stories with own AC. Each item in the AC of the big story can become the new I want portion of the smaller story.

www.excella.com

• Form groups of 2 or 3• Discuss ways to split the story on the

worksheet

Group Exercise

Presenter
Presentation Notes
From SmallerStories.com: As a couple,�we want a romantic dinner for two,�so that we can have a date even more romantic than our first date��Here are some acceptance criteria for this story: There are 2 lit candles and fresh flowers on every table The main course offerings include steak, fish, and at least one vegetarian option There are at least 2 kinds of red wine and 2 kinds of white wine available, as well as a Champagne There is a string quartet or a piano player playing soft instrumental music The waiters are wearing tuxedos If we examine each one of the acceptance criteria, we can ask “Who wants this?” The answer to this question becomes the user in “As a (type of user).” Next, we ask “Why do they want that?” The answer to this question identifies the value in “so that (some value is created).” The body of the acceptance criteria provides the “I want (something)” part, and now we have all three parts for our new user story: �As a (type of user),�I want (something),�so that (some value is created).��Here are user stories that could be derived from the acceptance criteria above.��As a couple on a dinner date,�we want candles on the table,�so that the mood will be more romantic. and As a diner in the restaurant,�I want to be able to choose from steak, fish, and at least one vegetarian option,�so that I can order something that conforms to my dietary and flavor preferences. and As a wine lover�I want at least 2 kinds of red wine, 2 kinds of white wine and 2 Champagnes available,�so that I can choose a wine that will go well with my meal. and As a couple on a dinner date,�I want to hear instrumental music from a string quartet or a piano player,�so that the mood will be more romantic and I can still converse with my date. and As a couple on a romantic dinner date,�I want waiters that are wearing tuxedos,�so that we can feel like we are at a classy restaurant.

Conjunction Splitting

And

Or If

,

Presenter
Presentation Notes
Split on conjunction words (e.g. and, but, if, as well as, etc…)

www.excella.com

• Form groups of 2 or 3• Discuss ways to split one or more of the

stories on the worksheet

Group Exercise

Presenter
Presentation Notes
From SmallerStories.com: As a couple planning a vacation for our family,�We want a resort that has activities appropriate for our teenage children,�as well as couples,�so that we can all enjoy our vacation.��Notice the middle line:�“We want a resort that has activities appropriate for our teenage children, as well as couples ” We can break this into stories for the teenagers, as well as the couple.� �As a teenager on vacation with my family,�I want activities to do with other teens,�so that I can meet other teens to hang out with�instead of being stuck with my lame parents the whole time. and��As a couple traveling with my our family,�We want romantic activities to do as a couple,�so that we can rekindle our love connection.

www.excella.com

• Look for words that could be replaced with more specific terms– Nouns, verbs, adjectives, adverbs can all be

generic– For example

• Vehicle -> Car -> Honda Civic• Animal -> Dog -> Pug

Generic Words Splitting

Credit: SmallerStories.com

www.excella.com

• Form groups of 2 or 3• Discuss ways to split one or more of the

stories on the worksheet

Group Exercise

Presenter
Presentation Notes
From SmallerStories.com: As a couple traveling with our family,�We want romantic activities to do together,�so that we can rekindle our love connection.��In this story, the word “activities” is pretty generic. We can replace “activities” with more specific words such as: couple’s massage, romantic dinner for two, and sunset couple’s cruise. We will get these stories.��As a couple,�we want to get a couple’s massage,�so that we can relax together and reconnect. and As a couple,�we want a romantic dinner for two,�so that we can have a date even more romantic than our first date and As a couple,�we want to go on a couples-only cruise at sunset,�so that we can enjoy romantic moments with no children around

www.excella.com

• Pretend User Story is done• “What happens when the functionality is

used?”• If there is a sequence, then it may be

possible to break into smaller stories

Timeline Analysis Splitting

Credit: SmallerStories.com

www.excella.com

• Form groups of 2 or 3• Discuss ways to split one or more of the

stories on the worksheet

Group Exercise

Presenter
Presentation Notes
From SmallerStories.com: As a diner at the restaurant,�I want a menu that lists each item with a description, price, calories and a picture,�so that I can decide which items I want to order and As a diner at the restaurant,�I want to be offered daily special items,�so that I can try unique dishes that aren’t usually on the menu. and As a diner,�I want some time to consider the daily special and the regular items before ordering,�so that I feel unrushed and happy about my final choice.

www.excella.com

Lettuce Wrap Up

www.excella.com

• User Story• Acceptance Criteria• Splitting Techniques

Lettuce Wrap Up

Presenter
Presentation Notes
Syntax – As a <who>, I want <what> so that <why> Gain a shared understanding Splitting – Conjunction, generic, well-formed acceptance criteria, timeline When are we done?

www.excella.com

• Comments/Feedback– [email protected]– @onek2go– 301-404-0765

Thank You

www.excella.com

Back Up

Presenter
Presentation Notes
So we want to propel a new team into high performing. Running one of these exercises will help a team get off to the right foot.

www.excella.com

• Card – Small and could fit on a 3” x 5” card

• Conversation – It is placeholder for a conversation to occur in the future. Pointer to other documents

• Confirmation – Objectives identified through conversation are placed here.

Three C’s of User Stories

41

Presenter
Presentation Notes
Confirmation is acceptance criteria

www.excella.com

Definition of Ready

www.excella.com

• When the Definition of Ready (DoR) is met, the user story could be developed.

• The Definition of Ready applies to all of a team’s user stories and is more generic, e.g.:– Immediately actionable– Negotiable– Valuable– Estimated

– Sized-appropriatey

– Testable

When Can We Start?

www.excella.com

Product Backlog RefinementDefinition of ReadyI N V E S T

Why is this needed?

www.excella.com

Definition of Done

www.excella.com

• When the Definition of Done (DoD) and Acceptance Criteria (AC) are both met, the user story is DONE.

• The DoD applies to all of a team’s user stories and is more generic

• AC pertain to a specific story

When Are We Finished?

www.excella.com

DoD Example

All Code Checked-in

Unit Tests Passing

Acceptance Criteria Passing

Integration Test Passing

Performance Test Passing

With a Product Back Item (PBI)

With a Sprint

With a ReleaseSecurity

Audit Passing

Regression Test Passing