SlideShare a Scribd company logo
1 of 71
Download to read offline
© 2023 Thoughtworks
Driving
Engagement
with User Stories
Vishal Prasad (he/him)
© 2023 Thoughtworks 2
Unlearn to
Relearn
Part 1.
Agenda
● This is fast paced interactive workshop (~20 mins per part)
● Timebox must be respected, follow the law of the facilitator
● When time can’t be bought, use the parking lot
Things to know
Refine new
Learnings
Part 2.
Specification
by Example
Part 3.
Housekeeping
Discussions
Part 4.
13:40
© 2023 Thoughtworks
© 2023 Thoughtworks
Part One: Unlearn to Relearn
13:40
© 2023 Thoughtworks
What is a User Story?
4
13:43
2 mins
© 2023 Thoughtworks
In a written form, a
user story describes
functionality that will
be valuable to either a
user or purchaser of a
system or software.
5
13:46
© 2023 Thoughtworks
© 2023 Thoughtworks
What are the various
components or
sections of a User
Story?
3 mins
13:49
● Add as many components or
sections you can think of
● Add only one item on one sticky
● Duplicates are fine
© 2023 Thoughtworks 7
a written description
for planning and a
reminder
Card.
User stories are composed of 3 aspects
Source: Ron Jeffries | Rachel Davies
Anchored with the belief that software requirements is a communication problem
to flesh out the
details of the
requirement
Conversation.
tests that convey &
document details to
determine completion
Confirmation.
13:52
© 2023 Thoughtworks
© 2023 Thoughtworks
User Stories have no fixed
structure as long as the 3Cs are
managed.
13:52
© 2023 Thoughtworks
Exercise Zero
Write a User Story to
view your emails
3 mins in groups of 3
13:55
● Begin with a goal that a user wants
to achieve
● Have a conversation to agree upon
what is needed
● Identify as many test cases as
possible
© 2023 Thoughtworks
Part Two: Refine new Learnings
13:55
© 2023 Thoughtworks
● Why write user story on cards?
● Why hold these conversations?
● Why not just continue writing
requirement documents or use
cases?
● What’s new with user stories?
Why use
User Stories?
Why Change?
13:58
© 2023 Thoughtworks 12
14:06
© 2023 Thoughtworks
The customer gets a Peanut
Butter & Jelly Sandwich when
ordered
14:10
© 2023 Thoughtworks
The customer gets a Peanut
Butter & Jelly Sandwich when
ordered
● The sandwich is 3 inches wide and 4
inches long
● The sandwich has exactly 2 pieces of
bread (slice 1 & 2)
● One face of bread slice 1 has 10gm
peanut butter evenly spread
● One face of bread slice 2 has 10gm jelly
evenly spread
● Customer doesn’t get Peanut Butter &
Jelly on their hands when holding the
sandwich
14:10
© 2023 Thoughtworks
● Contrary to common belief,
reducing the amount of
instructions can yield better
results if the constraints are
well-defined.
The customer gets a Peanut
Butter & Jelly Sandwich when
ordered
● The sandwich is 3 inches wide and 4
inches long
● The sandwich has exactly 2 pieces of
bread (slice 1 & 2)
● One face of bread slice 1 has 10gm
peanut butter evenly spread
● One face of bread slice 2 has 10gm jelly
evenly spread
● Customer doesn’t get Peanut Butter &
Jelly on their hands when holding the
sandwich
14:10
© 2023 Thoughtworks
● Contrary to common belief,
reducing the amount of
instructions can yield better
results if the constraints are
well-defined.
● The creation steps must be left to
the people with the appropriate
skills (e.g. the sandwich maker,
the guitar designer, the
carpenter, the electrician, the
programmer, etc.)
The customer gets a Peanut
Butter & Jelly Sandwich when
ordered
● The sandwich is 3 inches wide and 4
inches long
● The sandwich has exactly 2 pieces of
bread (slice 1 & 2)
● One face of bread slice 1 has 10gm
peanut butter evenly spread
● One face of bread slice 2 has 10gm jelly
evenly spread
● Customer doesn’t get Peanut Butter &
Jelly on their hands when holding the
sandwich
14:10
© 2023 Thoughtworks
● Contrary to common belief,
reducing the amount of
instructions can yield better
results if the constraints are
well-defined.
● The creation steps must be left to
the people with the appropriate
skills (e.g. the sandwich maker,
the guitar designer, the
carpenter, the electrician, the
programmer, etc.)
● The acceptance conditions must
be provided by the customer or
the user of the requirement.
The customer gets a Peanut
Butter & Jelly Sandwich when
ordered
● The sandwich is 3 inches wide and 4
inches long
● The sandwich has exactly 2 pieces of
bread (slice 1 & 2)
● One face of bread slice 1 has 10gm
peanut butter evenly spread
● One face of bread slice 2 has 10gm jelly
evenly spread
● Customer doesn’t get Peanut Butter &
Jelly on their hands when holding the
sandwich
14:10
© 2023 Thoughtworks
Let’s
discuss
INVEST
5 mins
18
14:15
© 2023 Thoughtworks
© 2023 Thoughtworks
Part Three: Specification by Example
14:15
© 2023 Thoughtworks 20
A collaborative method for specifying
requirements and tests to:
● produce a living, reliable
documentation
● define expectations clearly and
make validation efficient
● reduce rework
● assure delivery teams and
business stakeholders that the
software built is right for its
purpose
Specification by
Example
a Single source of Truth
14:20
© 2023 Thoughtworks 21
What problem are we
trying to solve?
Business.
Three Amigos
The primary perspectives to examine an increment of work before, during, and after
development
How might we build a
solution to solve that
problem?
Development.
What about this, what
could possibly
happen?
Testing.
14:20
© 2023 Thoughtworks
© 2023 Thoughtworks
Acceptance Test Driven Development
14:20
Three Amigos in Action discussing Valet Parking (Source: Markus Gärtner)
© 2023 Thoughtworks
Acceptance Test Driven Development
14:20
Three Amigos in Action discussing Valet Parking (Source: Markus Gärtner)
Dev
Let’s discuss the parking lot cost calculation requirements.
© 2023 Thoughtworks
Acceptance Test Driven Development
14:20
Three Amigos in Action discussing Valet Parking (Source: Markus Gärtner)
Dev
Let’s discuss the parking lot cost calculation requirements.
Biz
We have 3 types of parking lots. Some have costs per hour, some per day, some have a daily
or weekly maximum.
© 2023 Thoughtworks
Acceptance Test Driven Development
14:20
Three Amigos in Action discussing Valet Parking (Source: Markus Gärtner)
Dev
Let’s discuss the parking lot cost calculation requirements.
Biz
We have 3 types of parking lots. Some have costs per hour, some per day, some have a daily
or weekly maximum.
Dev
How do you refer to the different parking lots? Are there names for them?
© 2023 Thoughtworks
Acceptance Test Driven Development
Biz
Valet parking, short-term parking, and regular parking. If you lose your ticket, you will be
charged a fee of $10.00.
14:20
Three Amigos in Action discussing Valet Parking (Source: Markus Gärtner)
© 2023 Thoughtworks
Acceptance Test Driven Development
Biz
Valet parking, short-term parking, and regular parking. If you lose your ticket, you will be
charged a fee of $10.00.
Dev
Let’s concentrate on the 3 types. What’s the difference between them?
14:20
Three Amigos in Action discussing Valet Parking (Source: Markus Gärtner)
© 2023 Thoughtworks
Acceptance Test Driven Development
Biz
Valet parking, short-term parking, and regular parking. If you lose your ticket, you will be
charged a fee of $10.00.
Dev
Let’s concentrate on the 3 types. What’s the difference between them?
Biz
For valet parking, the passenger drops his or her car off at the valet drop off and gets a
receipt to get the car back.
14:20
Three Amigos in Action discussing Valet Parking (Source: Markus Gärtner)
© 2023 Thoughtworks
Acceptance Test Driven Development
Dev
What can you tell us about parking costs?
14:20
Three Amigos in Action discussing Valet Parking (Source: Markus Gärtner)
© 2023 Thoughtworks
Acceptance Test Driven Development
Dev
What can you tell us about parking costs?
Biz
Valet parking costs $18.00 per day. For 5 hours or less you get a reduction of $6.00.
14:20
Three Amigos in Action discussing Valet Parking (Source: Markus Gärtner)
© 2023 Thoughtworks
Acceptance Test Driven Development
Dev
What can you tell us about parking costs?
Biz
Valet parking costs $18.00 per day. For 5 hours or less you get a reduction of $6.00.
Test
Wait a moment, you mean for even 30 minutes I get charged $12.00, for 3 hours I have to pay
the same, as well as for 5 hours? But for 5 hour and 1 minute I have to pay $18.00 as well as
for 12 or 24 hours?
14:20
Three Amigos in Action discussing Valet Parking (Source: Markus Gärtner)
© 2023 Thoughtworks
Acceptance Test Driven Development
Biz
Yes, absolutely right.
14:20
Three Amigos in Action discussing Valet Parking (Source: Markus Gärtner)
© 2023 Thoughtworks
Acceptance Test Driven Development
Biz
Yes, absolutely right.
Test
What about 24 hours and 1 minute? Would this be $30.00 then, or $36.00?
14:20
Three Amigos in Action discussing Valet Parking (Source: Markus Gärtner)
© 2023 Thoughtworks
Acceptance Test Driven Development
Biz
Yes, absolutely right.
Biz
Oh, that is of course $36.00.
Test
What about 24 hours and 1 minute? Would this be $30.00 then, or $36.00?
14:20
Three Amigos in Action discussing Valet Parking (Source: Markus Gärtner)
© 2023 Thoughtworks
Acceptance Test Driven Development
Dev
What about weekly limits? Are there any for valet parking?
14:20
Three Amigos in Action discussing Valet Parking (Source: Markus Gärtner)
© 2023 Thoughtworks
Acceptance Test Driven Development
Biz
No that’s basically all there is for valet parking.
Dev
What about weekly limits? Are there any for valet parking?
14:20
Three Amigos in Action discussing Valet Parking (Source: Markus Gärtner)
© 2023 Thoughtworks
Acceptance Test Driven Development
Biz
No that’s basically all there is for valet parking.
Test
OK, then let me write these down as examples.
Dev
What about weekly limits? Are there any for valet parking?
14:20
Three Amigos in Action discussing Valet Parking (Source: Markus Gärtner)
© 2023 Thoughtworks
Acceptance Test Driven Development
Dev
What about weekly limits? Are there
any for valet parking?
14:20
Three Amigos in Action discussing Valet Parking (Source: Markus Gärtner)
© 2023 Thoughtworks
Acceptance Test Driven Development
Dev
What about weekly limits? Are there
any for valet parking?
Biz
No that’s basically all there is for
valet parking.
14:20
Three Amigos in Action discussing Valet Parking (Source: Markus Gärtner)
© 2023 Thoughtworks
Acceptance Test Driven Development
Dev
What about weekly limits? Are there
any for valet parking?
Biz
No that’s basically all there is for
valet parking.
Test
OK, then let me write these down
as examples.
14:20
Three Amigos in Action discussing Valet Parking (Source: Markus Gärtner)
© 2023 Thoughtworks
Acceptance Test Driven Development
Dev
What about weekly limits? Are there
any for valet parking?
Biz
No that’s basically all there is for
valet parking.
Test
OK, then let me write these down
as examples.
Parking Duration Parking Costs
30 minutes $12.00
3 hours $12.00
5 hours $12.00
5 hours 1 minute $18.00
12 hours $18.00
24 hours $18.00
1 day 1 minute $36.00
3 days $54.00
1 week $126.00
14:20
Three Amigos in Action discussing Valet Parking (Source: Markus Gärtner)
© 2023 Thoughtworks
Behaviour-driven development (BDD) takes the position that
you can turn an idea for a requirement into implemented,
tested, production-ready code simply and effectively, as long as
the requirement is specific enough that everyone knows what’s
going on. To do this, we need a way to describe the requirement
such that everyone – the business folks, the analyst, the
developer and the tester – have a common understanding of the
scope of the work. From this they can agree a common
definition of “done”, and we escape the dual gumption traps of
“that’s not what I asked for” or “I forgot to tell you about this
other thing”.
14:25
- Dan North
© 2023 Thoughtworks
Behaviour Driven Development with Gherkin
14:25
Each line that isn’t a blank line has to start with a Gherkin keyword, followed by any text you
like. The only exceptions are the free-form descriptions placed underneath Example /
Scenario, Background, Scenario Outline and Rule lines.
The primary keywords are:
● Feature
● Rule (as of Gherkin 6)
● Example (or Scenario)
● Given, When, Then, And, But for steps (or *)
● Background
● Scenario Outline (or Scenario Template)
● Examples (or Scenarios)
© 2023 Thoughtworks
Securing your emails expressed in Gherkin
14:30
Feature: Advanced Authentication
As an Email User, I want to secure my
account so only I see my emails
Background:
Given email domain is “thoughtworks”
And accessing IP is “unrestricted”
Example: Accessing emails from a new IP
Given “jon” is accessing emails
When logged in IP has never been used
Then email “jon” the new location info
Scenario Outline: SSO response messages
Given auth token doesn’t exist for <id>
When SSO authentication is requested
And <response> is received
Then denote <message>
Examples:
|id |response |message |
|jon |unrestricted |authenticated|
|sal |restricted |restricted |
|wolf|invalid |invalid |
|jon |service down |unreachable |
© 2023 Thoughtworks
Viewing your emails expressed in Gherkin
14:35
© 2023 Thoughtworks
Part Four: Housekeeping Discussions
14:35
© 2023 Thoughtworks
Guidelines for Good User Stories
14:40
Source: Mike Cohn
© 2023 Thoughtworks
Guidelines for Good User Stories
14:40
Source: Mike Cohn
● Start with Goal Stories; these
can then be used to generate
additional stories
© 2023 Thoughtworks
Guidelines for Good User Stories
14:40
Source: Mike Cohn
● Start with Goal Stories; these
can then be used to generate
additional stories
● Slice the Cake; do not split
stories around technical
lines, follow INVEST
© 2023 Thoughtworks
Guidelines for Good User Stories
14:40
Source: Mike Cohn
● Start with Goal Stories; these
can then be used to generate
additional stories
● Slice the Cake; do not split
stories around technical
lines, follow INVEST
● Write Closed Stories; a story
that finishes by achieving a
meaningful goal
© 2023 Thoughtworks
Guidelines for Good User Stories
14:40
Source: Mike Cohn
● Start with Goal Stories; these
can then be used to generate
additional stories
● Slice the Cake; do not split
stories around technical
lines, follow INVEST
● Write Closed Stories; a story
that finishes by achieving a
meaningful goal
● Put Constraints on Cards;
these are NFRs that must be
obeyed and can apply to
multiple stories
© 2023 Thoughtworks
Guidelines for Good User Stories
14:40
Source: Mike Cohn
● Start with Goal Stories; these
can then be used to generate
additional stories
● Slice the Cake; do not split
stories around technical
lines, follow INVEST
● Write Closed Stories; a story
that finishes by achieving a
meaningful goal
● Put Constraints on Cards;
these are NFRs that must be
obeyed and can apply to
multiple stories
● Keep UI Out as Long as
Possible; use supplements
to denote these
© 2023 Thoughtworks
Guidelines for Good User Stories
14:40
Source: Mike Cohn
● Start with Goal Stories; these
can then be used to generate
additional stories
● Slice the Cake; do not split
stories around technical
lines, follow INVEST
● Write Closed Stories; a story
that finishes by achieving a
meaningful goal
● Put Constraints on Cards;
these are NFRs that must be
obeyed and can apply to
multiple stories
● Keep UI Out as Long as
Possible; use supplements
to denote these
● Include User Roles in the
Stories; instead of “a user”
© 2023 Thoughtworks
Guidelines for Good User Stories
14:40
Source: Mike Cohn
● Start with Goal Stories; these
can then be used to generate
additional stories
● Slice the Cake; do not split
stories around technical
lines, follow INVEST
● Write Closed Stories; a story
that finishes by achieving a
meaningful goal
● Put Constraints on Cards;
these are NFRs that must be
obeyed and can apply to
multiple stories
● Keep UI Out as Long as
Possible; use supplements
to denote these
● Include User Roles in the
Stories; instead of “a user”
● Some Things Aren’t Stories;
use supplements to denote
these, e.g. UI guidelines, API
details, Compliance Docs,
etc.
© 2023 Thoughtworks
Guidelines for Good User Stories
14:40
Source: Mike Cohn
● Start with Goal Stories; these
can then be used to generate
additional stories
● Slice the Cake; do not split
stories around technical
lines, follow INVEST
● Write Closed Stories; a story
that finishes by achieving a
meaningful goal
● Put Constraints on Cards;
these are NFRs that must be
obeyed and can apply to
multiple stories
● Keep UI Out as Long as
Possible; use supplements
to denote these
● Include User Roles in the
Stories; instead of “a user”
● Some Things Aren’t Stories;
use supplements to denote
these, e.g. UI guidelines, API
details, Compliance Docs,
etc.
● One card is written for one
user, written in active voice,
and written by the customer
© 2023 Thoughtworks
Guidelines for Good User Stories
14:40
Source: Mike Cohn
● Start with Goal Stories; these
can then be used to generate
additional stories
● Slice the Cake; do not split
stories around technical
lines, follow INVEST
● Write Closed Stories; a story
that finishes by achieving a
meaningful goal
● Put Constraints on Cards;
these are NFRs that must be
obeyed and can apply to
multiple stories
● Keep UI Out as Long as
Possible; use supplements
to denote these
● Include User Roles in the
Stories; instead of “a user”
● Some Things Aren’t Stories;
use supplements to denote
these, e.g. UI guidelines, API
details, Compliance Docs,
etc.
● One card is written for one
user, written in active voice,
and written by the customer
● Don’t Forget the Purpose; it’s
a promise for a conversation
© 2023 Thoughtworks
Definition of Done
14:45
© 2023 Thoughtworks
Definition of Done
● A set of Passing automated
tests (and a few manual tests)
that confirms that a product
increment is product ready
14:45
© 2023 Thoughtworks
Definition of Done
● A set of Passing automated
tests (and a few manual tests)
that confirms that a product
increment is product ready
● May or may not be applicable
to individual stories
14:45
© 2023 Thoughtworks
Definition of Done
● A set of Passing automated
tests (and a few manual tests)
that confirms that a product
increment is product ready
● May or may not be applicable
to individual stories
● Must be executed after every
code commit, on an integrated
environment
14:45
© 2023 Thoughtworks
Definition of Done
● A set of Passing automated
tests (and a few manual tests)
that confirms that a product
increment is product ready
● May or may not be applicable
to individual stories
● Must be executed after every
code commit, on an integrated
environment
14:45
Definition of Ready
© 2023 Thoughtworks
Definition of Done
● A set of Passing automated
tests (and a few manual tests)
that confirms that a product
increment is product ready
● May or may not be applicable
to individual stories
● Must be executed after every
code commit, on an integrated
environment
14:45
● It is ready when the 3 amigos
have identified all tests (as a
part of INVEST) to be fulfilled
by a story and its
implementation is well
understood.
Definition of Ready
© 2023 Thoughtworks
Definition of Done
● A set of Passing automated
tests (and a few manual tests)
that confirms that a product
increment is product ready
● May or may not be applicable
to individual stories
● Must be executed after every
code commit, on an integrated
environment
14:45
● It is ready when the 3 amigos
have identified all tests (as a
part of INVEST) to be fulfilled
by a story and its
implementation is well
understood.
● This is NOT a requirements’
sign-off process
Definition of Ready
© 2023 Thoughtworks
Definition of Done
● A set of Passing automated
tests (and a few manual tests)
that confirms that a product
increment is product ready
● May or may not be applicable
to individual stories
● Must be executed after every
code commit, on an integrated
environment
14:45
● It is ready when the 3 amigos
have identified all tests (as a
part of INVEST) to be fulfilled
by a story and its
implementation is well
understood.
● This is NOT a requirements’
sign-off process
● Probably an anti-pattern
Definition of Ready
© 2023 Thoughtworks
Zero Defect Policy
14:55
An outcome of Specification by Example
© 2023 Thoughtworks
Zero Defect Policy
● Context: A common practice among teams is to
have a bug triage when a defect is reported in
production. As per an organisation’s Defect
Management Policy, this may go under one of the
few buckets like fix now, fix later, not a bug, change
request, etc.
14:55
An outcome of Specification by Example
© 2023 Thoughtworks
Zero Defect Policy
● Context: A common practice among teams is to
have a bug triage when a defect is reported in
production. As per an organisation’s Defect
Management Policy, this may go under one of the
few buckets like fix now, fix later, not a bug, change
request, etc.
● The dilemma is that although the engineering team
may bucket these in various types, it’s always a
defect for a customer / user.
14:55
An outcome of Specification by Example
© 2023 Thoughtworks
Zero Defect Policy
● By denoting requirements as tests using
Specification by Example, we automate tests
before coding and this ensures that no bugs enter
production as per the identified tests. This is a
Zero Bug Promise!
14:55
An outcome of Specification by Example
© 2023 Thoughtworks
Zero Defect Policy
● By denoting requirements as tests using
Specification by Example, we automate tests
before coding and this ensures that no bugs enter
production as per the identified tests. This is a
Zero Bug Promise!
● This does not mean that customers will not report
bugs in the future, however when that happens, it
would qualify as a missing test. This eliminates a
wasteful triage activity.
14:55
An outcome of Specification by Example
© 2023 Thoughtworks
Zero Defect Policy
● By denoting requirements as tests using
Specification by Example, we automate tests
before coding and this ensures that no bugs enter
production as per the identified tests. This is a
Zero Bug Promise!
● This does not mean that customers will not report
bugs in the future, however when that happens, it
would qualify as a missing test. This eliminates a
wasteful triage activity.
70
An outcome of Specification by Example
This
is
only
one
way
of
delivering
a
Zero
Bug
Promise!
© 2023 Thoughtworks
Keep in touch
Vishal Prasad
Thoughtworker
vishalp@thoughtworks.com

More Related Content

Similar to Driving Engagement with User Stories

SystemsThinking_Rev1_LeedsandDurham_110810.ppt
SystemsThinking_Rev1_LeedsandDurham_110810.pptSystemsThinking_Rev1_LeedsandDurham_110810.ppt
SystemsThinking_Rev1_LeedsandDurham_110810.pptAmar30011
 
Get Going with Users WhatUsersDo Workshop 11 Dec 2014
Get Going with Users WhatUsersDo Workshop 11 Dec 2014Get Going with Users WhatUsersDo Workshop 11 Dec 2014
Get Going with Users WhatUsersDo Workshop 11 Dec 2014Lee Duddell
 
So what happens to The Gatekeeper? The Future of Change Management in a Conti...
So what happens to The Gatekeeper? The Future of Change Management in a Conti...So what happens to The Gatekeeper? The Future of Change Management in a Conti...
So what happens to The Gatekeeper? The Future of Change Management in a Conti...XebiaLabs
 
Designing A Great User Experience
Designing A Great User ExperienceDesigning A Great User Experience
Designing A Great User ExperienceSteve Hickey
 
Consensus Docs: Introduction to Integrated Project Delivery in Construction
Consensus Docs: Introduction to Integrated Project Delivery in ConstructionConsensus Docs: Introduction to Integrated Project Delivery in Construction
Consensus Docs: Introduction to Integrated Project Delivery in ConstructionDBL Law
 
Your Triple-Threat Solution for Resilient Planning and Execution
Your Triple-Threat Solution for Resilient Planning and ExecutionYour Triple-Threat Solution for Resilient Planning and Execution
Your Triple-Threat Solution for Resilient Planning and ExecutionAggregage
 
Please post your response to the following Should school distric.docx
Please post your response to the following Should school distric.docxPlease post your response to the following Should school distric.docx
Please post your response to the following Should school distric.docxstilliegeorgiana
 
RelayRides UX Observations by Jeff McNeil, New Spin Digital
RelayRides UX Observations by Jeff McNeil, New Spin DigitalRelayRides UX Observations by Jeff McNeil, New Spin Digital
RelayRides UX Observations by Jeff McNeil, New Spin DigitalNew Spin Digital
 
Construction Funding Program
Construction Funding ProgramConstruction Funding Program
Construction Funding Programusaclarks
 
Intro to-responsive-design
Intro to-responsive-designIntro to-responsive-design
Intro to-responsive-designMichael Nichols
 
Get into bed with qa and keep testing agile
Get into bed with qa and keep testing agileGet into bed with qa and keep testing agile
Get into bed with qa and keep testing agileAgileCymru
 
Lean startup 101 (Case Study oleh Fajar Anugerah dan Dondi Hananto di Indonesia)
Lean startup 101 (Case Study oleh Fajar Anugerah dan Dondi Hananto di Indonesia)Lean startup 101 (Case Study oleh Fajar Anugerah dan Dondi Hananto di Indonesia)
Lean startup 101 (Case Study oleh Fajar Anugerah dan Dondi Hananto di Indonesia)startupbisnis
 
Longhorn PHP Tech Debt
Longhorn PHP Tech DebtLonghorn PHP Tech Debt
Longhorn PHP Tech DebtBoyd Hemphill
 
Agile planning and project management
Agile planning and project managementAgile planning and project management
Agile planning and project managementMike Cohn
 
Wordpress Proposal Template PowerPoint Presentation Slides
Wordpress Proposal Template PowerPoint Presentation SlidesWordpress Proposal Template PowerPoint Presentation Slides
Wordpress Proposal Template PowerPoint Presentation SlidesSlideTeam
 
Finest Truck Train Horn Kits
Finest Truck Train Horn KitsFinest Truck Train Horn Kits
Finest Truck Train Horn KitsNance95Johansson
 
Case study presentation final
Case study presentation   finalCase study presentation   final
Case study presentation finalJordon Rose
 

Similar to Driving Engagement with User Stories (20)

SystemsThinking_Rev1_LeedsandDurham_110810.ppt
SystemsThinking_Rev1_LeedsandDurham_110810.pptSystemsThinking_Rev1_LeedsandDurham_110810.ppt
SystemsThinking_Rev1_LeedsandDurham_110810.ppt
 
Get Going with Users WhatUsersDo Workshop 11 Dec 2014
Get Going with Users WhatUsersDo Workshop 11 Dec 2014Get Going with Users WhatUsersDo Workshop 11 Dec 2014
Get Going with Users WhatUsersDo Workshop 11 Dec 2014
 
So what happens to The Gatekeeper? The Future of Change Management in a Conti...
So what happens to The Gatekeeper? The Future of Change Management in a Conti...So what happens to The Gatekeeper? The Future of Change Management in a Conti...
So what happens to The Gatekeeper? The Future of Change Management in a Conti...
 
Designing A Great User Experience
Designing A Great User ExperienceDesigning A Great User Experience
Designing A Great User Experience
 
Consensus Docs: Introduction to Integrated Project Delivery in Construction
Consensus Docs: Introduction to Integrated Project Delivery in ConstructionConsensus Docs: Introduction to Integrated Project Delivery in Construction
Consensus Docs: Introduction to Integrated Project Delivery in Construction
 
Your Triple-Threat Solution for Resilient Planning and Execution
Your Triple-Threat Solution for Resilient Planning and ExecutionYour Triple-Threat Solution for Resilient Planning and Execution
Your Triple-Threat Solution for Resilient Planning and Execution
 
Make and Take Contracting and Outsourcing
Make and Take Contracting and OutsourcingMake and Take Contracting and Outsourcing
Make and Take Contracting and Outsourcing
 
Please post your response to the following Should school distric.docx
Please post your response to the following Should school distric.docxPlease post your response to the following Should school distric.docx
Please post your response to the following Should school distric.docx
 
RelayRides UX Observations by Jeff McNeil, New Spin Digital
RelayRides UX Observations by Jeff McNeil, New Spin DigitalRelayRides UX Observations by Jeff McNeil, New Spin Digital
RelayRides UX Observations by Jeff McNeil, New Spin Digital
 
Construction Funding Program
Construction Funding ProgramConstruction Funding Program
Construction Funding Program
 
Intro to-responsive-design
Intro to-responsive-designIntro to-responsive-design
Intro to-responsive-design
 
Get into bed with qa and keep testing agile
Get into bed with qa and keep testing agileGet into bed with qa and keep testing agile
Get into bed with qa and keep testing agile
 
Lean startup 101 (Case Study oleh Fajar Anugerah dan Dondi Hananto di Indonesia)
Lean startup 101 (Case Study oleh Fajar Anugerah dan Dondi Hananto di Indonesia)Lean startup 101 (Case Study oleh Fajar Anugerah dan Dondi Hananto di Indonesia)
Lean startup 101 (Case Study oleh Fajar Anugerah dan Dondi Hananto di Indonesia)
 
Longhorn PHP Tech Debt
Longhorn PHP Tech DebtLonghorn PHP Tech Debt
Longhorn PHP Tech Debt
 
Congruence and similarity
Congruence and similarityCongruence and similarity
Congruence and similarity
 
Agile planning and project management
Agile planning and project managementAgile planning and project management
Agile planning and project management
 
Wordpress Proposal Template PowerPoint Presentation Slides
Wordpress Proposal Template PowerPoint Presentation SlidesWordpress Proposal Template PowerPoint Presentation Slides
Wordpress Proposal Template PowerPoint Presentation Slides
 
Finest Truck Train Horn Kits
Finest Truck Train Horn KitsFinest Truck Train Horn Kits
Finest Truck Train Horn Kits
 
Ensuite Installation Guide
Ensuite Installation GuideEnsuite Installation Guide
Ensuite Installation Guide
 
Case study presentation final
Case study presentation   finalCase study presentation   final
Case study presentation final
 

More from Vishal Prasad

[Shorter Version] Agility in the world of ITeS Business - Regional Scrum Gath...
[Shorter Version] Agility in the world of ITeS Business - Regional Scrum Gath...[Shorter Version] Agility in the world of ITeS Business - Regional Scrum Gath...
[Shorter Version] Agility in the world of ITeS Business - Regional Scrum Gath...Vishal Prasad
 
Agility in the world of ITeS Business [Kanban India Conference 2023]
Agility in the world of ITeS Business [Kanban India Conference 2023]Agility in the world of ITeS Business [Kanban India Conference 2023]
Agility in the world of ITeS Business [Kanban India Conference 2023]Vishal Prasad
 
Product Fails - That time when a product screwed-up
Product Fails - That time when a product screwed-upProduct Fails - That time when a product screwed-up
Product Fails - That time when a product screwed-upVishal Prasad
 
Embracing DEI Enhances Agility - Agile India 2023
Embracing DEI Enhances Agility - Agile India 2023Embracing DEI Enhances Agility - Agile India 2023
Embracing DEI Enhances Agility - Agile India 2023Vishal Prasad
 
Why I stopped coaching agility and so should you!
Why I stopped coaching agility and so should you!Why I stopped coaching agility and so should you!
Why I stopped coaching agility and so should you!Vishal Prasad
 
Making Invisible Choices - Decision Making moulded by our Mental Models
Making Invisible Choices - Decision Making moulded by our Mental ModelsMaking Invisible Choices - Decision Making moulded by our Mental Models
Making Invisible Choices - Decision Making moulded by our Mental ModelsVishal Prasad
 
Agile Leadership Overview
Agile Leadership OverviewAgile Leadership Overview
Agile Leadership OverviewVishal Prasad
 
Business goals in the new normal
Business goals in the new normalBusiness goals in the new normal
Business goals in the new normalVishal Prasad
 
SLICE - The Experimentation Mindset
SLICE - The Experimentation MindsetSLICE - The Experimentation Mindset
SLICE - The Experimentation MindsetVishal Prasad
 
Repeating the "Quality Debate" @ Agile Gurugram 2019 Conference
Repeating the "Quality Debate" @ Agile Gurugram 2019 ConferenceRepeating the "Quality Debate" @ Agile Gurugram 2019 Conference
Repeating the "Quality Debate" @ Agile Gurugram 2019 ConferenceVishal Prasad
 
Managing requirements with user stories
Managing requirements with user storiesManaging requirements with user stories
Managing requirements with user storiesVishal Prasad
 
You were never waterfall
You were never waterfallYou were never waterfall
You were never waterfallVishal Prasad
 
SLICE - The Experimentation Framework
SLICE - The Experimentation FrameworkSLICE - The Experimentation Framework
SLICE - The Experimentation FrameworkVishal Prasad
 
Nirvana - when ET met Automation
Nirvana - when ET met AutomationNirvana - when ET met Automation
Nirvana - when ET met AutomationVishal Prasad
 
Day 1 test engagement? Are you kidding me?
Day 1 test engagement? Are you kidding me?Day 1 test engagement? Are you kidding me?
Day 1 test engagement? Are you kidding me?Vishal Prasad
 
Learning from Anemic Reviews and the Monger Project
Learning from Anemic Reviews and the Monger ProjectLearning from Anemic Reviews and the Monger Project
Learning from Anemic Reviews and the Monger ProjectVishal Prasad
 
Agile Project Kick-off in 15 Minutes
Agile Project Kick-off in 15 MinutesAgile Project Kick-off in 15 Minutes
Agile Project Kick-off in 15 MinutesVishal Prasad
 

More from Vishal Prasad (19)

[Shorter Version] Agility in the world of ITeS Business - Regional Scrum Gath...
[Shorter Version] Agility in the world of ITeS Business - Regional Scrum Gath...[Shorter Version] Agility in the world of ITeS Business - Regional Scrum Gath...
[Shorter Version] Agility in the world of ITeS Business - Regional Scrum Gath...
 
Agility in the world of ITeS Business [Kanban India Conference 2023]
Agility in the world of ITeS Business [Kanban India Conference 2023]Agility in the world of ITeS Business [Kanban India Conference 2023]
Agility in the world of ITeS Business [Kanban India Conference 2023]
 
Product Fails - That time when a product screwed-up
Product Fails - That time when a product screwed-upProduct Fails - That time when a product screwed-up
Product Fails - That time when a product screwed-up
 
Embracing DEI Enhances Agility - Agile India 2023
Embracing DEI Enhances Agility - Agile India 2023Embracing DEI Enhances Agility - Agile India 2023
Embracing DEI Enhances Agility - Agile India 2023
 
Why I stopped coaching agility and so should you!
Why I stopped coaching agility and so should you!Why I stopped coaching agility and so should you!
Why I stopped coaching agility and so should you!
 
Making Invisible Choices - Decision Making moulded by our Mental Models
Making Invisible Choices - Decision Making moulded by our Mental ModelsMaking Invisible Choices - Decision Making moulded by our Mental Models
Making Invisible Choices - Decision Making moulded by our Mental Models
 
Agile Leadership Overview
Agile Leadership OverviewAgile Leadership Overview
Agile Leadership Overview
 
Business goals in the new normal
Business goals in the new normalBusiness goals in the new normal
Business goals in the new normal
 
SLICE - The Experimentation Mindset
SLICE - The Experimentation MindsetSLICE - The Experimentation Mindset
SLICE - The Experimentation Mindset
 
Repeating the "Quality Debate" @ Agile Gurugram 2019 Conference
Repeating the "Quality Debate" @ Agile Gurugram 2019 ConferenceRepeating the "Quality Debate" @ Agile Gurugram 2019 Conference
Repeating the "Quality Debate" @ Agile Gurugram 2019 Conference
 
A "Quality" Debate
A "Quality" DebateA "Quality" Debate
A "Quality" Debate
 
Managing requirements with user stories
Managing requirements with user storiesManaging requirements with user stories
Managing requirements with user stories
 
You were never waterfall
You were never waterfallYou were never waterfall
You were never waterfall
 
SLICE - The Experimentation Framework
SLICE - The Experimentation FrameworkSLICE - The Experimentation Framework
SLICE - The Experimentation Framework
 
Nirvana - when ET met Automation
Nirvana - when ET met AutomationNirvana - when ET met Automation
Nirvana - when ET met Automation
 
Day 1 test engagement? Are you kidding me?
Day 1 test engagement? Are you kidding me?Day 1 test engagement? Are you kidding me?
Day 1 test engagement? Are you kidding me?
 
Learning from Anemic Reviews and the Monger Project
Learning from Anemic Reviews and the Monger ProjectLearning from Anemic Reviews and the Monger Project
Learning from Anemic Reviews and the Monger Project
 
Agile Project Kick-off in 15 Minutes
Agile Project Kick-off in 15 MinutesAgile Project Kick-off in 15 Minutes
Agile Project Kick-off in 15 Minutes
 
Scrum Product Owner
Scrum Product OwnerScrum Product Owner
Scrum Product Owner
 

Recently uploaded

Governance and Nation-Building in Nigeria: Some Reflections on Options for Po...
Governance and Nation-Building in Nigeria: Some Reflections on Options for Po...Governance and Nation-Building in Nigeria: Some Reflections on Options for Po...
Governance and Nation-Building in Nigeria: Some Reflections on Options for Po...Kayode Fayemi
 
CTAC 2024 Valencia - Sven Zoelle - Most Crucial Invest to Digitalisation_slid...
CTAC 2024 Valencia - Sven Zoelle - Most Crucial Invest to Digitalisation_slid...CTAC 2024 Valencia - Sven Zoelle - Most Crucial Invest to Digitalisation_slid...
CTAC 2024 Valencia - Sven Zoelle - Most Crucial Invest to Digitalisation_slid...henrik385807
 
ANCHORING SCRIPT FOR A CULTURAL EVENT.docx
ANCHORING SCRIPT FOR A CULTURAL EVENT.docxANCHORING SCRIPT FOR A CULTURAL EVENT.docx
ANCHORING SCRIPT FOR A CULTURAL EVENT.docxNikitaBankoti2
 
Re-membering the Bard: Revisiting The Compleat Wrks of Wllm Shkspr (Abridged)...
Re-membering the Bard: Revisiting The Compleat Wrks of Wllm Shkspr (Abridged)...Re-membering the Bard: Revisiting The Compleat Wrks of Wllm Shkspr (Abridged)...
Re-membering the Bard: Revisiting The Compleat Wrks of Wllm Shkspr (Abridged)...Hasting Chen
 
Thirunelveli call girls Tamil escorts 7877702510
Thirunelveli call girls Tamil escorts 7877702510Thirunelveli call girls Tamil escorts 7877702510
Thirunelveli call girls Tamil escorts 7877702510Vipesco
 
BDSM⚡Call Girls in Sector 93 Noida Escorts >༒8448380779 Escort Service
BDSM⚡Call Girls in Sector 93 Noida Escorts >༒8448380779 Escort ServiceBDSM⚡Call Girls in Sector 93 Noida Escorts >༒8448380779 Escort Service
BDSM⚡Call Girls in Sector 93 Noida Escorts >༒8448380779 Escort ServiceDelhi Call girls
 
If this Giant Must Walk: A Manifesto for a New Nigeria
If this Giant Must Walk: A Manifesto for a New NigeriaIf this Giant Must Walk: A Manifesto for a New Nigeria
If this Giant Must Walk: A Manifesto for a New NigeriaKayode Fayemi
 
Navi Mumbai Call Girls Service Pooja 9892124323 Real Russian Girls Looking Mo...
Navi Mumbai Call Girls Service Pooja 9892124323 Real Russian Girls Looking Mo...Navi Mumbai Call Girls Service Pooja 9892124323 Real Russian Girls Looking Mo...
Navi Mumbai Call Girls Service Pooja 9892124323 Real Russian Girls Looking Mo...Pooja Nehwal
 
George Lever - eCommerce Day Chile 2024
George Lever -  eCommerce Day Chile 2024George Lever -  eCommerce Day Chile 2024
George Lever - eCommerce Day Chile 2024eCommerce Institute
 
Mathematics of Finance Presentation.pptx
Mathematics of Finance Presentation.pptxMathematics of Finance Presentation.pptx
Mathematics of Finance Presentation.pptxMoumonDas2
 
VVIP Call Girls Nalasopara : 9892124323, Call Girls in Nalasopara Services
VVIP Call Girls Nalasopara : 9892124323, Call Girls in Nalasopara ServicesVVIP Call Girls Nalasopara : 9892124323, Call Girls in Nalasopara Services
VVIP Call Girls Nalasopara : 9892124323, Call Girls in Nalasopara ServicesPooja Nehwal
 
Introduction to Prompt Engineering (Focusing on ChatGPT)
Introduction to Prompt Engineering (Focusing on ChatGPT)Introduction to Prompt Engineering (Focusing on ChatGPT)
Introduction to Prompt Engineering (Focusing on ChatGPT)Chameera Dedduwage
 
No Advance 8868886958 Chandigarh Call Girls , Indian Call Girls For Full Nigh...
No Advance 8868886958 Chandigarh Call Girls , Indian Call Girls For Full Nigh...No Advance 8868886958 Chandigarh Call Girls , Indian Call Girls For Full Nigh...
No Advance 8868886958 Chandigarh Call Girls , Indian Call Girls For Full Nigh...Sheetaleventcompany
 
Chiulli_Aurora_Oman_Raffaele_Beowulf.pptx
Chiulli_Aurora_Oman_Raffaele_Beowulf.pptxChiulli_Aurora_Oman_Raffaele_Beowulf.pptx
Chiulli_Aurora_Oman_Raffaele_Beowulf.pptxraffaeleoman
 
CTAC 2024 Valencia - Henrik Hanke - Reduce to the max - slideshare.pdf
CTAC 2024 Valencia - Henrik Hanke - Reduce to the max - slideshare.pdfCTAC 2024 Valencia - Henrik Hanke - Reduce to the max - slideshare.pdf
CTAC 2024 Valencia - Henrik Hanke - Reduce to the max - slideshare.pdfhenrik385807
 
WhatsApp 📞 9892124323 ✅Call Girls In Juhu ( Mumbai )
WhatsApp 📞 9892124323 ✅Call Girls In Juhu ( Mumbai )WhatsApp 📞 9892124323 ✅Call Girls In Juhu ( Mumbai )
WhatsApp 📞 9892124323 ✅Call Girls In Juhu ( Mumbai )Pooja Nehwal
 
Andrés Ramírez Gossler, Facundo Schinnea - eCommerce Day Chile 2024
Andrés Ramírez Gossler, Facundo Schinnea - eCommerce Day Chile 2024Andrés Ramírez Gossler, Facundo Schinnea - eCommerce Day Chile 2024
Andrés Ramírez Gossler, Facundo Schinnea - eCommerce Day Chile 2024eCommerce Institute
 
Mohammad_Alnahdi_Oral_Presentation_Assignment.pptx
Mohammad_Alnahdi_Oral_Presentation_Assignment.pptxMohammad_Alnahdi_Oral_Presentation_Assignment.pptx
Mohammad_Alnahdi_Oral_Presentation_Assignment.pptxmohammadalnahdi22
 
Presentation on Engagement in Book Clubs
Presentation on Engagement in Book ClubsPresentation on Engagement in Book Clubs
Presentation on Engagement in Book Clubssamaasim06
 
SaaStr Workshop Wednesday w/ Lucas Price, Yardstick
SaaStr Workshop Wednesday w/ Lucas Price, YardstickSaaStr Workshop Wednesday w/ Lucas Price, Yardstick
SaaStr Workshop Wednesday w/ Lucas Price, Yardsticksaastr
 

Recently uploaded (20)

Governance and Nation-Building in Nigeria: Some Reflections on Options for Po...
Governance and Nation-Building in Nigeria: Some Reflections on Options for Po...Governance and Nation-Building in Nigeria: Some Reflections on Options for Po...
Governance and Nation-Building in Nigeria: Some Reflections on Options for Po...
 
CTAC 2024 Valencia - Sven Zoelle - Most Crucial Invest to Digitalisation_slid...
CTAC 2024 Valencia - Sven Zoelle - Most Crucial Invest to Digitalisation_slid...CTAC 2024 Valencia - Sven Zoelle - Most Crucial Invest to Digitalisation_slid...
CTAC 2024 Valencia - Sven Zoelle - Most Crucial Invest to Digitalisation_slid...
 
ANCHORING SCRIPT FOR A CULTURAL EVENT.docx
ANCHORING SCRIPT FOR A CULTURAL EVENT.docxANCHORING SCRIPT FOR A CULTURAL EVENT.docx
ANCHORING SCRIPT FOR A CULTURAL EVENT.docx
 
Re-membering the Bard: Revisiting The Compleat Wrks of Wllm Shkspr (Abridged)...
Re-membering the Bard: Revisiting The Compleat Wrks of Wllm Shkspr (Abridged)...Re-membering the Bard: Revisiting The Compleat Wrks of Wllm Shkspr (Abridged)...
Re-membering the Bard: Revisiting The Compleat Wrks of Wllm Shkspr (Abridged)...
 
Thirunelveli call girls Tamil escorts 7877702510
Thirunelveli call girls Tamil escorts 7877702510Thirunelveli call girls Tamil escorts 7877702510
Thirunelveli call girls Tamil escorts 7877702510
 
BDSM⚡Call Girls in Sector 93 Noida Escorts >༒8448380779 Escort Service
BDSM⚡Call Girls in Sector 93 Noida Escorts >༒8448380779 Escort ServiceBDSM⚡Call Girls in Sector 93 Noida Escorts >༒8448380779 Escort Service
BDSM⚡Call Girls in Sector 93 Noida Escorts >༒8448380779 Escort Service
 
If this Giant Must Walk: A Manifesto for a New Nigeria
If this Giant Must Walk: A Manifesto for a New NigeriaIf this Giant Must Walk: A Manifesto for a New Nigeria
If this Giant Must Walk: A Manifesto for a New Nigeria
 
Navi Mumbai Call Girls Service Pooja 9892124323 Real Russian Girls Looking Mo...
Navi Mumbai Call Girls Service Pooja 9892124323 Real Russian Girls Looking Mo...Navi Mumbai Call Girls Service Pooja 9892124323 Real Russian Girls Looking Mo...
Navi Mumbai Call Girls Service Pooja 9892124323 Real Russian Girls Looking Mo...
 
George Lever - eCommerce Day Chile 2024
George Lever -  eCommerce Day Chile 2024George Lever -  eCommerce Day Chile 2024
George Lever - eCommerce Day Chile 2024
 
Mathematics of Finance Presentation.pptx
Mathematics of Finance Presentation.pptxMathematics of Finance Presentation.pptx
Mathematics of Finance Presentation.pptx
 
VVIP Call Girls Nalasopara : 9892124323, Call Girls in Nalasopara Services
VVIP Call Girls Nalasopara : 9892124323, Call Girls in Nalasopara ServicesVVIP Call Girls Nalasopara : 9892124323, Call Girls in Nalasopara Services
VVIP Call Girls Nalasopara : 9892124323, Call Girls in Nalasopara Services
 
Introduction to Prompt Engineering (Focusing on ChatGPT)
Introduction to Prompt Engineering (Focusing on ChatGPT)Introduction to Prompt Engineering (Focusing on ChatGPT)
Introduction to Prompt Engineering (Focusing on ChatGPT)
 
No Advance 8868886958 Chandigarh Call Girls , Indian Call Girls For Full Nigh...
No Advance 8868886958 Chandigarh Call Girls , Indian Call Girls For Full Nigh...No Advance 8868886958 Chandigarh Call Girls , Indian Call Girls For Full Nigh...
No Advance 8868886958 Chandigarh Call Girls , Indian Call Girls For Full Nigh...
 
Chiulli_Aurora_Oman_Raffaele_Beowulf.pptx
Chiulli_Aurora_Oman_Raffaele_Beowulf.pptxChiulli_Aurora_Oman_Raffaele_Beowulf.pptx
Chiulli_Aurora_Oman_Raffaele_Beowulf.pptx
 
CTAC 2024 Valencia - Henrik Hanke - Reduce to the max - slideshare.pdf
CTAC 2024 Valencia - Henrik Hanke - Reduce to the max - slideshare.pdfCTAC 2024 Valencia - Henrik Hanke - Reduce to the max - slideshare.pdf
CTAC 2024 Valencia - Henrik Hanke - Reduce to the max - slideshare.pdf
 
WhatsApp 📞 9892124323 ✅Call Girls In Juhu ( Mumbai )
WhatsApp 📞 9892124323 ✅Call Girls In Juhu ( Mumbai )WhatsApp 📞 9892124323 ✅Call Girls In Juhu ( Mumbai )
WhatsApp 📞 9892124323 ✅Call Girls In Juhu ( Mumbai )
 
Andrés Ramírez Gossler, Facundo Schinnea - eCommerce Day Chile 2024
Andrés Ramírez Gossler, Facundo Schinnea - eCommerce Day Chile 2024Andrés Ramírez Gossler, Facundo Schinnea - eCommerce Day Chile 2024
Andrés Ramírez Gossler, Facundo Schinnea - eCommerce Day Chile 2024
 
Mohammad_Alnahdi_Oral_Presentation_Assignment.pptx
Mohammad_Alnahdi_Oral_Presentation_Assignment.pptxMohammad_Alnahdi_Oral_Presentation_Assignment.pptx
Mohammad_Alnahdi_Oral_Presentation_Assignment.pptx
 
Presentation on Engagement in Book Clubs
Presentation on Engagement in Book ClubsPresentation on Engagement in Book Clubs
Presentation on Engagement in Book Clubs
 
SaaStr Workshop Wednesday w/ Lucas Price, Yardstick
SaaStr Workshop Wednesday w/ Lucas Price, YardstickSaaStr Workshop Wednesday w/ Lucas Price, Yardstick
SaaStr Workshop Wednesday w/ Lucas Price, Yardstick
 

Driving Engagement with User Stories

  • 1. © 2023 Thoughtworks Driving Engagement with User Stories Vishal Prasad (he/him)
  • 2. © 2023 Thoughtworks 2 Unlearn to Relearn Part 1. Agenda ● This is fast paced interactive workshop (~20 mins per part) ● Timebox must be respected, follow the law of the facilitator ● When time can’t be bought, use the parking lot Things to know Refine new Learnings Part 2. Specification by Example Part 3. Housekeeping Discussions Part 4. 13:40 © 2023 Thoughtworks
  • 3. © 2023 Thoughtworks Part One: Unlearn to Relearn 13:40
  • 4. © 2023 Thoughtworks What is a User Story? 4 13:43 2 mins
  • 5. © 2023 Thoughtworks In a written form, a user story describes functionality that will be valuable to either a user or purchaser of a system or software. 5 13:46 © 2023 Thoughtworks
  • 6. © 2023 Thoughtworks What are the various components or sections of a User Story? 3 mins 13:49 ● Add as many components or sections you can think of ● Add only one item on one sticky ● Duplicates are fine
  • 7. © 2023 Thoughtworks 7 a written description for planning and a reminder Card. User stories are composed of 3 aspects Source: Ron Jeffries | Rachel Davies Anchored with the belief that software requirements is a communication problem to flesh out the details of the requirement Conversation. tests that convey & document details to determine completion Confirmation. 13:52 © 2023 Thoughtworks
  • 8. © 2023 Thoughtworks User Stories have no fixed structure as long as the 3Cs are managed. 13:52
  • 9. © 2023 Thoughtworks Exercise Zero Write a User Story to view your emails 3 mins in groups of 3 13:55 ● Begin with a goal that a user wants to achieve ● Have a conversation to agree upon what is needed ● Identify as many test cases as possible
  • 10. © 2023 Thoughtworks Part Two: Refine new Learnings 13:55
  • 11. © 2023 Thoughtworks ● Why write user story on cards? ● Why hold these conversations? ● Why not just continue writing requirement documents or use cases? ● What’s new with user stories? Why use User Stories? Why Change? 13:58
  • 13. © 2023 Thoughtworks The customer gets a Peanut Butter & Jelly Sandwich when ordered 14:10
  • 14. © 2023 Thoughtworks The customer gets a Peanut Butter & Jelly Sandwich when ordered ● The sandwich is 3 inches wide and 4 inches long ● The sandwich has exactly 2 pieces of bread (slice 1 & 2) ● One face of bread slice 1 has 10gm peanut butter evenly spread ● One face of bread slice 2 has 10gm jelly evenly spread ● Customer doesn’t get Peanut Butter & Jelly on their hands when holding the sandwich 14:10
  • 15. © 2023 Thoughtworks ● Contrary to common belief, reducing the amount of instructions can yield better results if the constraints are well-defined. The customer gets a Peanut Butter & Jelly Sandwich when ordered ● The sandwich is 3 inches wide and 4 inches long ● The sandwich has exactly 2 pieces of bread (slice 1 & 2) ● One face of bread slice 1 has 10gm peanut butter evenly spread ● One face of bread slice 2 has 10gm jelly evenly spread ● Customer doesn’t get Peanut Butter & Jelly on their hands when holding the sandwich 14:10
  • 16. © 2023 Thoughtworks ● Contrary to common belief, reducing the amount of instructions can yield better results if the constraints are well-defined. ● The creation steps must be left to the people with the appropriate skills (e.g. the sandwich maker, the guitar designer, the carpenter, the electrician, the programmer, etc.) The customer gets a Peanut Butter & Jelly Sandwich when ordered ● The sandwich is 3 inches wide and 4 inches long ● The sandwich has exactly 2 pieces of bread (slice 1 & 2) ● One face of bread slice 1 has 10gm peanut butter evenly spread ● One face of bread slice 2 has 10gm jelly evenly spread ● Customer doesn’t get Peanut Butter & Jelly on their hands when holding the sandwich 14:10
  • 17. © 2023 Thoughtworks ● Contrary to common belief, reducing the amount of instructions can yield better results if the constraints are well-defined. ● The creation steps must be left to the people with the appropriate skills (e.g. the sandwich maker, the guitar designer, the carpenter, the electrician, the programmer, etc.) ● The acceptance conditions must be provided by the customer or the user of the requirement. The customer gets a Peanut Butter & Jelly Sandwich when ordered ● The sandwich is 3 inches wide and 4 inches long ● The sandwich has exactly 2 pieces of bread (slice 1 & 2) ● One face of bread slice 1 has 10gm peanut butter evenly spread ● One face of bread slice 2 has 10gm jelly evenly spread ● Customer doesn’t get Peanut Butter & Jelly on their hands when holding the sandwich 14:10
  • 18. © 2023 Thoughtworks Let’s discuss INVEST 5 mins 18 14:15 © 2023 Thoughtworks
  • 19. © 2023 Thoughtworks Part Three: Specification by Example 14:15
  • 20. © 2023 Thoughtworks 20 A collaborative method for specifying requirements and tests to: ● produce a living, reliable documentation ● define expectations clearly and make validation efficient ● reduce rework ● assure delivery teams and business stakeholders that the software built is right for its purpose Specification by Example a Single source of Truth 14:20
  • 21. © 2023 Thoughtworks 21 What problem are we trying to solve? Business. Three Amigos The primary perspectives to examine an increment of work before, during, and after development How might we build a solution to solve that problem? Development. What about this, what could possibly happen? Testing. 14:20 © 2023 Thoughtworks
  • 22. © 2023 Thoughtworks Acceptance Test Driven Development 14:20 Three Amigos in Action discussing Valet Parking (Source: Markus Gärtner)
  • 23. © 2023 Thoughtworks Acceptance Test Driven Development 14:20 Three Amigos in Action discussing Valet Parking (Source: Markus Gärtner) Dev Let’s discuss the parking lot cost calculation requirements.
  • 24. © 2023 Thoughtworks Acceptance Test Driven Development 14:20 Three Amigos in Action discussing Valet Parking (Source: Markus Gärtner) Dev Let’s discuss the parking lot cost calculation requirements. Biz We have 3 types of parking lots. Some have costs per hour, some per day, some have a daily or weekly maximum.
  • 25. © 2023 Thoughtworks Acceptance Test Driven Development 14:20 Three Amigos in Action discussing Valet Parking (Source: Markus Gärtner) Dev Let’s discuss the parking lot cost calculation requirements. Biz We have 3 types of parking lots. Some have costs per hour, some per day, some have a daily or weekly maximum. Dev How do you refer to the different parking lots? Are there names for them?
  • 26. © 2023 Thoughtworks Acceptance Test Driven Development Biz Valet parking, short-term parking, and regular parking. If you lose your ticket, you will be charged a fee of $10.00. 14:20 Three Amigos in Action discussing Valet Parking (Source: Markus Gärtner)
  • 27. © 2023 Thoughtworks Acceptance Test Driven Development Biz Valet parking, short-term parking, and regular parking. If you lose your ticket, you will be charged a fee of $10.00. Dev Let’s concentrate on the 3 types. What’s the difference between them? 14:20 Three Amigos in Action discussing Valet Parking (Source: Markus Gärtner)
  • 28. © 2023 Thoughtworks Acceptance Test Driven Development Biz Valet parking, short-term parking, and regular parking. If you lose your ticket, you will be charged a fee of $10.00. Dev Let’s concentrate on the 3 types. What’s the difference between them? Biz For valet parking, the passenger drops his or her car off at the valet drop off and gets a receipt to get the car back. 14:20 Three Amigos in Action discussing Valet Parking (Source: Markus Gärtner)
  • 29. © 2023 Thoughtworks Acceptance Test Driven Development Dev What can you tell us about parking costs? 14:20 Three Amigos in Action discussing Valet Parking (Source: Markus Gärtner)
  • 30. © 2023 Thoughtworks Acceptance Test Driven Development Dev What can you tell us about parking costs? Biz Valet parking costs $18.00 per day. For 5 hours or less you get a reduction of $6.00. 14:20 Three Amigos in Action discussing Valet Parking (Source: Markus Gärtner)
  • 31. © 2023 Thoughtworks Acceptance Test Driven Development Dev What can you tell us about parking costs? Biz Valet parking costs $18.00 per day. For 5 hours or less you get a reduction of $6.00. Test Wait a moment, you mean for even 30 minutes I get charged $12.00, for 3 hours I have to pay the same, as well as for 5 hours? But for 5 hour and 1 minute I have to pay $18.00 as well as for 12 or 24 hours? 14:20 Three Amigos in Action discussing Valet Parking (Source: Markus Gärtner)
  • 32. © 2023 Thoughtworks Acceptance Test Driven Development Biz Yes, absolutely right. 14:20 Three Amigos in Action discussing Valet Parking (Source: Markus Gärtner)
  • 33. © 2023 Thoughtworks Acceptance Test Driven Development Biz Yes, absolutely right. Test What about 24 hours and 1 minute? Would this be $30.00 then, or $36.00? 14:20 Three Amigos in Action discussing Valet Parking (Source: Markus Gärtner)
  • 34. © 2023 Thoughtworks Acceptance Test Driven Development Biz Yes, absolutely right. Biz Oh, that is of course $36.00. Test What about 24 hours and 1 minute? Would this be $30.00 then, or $36.00? 14:20 Three Amigos in Action discussing Valet Parking (Source: Markus Gärtner)
  • 35. © 2023 Thoughtworks Acceptance Test Driven Development Dev What about weekly limits? Are there any for valet parking? 14:20 Three Amigos in Action discussing Valet Parking (Source: Markus Gärtner)
  • 36. © 2023 Thoughtworks Acceptance Test Driven Development Biz No that’s basically all there is for valet parking. Dev What about weekly limits? Are there any for valet parking? 14:20 Three Amigos in Action discussing Valet Parking (Source: Markus Gärtner)
  • 37. © 2023 Thoughtworks Acceptance Test Driven Development Biz No that’s basically all there is for valet parking. Test OK, then let me write these down as examples. Dev What about weekly limits? Are there any for valet parking? 14:20 Three Amigos in Action discussing Valet Parking (Source: Markus Gärtner)
  • 38. © 2023 Thoughtworks Acceptance Test Driven Development Dev What about weekly limits? Are there any for valet parking? 14:20 Three Amigos in Action discussing Valet Parking (Source: Markus Gärtner)
  • 39. © 2023 Thoughtworks Acceptance Test Driven Development Dev What about weekly limits? Are there any for valet parking? Biz No that’s basically all there is for valet parking. 14:20 Three Amigos in Action discussing Valet Parking (Source: Markus Gärtner)
  • 40. © 2023 Thoughtworks Acceptance Test Driven Development Dev What about weekly limits? Are there any for valet parking? Biz No that’s basically all there is for valet parking. Test OK, then let me write these down as examples. 14:20 Three Amigos in Action discussing Valet Parking (Source: Markus Gärtner)
  • 41. © 2023 Thoughtworks Acceptance Test Driven Development Dev What about weekly limits? Are there any for valet parking? Biz No that’s basically all there is for valet parking. Test OK, then let me write these down as examples. Parking Duration Parking Costs 30 minutes $12.00 3 hours $12.00 5 hours $12.00 5 hours 1 minute $18.00 12 hours $18.00 24 hours $18.00 1 day 1 minute $36.00 3 days $54.00 1 week $126.00 14:20 Three Amigos in Action discussing Valet Parking (Source: Markus Gärtner)
  • 42. © 2023 Thoughtworks Behaviour-driven development (BDD) takes the position that you can turn an idea for a requirement into implemented, tested, production-ready code simply and effectively, as long as the requirement is specific enough that everyone knows what’s going on. To do this, we need a way to describe the requirement such that everyone – the business folks, the analyst, the developer and the tester – have a common understanding of the scope of the work. From this they can agree a common definition of “done”, and we escape the dual gumption traps of “that’s not what I asked for” or “I forgot to tell you about this other thing”. 14:25 - Dan North
  • 43. © 2023 Thoughtworks Behaviour Driven Development with Gherkin 14:25 Each line that isn’t a blank line has to start with a Gherkin keyword, followed by any text you like. The only exceptions are the free-form descriptions placed underneath Example / Scenario, Background, Scenario Outline and Rule lines. The primary keywords are: ● Feature ● Rule (as of Gherkin 6) ● Example (or Scenario) ● Given, When, Then, And, But for steps (or *) ● Background ● Scenario Outline (or Scenario Template) ● Examples (or Scenarios)
  • 44. © 2023 Thoughtworks Securing your emails expressed in Gherkin 14:30 Feature: Advanced Authentication As an Email User, I want to secure my account so only I see my emails Background: Given email domain is “thoughtworks” And accessing IP is “unrestricted” Example: Accessing emails from a new IP Given “jon” is accessing emails When logged in IP has never been used Then email “jon” the new location info Scenario Outline: SSO response messages Given auth token doesn’t exist for <id> When SSO authentication is requested And <response> is received Then denote <message> Examples: |id |response |message | |jon |unrestricted |authenticated| |sal |restricted |restricted | |wolf|invalid |invalid | |jon |service down |unreachable |
  • 45. © 2023 Thoughtworks Viewing your emails expressed in Gherkin 14:35
  • 46. © 2023 Thoughtworks Part Four: Housekeeping Discussions 14:35
  • 47. © 2023 Thoughtworks Guidelines for Good User Stories 14:40 Source: Mike Cohn
  • 48. © 2023 Thoughtworks Guidelines for Good User Stories 14:40 Source: Mike Cohn ● Start with Goal Stories; these can then be used to generate additional stories
  • 49. © 2023 Thoughtworks Guidelines for Good User Stories 14:40 Source: Mike Cohn ● Start with Goal Stories; these can then be used to generate additional stories ● Slice the Cake; do not split stories around technical lines, follow INVEST
  • 50. © 2023 Thoughtworks Guidelines for Good User Stories 14:40 Source: Mike Cohn ● Start with Goal Stories; these can then be used to generate additional stories ● Slice the Cake; do not split stories around technical lines, follow INVEST ● Write Closed Stories; a story that finishes by achieving a meaningful goal
  • 51. © 2023 Thoughtworks Guidelines for Good User Stories 14:40 Source: Mike Cohn ● Start with Goal Stories; these can then be used to generate additional stories ● Slice the Cake; do not split stories around technical lines, follow INVEST ● Write Closed Stories; a story that finishes by achieving a meaningful goal ● Put Constraints on Cards; these are NFRs that must be obeyed and can apply to multiple stories
  • 52. © 2023 Thoughtworks Guidelines for Good User Stories 14:40 Source: Mike Cohn ● Start with Goal Stories; these can then be used to generate additional stories ● Slice the Cake; do not split stories around technical lines, follow INVEST ● Write Closed Stories; a story that finishes by achieving a meaningful goal ● Put Constraints on Cards; these are NFRs that must be obeyed and can apply to multiple stories ● Keep UI Out as Long as Possible; use supplements to denote these
  • 53. © 2023 Thoughtworks Guidelines for Good User Stories 14:40 Source: Mike Cohn ● Start with Goal Stories; these can then be used to generate additional stories ● Slice the Cake; do not split stories around technical lines, follow INVEST ● Write Closed Stories; a story that finishes by achieving a meaningful goal ● Put Constraints on Cards; these are NFRs that must be obeyed and can apply to multiple stories ● Keep UI Out as Long as Possible; use supplements to denote these ● Include User Roles in the Stories; instead of “a user”
  • 54. © 2023 Thoughtworks Guidelines for Good User Stories 14:40 Source: Mike Cohn ● Start with Goal Stories; these can then be used to generate additional stories ● Slice the Cake; do not split stories around technical lines, follow INVEST ● Write Closed Stories; a story that finishes by achieving a meaningful goal ● Put Constraints on Cards; these are NFRs that must be obeyed and can apply to multiple stories ● Keep UI Out as Long as Possible; use supplements to denote these ● Include User Roles in the Stories; instead of “a user” ● Some Things Aren’t Stories; use supplements to denote these, e.g. UI guidelines, API details, Compliance Docs, etc.
  • 55. © 2023 Thoughtworks Guidelines for Good User Stories 14:40 Source: Mike Cohn ● Start with Goal Stories; these can then be used to generate additional stories ● Slice the Cake; do not split stories around technical lines, follow INVEST ● Write Closed Stories; a story that finishes by achieving a meaningful goal ● Put Constraints on Cards; these are NFRs that must be obeyed and can apply to multiple stories ● Keep UI Out as Long as Possible; use supplements to denote these ● Include User Roles in the Stories; instead of “a user” ● Some Things Aren’t Stories; use supplements to denote these, e.g. UI guidelines, API details, Compliance Docs, etc. ● One card is written for one user, written in active voice, and written by the customer
  • 56. © 2023 Thoughtworks Guidelines for Good User Stories 14:40 Source: Mike Cohn ● Start with Goal Stories; these can then be used to generate additional stories ● Slice the Cake; do not split stories around technical lines, follow INVEST ● Write Closed Stories; a story that finishes by achieving a meaningful goal ● Put Constraints on Cards; these are NFRs that must be obeyed and can apply to multiple stories ● Keep UI Out as Long as Possible; use supplements to denote these ● Include User Roles in the Stories; instead of “a user” ● Some Things Aren’t Stories; use supplements to denote these, e.g. UI guidelines, API details, Compliance Docs, etc. ● One card is written for one user, written in active voice, and written by the customer ● Don’t Forget the Purpose; it’s a promise for a conversation
  • 58. © 2023 Thoughtworks Definition of Done ● A set of Passing automated tests (and a few manual tests) that confirms that a product increment is product ready 14:45
  • 59. © 2023 Thoughtworks Definition of Done ● A set of Passing automated tests (and a few manual tests) that confirms that a product increment is product ready ● May or may not be applicable to individual stories 14:45
  • 60. © 2023 Thoughtworks Definition of Done ● A set of Passing automated tests (and a few manual tests) that confirms that a product increment is product ready ● May or may not be applicable to individual stories ● Must be executed after every code commit, on an integrated environment 14:45
  • 61. © 2023 Thoughtworks Definition of Done ● A set of Passing automated tests (and a few manual tests) that confirms that a product increment is product ready ● May or may not be applicable to individual stories ● Must be executed after every code commit, on an integrated environment 14:45 Definition of Ready
  • 62. © 2023 Thoughtworks Definition of Done ● A set of Passing automated tests (and a few manual tests) that confirms that a product increment is product ready ● May or may not be applicable to individual stories ● Must be executed after every code commit, on an integrated environment 14:45 ● It is ready when the 3 amigos have identified all tests (as a part of INVEST) to be fulfilled by a story and its implementation is well understood. Definition of Ready
  • 63. © 2023 Thoughtworks Definition of Done ● A set of Passing automated tests (and a few manual tests) that confirms that a product increment is product ready ● May or may not be applicable to individual stories ● Must be executed after every code commit, on an integrated environment 14:45 ● It is ready when the 3 amigos have identified all tests (as a part of INVEST) to be fulfilled by a story and its implementation is well understood. ● This is NOT a requirements’ sign-off process Definition of Ready
  • 64. © 2023 Thoughtworks Definition of Done ● A set of Passing automated tests (and a few manual tests) that confirms that a product increment is product ready ● May or may not be applicable to individual stories ● Must be executed after every code commit, on an integrated environment 14:45 ● It is ready when the 3 amigos have identified all tests (as a part of INVEST) to be fulfilled by a story and its implementation is well understood. ● This is NOT a requirements’ sign-off process ● Probably an anti-pattern Definition of Ready
  • 65. © 2023 Thoughtworks Zero Defect Policy 14:55 An outcome of Specification by Example
  • 66. © 2023 Thoughtworks Zero Defect Policy ● Context: A common practice among teams is to have a bug triage when a defect is reported in production. As per an organisation’s Defect Management Policy, this may go under one of the few buckets like fix now, fix later, not a bug, change request, etc. 14:55 An outcome of Specification by Example
  • 67. © 2023 Thoughtworks Zero Defect Policy ● Context: A common practice among teams is to have a bug triage when a defect is reported in production. As per an organisation’s Defect Management Policy, this may go under one of the few buckets like fix now, fix later, not a bug, change request, etc. ● The dilemma is that although the engineering team may bucket these in various types, it’s always a defect for a customer / user. 14:55 An outcome of Specification by Example
  • 68. © 2023 Thoughtworks Zero Defect Policy ● By denoting requirements as tests using Specification by Example, we automate tests before coding and this ensures that no bugs enter production as per the identified tests. This is a Zero Bug Promise! 14:55 An outcome of Specification by Example
  • 69. © 2023 Thoughtworks Zero Defect Policy ● By denoting requirements as tests using Specification by Example, we automate tests before coding and this ensures that no bugs enter production as per the identified tests. This is a Zero Bug Promise! ● This does not mean that customers will not report bugs in the future, however when that happens, it would qualify as a missing test. This eliminates a wasteful triage activity. 14:55 An outcome of Specification by Example
  • 70. © 2023 Thoughtworks Zero Defect Policy ● By denoting requirements as tests using Specification by Example, we automate tests before coding and this ensures that no bugs enter production as per the identified tests. This is a Zero Bug Promise! ● This does not mean that customers will not report bugs in the future, however when that happens, it would qualify as a missing test. This eliminates a wasteful triage activity. 70 An outcome of Specification by Example This is only one way of delivering a Zero Bug Promise!
  • 71. © 2023 Thoughtworks Keep in touch Vishal Prasad Thoughtworker vishalp@thoughtworks.com