Post on 23-Jan-2018
AW8 Agile Development Concurrent Session 11/12/2014 1:30 PM
"Crafting Smaller User Stories: Examples and Exercises"
Presented by:
Stephen Frein Comcast
Brought to you by:
340 Corporate Way, Suite 300, Orange Park, FL 32073 888-268-8770 ∙ 904-278-0524 ∙ sqeinfo@sqe.com ∙ www.sqe.com
Stephen Frein is a director of quality assurance at Comcast, where his team is responsible for the quality of various high-profile web properties, including Comcast.com. As an adjunct professor at Drexel University, Stephen delivers soporific lectures on database development and IT management at both the undergraduate and graduate levels. For fifteen years he has been leading development and testing teams—occasionally well—mostly by dint of accidents he cannot reliably replicate. Stephen has presented at previous conferences, including the Better Software Conference, by sneaking into unused rooms and deceiving the unsuspecting. He enjoys polluting the hive mind via frein.com.
Making Stories Smaller
Stephen Frein
Stuff We'll Talk About
• What makes a good user story? • How does that relate to story size? • Ways to make stories smaller • Ways not to make stories smaller
Good Stories
Think Small
Small Stories Get Finished
And Finish Faster
Be the Rabbit!
Smaller = Better Estimates LARGE SMALL Estimation Error
Estimate Actual Error Estimate Actual Error 20 .
8 10 2 5.05 5 0.054.86 6 1.14 2.52 3 0.48 Trial Large Small
8.96 8 0.96 4.68 4 0.68 1 0.72 0.1
10.2 12 1.8 7.14 6 1.14 2 0.7 1.5
9.8 10 0.2 5.6 5 0.6 3 0.4 0.5
4.2 5 0.8 4 2.68 1
3.48 3 0.48 5 0.02 1
4.32 4 0.32 6 4.9 0.1
4.86 6 1.14 7 1.22 0.3
4 5 1 8 0.76 0.5
9 2.6 1.2
41.82 46 6.1 45.85 46 6.69 10 4.38 0.1
4.18 0.15 18.38 6.3
What is Small Enough?
• Context is everything • Many teams consider breaking up anything of
8 or more points (I'd start there)
Getting Smaller
Do Don't
Go through all layers of the architecture.
Vertical slices Pick one layer
Getting Smaller
Do Don't
Don't develop in one iteration and test the next. Cover all tasks Split by "phases"
How to Get Smaller?
• Break point words • Acceptance criteria • Data boundaries • User type
Many others too . . .
Break Point Words
• And
• As well as • But • [Commas] • If
• Or • Then • Using • When • With
For example:
Is the scope on each side independently valuable?
Acceptance Criteria
Distinct acceptance criteria might imply places to split a story.
What if the story only satisfied some criteria?
Exercise 2
Data Boundaries
Can some data elements be handled in one story while others get handled later?
Implement later?
Exercise 3
User Type
Can a story be implemented for one type of user while other types get addressed later?
Exercise 4
Other Techniques
• Operation Type (CRUD) • Remove cross-cutting concerns (security, logging, error handling, performance) • Separate by priority (ROI) • Separate by risk • Hamburger method (break story into tasks and try to simplify tasks)
Exercise 5 – The Final!
Questions?
Thank you!