ace london slicing for products and stories
DESCRIPTION
An overview of Product Slicing Approaches and Story Slicing approaches. This presentation led a work shop session, for 10 teams, each team had a small case study to apply the techniques to.TRANSCRIPT
© Copyright 2010 – 2014 Sprint Agile Ltd All rights reserved.
Matt Roadnight
Jan 2014
Agile Coaching Exchange
Slicing
2 . © Copyright 2010 - 2014 Sprint Agile Ltd All rights reserved.
Thanks …..
– Stuart Young – Illustration Station
– Peter Marshall – Equal Experts
– Antony Marcano - RiverGlide
3 . © Copyright 2010 - 2014 Sprint Agile Ltd All rights reserved.
Slicing
Product Slicing
Story Slicing
4 . © Copyright 2010 - 2014 Sprint Agile Ltd All rights reserved.
Approach
5 . © Copyright 2010 - 2014 Sprint Agile Ltd All rights reserved.
Product Slicing
6 . © Copyright 2010 - 2014 Sprint Agile Ltd All rights reserved.
Principles of Agile Product Delivery
In your groups discuss
some principles for
Agile Product Delivery
e.g.
Potentially Shippable
Capture on Post Its – One per post it
7 . © Copyright 2010 - 2014 Sprint Agile Ltd All rights reserved.
Product Slice – A definition
In your groups discuss challenges to applying principles for
Agile Product Delivery when defining Product Slices
Capture these on post-its … one per post-it
A coherent Product release
that can be made available in
a handful of iterations for
feedback
Product Slicing
8 . © Copyright 2010 - 2014 Sprint Agile Ltd All rights reserved.
9 . © Copyright 2010 - 2014 Sprint Agile Ltd All rights reserved.
Tools to define Product Slices
Jeff Patton
Story Map
Product Slicing
10 . © Copyright 2010 - 2014 Sprint Agile Ltd All rights reserved.
Flat, Linear Backlogs
Flat backlogs, ordered by value…OK for delivery
BUT
What is the big picture ?
What does the system do ?
How do we represent product slices?
Product Slicing
11 . © Copyright 2010 - 2014 Sprint Agile Ltd All rights reserved.
A visual way to view an end to end system Product Slicing
12 . © Copyright 2010 - 2014 Sprint Agile Ltd All rights reserved.
Slicing- Terminology
Sub Tasks,
User Stories
Sub Tasks,
User Stories
User Stories
User Tasks
User Stories
User Tasks
Sub Tasks,
User Stories
Epics Feature Theme User
Activities
Release Goal
User Goal
User Journey
Capability
Potentially Shippable Increment
Product Slicing
Sources:
User Stories Applied Mike Cohn
Software by Numbers Denne and Cleland-Huang
Agile Software Requirements Dean Leffingwell
Agile Experience Design Ratcliffe, Lindsay and McNeill
Story Map Articles Jeff Patton
13 . © Copyright 2010 - 2014 Sprint Agile Ltd All rights reserved.
User Story Map
Feature
Story Story Story
Story
Story Story
Story Story Story Story
Story
Story Story Story
Story
Story
Story
Story Story
Story
Story
Feature Feature Feature
Release
Goal
Release
Goal
Journey through the system
Product Slicing
14 . © Copyright 2010 - 2014 Sprint Agile Ltd All rights reserved.
Mi-Card
Mi-Card
Product Slicing
15 . © Copyright 2010 - 2014 Sprint Agile Ltd All rights reserved.
Exercise – Create a Story Map
Open Envelope #1 and lay out tasks and features.
Order the tasks by value against the customer goal
Product Slicing
16 . © Copyright 2010 - 2014 Sprint Agile Ltd All rights reserved.
Story
Story
Story
Story
Story
Story
Story
Story
Story
Story
Story
Story
Story
Story
Story
Story
Story
Release
Goal
Release
Goal
Linear Product Backlog
Prioritised &
Ordered
Product Slicing
17 . © Copyright 2010 - 2014 Sprint Agile Ltd All rights reserved.
Exercise
Move cards out of the Story Map and Create a linear Product Backlog
Put in some cut offs for releases
Product Slicing
18 . © Copyright 2010 - 2014 Sprint Agile Ltd All rights reserved.
Product Backlog Refinement
Story Map User Tasks
Release Goals
Journeys
Linear Backlog User Stories
Backlog
Refinement /
Grooming /
Ready
Product Slicing
19 . © Copyright 2010 - 2014 Sprint Agile Ltd All rights reserved.
20 . © Copyright 2010 - 2014 Sprint Agile Ltd All rights reserved.
Exercise
Refer back to the Agile Principles for Agile Product Delivery and the challenges in applying those principles
Discuss how Story Maps could help address those challenges, and any other benefits from using Story Maps
Product Slicing
21 . © Copyright 2010 - 2014 Sprint Agile Ltd All rights reserved.
Story Slicing
22 . © Copyright 2010 - 2014 Sprint Agile Ltd All rights reserved.
Discuss Agile Principles for working in an iteration or to a cadence
e.g. cross functional team
Story Slicing
23 . © Copyright 2010 - 2014 Sprint Agile Ltd All rights reserved.
Story – A definition
In your groups discuss challenges to applying principles to working in
an iteration when creating stories that are “Ready” to create a product
increment from. Capture on Post-Its – one per post it.
A Story that is ready to create a product increment from …..
“…understandable to customers and developers, testable, valuable to
the customer and small enough so that the programmers can build
half a dozen in an iteration.”
Kent Beck, 2001
Story Slicing
User stories are short, simple description of a
feature told from the perspective of the person
who desires the new capability, usually a user or
customer of the system. They typically follow a
simple template:
As a <type of user>, I want <some goal> so that
<some reason Source : Mike Cohn, Mountain Goat Software
24 . © Copyright 2010 - 2014 Sprint Agile Ltd All rights reserved.
Story Slicing
25 . © Copyright 2010 - 2014 Sprint Agile Ltd All rights reserved.
Your Linier Backlog
You will probably have something like ….
Lets assume that the teams are working through the first goal … and
you need to work on :
“Find out about specific transactions on one of my Mi-Cards”
Story Slicing
26 . © Copyright 2010 - 2014 Sprint Agile Ltd All rights reserved.
Take the tasks and work them up a bit …
Stuff that may happen ….
Initial refinement – Get out an initial sketch
– Identify further tasks
Further refinement – Generate some stories for the user tasks
Stories provide more focus than the tasks
Principles are generally well understood
Encourages use of acceptance criteria
Work through based on value / prioritisation (Linier Backlog)
Story Slicing
27 . © Copyright 2010 - 2014 Sprint Agile Ltd All rights reserved.
Exercise - Initial Refinement
Open envelope #2 ….
Have a look at the design sketch and additional tasks, have a chat, can you see where the tasks map to the UI design?
Lay out your cards in priority order, against your goal
Have a think about some user stories that could be formed from the tasks
Story
Story
Story
Story
Story
Release
Goal
Story Slicing
28 . © Copyright 2010 - 2014 Sprint Agile Ltd All rights reserved.
More refinement … translating to stories
Open Envelope #3
Place your user stories next to the appropriate card
Look at the acceptance criteria on the back of “Card Transactions – View a list of Transactions”
Story Slicing
29 . © Copyright 2010 - 2014 Sprint Agile Ltd All rights reserved.
All agree we are doing the “View a list of transactions “ first …
Most people get here OK, but not many people slice further ….
Assume it’s too big for a sprint, need to turn it around in 2-3 days
Story Slicing
30 . © Copyright 2010 - 2014 Sprint Agile Ltd All rights reserved.
Product owner
Too big for a sprint Don’t slice
‘horizontally’
Vertical slicing enables
PO to validate and
feedback
“Slicing” User Stories that are too big Story Slicing
31 . © Copyright 2010 - 2014 Sprint Agile Ltd All rights reserved.
Slicing Stories
Break them down into vertical slices of Functionality e.g.
– Sunshine Path
– Layer on exceptions after, and one at a time
Prioritise for business value, but also ensure that you allow the team time to produce backlog items that are Ready for Sprint Planning
Front End
Middle
Back End
Product Backlog
Item Slices
Story Slicing
32 . © Copyright 2010 - 2014 Sprint Agile Ltd All rights reserved.
Tool : Some approaches for Slicing Stories
Approach Description
Simplicity Do the simplest thing you could possibly work first and get it working end to end. You
have always got something to demonstrate. If that’s still too big then .....
By User Try focussing on a subset of users or a single user, start with the most valuable.
Process Pick the “Happy Path” first, the path that is taken the majority of the time. Add the
edge cases and exceptions as you go, be prepared to look at alternatives if you run
out of time or budget.
Data Set Limit the data set that you apply the functionality to, add others as you build and learn
from the first.
Input/ Output
Thinning
Can you simplify the input or output – remove fields or use a command line or
“rougher“ UI
Acceptance
Criteria
Take out some of your acceptance criteria and out them in another story
Architectural Defer Performance (but not for too long), defer internationalisation, stub out
interfaces or hard code elements.
Story Slicing
A summary of a number of approaches from these sources like …
Rachel Davies – Agile Coaching Blog
Bill Wake – XP 123 Article - 20 ways to split stories
Gottesdeiner & Gorman – Slicing Requirements for Agile Success Article
33 . © Copyright 2010 - 2014 Sprint Agile Ltd All rights reserved.
Tool : Slicing Grid
Architectural
Story Slicing
34 . © Copyright 2010 - 2014 Sprint Agile Ltd All rights reserved.
Slicing Grid - Example
Data Set
Data Set
Input / Output Thinning
Acceptance Criteria
&
Simplicity
Input / Output Thinning
Architectural
Story Slicing
35 . © Copyright 2010 - 2014 Sprint Agile Ltd All rights reserved.
Exercise- Envelope #4
Role Playing : Pick one of 4 Specialist roles
– Development, UX, Business, Test
– Each of you will have some additional information that you will need to collaborate on to get the full picture
USE the Systems View !!
Create a Slicing grid
Circle on your slicing Grid the simplest slice and then write a story for it
– NB – balance the detail between the front and back of the card
Story Slicing
36 . © Copyright 2010 - 2014 Sprint Agile Ltd All rights reserved.
Slicing Grid - Sample Output from Exercise (Top of Grid)
37 . © Copyright 2010 - 2014 Sprint Agile Ltd All rights reserved.
Slicing Grid - Sample Output from Exercise (Bottom of Grid)
38 . © Copyright 2010 - 2014 Sprint Agile Ltd All rights reserved.
Story Slicing
39 . © Copyright 2010 - 2014 Sprint Agile Ltd All rights reserved.
Exercise
Refer back to the Principles for working in an iteration and the challenges in applying those principles
Discuss how Slicing Approaches and the Slicing Grid could help address those challenges, and any other benefits from using these tools
Story Slicing
40 . © Copyright 2010 - 2014 Sprint Agile Ltd All rights reserved.
Slicing Wrap Up
Product Slicing
Story Slicing
41 . © Copyright 2010 - 2014 Sprint Agile Ltd All rights reserved.