agile planning and project management
DESCRIPTION
Presentation given by Mike Cohn at Agile 2013.TRANSCRIPT
Agile Planningand Project
ManagementMike Cohn
Agile 2013August 5, 2013
®
• Founding member of Agile Alliance & Scrum Alliance
• Founder of Mountain Goat Software
• Doing Scrum since 1995
• Started my career as a programmer
• VP Engineering in 4 companies
Mike Cohn
1
2
© Copyright Mountain Goat Software®
Agenda
• Iterative andincremental
• User stories
• Estimating
• Planning
© Copyright Mountain Goat Software®®
• Iterative andincremental
• User stories
• Estimating
• Planning
Agenda
3
4
© Copyright Mountain Goat Software®
Iterative
• Revisit previously worked-on pieces
© Copyright Mountain Goat Software®
© Copyright Mountain Goat Software®
Incremental
• Develop one piece at a time
© Copyright Mountain Goat Software®
5
6
© Copyright Mountain Goat Software®
Iterative & incremental
• Do some of one part then some of the next
© Copyright Mountain Goat Software®
© Copyright Mountain Goat Software®
Daily
Iteration
Release
Product
Portfolio
Strategy
Team focuses here
Team focuses here
Team focuses here
Six levels of planning
7
8
© Copyright Mountain Goat Software®
Iteration 2Iteration 1 Iteration 3 Iterations 4–7
Cd h … 8
Ts h … 1
Dsg a … 8
Cd h … 6
Ieain PaIeain PaCd h … 6Dcd … 4Ts h … 6Atmt … 8
A release plan
© Copyright Mountain Goat Software®
Agenda
• Iterative and incremental
• User stories
• Estimating
• Planning
9
10
© Copyright Mountain Goat Software®
A a feun flyr, I wn o rbo a at ti
A a ue, I at o rsre a htl ro.
A a vcto taee,
I at o e poo
o h htl.
A a ue, I a cne
a rsrain. o ht I ae ie boig tis I ae otn.
© Copyright Mountain Goat Software®
A template
As a <user type>,I <want/need/can/etc.> some goal, [so that <reason>].
11
12
© Copyright Mountain Goat Software®
Where are the details?A a ue, I a
cne a
rsrain.
• 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?
• Is a confirmation provided to the user? How?
© Copyright Mountain Goat Software®
Add details as sub-stories
A a ue, I a cne a rsrain.
A a peim ie mme, I a cne p o h ls mnt.
A a nn-peim mme, I ed o cne t lat 4 hus n avne.
A a mme, I m eald a cnfirain we I cne.
13
14
© Copyright Mountain Goat Software®
… or as Conditions of Satisfaction
Vrf ht a peim mme cn cne h ae a wtot a fe.Vrf ht a nn-peim mme s cagd 1% o a sm-dy cnelto.Vrf ht n eal cnfirain s sn.
• Conditions of Satisfaction are essentially tests
• Should come from the product owner
A a ue, I a cne a rsrain.
© Copyright Mountain Goat Software®
Time
Legend
Smaller
LargerSize
Detail
Less More
Ei
Tee
15
16
© Copyright Mountain Goat Software®
A a P Mreig, I a rve h promne o hsoia d cmags s ht I a ietf n rpa pofitbe oe.
A a P Mreig, I a slc h tmfae o ue hn rveig h promne f at cmags, o ht …
A a P Mreig, I a slc wih ye f cmags (drc mi, T, eal, rdo, ec.) o icue hn rveig …
A ei
Eis?
© Copyright Mountain Goat Software®
A a P Mreig, I at t e ifrain n drc miig hn rveig hsoia cmags. As a VP Marketing, I want
to see information on TV ads when reviewing historical campaigns.
As a VP Marketing, I want to see information on TV ads when reviewing historical campaigns.
A a P Mreig, I at t e ifrain n eal as hn rveig hsoia cmags.
17
18
© Copyright Mountain Goat Software®
Agenda
• Iterative andincremental
• User stories
• Estimating
• Planning
© Copyright Mountain Goat Software®®
• Iterative andincremental
• User stories
• Estimating
• Planning
Agenda
19
20
How long to…
• Drive to Seattle
• Read a…ahem… good book
© Copyright Mountain Goat Software®
Estimate size; derive
300kilograms
Size Calculation Duration
Velocity=20
300÷20=15 iterations
➞ ➞
21
22
© Copyright Mountain Goat Software®
Two Units For
ESTIMATING
1 2IdealTime
StoryPoints
© Copyright Mountain Goat Software®
Ideal time• How long a thing will take if:
• it’s all you work on
• no one interrupts you
23
24
© Copyright Mountain Goat Software®
© Copyright Mountain Goat Software®
Story points
•How long a user story will take to develop (effort)
• Influenced by
• Complexity
• Uncertainty• Risk
• Etc.
25
26
® © Copyright Mountain Goat Software
Your time cannot be added to mine• You can run the trail in 5 minutes• I can run it in 10 minutes• We can’t agree on how long it will take to run• But we can agree the trail is 1 km
27
28
© Copyright Mountain Goat Software®
Planning Poker®
• Each estimator has cards with valid estimates
• A product backlog item is discussed
• Each estimator selects an estimate
• Cards are turned over
• Discuss differences (especially outliers)
• Repeat until consensus
® © Copyright Mountain Goat Software
Susan
Vadim Ann
Chris
29
30
© Copyright Mountain Goat Software®
Agenda
• Iterative andincremental
• User stories
• Estimating
• Planning
© Copyright Mountain Goat Software®®
• Iterative andincremental
• User stories
• Estimating
• Planning
Agenda
31
32
© Copyright Mountain Goat Software®
0
10
20
30
40
50
34 3540
29
4238
4540 39 Average
= 38
Stor
y Po
ints
Iterations
Velocity
© Copyright Mountain Goat Software®
Product Backlog
How much can be delivered in 5 iterations?
5×38➞
33
34
© Copyright Mountain Goat Software®
Using a confidence interval
0
10
20
30
40
50
34 3540
29
4238
4540 39
Stor
y Po
ints
Iterations
© Copyright Mountain Goat Software®
Calculating a confidence interval
# of historical iterations
Iterations to throw out from each each end
0–7 0
8–10 1
11–12 2
13–15 3
16–17 4
18–20 5
21–22 6
23–25 7
26+ 8
35
36
© Copyright Mountain Goat Software®
Ue h oln vlct rne cluao t
mutigasfwr.cm/tos
© Copyright Mountain Goat Software®
ProductBacklog
Will have
Might have
Won’t have
A better answer:
• How much can be delivered in 5 iterations?
• Fixed-date planning
5×34➞5×42➞
37
38
© Copyright Mountain Goat Software®
Fixed-scope projects• Sum the product backlog
• Estimate velocity as a range
• Divide the size of the product backlog by the velocity range
120÷15=JUNE
6
13
20
27
7
14
21
28
1
8
15
22
29
2
9
16
23
30
3
10
17
24
31
4
11
18
25
5
12
19
26
3
10
17
24
4
11
18
25
5
12
19
26
6
13
20
27
7
14
21
28
1
8
15
22
29
2
9
16
23
30
SUN MON TUE WED THU FRI SAT
JANUARY
7
14
21
28
1
8
15
22
29
2
9
16
23
30
3
10
17
24
31
4
11
18
25
5
12
19
26
6
13
20
27
SUN MON TUE WED THU FRI SAT
FEBRUARY
4
11
18
25
5
12
19
26
6
13
20
27
7
14
21
28
1
8
15
22
2
9
16
23
3
10
17
24
SUN MON TUE WED THU FRI SAT
MARCH
4
11
18
25
5
12
19
26
6
13
20
27
7
14
21
28
1
8
15
22
29
2
9
16
23
30
3
10
17
24
31
SUN MON TUE WED THU FRI SAT
APRIL
1
8
15
22
29
2
9
16
23
30
3
10
17
24
4
11
18
25
5
12
19
26
6
13
20
27
7
14
21
28
SUN MON TUE WED THU FRI SAT
MAY
6
13
20
27
7
14
21
28
1
8
15
22
29
2
9
16
23
30
3
10
17
24
31
4
11
18
25
5
12
19
26
SUN MON TUE WED THU FRI SAT
JULY
1
8
15
22
29
2
9
16
23
30
3
10
17
24
31
4
11
18
25
5
12
19
26
6
13
20
27
7
14
21
28
SUN MON TUE WED THU FRI SAT
AUGUST
5
12
19
26
6
13
20
27
7
14
21
28
1
8
15
22
29
2
9
16
23
30
3
10
17
24
31
4
11
18
25
SUN MON TUE WED THU FRI SAT
120÷20=JUNE
6
13
20
27
7
14
21
28
1
8
15
22
29
2
9
16
23
30
3
10
17
24
31
4
11
18
25
5
12
19
26
3
10
17
24
4
11
18
25
5
12
19
26
6
13
20
27
7
14
21
28
1
8
15
22
29
2
9
16
23
30
SUN MON TUE WED THU FRI SAT
JANUARY
7
14
21
28
1
8
15
22
29
2
9
16
23
30
3
10
17
24
31
4
11
18
25
5
12
19
26
6
13
20
27
SUN MON TUE WED THU FRI SAT
FEBRUARY
4
11
18
25
5
12
19
26
6
13
20
27
7
14
21
28
1
8
15
22
2
9
16
23
3
10
17
24
SUN MON TUE WED THU FRI SAT
MARCH
4
11
18
25
5
12
19
26
6
13
20
27
7
14
21
28
1
8
15
22
29
2
9
16
23
30
3
10
17
24
31
SUN MON TUE WED THU FRI SAT
APRIL
1
8
15
22
29
2
9
16
23
30
3
10
17
24
4
11
18
25
5
12
19
26
6
13
20
27
7
14
21
28
SUN MON TUE WED THU FRI SAT
MAY
6
13
20
27
7
14
21
28
1
8
15
22
29
2
9
16
23
30
3
10
17
24
31
4
11
18
25
5
12
19
26
SUN MON TUE WED THU FRI SAT
®
fb.com/mountaingoatsoftwarelinkedin.com/in/mikewcohn
twitter: mikewcohn(888) 61–AGILE
Mike Cohn
39
40
© Copyright Mountain Goat Software®
Agenda
• Iterative andincremental
• User stories
• Estimating
• Planning
• Tracking progress
© Copyright Mountain Goat Software®®
• Iterative andincremental
• User stories
• Estimating
• Planning
• Tracking progress
Agenda
Bonus Section
41
42
© Copyright Mountain Goat Software®
Three Ways to
Track Progress
3Task
Boards
2Sprint
Burndown
1Release
Burndown
© Copyright Mountain Goat Software®
A release burndown chart
0
90
180
270
360
0 1 2 3 4 5 6Iterations
Stor
y Po
ints
peitd vlct f
6
7
43
44
© Copyright Mountain Goat Software®
Mon ThurWedTues FriTasks
8Code the UI16Code the middle tier8Test the middle tier
12
41216
81016
711 8
Write online help
50403020100
Mon
Tues
Wed
Thur Fr
i
Hou
rs
® © Copyright Mountain Goat Software
Task boardsSoy T D I Poes Dn
A a nvc ue, I…8 t
Cd te…
8 hs
Cd te…
8 hs
A a ue, I…8 ps
Dsg a…
8 hsTs te…
4 hs
Dsg a…
8 hsTs te…
4 hs
Fgr u hw…S 8 r
Fgr u hw…
8 r
45
46
®
fb.com/mountaingoatsoftwarelinkedin.com/in/mikewcohn
twitter: mikewcohn(888) 61–AGILE
Mike Cohn
47