2. Constituents & Context
Business Goals Drive Constituencies and Context.
Business Goals:
• Improve Click Rate.
• Motivate Sale of Digital Products.
• Accelerate Mobile Search Capability.
• Establish A/B Testing in Design.
User Constituencies:
• Advertiser.
• Housewife.
• Mobile User.
• …..
Usage Contexts:
• Desktop.
• Laptop on Airplane.
• iPad.
• …..
R. Anantha Narayanan, CSPO, CSP 2
3. Understand Use
To design a product we need to Understand Use.
User Type
Actor
User Role
Persona
User Goal
What am I trying to accomplish with the product ?
What will make me happy when using the product ?
User Context
When will I use the product ? Where will I be at that
time ?
What other thing I may be doing when I Use the
product ?
R. Anantha Narayanan, CSPO, CSP 3
4. User Roles
User Roles are a best choice for
aggregating individual users of a
system.
A User Role reflects the common
interactions of a set of users have in the
system.
User Roles allow stories to be written
with multiple perspectives.
Map Searcher, Keyword Searcher, Walk-In User, Mobile User,
Category Searcher, Google User, Advertiser, monitor.
R. Anantha Narayanan, CSPO, CSP 4
5. Build User Roles
Brainstorm Roles.
Categorize them on broad system
boundaries.
Find overlap between roles within a
category and consolidate.
Identify individual attributes for the roles
and record them.
Map Searcher, Keyword Searcher, Mobile User, Category Searcher,
, Advertiser,.
R. Anantha Narayanan, CSPO, CSP 5
6. Long , Long, Ago …
there was a swamp in central valley and a
diverse group of people had different ideas
on how to use the land. One Afternoon a
group of interested folks came together to
talk about their ideas about what to do with
the land, but…
• Who are these people ?
• Why do they care about this swamp ?
Your Job in Next 10 minutes is to find those people and
write them down. Also write what is their motivation to
come together ?
R. Anantha Narayanan, CSPO, CSP 6
7. Personas
Alan Cooper, The Inmates are Running the Asylum.
Deep Dive into User Roles.
Idea is, if you want effective products
then design it for specific user.
Paint a persona with real names,
personalities, motivations and even a
face.
„Mary Saver‟ works in AT&T as a sales manager. She is 35 years old
married with two kids, her husband is a small business owner. She
is a savvy technology user and loves her iPhone. She is big on
finding deals and uses social networking to find deals and also
shares deals with her network.
R. Anantha Narayanan, CSPO, CSP 7
8. Long , Long, Ago ……2
now that you know who came together to
discuss the land use, develop personas
that match the roles and motivation you
identified in the first step. (10 mins)
Paint a vivid picture of the user roles you have identified,
make them as personalized as possible.
Avoid detailing how they will use the land, instead focus on
their intentions, motivations and general behavior.
R. Anantha Narayanan, CSPO, CSP 8
9. Avoiding Tunnel Vision
Take a look at the requirements of Dex
Learning Center (2 mins).
You know they are incomplete , but the
problem is not knowing how they are
incomplete.
Need to go beyond obviousness to
create resilient products.
R. Anantha Narayanan, CSPO, CSP 9
10. Extreme Personas
Look at the requirements of DLC (2 mins).
Take Five Index Cards and write down names
of five personas that are popular. Select a mix
of Extreme Personalities (60 seconds).
When Complete Pass the Index Cards to the
person on your right.
Write down the feature this Persona will want
from the system. (4 mins).
Pass the cards to the person on your right.
Now write why this feature would be valuable
to this persona. (6 mins)
Discuss Results (6 mins)
R. Anantha Narayanan, CSPO, CSP 10
11. Interaction Context
Interaction Context is a an abstract
place in your system that supports
number of User tasks (Jeff Patton, Design Thinking)
Normally when the goal of the user
changes then an interaction context
switching happens.
Starting Point: give the user a clear starting point for
starting a search for businesses in the site.
Search Return: Evaluation: help the user decide if the
searched for items were the items she was looking for or
an easy way to reinitiate the search if not.
R. Anantha Narayanan, CSPO, CSP 11
12. Time of the Day
Imagine you are the Users of DLC.
In pairs walk over to the Wall Board with
Time Frames written down.
At each time frame in the wall board, take
an index card and write down a DLC
persona,
Write, what do you imagine this persona
needs from the DLC system on that time,
Write, what activities they might be doing
on that time frame and stick it to the wall.
Go to each time frame in the wall board
and repeat the exercise.
R. Anantha Narayanan, CSPO, CSP 12
13. Acceptance Criteria
Be explicit
“The system will display the date.” …
In what format? Is “2006, April 1st” acceptable?
Provide examples for clarity
“The system date will be displayed in the format 1/4/06”
List any assumptions you made.
Specify your expectations of what should be
done loudly.
“The category selection should have a default.”
Also be clear about what the system is not
expected to do
“User Registration is not expected at this time.”
R. Anantha Narayanan, CSPO, CSP 13
14. Essential Use Case (Constantine & Lockwood)
An Essential Use Case is a good method to map Acceptance
Criteria.
A use case focusing on the interaction
between user and system
Avoid describing what the user
specifically does by focusing on the
user‟s intention
Determine the system responsibilities
based on user goals
R. Anantha Narayanan, CSPO, CSP 14
15. Essential Use Case (Constantine & Lockwood)
An Essential Use Case is a good method to map Acceptance
Criteria.
As a casual browser I want to find the most
reviewed restaurant for a particular category
so that I can get more information to make a reservation.
Write an Essential Use Case for this User Story.
(10 minutes)
Exchange your Essential Use Case within your group and
write Acceptance Criteria from the Use Case. (10 mins)
R. Anantha Narayanan, CSPO, CSP 15
16. Splitting Stories
A story that is difficult to estimate is a good candidate for splitting.
1. Try to find splits that produce value.
2.. Try for symmetrical splits that gives
stories that are equal and small.
3.. Splitting stories is a skill that is
developed through experience.
4.Identifying patterns is a key skill for
splitting stories.
R. Anantha Narayanan, CSPO, CSP 16
17. Splitting Stories
A story that is difficult to estimate is a good candidate for splitting.
1. Most teams try to split stories by
architectural boundaries such as one for
UI, one for DB, one for Backend, even
though these stories are small they fail
the Independent and Valuable step.
1 2 3
UI UI UI
APP APP APP
DB DB DB
R. Anantha Narayanan, CSPO, CSP 17
18. Splitting Stories
A story that is difficult to estimate is a good candidate for splitting.
Split on Work flow steps
As a content manager, I can publish a news story to the corporate website.
…I can publish a news story directly to the corporate website.
…I can publish a news story with editor review.
…I can publish a news story with legal review.
…I can view a news story on a staging site.
…I can publish a news story from the staging site to production.
R. Anantha Narayanan, CSPO, CSP 18
19. Splitting Stories
A story that is difficult to estimate is a good candidate for splitting.
Split on CRUD boundaries
As a user, I can manage my account.
…I can sign up for an account.
…I can edit my account settings.
…I can cancel my account.
R. Anantha Narayanan, CSPO, CSP 19
20. Splitting Stories
A story that is difficult to estimate is a good candidate for splitting.
Split on Architectural Spikes aka not knowing
the implementation.
In the “investigate” story, the acceptance criteria
should be questions you need answered.
Do just enough investigation to answer the
questions and stop..
As a user, I can pay by credit card.
Investigate credit card processing.
Implement credit card processing.
R. Anantha Narayanan, CSPO, CSP 20
21. Splitting Stories - Pitfalls
Some times small stories have their own problems.
1. Small Stories stop making sense individually and kill conversations.
2. The „so that…‟ part becomes meaningless.
R. Anantha Narayanan, CSPO, CSP 21
22. Find the Patterns
Match the Stories to the Patterns (10 mins)
I want to search for jobs I am interested in.
I want to manage my business profile.
I can search for a business based on geo-location.
I want to register using my social profile.
I can search for businesses in categories.
Workflow Data Simple/
CRUD Spike
Steps Entry Complex
1. Take five Index Cards and write the stories in them
2. Now match the Stories to Work flow patterns and write them in the Index
Card.
3. Walk to the Wall Board and Stick your Stories to the Patterns that you have
chosen
R. Anantha Narayanan, CSPO, CSP 22
23. SEE YOU
Q&A
Thank You
@tekzenpdm
tekzenpdm.blogspot.com
Credits:
User Stories Applied for Agile Product Development, Mike Cohn
Design Thinking, Jeff Patton
Look Forward Consulting, Carlton Nettleton.
.
R. Anantha Narayanan, CSPO, CSP 23
Notas del editor
A single task can be used by many users in the system for example a Time sheet Entry.By selecting roles , Users can be grouped by the interactions they have in the system, managers, employees, contractors.
Involve all possible stake holders together to develop user rolesUse Index Cards to write down roles.Identify usage by the roles to categorize. For example mobile searcher, geographic searcher, keyword searcher belong to same category whereas advertiser is not.
Come a group and discuss your choices.
Incomplete requirements makes you think If I could encourage people to “think out of the box”, then there is a chance of getting beyond essential requirements.When teams work with User stories they learn pretty quickly to identify the obvious requirements, however building for current market needs will leave the product vulnerable for low-cost, disruptive attacks.
Six MinutesWhat were the User Stories Like?How did this experience compare to previous experiences ?Was this a creative experience ?How can we improve Out of the box thinking in writing User Stories ?
The product may be static but our relationship to it changes based on how we use it.Interaction context switching happens based on lots of factors including when, where, age, experience etc.One of the most used change in context is when, aka time of the day.
user action system response insert card in ATM read card request PIN enter PIN verify PIN display option menu select option display account menu select account prompt for amount enter amount display amount confirm amount return card take card dispense cash if available
Most teams try to split stories by architectural boundaries such as one for UI, one for DB, one for Backend, even though these stories are small they fail the Independent and Valuable step