More Related Content Similar to Techniques for Effectively Slicing User Stories by Naresh Jain (20) More from Naresh Jain (20) Techniques for Effectively Slicing User Stories by Naresh Jain1. Techniques for
Effectively Slicing
User Stories
Workshop
Naresh Jain
naresh@agilefaqs.com
@nashjain
http://nareshjain.com
Copyright © 2014, AgileFAQs. All Rights Reserved.
2. Agenda
Quick intro to user stories
Spike, Split, Stub & Timebox (SSST) technique to manage large stories
Splitting metaphor
Specific techniques to split stories
High-level techniques to create and prioritise stories
Copyright © 2014, AgileFAQs. All Rights Reserved.
3. User Stories
What are we really trying to build?
Copyright © 2014, AgileFAQs. All Rights Reserved.
4. What is a Story?
Copyright © 2014, AgileFAQs. All Rights Reserved.
5. What is a Story?
Story is a smallest piece of functionality that add business value
Copyright © 2014, AgileFAQs. All Rights Reserved.
6. What is a Story?
Story is a smallest piece of functionality that add business value
Stories should follow Ron Jeffries’ 3 Cs
Card – Placeholder for conversation
Conversation – Actual discussion between dev team and user
Confirmation – Acceptance criteria to determine when the story is finished
Copyright © 2014, AgileFAQs. All Rights Reserved.
7. Typical Story Format
Story Title - Actor Action Context
Copyright © 2014, AgileFAQs. All Rights Reserved.
8. Typical Story Format
Story Title - Actor Action Context
As a .. <user who requires this feature>
Copyright © 2014, AgileFAQs. All Rights Reserved.
9. Typical Story Format
Story Title - Actor Action Context
As a .. <user who requires this feature>
I want .. <do something>
Copyright © 2014, AgileFAQs. All Rights Reserved.
10. Typical Story Format
Story Title - Actor Action Context
As a .. <user who requires this feature>
I want .. <do something>
So that... <user goal/business justification>
Copyright © 2014, AgileFAQs. All Rights Reserved.
11. Story Example
Title: Keen Reader subscribes to a blog
As a keen reader of your blog
I want to subscribe to your blog
So that I can stay up-to-date with the new posts
Copyright © 2014, AgileFAQs. All Rights Reserved.
12. Another Story Example
Copyright © 2014, AgileFAQs. All Rights Reserved.
!
Title: Social Networking Enthusiast uploads profile picture
As a Social Networking Enthusiast
I want to upload my profile picture
So my friends can see how I look and recognise me
13. What makes a good Story?
Copyright © 2014, AgileFAQs. All Rights Reserved.
14. What makes a good Story?
Stories should follow the INVEST principle:
Copyright © 2014, AgileFAQs. All Rights Reserved.
15. What makes a good Story?
Stories should follow the INVEST principle:
Independent
Copyright © 2014, AgileFAQs. All Rights Reserved.
16. What makes a good Story?
Stories should follow the INVEST principle:
Independent
Negotiable
Copyright © 2014, AgileFAQs. All Rights Reserved.
17. What makes a good Story?
Stories should follow the INVEST principle:
Independent
Negotiable
Valuable
Copyright © 2014, AgileFAQs. All Rights Reserved.
18. What makes a good Story?
Stories should follow the INVEST principle:
Independent
Negotiable
Valuable
Estimate-able
Copyright © 2014, AgileFAQs. All Rights Reserved.
19. What makes a good Story?
Stories should follow the INVEST principle:
Independent
Negotiable
Valuable
Estimate-able
Small
Copyright © 2014, AgileFAQs. All Rights Reserved.
20. What makes a good Story?
Stories should follow the INVEST principle:
Independent
Negotiable
Valuable
Estimate-able
Small
Testable
Copyright © 2014, AgileFAQs. All Rights Reserved.
21. What do you do to Large Stories?
James Grenning - Story Weight Reduction Toolkit!
http://www.renaissancesoftware.net/blog/archives/48
Copyright © 2014, AgileFAQs. All Rights Reserved.
22. What do you do to Large Stories?
Copyright © 2014, AgileFAQs. All Rights Reserved.
SSST
Spike
Slice
Stub
Time-box
James Grenning - Story Weight Reduction Toolkit!
http://www.renaissancesoftware.net/blog/archives/48
23. Breakout Session
Story writing exercise
Break out into groups of 3-5 people
Business Problem: Casual daters search for matches online
Use process model to drive out the stories
Keep in mind:
Format: As X I want to Y so I can Z
INVEST principle
Consistent granularity
Copyright © 2014, AgileFAQs. All Rights Reserved.
25. Stories are fundamental unit of activity
Copyright © 2014, AgileFAQs. All Rights Reserved.
Business Goals
User Goals
26. Stories are fundamental unit of activity
Copyright © 2014, AgileFAQs. All Rights Reserved.
Discovery
Business Goals
User Goals
27. Stories are fundamental unit of activity
Product Backlog
As a ____, I want to
be able to ____ so
that ____
Discovery
Might have an initial estimate
(perhaps for both analysis
and development), and an
expression of technical and
business confidence that this
Copyright © 2014, AgileFAQs. All Rights Reserved.
is real and achievable
Business Goals
User Goals
28. Stories are fundamental unit of activity
Product Backlog
As a ____, I want to
be able to ____ so
that ____
Might have an initial estimate
(perhaps for both analysis
and development), and an
expression of technical and
business confidence that this
Copyright © 2014, AgileFAQs. All Rights Reserved.
is real and achievable
Release planning
Discovery
Business Goals
User Goals
29. Stories are fundamental unit of activity
Product Backlog
As a ____, I want to
be able to ____ so
that ____
Might have an initial estimate
(perhaps for both analysis
and development), and an
expression of technical and
business confidence that this
Release Backlog
Release planning
Copyright © 2014, AgileFAQs. All Rights Reserved.
is real and achievable
As a ____, I want to
be able to ____ so
that ____
I will know this is done
when _______
More detailed estimate, and a
specific acceptance test – low
confidence stories might be
“spiked” or prototyped
Discovery
Business Goals
User Goals
30. Stories are fundamental unit of activity
Product Backlog
As a ____, I want to
be able to ____ so
that ____
Might have an initial estimate
(perhaps for both analysis
and development), and an
expression of technical and
business confidence that this
Release Backlog
Release planning Iteration planning
Copyright © 2014, AgileFAQs. All Rights Reserved.
is real and achievable
As a ____, I want to
be able to ____ so
that ____
I will know this is done
when _______
More detailed estimate, and a
specific acceptance test – low
confidence stories might be
“spiked” or prototyped
Discovery
Business Goals
User Goals
31. Stories are fundamental unit of activity
Product Backlog
As a ____, I want to
be able to ____ so
that ____
Might have an initial estimate
(perhaps for both analysis
and development), and an
expression of technical and
business confidence that this
Release Backlog
Copyright © 2014, AgileFAQs. All Rights Reserved.
is real and achievable
As a ____, I want to
be able to ____ so
that ____
I will know this is done
when _______
More detailed estimate, and a
specific acceptance test – low
confidence stories might be
“spiked” or prototyped
Iteration Backlog
As a ____, I want to
be able to ____ so
that ____
I will know this is done
when _______
To do this I must:
1) _____
2) _____
Possible automation
of the acceptance
test
Development team
breaks out the detail
of work needed to
pass test
Release planning Iteration planning
Discovery
Business Goals
User Goals
33. 8 Guests - How would you share this cake?
Copyright © 2014, AgileFAQs. All Rights Reserved.
38. Social Networking Enthusiast uploads profile picture
Copyright © 2014, AgileFAQs. All Rights Reserved.
!
As a Social Networking Enthusiast
I want to upload my profile picture
So my friends can see how I look and recognise me
40. Acceptance Criteria
Acceptance Criteria should contain:
ACTOR
VERB – DESCRIBING A BEHAVIOUR
OBSERVABLE RESULT
!
To accommodate pre-conditions Acceptance Criteria can be expressed as
Given [Precondition]
When [Actor + Action]
Then [Observable Result]
Copyright © 2014, AgileFAQs. All Rights Reserved.
42. Example
Given the user has a valid facebook account and a digital picture on her computer,
When she uploads a picture in facebook,
Then her the picture should be visible to all her friends in her network.
Copyright © 2014, AgileFAQs. All Rights Reserved.
43. Example
Given the user has a valid facebook account and a digital picture on her computer,
When she uploads a picture in facebook,
Then her the picture should be visible to all her friends in her network.
Given an user is trying to find a friend on facebook,
When the user searches for a person using their name,
Then their profile picture should be displayed along with other details.
Copyright © 2014, AgileFAQs. All Rights Reserved.
44. Example
Given the user has a valid facebook account and a digital picture on her computer,
When she uploads a picture in facebook,
Then her the picture should be visible to all her friends in her network.
Given an user is trying to find a friend on facebook,
When the user searches for a person using their name,
Then their profile picture should be displayed along with other details.
As owner of facebook,
I want users to upload authentic, personal profile picture,
So facebook's reputation remains intact and facebook stays out of legal hassles.
Copyright © 2014, AgileFAQs. All Rights Reserved.
45. Roles & Permissions
Administration
Example
Copyright © 2014, AgileFAQs. All Rights Reserved.
48. Let’s decompose this…
Add new role
Delete existing role
Copy existing role
Update permissions
Search roles
Copyright © 2014, AgileFAQs. All Rights Reserved.
49. From a technical point of view
Left & Right Pane
Client side Search functionality
Tree Structure for Permissions
CRUD Services for Roles
Read & Update Service for Permissions
Copyright © 2014, AgileFAQs. All Rights Reserved.
50. Story Slicing - 1
Read-only view of Roles & Permissions
Left & Right Pane
Display permissions in a table
Read Service for Roles
Read Service for Permissions
Copyright © 2014, AgileFAQs. All Rights Reserved.
51. Story Slicing - 2
Ability to Update Permissions
Tree Structure for Permissions
Update Service for Permissions
Copyright © 2014, AgileFAQs. All Rights Reserved.
52. Story Slicing - 3
Add new role
Copy functionality in UI
Create Services for Roles
Copyright © 2014, AgileFAQs. All Rights Reserved.
53. Story Slicing - 4
Delete existing role
Delete functionality in UI
Delete Services for Roles
Client side Search functionality
Copyright © 2014, AgileFAQs. All Rights Reserved.
54. What Slicing Technique did we use?
We started with read-only version and gradually added the ability to update
permissions and add new roles.
In other words - We increased the sophistication of the feature.
Copyright © 2014, AgileFAQs. All Rights Reserved.
58. Story Slicing - 1
Full on-screen report for most common occupancy type
Copyright © 2014, AgileFAQs. All Rights Reserved.
59. Story Slicing - 2
Full on-screen report for most common occupancy type but can be filtered
by a date-range.
Copyright © 2014, AgileFAQs. All Rights Reserved.
60. Story Slicing - 3
Full on-screen report for most common occupancy type but can be filtered
by a date-range and room type.
Copyright © 2014, AgileFAQs. All Rights Reserved.
61. Story Slicing - 4
Delta on-screen report for most common occupancy type but can be filtered
by a date-range and room type.
Copyright © 2014, AgileFAQs. All Rights Reserved.
62. Story Slicing - 5
Delta on-screen report for all occupancy type but can be filtered by a date-range
and room type.
Copyright © 2014, AgileFAQs. All Rights Reserved.
63. Story Slicing - 6
Add support for different report formats.
Copyright © 2014, AgileFAQs. All Rights Reserved.
64. What Slicing Technique did we use?
We started with showing most common, full data and then added more filters
to fine tune the data.
In other words - We sophisticated the feature by adding more filters.
Copyright © 2014, AgileFAQs. All Rights Reserved.
68. Other Slicing Techniques
System Slice
Static vs. Dynamic
Real-time vs. Batch Processing
Copyright © 2014, AgileFAQs. All Rights Reserved.
69. Other Slicing Techniques
System Slice
Static vs. Dynamic
Real-time vs. Batch Processing
Build vs. Buy
Copyright © 2014, AgileFAQs. All Rights Reserved.
70. Other Slicing Techniques
System Slice
Static vs. Dynamic
Real-time vs. Batch Processing
Build vs. Buy
Automated vs. Manual Steps
Copyright © 2014, AgileFAQs. All Rights Reserved.
71. Other Slicing Techniques
System Slice
Static vs. Dynamic
Real-time vs. Batch Processing
Build vs. Buy
Automated vs. Manual Steps
Defer certain roles
Copyright © 2014, AgileFAQs. All Rights Reserved.
72. Other Slicing Techniques
System Slice
Static vs. Dynamic
Real-time vs. Batch Processing
Build vs. Buy
Automated vs. Manual Steps
Defer certain roles
Behavioural Slice
Copyright © 2014, AgileFAQs. All Rights Reserved.
73. Other Slicing Techniques
System Slice
Static vs. Dynamic
Real-time vs. Batch Processing
Build vs. Buy
Automated vs. Manual Steps
Defer certain roles
Behavioural Slice
Adjusting Sophistication - MVF (Minimum Viable Feature) or Walking Skeleton
Copyright © 2014, AgileFAQs. All Rights Reserved.
74. Other Slicing Techniques
System Slice
Static vs. Dynamic
Real-time vs. Batch Processing
Build vs. Buy
Automated vs. Manual Steps
Defer certain roles
Behavioural Slice
Adjusting Sophistication - MVF (Minimum Viable Feature) or Walking Skeleton
Acceptance Criteria
Copyright © 2014, AgileFAQs. All Rights Reserved.
75. Other Slicing Techniques
System Slice
Static vs. Dynamic
Real-time vs. Batch Processing
Build vs. Buy
Automated vs. Manual Steps
Defer certain roles
Behavioural Slice
Adjusting Sophistication - MVF (Minimum Viable Feature) or Walking Skeleton
Acceptance Criteria
By-pass certain steps in the workflow
Copyright © 2014, AgileFAQs. All Rights Reserved.
76. Other Slicing Techniques
System Slice
Static vs. Dynamic
Real-time vs. Batch Processing
Build vs. Buy
Automated vs. Manual Steps
Defer certain roles
Behavioural Slice
Adjusting Sophistication - MVF (Minimum Viable Feature) or Walking Skeleton
Acceptance Criteria
By-pass certain steps in the workflow
Focus on Happy Path First (edge cases later)
Copyright © 2014, AgileFAQs. All Rights Reserved.
77. Other Slicing Techniques
System Slice
Static vs. Dynamic
Real-time vs. Batch Processing
Build vs. Buy
Automated vs. Manual Steps
Defer certain roles
Behavioural Slice
Adjusting Sophistication - MVF (Minimum Viable Feature) or Walking Skeleton
Acceptance Criteria
By-pass certain steps in the workflow
Focus on Happy Path First (edge cases later)
No options - 1 option - Many options
Copyright © 2014, AgileFAQs. All Rights Reserved.
78. Other Slicing Techniques
System Slice
Static vs. Dynamic
Real-time vs. Batch Processing
Build vs. Buy
Automated vs. Manual Steps
Defer certain roles
Behavioural Slice
Adjusting Sophistication - MVF (Minimum Viable Feature) or Walking Skeleton
Acceptance Criteria
By-pass certain steps in the workflow
Focus on Happy Path First (edge cases later)
No options - 1 option - Many options
Incrementally improve ‘Ilities' (Usability, Scalability, Reliability, etc.)
Copyright © 2014, AgileFAQs. All Rights Reserved.
79. Other Slicing Techniques
System Slice
Static vs. Dynamic
Real-time vs. Batch Processing
Build vs. Buy
Automated vs. Manual Steps
Defer certain roles
Behavioural Slice
Adjusting Sophistication - MVF (Minimum Viable Feature) or Walking Skeleton
Acceptance Criteria
By-pass certain steps in the workflow
Focus on Happy Path First (edge cases later)
No options - 1 option - Many options
Incrementally improve ‘Ilities' (Usability, Scalability, Reliability, etc.)
Simpler UI (even consider using a standard UI)
Copyright © 2014, AgileFAQs. All Rights Reserved.
80. Other Slicing Techniques
System Slice
Static vs. Dynamic
Real-time vs. Batch Processing
Build vs. Buy
Automated vs. Manual Steps
Defer certain roles
Behavioural Slice
Adjusting Sophistication - MVF (Minimum Viable Feature) or Walking Skeleton
Acceptance Criteria
By-pass certain steps in the workflow
Focus on Happy Path First (edge cases later)
No options - 1 option - Many options
Incrementally improve ‘Ilities' (Usability, Scalability, Reliability, etc.)
Simpler UI (even consider using a standard UI)
Minmal Data
Copyright © 2014, AgileFAQs. All Rights Reserved.
81. Other Slicing Techniques
System Slice
Static vs. Dynamic
Real-time vs. Batch Processing
Build vs. Buy
Automated vs. Manual Steps
Defer certain roles
Behavioural Slice
Adjusting Sophistication - MVF (Minimum Viable Feature) or Walking Skeleton
Acceptance Criteria
By-pass certain steps in the workflow
Focus on Happy Path First (edge cases later)
No options - 1 option - Many options
Incrementally improve ‘Ilities' (Usability, Scalability, Reliability, etc.)
Simpler UI (even consider using a standard UI)
Minmal Data
Improve Performance Iteratively
Copyright © 2014, AgileFAQs. All Rights Reserved.
82. Can you split the operations
into separate stories?
Can you split the story so you
do a subset of the rules first and
enhance with additional rules later?
Could you split the story
to just make it work first and
then enhance it to satisfy the
non-functional requirement?
Does the story get much of its
complexity from satisfying
non-functional requirements like
performance?
Does the story have a simple
core that provides most of the
value and/or learning?
When you apply the obvious
split, is whichever story you do
first the most difficult?
Does the story get the same
kind of data via multiple interfaces?
Visit http://www.richardlawrence.info/splitting-user-stories/ for more info on the story splitting patterns
Try another pattern.
Copyright © 2011-2013 Agile For All. All rights reserved. Last updated 3/26/2013
1
www.agileforall.com
HOW TO SPLIT A USER STORY
PREPARE THE
INPUT STORY
APPLY THE
SPLITTING
PATTERNS
WORKFLOW STEPS
OPERATIONS
BUSINESS RULE
VARIATIONS
INTERFACE
VARIATIONS
VARIATIONS
IN DATA
Could you split the story to
do that simple core first and
enhance it with later stories?
SIMPLE/COMPLEX
DEFER
PERFORMANCE
BREAK OUT A SPIKE
MAJOR EFFORT
EVALUATE
THE SPLIT
Does the big story satisfy
INVEST* (except, perhaps, small)?
Are the new stories
roughly equal in size?
Does the story describe
a workflow?
Can you split the story so you do
the beginning and end of the work-flow
first and enhance with stories
from the middle of the workflow?
Can you take a thin slice
through the workflow first and
enhance it with more stories later?
Does the story include multiple
operations? (e.g. is it about "managing"
or "configuring" something?)
Does the story have a variety of
business rules? (e.g. is there a domain
term in the story like "flexible dates"
that suggests several variations?)
Does the story do the same
thing to different kinds of data? Can you split the story to
process one kind of data
first and enhance with the
other kinds later?
Can you split the story to
handle data from one
interface first and enhance
with the others later?
Could you group the later
stories and defer the decision
about which story comes first?
Are you still baffled about
how to split the story?
Can you find a small
piece you understand
well enough to start?
Can you define the 1-3
questions most holding
you back?
Take a break
and try again.
Write a spike with those
questions, do the minimum
to answer them, and start
again at the top of this process
Write that story first,
build it, and start again
at the top of this process.
Does the story have a
complex interface?
Is there a simple version
you could do first?
Try another pattern on the
original story or the larger
post-split stories.
Try another pattern.
You probably have waste
in each of your stories.
Are there stories you
can deprioritize or delete?
Is there an obvious story
to start with that gets you
early value, learning, risk
mitigation, etc.?
Combine it with another story
or otherwise reformulate it to get
a good, if large, starting story.
Is the story size 1⁄10 to
1⁄6 of your velocity?
Is each story about
1⁄10 to 1⁄6 of your velocity?
Do each of the
stories satisfy INVEST?
Continue. You
need to split it.
You’re done.
Try another pattern to
see if you can get this.
You’re done, though you
could try another pattern
to see if it works better.
YES
NO
start here
* INVEST - Stories should be:
2
3
Independent
Negotiable
Valuable
Estimable
Small
Testable
last resor t
YES
NO
84. Problem
If we’re working on a story to contact customers by e-mail, the steps might be:
query db for customers;
send e-mail to customers;
retrieve delivery report;
remove bounced addresses from the system;
mark non-bounced as ‘recently contacted’
But you have to think about
spam-regulation compliance for sending e-mail
speed, accuracy & volume
personalised or generic email content
build vs. buy
Copyright © 2014, AgileFAQs. All Rights Reserved.
85. Hamburger Method
Source: Gojko Adzic!
http://gojko.net/2012/01/23/splitting-user-stories-the-hamburger-method/
Copyright © 2014, AgileFAQs. All Rights Reserved.
86. Hamburger Method
Copyright © 2014, AgileFAQs. All Rights Reserved.
Step 1: Identify tasks
Source: Gojko Adzic!
http://gojko.net/2012/01/23/splitting-user-stories-the-hamburger-method/
87. Hamburger Method
Step 1: Identify tasks
Step 2: Identify options for tasks
Source: Gojko Adzic!
http://gojko.net/2012/01/23/splitting-user-stories-the-hamburger-method/
Copyright © 2014, AgileFAQs. All Rights Reserved.
88. Hamburger Method
Step 1: Identify tasks
Step 2: Identify options for tasks
Step 3: Combine results
Source: Gojko Adzic!
http://gojko.net/2012/01/23/splitting-user-stories-the-hamburger-method/
Copyright © 2014, AgileFAQs. All Rights Reserved.
89. Hamburger Method
Step 1: Identify tasks
Step 2: Identify options for tasks
Step 3: Combine results
Step 4: Trim the hamburger
Source: Gojko Adzic!
http://gojko.net/2012/01/23/splitting-user-stories-the-hamburger-method/
Copyright © 2014, AgileFAQs. All Rights Reserved.
90. Hamburger Method
Step 1: Identify tasks
Step 2: Identify options for tasks
Step 3: Combine results
Step 4: Trim the hamburger
Step 5: Take the first bite
Source: Gojko Adzic!
http://gojko.net/2012/01/23/splitting-user-stories-the-hamburger-method/
Copyright © 2014, AgileFAQs. All Rights Reserved.
91. Hamburger Method
Step 1: Identify tasks
Step 2: Identify options for tasks
Step 3: Combine results
Step 4: Trim the hamburger
Step 5: Take the first bite
Step 6: Take another bite…& continue
Source: Gojko Adzic!
http://gojko.net/2012/01/23/splitting-user-stories-the-hamburger-method/
Copyright © 2014, AgileFAQs. All Rights Reserved.
92. Before Story Slicing
Where do Stories come from?
Copyright © 2014, AgileFAQs. All Rights Reserved.
96. Product
Discovery
-‐
Steps
Elevator
Pitch
Business
Goals
Chartering
©
2013
Naresh
Jain,
all
rights
reserved,
www.AgileFAQs.com
97. Product
Discovery
-‐
Steps
Elevator
Pitch
Business
Goals
Chartering
©
2013
Naresh
Jain,
all
rights
reserved,
www.AgileFAQs.com
Pragmatic
Personas
User
Goals
Day in Life
of each
Persona
Scenarios
&
Narratives
Personas
98. Product
Discovery
-‐
Steps
Elevator
Pitch
Business
Goals
Chartering
©
2013
Naresh
Jain,
all
rights
reserved,
www.AgileFAQs.com
Pragmatic
Personas
User
Goals
Day in Life
of each
Persona
Scenarios
&
Narratives
Personas
Ac
c
ept
ance
!Cr
it
eria
99. Product
Discovery
-‐
Steps
Elevator
Pitch
Business
Goals
Chartering
©
2013
Naresh
Jain,
all
rights
reserved,
www.AgileFAQs.com
Pragmatic
Personas
User
Goals
Day in Life
of each
Persona
Scenarios
&
Narratives
Personas
Activity
Map
Story Mapping
Interaction Task Map
UI Sketch Design
Ac
c
ept
ance
!Cr
it
eria
100. Product
Discovery
-‐
Steps
Elevator
Pitch
Business
Goals
Chartering
©
2013
Naresh
Jain,
all
rights
reserved,
www.AgileFAQs.com
Pragmatic
Personas
User
Goals
Day in Life
of each
Persona
Scenarios
&
Narratives
Personas
Activity
Map
Story Mapping
Interaction Task Map
UI Sketch Design
Grouping by Prioritisation
Planning
Reiterating Themes
Ac
c
ept
ance
!Cr
it
eria
101. Product
Discovery
-‐
Steps
Elevator
Pitch
Business
Goals
Chartering
©
2013
Naresh
Jain,
all
rights
reserved,
www.AgileFAQs.com
Pragmatic
Personas
User
Goals
Day in Life
of each
Persona
Scenarios
&
Narratives
Personas
Activity
Map
Story Mapping
Interaction Task Map
UI Sketch Design
Grouping by Prioritisation
Planning
Reiterating Themes
User
Stories
User Story Authoring
Acceptance
Criteria
Ac
c
ept
ance
!Cr
it
eria
107. Maps
have
laJtude
and
longitude
©
2013
Naresh
Jain,
all
rights
reserved,
www.AgileFAQs.com
54
108. Maps
have
laJtude
and
longitude
©
2013
Naresh
Jain,
all
rights
reserved,
www.AgileFAQs.com
54
time
(from the user’s perspective)
109. Maps
have
laJtude
and
longitude
©
2013
Naresh
Jain,
all
rights
reserved,
www.AgileFAQs.com
54
time
(from the user’s perspective)
priority
(time from the planner
and builder’s
perspective)
110. Span Planning
time
necessity
absolutely
necessary
more
necessary
less
necessary
activity 1 activity 2 activity 3 activity 4
112. Identify Release from Span Plans
time
optionality
necessary
less
optional
more
optional
activity 1 activity 2 activity 3 activity 4
first release
second release
third release
120. Cab Route Optimisation
Most companies provide cab pick and drop services to their employees.
Company wants to
improve the utilisation of the cabs
reduce the cab expenses (lesser # of cabs, reduce total distance travelled by cabs)
reduce the time taken for employees to get to office
Constraints
Employees traveling from different locations at different times (flexi-office hours,
shifts, unplanned meetings)
We need to give the cab vendor enough notice to arrange the cabs
Copyright © 2014, AgileFAQs. All Rights Reserved.
121. Product Discovery
Copyright © 2014, AgileFAQs. All Rights Reserved.
Goals/
Themes
CAPTURE
TRAVEL AND
DATE TIME
VALIDATE
ROUTES OF
CARS AND
TYPE OF
CARS
DRIVER AND
CAB
ALLOTMENT
NOTIFY THE
SUBSCRIBER
S ABOUT
CABS AND
CAPTURE Enter my
DRIVERS
EMPLOYEE
details (Emp
Book a cab by
TRAVEL
Specify starting
ID,Name,Phn,E
specifying pick
PREFERENCE
address
mail ID)
up /drop time
CALCULATE
ROUTES
Read the
rejection reason
View no. of
employees,
duration, no. of
cabs per route
View total
number and
type of cabs per
day in month
Get routes and
number of
people from
system
Allocate driver
and cabs to
routes
Send sms
notification with
cab number,
driver number
and pickup time
MONITORING
Compare with
the previous
snapshot
Keep a track on
average no. of
employees per
cab
Keep a track on
the total
distance
travelled by the
cabs
Monitor
successful last
minute changes
Monitor the
avg. time taken
by cabs per
route
122. Low-Fi Prototyping & Interaction Design Testing
Copyright © 2014, AgileFAQs. All Rights Reserved.
126. Office In and Out Time
Copyright © 2014, AgileFAQs. All Rights Reserved.
129. Thank You!
Questions?
nashjain@agilefaqs.com
http://nareshjain.com
@nashjain
Copyright © 2014, AgileFAQs. All Rights Reserved.