agile requirements - journey of a user story
DESCRIPTION
This talk is an experience report on how we've used agile and lean requirements practices like story mapping, user stories, mockups, scenarios and sprint review feedback, on a real project. It is not theory-based, but rather tells the warts-and-all real story, with a number of photos and screenshots, and detailed discussions of benefits and drawbacks, to give an idea of what it really felt like. YouTube video of the talk: http://www.youtube.com/watch?v=iUIWLNiGYEk Talk description: How do agile requirements work? Where does documentation fit in? For many of us, the transition from the security of upfront analysis and detailed specification documents to ‘doing agile’ and embracing the process of discovery is a terrifying prospect. Agile theories don’t readily address the concern ‘how will we know where we’re going if we don’t start with a Business Requirement Specification?’ In this talk I will take the audience on the journey of a real customer requirement from inception to delivery, seeing how the user stories evolved over time. Starting at the beginning I’ll take you through how the user need was elaborated into features, stories and scenarios to become released software, and how feedback from customer interaction continued to shape it. As we go along, we’ll see how the documentation built itself, and how it compares with the traditional Business Requirement Specification document. With a little bit of theory and a lot of real world experience, we’ll also cover questions like “How can we be sure we’ll cover everything?” and “How do we overcome our uncertainty?”TRANSCRIPT
![Page 1: Agile Requirements - Journey of a User Story](https://reader034.vdocuments.net/reader034/viewer/2022051400/553867644a7959c1688b471d/html5/thumbnails/1.jpg)
Agile Requirements
The documentation that built itself
Cara Turner South AfricaAgile Coach | User Group Chairman |
Facilitation Fanatic
![Page 2: Agile Requirements - Journey of a User Story](https://reader034.vdocuments.net/reader034/viewer/2022051400/553867644a7959c1688b471d/html5/thumbnails/2.jpg)
Who’s working on agile projects?
About You
When do you document requirements?
Waterfall? Something Else?
![Page 3: Agile Requirements - Journey of a User Story](https://reader034.vdocuments.net/reader034/viewer/2022051400/553867644a7959c1688b471d/html5/thumbnails/3.jpg)
“It depends …”
Why do we do Upfront Analysis?
![Page 4: Agile Requirements - Journey of a User Story](https://reader034.vdocuments.net/reader034/viewer/2022051400/553867644a7959c1688b471d/html5/thumbnails/4.jpg)
About me … and requirements
Co-ordination?
FRS BRS
RUP
Late
Expensive
Hard to imagine doing things differently
![Page 5: Agile Requirements - Journey of a User Story](https://reader034.vdocuments.net/reader034/viewer/2022051400/553867644a7959c1688b471d/html5/thumbnails/5.jpg)
Hard to imagine doing things differently
About me … and requirements
PM / Scrumbut Change Requests
Information changes?
![Page 6: Agile Requirements - Journey of a User Story](https://reader034.vdocuments.net/reader034/viewer/2022051400/553867644a7959c1688b471d/html5/thumbnails/6.jpg)
About me … and requirements
Spec?
Scrum & KanbanWhat do usersreally want?
(Less) hard to imagine doing things differently
![Page 7: Agile Requirements - Journey of a User Story](https://reader034.vdocuments.net/reader034/viewer/2022051400/553867644a7959c1688b471d/html5/thumbnails/7.jpg)
The feedback loop
![Page 8: Agile Requirements - Journey of a User Story](https://reader034.vdocuments.net/reader034/viewer/2022051400/553867644a7959c1688b471d/html5/thumbnails/8.jpg)
Agile Requirements Factors
Start with an overview of the whole application
‘Right detail at the right time’
A sprint-and-a-half ahead
Whole team participates, PO owns
![Page 9: Agile Requirements - Journey of a User Story](https://reader034.vdocuments.net/reader034/viewer/2022051400/553867644a7959c1688b471d/html5/thumbnails/9.jpg)
‘Right Detail at the Right Time’
Deliberate Discovery: decreasing uncertainty over time
Real Options: make binding decisions at the right time
What does that mean?
![Page 10: Agile Requirements - Journey of a User Story](https://reader034.vdocuments.net/reader034/viewer/2022051400/553867644a7959c1688b471d/html5/thumbnails/10.jpg)
‘Right Detail at the Right Time’
![Page 11: Agile Requirements - Journey of a User Story](https://reader034.vdocuments.net/reader034/viewer/2022051400/553867644a7959c1688b471d/html5/thumbnails/11.jpg)
Agile Requirements Elements
Story Mapping
Product Backlog
Story Cards, Mockups & Scenarios
‘Doing the Work’
Grooming & Release Planning
![Page 12: Agile Requirements - Journey of a User Story](https://reader034.vdocuments.net/reader034/viewer/2022051400/553867644a7959c1688b471d/html5/thumbnails/12.jpg)
Agile Requirements Artefacts
![Page 13: Agile Requirements - Journey of a User Story](https://reader034.vdocuments.net/reader034/viewer/2022051400/553867644a7959c1688b471d/html5/thumbnails/13.jpg)
So, on to Our Story
![Page 14: Agile Requirements - Journey of a User Story](https://reader034.vdocuments.net/reader034/viewer/2022051400/553867644a7959c1688b471d/html5/thumbnails/14.jpg)
The Problem
We have collections listsOur application for
administering them is out of date
Tech out of date
Much of it is manualCan’t optimize focusWaste of time
‘Edge case bloat’ over 10 yrs
Consumer behaviour has changed
High cost to change
![Page 15: Agile Requirements - Journey of a User Story](https://reader034.vdocuments.net/reader034/viewer/2022051400/553867644a7959c1688b471d/html5/thumbnails/15.jpg)
Changes Required
Much of it is manualAutomate assigning of listsMake it easier to work accounts
‘Edge case bloat’ over 10 yrsChange what appears in the lists
![Page 16: Agile Requirements - Journey of a User Story](https://reader034.vdocuments.net/reader034/viewer/2022051400/553867644a7959c1688b471d/html5/thumbnails/16.jpg)
Team Ingredients
No systems knowledge on the team
Access to ‘Systems Analyst’‘As is’ systems rules
documents
Agile Requirements
Many techniques are new
Where to start?
EXP
PO
D A
Team
MID JNREXP JNRMID
AD
EXP
SM
D A
![Page 17: Agile Requirements - Journey of a User Story](https://reader034.vdocuments.net/reader034/viewer/2022051400/553867644a7959c1688b471d/html5/thumbnails/17.jpg)
At the Whiteboard
![Page 18: Agile Requirements - Journey of a User Story](https://reader034.vdocuments.net/reader034/viewer/2022051400/553867644a7959c1688b471d/html5/thumbnails/18.jpg)
Story Mapping
![Page 19: Agile Requirements - Journey of a User Story](https://reader034.vdocuments.net/reader034/viewer/2022051400/553867644a7959c1688b471d/html5/thumbnails/19.jpg)
The Persona
![Page 20: Agile Requirements - Journey of a User Story](https://reader034.vdocuments.net/reader034/viewer/2022051400/553867644a7959c1688b471d/html5/thumbnails/20.jpg)
The Story Map
Assign Lists Action Accounts
![Page 21: Agile Requirements - Journey of a User Story](https://reader034.vdocuments.net/reader034/viewer/2022051400/553867644a7959c1688b471d/html5/thumbnails/21.jpg)
Acceptance Criteria
![Page 22: Agile Requirements - Journey of a User Story](https://reader034.vdocuments.net/reader034/viewer/2022051400/553867644a7959c1688b471d/html5/thumbnails/22.jpg)
Benefits & Drawbacks
Benefits Everyone saw the
whole picture unfold Gut feel of size Sponsor was heard Key drivers clarified Strong identification
with Persona– Shaped future grooming
Drawbacks Unfamiliar process Not everyone spoke
– New to all the devs– ‘Boss’ in the room
Sense of duplication of the rules “specification” doc
Sequential activities imply workflow
Persona incomplete– no customer persona
![Page 23: Agile Requirements - Journey of a User Story](https://reader034.vdocuments.net/reader034/viewer/2022051400/553867644a7959c1688b471d/html5/thumbnails/23.jpg)
Journey of a User Story – SUGSA 2013
Documentation
Personas Key business drivers Big picture: whole and the parts Verbal culture: tacit knowledge
captured Photos - document experience
On the wiki!
![Page 24: Agile Requirements - Journey of a User Story](https://reader034.vdocuments.net/reader034/viewer/2022051400/553867644a7959c1688b471d/html5/thumbnails/24.jpg)
Backlog Creation
Features Narrative
![Page 25: Agile Requirements - Journey of a User Story](https://reader034.vdocuments.net/reader034/viewer/2022051400/553867644a7959c1688b471d/html5/thumbnails/25.jpg)
Benefits & Drawbacks
Benefits Complete picture Saved in central location
& accessed via wiki Narrative format from
start– “In order to… As a… I
want…” Easy to link to features Easy to add values, then
estimate release size
Drawbacks Google Spreadsheet:
hard to track changes, manual numbering
Some high priority / concern issues created as Features
Acceptance Criteria captured as stories
Tempting to use spreadsheet for grooming
![Page 26: Agile Requirements - Journey of a User Story](https://reader034.vdocuments.net/reader034/viewer/2022051400/553867644a7959c1688b471d/html5/thumbnails/26.jpg)
Journey of a User Story – SUGSA 2013
Documentation
Release Overview All the user stories at a high level Feature -> Stories -> Acceptance
criteria Narrative: benefit / value clear-ish
On the wiki!
![Page 27: Agile Requirements - Journey of a User Story](https://reader034.vdocuments.net/reader034/viewer/2022051400/553867644a7959c1688b471d/html5/thumbnails/27.jpg)
Story Card Creation
![Page 28: Agile Requirements - Journey of a User Story](https://reader034.vdocuments.net/reader034/viewer/2022051400/553867644a7959c1688b471d/html5/thumbnails/28.jpg)
Benefits & Drawbacks
Benefits Low effort to move &
change Provided focus for
grooming & sprint planning
Really did function as a record of a conversation
History: easy to update with grooming & sprint info
Drawbacks (Bit of a) pain to
handle manual cards Didn’t refer to the “as
is” rules documents much
Not visible: lived in a draw, not on the wall
![Page 29: Agile Requirements - Journey of a User Story](https://reader034.vdocuments.net/reader034/viewer/2022051400/553867644a7959c1688b471d/html5/thumbnails/29.jpg)
Journey of a User Story – SUGSA 2013
Documentation
Visual indicator of scope Grouped by feature Card for each user story– Story ID– Title– Size– Grooming notes– Feature (later)
Photoson the wiki!
![Page 30: Agile Requirements - Journey of a User Story](https://reader034.vdocuments.net/reader034/viewer/2022051400/553867644a7959c1688b471d/html5/thumbnails/30.jpg)
Ordering the Backlog
Risks Dependencies
Assumptions Unknowns
![Page 31: Agile Requirements - Journey of a User Story](https://reader034.vdocuments.net/reader034/viewer/2022051400/553867644a7959c1688b471d/html5/thumbnails/31.jpg)
Doing the Work - Sprint 1
![Page 32: Agile Requirements - Journey of a User Story](https://reader034.vdocuments.net/reader034/viewer/2022051400/553867644a7959c1688b471d/html5/thumbnails/32.jpg)
Ordering the Backlog
Priority: what do we need to prove early?
Risks Dependencies
Assumptions Unknowns
What can we delay?
![Page 33: Agile Requirements - Journey of a User Story](https://reader034.vdocuments.net/reader034/viewer/2022051400/553867644a7959c1688b471d/html5/thumbnails/33.jpg)
Release Grooming - RADU
![Page 34: Agile Requirements - Journey of a User Story](https://reader034.vdocuments.net/reader034/viewer/2022051400/553867644a7959c1688b471d/html5/thumbnails/34.jpg)
RADU
![Page 35: Agile Requirements - Journey of a User Story](https://reader034.vdocuments.net/reader034/viewer/2022051400/553867644a7959c1688b471d/html5/thumbnails/35.jpg)
Journey of a User Story – SUGSA 2013
Documentation
Ordering principles:– Risks: Prove early– Technical Dependencies– Feature Dependencies
Assumptions & Unknowns to clarify ‘Readiness’ indicator Manually track changes in
information
On the wiki!
![Page 36: Agile Requirements - Journey of a User Story](https://reader034.vdocuments.net/reader034/viewer/2022051400/553867644a7959c1688b471d/html5/thumbnails/36.jpg)
Release Planning
![Page 37: Agile Requirements - Journey of a User Story](https://reader034.vdocuments.net/reader034/viewer/2022051400/553867644a7959c1688b471d/html5/thumbnails/37.jpg)
Ordering
Highest risk, Do first: MonthEnd changes
Then prove: Lists display accurately
Then prove: Actions on account correct
Assigning lists: Low risk, low effort
… then Assign lists
![Page 38: Agile Requirements - Journey of a User Story](https://reader034.vdocuments.net/reader034/viewer/2022051400/553867644a7959c1688b471d/html5/thumbnails/38.jpg)
Release Information
![Page 39: Agile Requirements - Journey of a User Story](https://reader034.vdocuments.net/reader034/viewer/2022051400/553867644a7959c1688b471d/html5/thumbnails/39.jpg)
Sprints per Release
![Page 40: Agile Requirements - Journey of a User Story](https://reader034.vdocuments.net/reader034/viewer/2022051400/553867644a7959c1688b471d/html5/thumbnails/40.jpg)
Journey of a User Story – SUGSA 2013
Documentation
Ordered, prioritized backlog Best guess estimate of feature sizes Best guess release size 2 sprints: team velocity data point Approximate release duration
On the wiki!
![Page 41: Agile Requirements - Journey of a User Story](https://reader034.vdocuments.net/reader034/viewer/2022051400/553867644a7959c1688b471d/html5/thumbnails/41.jpg)
Grooming: Mock-ups
![Page 42: Agile Requirements - Journey of a User Story](https://reader034.vdocuments.net/reader034/viewer/2022051400/553867644a7959c1688b471d/html5/thumbnails/42.jpg)
Benefits & Drawbacks
Benefits Great starting point for
technical discussions Most created after RADU
discussion Easy for users to relate
to in grooming
Indication of system flow Acceptance criteria
included by default Low cost to change
Drawbacks Trying to get it ‘right’ Can anchor ideas too
soon Team less inclined to
model visually in grooming
PDFs not easily linked to individual stories
![Page 43: Agile Requirements - Journey of a User Story](https://reader034.vdocuments.net/reader034/viewer/2022051400/553867644a7959c1688b471d/html5/thumbnails/43.jpg)
Journey of a User Story – SUGSA 2013
Documentation
Page layout and navigation Acceptance criteria, rules, comments Current information: frequently
updated
On the wiki!
![Page 44: Agile Requirements - Journey of a User Story](https://reader034.vdocuments.net/reader034/viewer/2022051400/553867644a7959c1688b471d/html5/thumbnails/44.jpg)
Scenarios
![Page 45: Agile Requirements - Journey of a User Story](https://reader034.vdocuments.net/reader034/viewer/2022051400/553867644a7959c1688b471d/html5/thumbnails/45.jpg)
Benefits & Drawbacks
Benefits Detailed discussion of
system flow Pre and Post
conditions (simpler) Test data More visual modelling Updated mock-ups
Drawbacks Hard to do initially (Easy to get them
wrong)
![Page 46: Agile Requirements - Journey of a User Story](https://reader034.vdocuments.net/reader034/viewer/2022051400/553867644a7959c1688b471d/html5/thumbnails/46.jpg)
Journey of a User Story – SUGSA 2013
Documentation
Documented Tests Expected path, alternate paths, fail
conditions Better stories Test data: automation Backlog, mockups and RADU updated
On the wiki!
![Page 47: Agile Requirements - Journey of a User Story](https://reader034.vdocuments.net/reader034/viewer/2022051400/553867644a7959c1688b471d/html5/thumbnails/47.jpg)
Sprint Review
![Page 48: Agile Requirements - Journey of a User Story](https://reader034.vdocuments.net/reader034/viewer/2022051400/553867644a7959c1688b471d/html5/thumbnails/48.jpg)
Benefits & Drawbacks
Benefits Sponsor and users
clear on progress Immediate feedback Incorporate small
changes in next sprint Schedule longer
changes for Grooming Generated excitement
Drawbacks Long 1st release cycle
(7 sprints) Users lost touch with early features
![Page 49: Agile Requirements - Journey of a User Story](https://reader034.vdocuments.net/reader034/viewer/2022051400/553867644a7959c1688b471d/html5/thumbnails/49.jpg)
So how did that all work?
![Page 50: Agile Requirements - Journey of a User Story](https://reader034.vdocuments.net/reader034/viewer/2022051400/553867644a7959c1688b471d/html5/thumbnails/50.jpg)
Create Lists
![Page 51: Agile Requirements - Journey of a User Story](https://reader034.vdocuments.net/reader034/viewer/2022051400/553867644a7959c1688b471d/html5/thumbnails/51.jpg)
Action Accounts
![Page 52: Agile Requirements - Journey of a User Story](https://reader034.vdocuments.net/reader034/viewer/2022051400/553867644a7959c1688b471d/html5/thumbnails/52.jpg)
Assign Lists: Grooming
![Page 53: Agile Requirements - Journey of a User Story](https://reader034.vdocuments.net/reader034/viewer/2022051400/553867644a7959c1688b471d/html5/thumbnails/53.jpg)
Assign Lists: Sprint Planning
![Page 54: Agile Requirements - Journey of a User Story](https://reader034.vdocuments.net/reader034/viewer/2022051400/553867644a7959c1688b471d/html5/thumbnails/54.jpg)
Assign Lists: Sprint & Feedback
![Page 55: Agile Requirements - Journey of a User Story](https://reader034.vdocuments.net/reader034/viewer/2022051400/553867644a7959c1688b471d/html5/thumbnails/55.jpg)
Journey of a User Story – SUGSA 2013
High level scope RADU, Readiness factor
Sprint-ready detail “But that’s changed now”
High quality of “Working software”
“Just In Time” Requirements
![Page 56: Agile Requirements - Journey of a User Story](https://reader034.vdocuments.net/reader034/viewer/2022051400/553867644a7959c1688b471d/html5/thumbnails/56.jpg)
Journey of a User Story – SUGSA 2013
Learnings
Story Mapping + Scenarios complete the picture
No single tool does all the things All the tools: “Living Documentation”
… or as close as we’ve got so far…
![Page 57: Agile Requirements - Journey of a User Story](https://reader034.vdocuments.net/reader034/viewer/2022051400/553867644a7959c1688b471d/html5/thumbnails/57.jpg)
Journey of a User Story – SUGSA 2013
For the next project..
Will have domain knowledge & known velocity
Start with Impact MappingClearer goals and personas
Use a backlog management toolLink features, stories, mock-ups,
acceptance criteria, scenarios Integrate ‘As Is’ document into grooming More time on scenarios
![Page 58: Agile Requirements - Journey of a User Story](https://reader034.vdocuments.net/reader034/viewer/2022051400/553867644a7959c1688b471d/html5/thumbnails/58.jpg)
Recommended Reading
Agile Requirements:Impact Mapping www.impactmapping.orgLean Designers: www.leandesign.frAgile Reflections: www.agilereflections.com
Story Mapping:Jeff Patton: http://agileproductdesign.com
Behaviour Driven Design:Dan North: http://dannorth.net/introducing-bdd/Liz Keogh: http://lunivore.com/media
![Page 59: Agile Requirements - Journey of a User Story](https://reader034.vdocuments.net/reader034/viewer/2022051400/553867644a7959c1688b471d/html5/thumbnails/59.jpg)
What one thing are you taking away?
Questions?
![Page 60: Agile Requirements - Journey of a User Story](https://reader034.vdocuments.net/reader034/viewer/2022051400/553867644a7959c1688b471d/html5/thumbnails/60.jpg)
Cara TurnerCape Town, South
Africa
Get in Touch
krs.co.za sugsa.org.za
twitter: @cara_fayefacilitatingagility.com