becoming an effective product owner
TRANSCRIPT
© Mountain Goat Software, LLC
Four questions
2 What are some differences between the role of the product owner and the ScrumMaster?
1 What are the primary responsibilities of the product owner?
3 What skills should the ideal product owner possess?
4 What things would you expect to happen on a project without a product owner?
2
© Mountain Goat Software, LLC
Traditional view of product management
Identify customer needs
Generate product concepts
concepts
Test product concepts
3
© Mountain Goat Software, LLC
Prior to Scrum and Agile, it was considered prudent to understand what was wanted and how it was going to be delivered at the very start of the project.
All future work hung off, depended on this work.
The theory was that changes at the start of the project cost $1, but the same change made when the project was 60% complete cost $100.
4
© Mountain Goat Software, LLC
Means Uncertainty
End
Unc
erta
inty
High
Low
High Low
Waterfall
Means UncertaintyEn
d U
ncer
tain
ty
High
Low
High Low
Agile
5
© Mountain Goat Software, LLC
Emergence
advance
uncover some requirements, but
Every project has some emergent requirements
Emergent requirements are those are users cannot identify in advance
6
© Mountain Goat Software, LLC
So what do we do?We talk more, write less
But write some if you need to
Show software to usersAcknowledge that requirements emerge
And all that this implies
product
backlog
7
© Mountain Goat Software, LLC
Strategy
Portfolio
ProductReleaseSprint
Daily
Agile Product Management is
mostly concerned with the space from Product to
Sprint.
8
© Mountain Goat Software, LLC
Stories are traditionally written on note cards.May be annotated with notes, estimates, etc.
Card
Source: XP Magazine 8/30/01, Ron Jeffries.
Details behind the story come out during conversations with product owner
Conversation
story was coded correctly
10
© Mountain Goat Software, LLC
As a user, I want to reserve a hotel room.
As a user, I want to cancel a reservation.
As a vacation planner, I want to see photos of the hotels.
As a frequent flier, I want to rebook a past trip, so that I save time booking trips I take often.
11
© Mountain Goat Software, LLC
As a user, I can cancel a reservation.Does the user get a full or partial refund?
Is the refund to her credit card or is it site credit?
How far ahead must the reservation be cancelled?
Is that the same for all hotels?
For all site visitors? Can frequent travelers cancel later?
How?
12
© Mountain Goat Software, LLC
The product owner’s conditions of satisfaction can be added to a story
As a user, I can cancel a reservation. Verify that a premium member can
cancel the same day without a fee.Verify that a non-premium member is charged 10% for a same-day cancellation.Verify that an email confirmation is sent.Verify that the hotel is notified of any cancellation.
13
© Mountain Goat Software, LLC
As a user, I can cancel a reservation.
As a premium site member, I can cancel a reservation up to the last minute.
As a non-premium member, I can cancel up to 24 hours in advance.
As a site visitor, I am emailed a confirmation of any cancelled reservation.
14
© Mountain Goat Software, LLC
You can start by identifying only a sprint’s worth of backlog items
But, it’s often quick and easy to stock the product backlog with most of its items
This is helpful for release planning, expectation setting,
The key is to write product backlog items with different levels of detail
Fine-grained for stories about to be worked on
Coarse-grained for stories further in the future
15
© Mountain Goat Software, LLC
User StoryA description of desired
perspective of the user or customer.
Theme
user stories.
Epic
16
© Mountain Goat Software, LLC
As a VP Marketing, I want to review the performance of historical promotional campaigns so that I can identify and
As a VP Marketing, I want to select the timeframe to use when reviewing the performance of past promotional campaigns, so that I can identify and repeat
As a VP Marketing, I can select which type of campaigns (direct mail, TV, email, radio, etc.) to include when reviewing the performance of historical promotional campaigns.
An epic;
17
© Mountain Goat Software, LLC
As a VP Marketing, I want to see information on direct mailings when reviewing historical campaigns.
As a VP Marketing, I want to see information on television advertising when reviewing historical campaigns.
As a VP Marketing, I want to see information on email advertising when reviewing historical campaigns.
18
© Mountain Goat Software, LLC
Includes developers, users, customer, others
Brainstorm to generate stories
Goal is to write as many stories as possible
Some will be “implementation ready”
Others will be “epics”
No prioritization at this point
19
© Mountain Goat Software, LLC
Start with epics and iterateAs a frequent flier, I want to see check my account.
As a frequent flier, I want to ...
Frequent flier
As a frequent flier, I want to book a trip using miles.
As a frequent flier, I want to rebook a trip I take often.
As a frequent flier, I want to request an upgrade.
As a frequent flier, I want to see if my upgrade cleared.
As a frequent flier, I want to book a trip.
20
© Mountain Goat Software, LLC
Another approach
interfaceAsk open-ended, context-free questions as you go:
What will the users most likely want to do next?
What mistakes could the user make here?
What could confuse the user at this point?
What additional information could the user need?
Consider these questions for each user role
21
© Mountain Goat Software, LLC
“As a <user role>, I want <goal>so that <reason>.”
MyCookSpace.comYour team has been hired and given gobs of VC money to create a social networking site (like MySpace) for cooks. The idea is that cooks will exchange recipes and tips. They’ll also buy kitchen-related products from the advertisers on the site. We want some novel way of rewarding cooks who post the best and most popular recipes as noted by other cooks on the site.
Write some user stories for MyCookSpace.com.
22
© Mountain Goat Software, LLC
FixedProcess
FixedOutput
Must be described in just enough detail to be turned into the output by the process
Input
Just-in-timejust-enough
23
© Mountain Goat Software, LLC
What makes a good story?IndependentI
NegotiableN
ValuableV
EstimatableE
Sized AppropriatelyS
TestableT
24
© Mountain Goat Software, LLC
IndependentDependenices lead to problems estimating and prioritizingCan ideally select a story to work on without pulling in 18 other stories
NegotiableStories are not contracts
ValuableTo users or customers, not developers
customers
25
© Mountain Goat Software, LLC
EstimatableBecause plans are based on user stories, we need to be able to estimate them
S ized AppropriatelySmall enough to complete in one sprint if you’re about to work on itBigger if further off on the horizon
TestableTestable so that you have a easy, binary way of
except”
26
© Mountain Goat Software, LLC
Three steps
1. Organize needs into themes
2. Assess importance of each theme
3. Prioritize themes
28
© Mountain Goat Software, LLC
Why themes?Often individual stories cannot be prioritized against each other
What’s more important in a word processor?
The A key or the E key?
Tables or undo?
What’s more important on a car?
The left front wheel or the right front wheel?
Increased leg room or a larger engine?
29
© Mountain Goat Software, LLC
Steps for organizing into themes
1. Write each story on its own note card or post-it
2. Eliminate redundant stories
3. Group similar stories
4. Label each group with a theme name
5. If you have a lot of themes or have small themes, consider making themes of themes
6. Review the results
If you started with a story-writing
workshop you may already have
themes.
30
© Mountain Goat Software, LLC
Distribute cards equally to all participantsNo particular pattern to how you do this
Someone reads a card and places in on wall / table
Others look for similar cards and add them to it
Next person reads a card, places it, and others place similar cards with it
Continue repeating until out of cards
31
© Mountain Goat Software, LLC
..., I want to see if my upgrade cleared.
Be sure you are organizing stories around user needs;not around how you’ll build the software or
how the company is organized.
32
© Mountain Goat Software, LLC
5-10 themes
Smaller items as needed
Typical release (6-9 months) has 50-100
product backlog items
3-10 backlog
items per theme
33
© Mountain Goat Software, LLC
Two general approaches1. Team opinion2. Survey users
Theme screeningTheme scoringRelative weightingKano analysisFinancial analysisAnalytic Hierarchy Process
Step 2Assess importance of each theme
We’ll look at
today.
34
© Mountain Goat Software, LLC
Choosing your approach
Expert Opinion
User Interview
Theme screening
Theme scoring
Relative weighting
Kano analysis
Financial analysis
Analytic Hierarchy Process
✔
✔
✔
✔ ✔
✔
✔ ✔
35
© Mountain Goat Software, LLC
Theme screeningIdentify 5-9 (approximately) selection criteria for what is important in the next release
Select a baseline theme
Likely to be included in the next release
Understood by most team members
Assess each candidate theme relative to the baseline theme
36
© Mountain Goat Software, LLC
+ + - 0 - +Importance to existing customers
Competitiveness with ABC Corp.
The
me
F
The
me
E
The
me
C
The
me
B
The
me
A
0
The
me
G
Net score
+ - 0 0 0 0 0
+ 0 0 0 + + +
3
Generates revenue in Q2 0 0 0 0 + 0 +
Themes
0 0 1 0 2
Rank 1 4 5 4 3 4 2
Continue? Y N N Y Y N Y
+ = better than0 = same as- = worse than
37
© Mountain Goat Software, LLC
Theme scoring
weighted
Avoids compression of a category
Much worse than reference 1Worse than reference 2
Same as reference 3Better than reference 4
Much better than reference 5
38
© Mountain Goat Software, LLC
25 3 0.75
Competitive. with ABC
Starts us integrating...W
eigh
t
Net score
10
15
3.90
Generates Q2 revenue 50
Theme A
Importance to existing cust.
Rat
ing
WeightedScore
2 0.20
3 0.45
5 2.50
1 0.25
Theme B
Rat
ing
WeightedScore
3 0.30
4 0.60
2 1.00
4 1.00
Theme C
Rat
ing
WeightedScore
3 0.30
4 0.60
3 1.50
2.15 3.40
Rank 1 3 2
Continue? Yes No Yes
39
© Mountain Goat Software, LLC
Prioritizing MyCookSpace.comAssume we have a minimally functional site up with 4,000 registered cooks
We want 400,000 cooksAs groups, decide whether you want to use theme screening or theme scoring.Identify 4-5 themesIdentify some selection criteria
What’s important to the company in making this decision?
Complete a theme screening/scoring worksheet
40
© Mountain Goat Software, LLC
∑∑
8 6 14 40 64 44More investment choices
Cos
t Pe
rcen
t
Estim
ate
91
Prio
rity
9 2 11 31 40 27 115
1 9 10 29 42 29 100
35 100 146 100
The
mes
42
© Mountain Goat Software, LLC
8 6 22 41 64 44More investment choices
Cos
t Pe
rcen
t
Estim
ate
The
mes
93
Prio
rity
9 2 20 38 40 27 141
1 9 11 21 42 29 72
53 100 14 100
2 1Weight→
43
© Mountain Goat Software, LLC
A
23 4 5 6 7 8 9
Estimator Round 1 Round 2
Susan
Vadim
Ann
Chris
3 58 52 55 7
45
© Mountain Goat Software, LLC
Relative weighting MyCookSpace.com
Using priority poker and the relative weighting worksheet provided, prioritize the themes you’ve
46
© Mountain Goat Software, LLC
Mandatory / Baseline
Must be present in order for
Linear The more of it, the better
Three types of features
Exciters / Delighters
Features a user doesn’t know she wants, until she sees it
47
© Mountain Goat Software, LLC
Surveying usersTo assess whether a feature is baseline, linear, or exciting we can:
Sometimes guessOr survey a small set of users (20-30)
We ask two questionsA functional question
How do you feel if a feature is present?
And a dysfunctional questionHow do you feel if that feature is absent?
48
© Mountain Goat Software, LLC
form of question
I expect it to be that way.X
form of question water, how do you
I expect it to be that way. X
49
© Mountain Goat Software, LLC
Categorizing an answer pair
Q E E E L
R I I I M
R I I I M
R I I I M
R R R R Q
Like
Expe
ct
Live
with
Like
Expect
Neutral
Live with
Dislike
Dysfunctional QuestionFu
nctio
nal Q
uest
ion
M MandatoryL LinearE ExciterQ QuestionableR ReverseI Indifferent
50
© Mountain Goat Software, LLC
3 11 31 1 3 2
4 22 20 4 1 0
21 9 14 5 1 1
Apply formatting themes
Automate report execution
Export reports to PowerPoint
Que
stio
nabl
e
Rev
erse
Indi
ffere
nt
Man
dato
ry
Line
ar
Exci
ter
Theme
51
© Mountain Goat Software, LLC
All of the baseline features
Some amount of linear features
But leaving room for at least a few exciters
52
© Mountain Goat Software, LLC
Date What Where
February London
March 1, 2007
Denver, CO
2007 CA
Register atwww.mountaingoatsoftware.com
53