Agile/XP OverviewObject Mentor, Inc.
Copyright 1998-2004 by Object Mentor, IncAll Rights Reserved
fitnesse.org
www.objectmentor.com
www.junit.orgwww.xprogramming.com
2
How do you manage a software project?
Badly?
Hope and prayer?
With Great Difficulty
Dictate and Motivate?`
3
Mismanagement of a project leads to:
Producing the wrong product.
Producing a product of inferior quality.
Being late.
Working 80 hour weeks.
4
The inevitable trade-off.
Good (Quality)
Fast (Time to Market)
Cheap (Cost Effectiveness)
Done
Pick any three…
5
Finding the optimum solution.
We need to manage the project to the best possible outcome.
An outcome that maximizes all four qualities.
To do this, we need:
Data.
6
Wouldn’t this be great?
Velocity
0
10
20
30
40
50
60
1/20
/2003
1/27
/2003
2/3/
2003
2/10
/2003
2/17
/2003
2/24
/2003
3/3/
2003
3/10
/2003
Sto
ry P
oin
ts
7
…and this…
Story Points Remaining
0
100
200
300
400
500
600
1/20
/2003
1/27
/2003
2/3/
2003
2/10
/2003
2/17
/2003
2/24
/2003
3/3/
2003
3/10
/2003
Sto
ry P
oin
ts
8
If we had these two charts on the wall…
Story Points Remaining
0
100
200
300
400
500
600
1/20
/2003
1/27
/2003
2/3/
2003
2/10
/2003
2/17
/2003
2/24
/2003
3/3/
2003
3/10
/2003
Sto
ry P
oin
ts
Velocity
0
10
20
30
40
50
60
1/20
/2003
1/27
/2003
2/3/
2003
2/10
/2003
2/17
/2003
2/24
/2003
3/3/
2003
3/10
/2003
Sto
ry P
oin
ts
Then managers could just look at them to seeThe status of the project.
9
What is the first thing
known about a project?
The Management Paradox
10
! !
! !
11
The Delivery Date is Frozen
12
The
Spec
V1
The
Spec
V2
The
Spec
V3
The
Spec
V3
The
Spec
VN.1
The
Spec
VN.2
The Spec is Never Frozen
13
Analysis
Design
Implementation
DFDERD
DDST
1 May 1 Nov1 Jul 1 Sep
The Waterfall Model
Managing the Development of Large Software SystemsDr. Winston W. Royce — 1970
14
Royce’s actual diagram.
15
Royce’s Observation
16
Royce’s Conclusion
17
How did W/F get to be the norm?
2167
2167A
Everybody copied the good ol’ DoD.
18
Requirements and Failure
$37B worth of DoD projects using 2167A
Required extensive rewo rk to meet true
needs.20%
Never used. Egregio usly
failed to meet needs.
46%
Jarzombek Study.
Failure attributed to use of waterfall.
19
Over specification.Actual use o f Waterfa ll Requested Features
A lways7%
Often13%
S ometimes16%Rarely
19%
Never45%
20
Code Waste
In a study of 400 waterfall projects:
Only 5% - 15% of the code was ever used.
21
Long Projects Fail.
Pro ject S uccess. 23 ,000 pro jects
0
5
10
15
20
25
30
35
40
45
6 9 12 18 24 36
Months
Pe
rce
nt
su
cc
es
s
22
Analysis
Design
Implementation
DFDERD
DDST
1 May 1 Nov1 Jul 1 Sep
Let’s go to a meeting.
23
Iterative Development.
Exploration
Slices cut across all sub-system s
UI
Comms
ControlSome UI, Comms, and
Control for
some behavior
Data is generated and used to calibrate the plan
24
Calculate the Date.
High level analysis and Design
S lices cut across a ll sub-system s
The Calculated Date
. . . . . . . . [ ]
25
More data shrinks the error bars.
High level analysis and Design
S lices cut across a ll sub-system s
The Calculated Date
. . . . . . . . [ ]
26
Without data, all you can manage is:
! !
!
27
Without data managers can:
This project will be done on time!
Or HEADS will ROLL!
28
OR….
You guys are great.
I have faith in you.
I know you can do it!
I sure hope
you can
29
But when we have data…
Story Points Remaining
0
100
200
300
400
500
600
1/20
/2003
1/27
/2003
2/3/
2003
2/10
/2003
2/17
/2003
2/24
/2003
3/3/
2003
3/10
/2003
Sto
ry P
oin
ts
Velocity
0
10
20
30
40
50
60
1/20
/2003
1/27
/2003
2/3/
2003
2/10
/2003
2/17
/2003
2/24
/2003
3/3/
2003
3/10
/2003
Sto
ry P
oin
ts
Managers can…. manage.
30
The control knobs of project mgt.
Schedule
Quality
Staff Scope
31
Metaphor
CollectiveOwnership
CodingStandard
SustainablePace
ContinuousIntegration
WholeTeam
Planning Game
Small Releases
Customer Tests
SimpleDesign
PairProgramming
Test-Driven Development
DesignImprovement
XP Practices
www.XProgramming.com
32
Contact Information
Robert C. [email protected]
Website:www.objectmentor.com
FitNesse:www.fitnesse.org