More Related Content Similar to BA and Beyond 19 - Lynda Girvan - User story workshop (20) More from BA and Beyond (20) BA and Beyond 19 - Lynda Girvan - User story workshop1. User Story Workshop
Handout 1
Presented by Lyn Girvan
Grace Dieu Court, Monmouthshire, NP25 4EB
+44 (0)1600 740 215
www.cmcpartnership.com
2. Copyright ©2019, CMC Partnership Consultancy Ltd
User Story Workshop
This half day interactive workshop provides attendees with an understanding
of User Stories within an agile context. During the workshop Lyn will explore
the purpose of user stories, when and how to create them and how to manage
them through to successful working solutions.
You will leave this workshop with a good understanding of how to create,
refine and manage user stories and use them effectively.
What you will learn during this workshop:
• Understand the purpose of user stories
• Understand user roles and their relevance to stories
• Create and write user stories
• Refine user stories using goal decomposition
• How to incorporate non-functionals into backlogs
• Manage stories through backlog management
3. Understand the purpose
of user stories
Purpose of user stories
• Invented by ‘Extreme Programming’ method
• Used to mitigate misunderstandings around
requirements
• Real goal of stories is shared understanding
• Get their name from how they should be used,
not how they are written down
• Development work can be organised using
stories
• Simplicity of stories can lead to problems
• Development teams must communicate with
customer when time comes to implement a story
Copyright ©2019, CMC Partnership Consultancy Ltd
4. Understand user roles and
their relevance to stories
User roles
• What is a user role?
• Types of user role
– User – someone who uses the system
– Purchaser – someone placing constraints
(lawyers, auditors, policy, technical architects)
– System – interfacing with the system
• Persona
• Extreme characters
Copyright ©2019, CMC Partnership Consultancy Ltd
5. Example user role card
Copyright ©2017, Girvan and Paul, Agile & Business Analysis, BCS
Personas
Copyright ©2017, Girvan and Paul, Agile & Business Analysis, BCS
6. Misuse character
The abuser
A character who purposefully
seeks to sabotage the system
Copyright ©2017, Girvan and Paul, Agile & Business Analysis, BCS
Exercise 1
Tasks What
Task 1 Identify user roles for the HolidaysToGo
scenario
Task 2 Create two personas for the new customer
markets HolidaysToGo want to extend into
You will find a short scenario at the back of your handouts called
‘HolidaysToGo’.
Read through the scenario, then carry out the following tasks:
Copyright ©2019, CMC Partnership Consultancy Ltd
7. Create and write user
stories
What is a user story?
• Short description of user need or feature.
• Placeholder for a conversation
• Written by, or for, end users
• Main instrument to influence development
of software
• Not a formal requirement description as:
– Do not describe detail
– Do not form part of formal sign-off
– Do not describe non-functionals
Copyright ©2019, CMC Partnership Consultancy Ltd
8. The 3 Cs
Card
Conversation
Confirmation
A placeholder for a conversation
Copyright ©2019, CMC Partnership Consultancy Ltd
Writing user stories
Independent
Negotiable
Valuable to users or customers
Estimatable
Small
Testable
Copyright ©2019, CMC Partnership Consultancy Ltd
9. User story format
Copyright ©2017, Girvan and Paul, Agile & Business Analysis, BCS
Hierarchy of user stories
• Themes
– Group of related stories
– Similar to needs or goals
• Epics
– Large user story
• Stories
– Way of describing functionality that is useful to
the user
Copyright ©2019, CMC Partnership Consultancy Ltd
10. Exercise 2
Task Based on the scenario, and using a little bit of imagination,
identify as many stories as you can for the Customer user
role.
Feel free to split the role into categories (such as over 50s
customer, student customer, etc.).
Copyright ©2019, CMC Partnership Consultancy Ltd
Refine user stories using
goal decomposition
11. Why decompose stories
“When user stories are used as realization/backlog
items, it is important to find a suitable size for
them. When developer(s) must realize big stories
the development progress is poorly visible and it
could happen that the developers lose focus and
get stuck in complexity.”
Quote from ‘Extreme Programming Explained: Embrace Change’
Copyright © Beck, Kent. Extreme Programming Explained: Embrace Change.
2nd edition, Addison-Wesley Professional, 2004
Decomposing stories
As an entrepreneur
I want to open a
profitable café so
that I can make
money
Think how you
might decompose
this story?
Copyright ©2017 Girvan and Paul, Agile & Business Analysis, BCS
12. Technical v business decomposition
Technical decomposition Business value decomposition
Copyright ©2017 Girvan and Paul, Agile & Business Analysis, BCS
Goal decomposition
Copyright ©2017 Girvan and Paul, Agile & Business Analysis, BCS
13. Decomposing stories
• Decompose goals not functions
Goal decomposition v Functional decomposition
Copyright ©2017 Girvan and Paul, Agile & Business Analysis, BCS
Goal decomposition
Serve hot
drinks
Espresso
machine
Instant
coffee
Filter
coffee
Bulk tea
brewer
Tea pot
Tea
leaves
Tea bags
Serve
coffee
Serve hot
chocolate
Serve tea
Instant with
hot water
Instant with
hot milk
Serve hot
drinks
Hot
chocolate
Tea
Add hot
water
Coffee
Boil
kettle
Fill kettle
Prepare
cups
Boil
water
Add
ingredients
to cups
Obtain
ingredients
Stir and
serve
Milk and
sugar
Slicing user stories
• Compound story
– Epic that contains smaller stories
– E.g. customer can search for course
• Search using course code, search field, navigation
buttons?
• Complex story
– Story where there is uncertainty
– E.g. customer can pay for course using a
Purchase Order on the website
• Investigate paying using a PO over the website
• A customer can pay using a PO
Copyright ©2019, CMC Partnership Consultancy Ltd
14. Splitting stories by goal
• As a … corporate customer
• I want to… book a hotel room
• So I can… work in another location
Which part of the story is the goal?
Copyright ©2019, CMC Partnership Consultancy Ltd
• As a … corporate customer
• I want to… book a hotel room
• So I can… work in another location
• Book by phone, email, through website
• Book one hotel room, multiple rooms,
different dates, book rooms for multiple
people
Splitting stories by goal
Copyright ©2019, CMC Partnership Consultancy Ltd
15. Stories deliver business value
Copyright ©1998-2016 Delta Matrix. All Rights Reserved.
Patterns for splitting stories
Type of story Story Ways to split
Task or step As a web maintainer I want to post a
new course description to the
company website
• As a formatted pdf
• As a reviewed word document
Business rules As a customer I want to book a
course
• One course
• Multiple courses
• For multiple delegates
Data sets As a marketing manager I want to
review management information
(MI) so I can see marketing results
• Sales MI for past week
• Website hits month by month
• Product A sales Q1
Data/content
entry
As a web controller I want to create
news and events
• Using existing content
• Uploading formatted pdfs
• By creating HTML pages
CRUD As a customer I want to manage my
bookings
• Make a booking
• Change a booking
• Cancel a booking
• Check course bookings
Copyright ©2019, CMC Partnership Consultancy Ltd
16. Exercise 3
Copyright ©2019, CMC Partnership Consultancy Ltd
Task Decompose the following story:
‘As a backpacker I want to book a holiday travelling around
Europe so that I can see lots of Europe’
Prioritising stories
Copyright ©2017 Girvan and Paul, Agile & Business Analysis, BCS
18. What are non-functional
requirements?
Functional
requirement
Functional
requirement
What the system
needs to do
• Functions
• Behaviour
Non-functional
requirement
Non-functional
requirement
How well it does
it
• Soft goals
• Global qualities
Copyright ©2019, CMC Partnership Consultancy Ltd
Categories of NFRs
• Persistent
• Set constraints/limits
• Need to be known upfront
Global
• Operational
• Make functionality better
• Evolve over time
AssociatedAssociated
Copyright ©2019, CMC Partnership Consultancy Ltd
19. Global (persistent) NFRs
• Need to be known up-front
NFR Document
DOD
Add to
‘Definition
of Done’
Copyright ©2019, CMC Partnership Consultancy Ltd
Global NFR
Associated NFRs
Value stories
End-userEnd-user
Associated
NFR
Associated
NFR
End-userEnd-user
• Need to be known just in time
• Add to confirmation
• Include in BDD scenarios
• Add to definition of done
Copyright ©2019, CMC Partnership Consultancy Ltd
20. Testing for value
• The sum of the parts does not always equal
the whole
• Test for
values
• Use BDD /
confirmation
tests
Copyright ©2019, CMC Partnership Consultancy Ltd
Manage stories through
backlog management
21. The backlog
• Log work items
• Use consistent format:
– Requirement catalogue
– User stories
– Features
• Discuss work items
• Prioritise work items
• Decompose large items
• Refine backlog
Copyright ©2012 Kenneth S Rubin and Innolution, LLC. All Rights Reserved.
Managing the backlog
New backlog item
Refined/split
High
priority
Lower
priority
Copyright ©2019, CMC Partnership Consultancy Ltd
23. © CMC Partnership Consultancy Ltd
Goal alignment
Copyright ©2017 Girvan and Paul, Agile & Business Analysis, BCS
Story map
Copyright ©2017 Girvan and Paul, Agile & Business Analysis, BCS
24. Copyright ©2019, CMC Partnership Consultancy Ltd
HolidaysToGo Scenario
HolidaysToGo is a travel company selling holiday packages to UK mature
travellers wanting child free holidays across Europe at an affordable price.
Customers
To date their customer base has been focused on mature customers age 50+
who often want to travel out of school holiday timeframes. Feedback has
suggested that some of their customers wish to go on more adventurous
holidays, including cycling, climbing, sailing, etc.
Based on feedback, HolidaysToGo is currently looking to expand their customer
offering and include more adventurous holidays, including backpacking. They
think this could apply to a younger clientele, and so are looking to extend their
age demographic to appeal to and attract younger customers as well as the
over 50s.
Partners
HolidaysToGo have built up good relationships with airlines, hotels and resorts,
transport companies, ferries and insurance companies in order to offer their
current packages. They will need to extend their partners to include lower cost
accommodation, such as Youth Hostel Association (YHA) and comfortable
budget accommodation, as well as bus and rail services and organised activities
in order to appeal to the new market.
Advertising
HolidaysToGo have a web site but do not currently make bookings through
their website. Instead their sales assistants take bookings over the phone as
this has appealed to their current clients to date. They invest quite a lot of
money in advertising their services through other websites, re-sellers and
magazines targeting customers who are 50+. They will need to extend their
marketing if they are to attract a wider clientele.