Professional Documents
Culture Documents
Experiencing Agility Requirements Planning Mike Cohn 120620123849 Phpapp02 130612124006 Phpapp02 PDF
Experiencing Agility Requirements Planning Mike Cohn 120620123849 Phpapp02 130612124006 Phpapp02 PDF
Experiencing Agility Requirements Planning Mike Cohn 120620123849 Phpapp02 130612124006 Phpapp02 PDF
Mike Cohn
November 10, 2008
1
directo g member a
n
r
and Sc of Agile Allia d
nce
rum Al
liance
Found
er of M
ountai
Goat S
n
oftwar
e
Ran m
y
projec first Scrum
t back
in 199
5
Typica
l
manag programmer
er etc.
to
progre
ssion
Course agenda
Agenda
K User stories and the product
backlog
K Estimating product backlog items
K Release planning
K The boss wants it all
K The boss wants it in 8 weeks
n
O
s
e
i
r
o
t
S
r
e
s
U
t
c
u
d
o
r
P
the
g
o
l
k
c
a
B
Estimate
...
...
30
50
20032008 Mountain Goat Software
6
As an account holder, I
am required to
authenticate myself
As the primary account
before using the system.
holder, I can grant access
to additional users so
that they can see
transactions.
As a first-time user, I
can complete common
operations without using
the help system.
Release
Future
Releases
Theme
A collection of related
user stories.
A description of desired
functionality told from the
perspective of the user or
customer.
Epic
A large user story.
An example
As a VP Marketing, I want to
review the performance of
historical promotional
campaigns so that I can
945>D96I1>4B5@51D@B?SD12<5
ones.
Clearly an epic
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
@B?SD12<5?>5C
Epics??
An example
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.
Conditions of Satisfaction
K
Story-writing workshops
K Includes developers, users, customer, others
K Brainstorm to generate stories
K Goal is to write as many stories as possible
K
K
Product
owner
As a product owner, I
can add, edit and
delete backlog items.
As a product owner, I
can manage the
product backlog.
As a product owner, I
can sort the product
backlog.
As a product owner, I
can see various
reports.
As a product owner, I
can split a large item
into many smaller
items.
Product Vision
Your new company, Agile Tool Builders, is considering
developing a tool for agile teams to use in managing
their product and iteration backlogs.
1.Identify the main users of such a tool.
2.Write 20 or so epic user stories covering the
breadth of functionality you anticipate in the product.
g
n
i
t
a
m
i
t
Es
l
a
i
t
i
n
I
the
g
o
l
k
c
a
B
t
c
u
d
o
r
P
Size
Calculation
Duration
300
kilograms
Velocity=
20
300/20 =
15 sprints
Story points
As a user, I want to be
able to have some but not
all items in my cart gift
wrapped.
An example
Story
As the site editor, I can add an article to the site.
As a site visitor, I want to read a new article on
the front page about once a week.
As the site editor, I can include a teaser with each
article.
As a site member who has read a teaser on the
front page, I want to read the entire article.
As a site visitor, I can do a full-text search of
article body, title, and author name.
As a site visitor, I can subscribe to an RSS feed of
articles.
As a site visitor, I can post comments about
articles so that others can read them.
Points Done
5
3
2
13
5
13
20032008 Mountain Goat Software
21
Triangulation
K
K
?>SB=5CD9=1D5C2I3?=@1B9>7D85CD?BID?
multiple other stories.
Group like-sized stories together
3
pts
Story A
2
pts
Story C
Story D
1
pt
Story B
Story E
Story F
Include 0 and
if you
want
20032008 Mountain Goat Software
23
Planning poker
K An iterative approach to estimating
K Steps
K
K
K
K
Estimator
Susan
Vadim
Ann
Chris
Round 1
Round 2
3
8
2
5
5
5
5
8
Estimate these
Product backlog item
Estimate
">CD1<<1>5G81B4G??4T??B
Remove, sand, re-paint the cabinets.
Replace tile countertop with granite.
Repaint entire kitchen.
Lay shelf paper.
Install recessed lighting.
Install built-in refrigerator.
Replace existing oven with a new one.
Run a water line to existing island and add a sink.
Replace existing simple window with a bay window.
www.planningpoker.com
Free, or
I wouldnt
mention it
g
n
i
n
n
a
l
P
Release
Release planning
Purpose
To answer questions such as:
K How much will be done by June 30?
K When can we ship with this set of features?
K How many people or teams should be on this
project?
By June, well
S>9C825DG55>
here and there
Fixed scope
Velocity
K
40
Velocity is measured
in the units you use
to estimate product
backlog items
30
20
10
0
1 2 3 4 5 6 7 8 9
Sprints
Mean (Best 3) = 37
Mean (Last 8) = 33
30
Mean (Worst 3) = 28
20
10
Sprints
$5DQC@ED5CD9=1D5C?>1<<5@93CI?EGB?D54EB9>7D85SBCD5H5B39C5
(93;?>5D51==5=25BQC=?>D8?629BD8S>49D9>D85SBCD3?<E=>
Use each subsequent column as the number of story points to
assign a product backlog item
/B1@213;D?D85SBCD3?<E=>96>535CC1BI
Month
1
2
3
4
5
6
7
8
9
10
11
12
Estim
E
mates in Sttory P
Pointss
50
40
100
100
10
90
100
70
30
30
50
70
10
60
90
40
30
80
70
10
90
60
100
10
70 70 90
80 10 40
60 40 100
40 100 20
30 10 10
70 80 30
50 60 30
10 80 10
20 20 70
60 80 100
10 90 30
60 50 100
70
20
40
40
60
90
50
50
20
40
30
80
80
40
60
70
10
70
50
20
20
70
30
70
90 80 40
10 40 40
50 60 30
90 20 10
60 40 70
20 70 100
30 30 60
30 100 50
10 60 90
50 10 20
30 40 70
40 90 70
50
50
40
100
80
70
60
40
20
90
60
50
70
30
70
100
20
50
40
80
40
40
80
100
10 30 50
80 20 50
30 30 30
70 90 50
30 50 90
80 100 10
40 50 10
50 80 20
40 40 90
20 80 20
60 70 40
30 90 50
80 70 100
90 90 90
40 70 10
60 70 20
90 90 60
40 100 50
60 40 70
40 70 70
90 80 10
80 70 30
20 100 80
40 10 100
40
50
40
100
40
100
50
10
70
10
90
60
70
70
60
60
80
60
10
80
30
80
80
40
20 90 40 80 80
10 10 30 60 30
80 40 70 40 100
30 60 20 80 10
60 10 20 80 60
10 40 20 70 60
20 100 40 100 70
60 80 90 10 50
40 10 80 40 40
80 20 90 10 40
10 70 60 90 100
50 20 40 80 50
Iterattions
1
70
100
120
70
140
100
70
100
120
70
140
100
80
80
120
80
130
100
80
80
120
80
130
100
100
100
120
90
120
80
100
100
120
90
120
80
100
90
30
100
110
70
100
90
30
100
110
70
80
110
100
110
100
130
80
110
100
110
100
130
140
90
110
120
90
110
140
90
110
120
90
110
90 90
100 80
50 140
130 140
80 70
90 80
90 90
100 80
50 140
130 140
80 70
90 80
20032008 Mountain Goat Software
34
Fixed-scope planning
When will all of this be done?
120
Low velocity
15
High velocity
20
12020=
12015=
Fixed-scope commitments
If you write a contract
for to the short duration:
Bonus Question
Fixed-date planning
How much can I get by <date>?
30 June
Todays Date
1 January
Will have
Number of
iterations
6 (monthly)
Low
velocity
15
High
velocity
20
615
Might have
620
Wont have
Fixed-date contracting
Will have
615
Might have
620
Wont have
Past velocities
Historrical Data
Iteration
Velocity
number
1
2
3
4
5
6
7
8
9
10
20
14
23
18
25
30
12
22
15
23
Your Esstimates
Low
Average
High
Estimate
20
13
20
13
As a team member I want RSS support for all changes to tasks or user
CD?B95CC?D81D"Q=>?D9S54
C1D51==5=25B"Q4<9;5D?45S>5D5=@<1D5C?6D1C;CD81DB53EB6?B<?DC
of different stories so that I can reuse them
13
Mike Cohn
mike@mountaingoatsoftware.com
www.mountaingoatsoftware.com
(720) 890
?6S35
(303) 8102190 (mobile)