187
MD Halfday Tutorial 6/3/2013 8:30 AM "Dealing with Estimation, Uncertainty, Risk, and Commitment" Presented by: Todd Little Landmark Graphics Corporation Brought to you by: 340 Corporate Way, Suite 300, Orange Park, FL 32073 8882688770 9042780524 [email protected] www.sqe.com

Dealing with Estimation, Uncertainty, Risk, and Commitment

Embed Size (px)

DESCRIPTION

Software projects are known to have challenges with estimation, uncertainty, risk, and commitment—and the most valuable projects often carry the most risk. Other industries also encounter risk and generate value by understanding and managing that risk effectively. Todd Little explores techniques used in a number of risky businesses—product development, oil and gas exploration, investment banking, medicine, weather forecasting, and gambling—and shares what those industries have done to manage uncertainty. With studies of software development estimations and uncertainties, Todd discusses how software practitioners can learn from a better understanding of uncertainty and its dynamics. In addition, he introduces techniques and approaches to estimation and risk management including utilizing real options and one of its key elements—understanding commitment. Take away a better understanding of the challenges of estimation and what software practitioners can do to better manage estimation, risks, and their commitments.

Citation preview

Page 1: Dealing with Estimation, Uncertainty, Risk, and Commitment

 

 

MD Half‐day Tutorial 6/3/2013 8:30 AM 

       

"Dealing with Estimation, Uncertainty, Risk, and Commitment"

   

Presented by:

Todd Little Landmark Graphics Corporation

         

Brought to you by:  

  

340 Corporate Way, Suite 300, Orange Park, FL 32073 888‐268‐8770 ∙ 904‐278‐0524 ∙ [email protected] ∙ www.sqe.com

Page 2: Dealing with Estimation, Uncertainty, Risk, and Commitment

Todd Little Landmark Graphics Corporation

Todd Little is a senior development manager for Landmark Graphics. Todd has been involved in most aspects of software development with a focus on commercial software applications for oil and gas exploration and production. He is a coauthor of the Declaration of Interdependence and a founding member and past president of the Agile Leadership Network. Todd has served on the board of directors of both the Agile Alliance and the Agile Leadership Network, is a coauthor of Stand Back and Deliver: Accelerating Business Agility, has written several articles for IEEE Software, and posts all his publications and presentations on his websitetoddlittleweb.com.  

Page 3: Dealing with Estimation, Uncertainty, Risk, and Commitment

Dealing with Estimation, Uncertainty,

Risk, and Commitment : An Outside-In Look at Agility and Risk Management

Todd Little

Sr. Development Manager

Landmark Software & Services

Page 4: Dealing with Estimation, Uncertainty, Risk, and Commitment

Agenda

• Introduction

• Exercise

• Estimation and Uncertainty

• Exercise

• Break

• Risk Management, Real Options and

Commitment

• Exercise

• Summary

Page 5: Dealing with Estimation, Uncertainty, Risk, and Commitment

A Game?

Page 6: Dealing with Estimation, Uncertainty, Risk, and Commitment

Form into teams. Pick a name... Shout out the name.

Page 7: Dealing with Estimation, Uncertainty, Risk, and Commitment

On a piece of paper, write 1. Your Name 2. Your Team Name 3. Team to complete task A

first 4. Team to complete task B

first

Page 8: Dealing with Estimation, Uncertainty, Risk, and Commitment

task “A”...

htt

p:/

/ww

w.f

lickr.

co

m/p

hoto

s/p

alo

oza

/330

92425

55/ Create a six sided random number generator.

Something like a dice like thingy.

Every member of the team needs to roll a double six.

Page 9: Dealing with Estimation, Uncertainty, Risk, and Commitment

task “B”...

htt

p:/

/ww

w.f

lickr.

co

m/p

hoto

s/p

alo

oza

/330

92425

55/ Create a four sided random number generator.

Something like a dice like thingy.

Every member of the team needs to roll a double six.

Page 10: Dealing with Estimation, Uncertainty, Risk, and Commitment

Hurricane Rita

Page 11: Dealing with Estimation, Uncertainty, Risk, and Commitment

Risk and Uncertainty

Risk Uncertainty

Frank Knight Immeasurable Quantifiable

PMI Risk can be positive or

negative

???

English A situation involving

exposure to danger

The state of being uncertain

Not known or established;

questionable

Page 12: Dealing with Estimation, Uncertainty, Risk, and Commitment

Delivery Challenges/Failures

Challenged

46%

Failed

19%Succesful

35%

Standish Group 2006, reported by CEO Jim Johnson, CIO.com, ‘How to Spot a Failing Project’

Page 13: Dealing with Estimation, Uncertainty, Risk, and Commitment

Managing the Coming Storm

Inside the Tornado

When will we get the requirements?

All in good time, my little pretty, all in good time

But I guess it doesn't matter anyway

Doesn't anybody believe me?

You're a very bad man!

Just give me your estimates by this afternoon

No, we need something today!

I already promised the customer it will be out in 6 months

No, we need it sooner.

Not so fast! Not so fast! ... I'll have to give the matter a little thought. Go away and come back tomorrow

Ok then, it will take 2 years.

Team Unity

Project Kickoff

Page 14: Dealing with Estimation, Uncertainty, Risk, and Commitment

We’re not in Kansas Anymore

My! People come and go so quickly here!

I may not come out alive, but I'm goin' in there!

The Great and Powerful Oz has got matters well in hand.

"Hee hee hee ha ha! Going so soon? I wouldn't hear

of it! Why, my little party's just beginning!

Developer Hero

Reorg

Testing

Page 15: Dealing with Estimation, Uncertainty, Risk, and Commitment

Why is Software Late?

Genuchten 1991 IEEE General

Manager

Project

Manager Item

1 10 Insufficient front end planning

2 3 Unrealistic project plan

3 8 Project scope underestimated

4 1 Customer/management changes

5 14 Insufficient contingency planning

6 13 Inability to track progress

7 5 Inability to track problems early

8 9 Insufficient Number of checkpoints

9 4 Staffing problems

10 2 Technical complexity

11 6 Priority Shifts

12 11 No commitment by personnel to plan

13 12 Uncooperative support groups

14 7 Sinking team spirit

15 15 Unqualified project personnel

Page 16: Dealing with Estimation, Uncertainty, Risk, and Commitment

The Context of Feedback

Page 17: Dealing with Estimation, Uncertainty, Risk, and Commitment

Why is Software Late?

Genuchten 1991 IEEE General

Manager

Project

Manager Item

4 1 Customer/management changes

10 2 Technical complexity

2 3 Unrealistic project plan

9 4 Staffing problems

7 5 Inability to track problems early

11 6 Priority Shifts

14 7 Sinking team spirit

3 8 Project scope underestimated

8 9 Insufficient Number of checkpoints

1 10 Insufficient front end planning

12 11 No commitment by personnel to plan

13 12 Uncooperative support groups

6 13 Inability to track progress

5 14 Insufficient contingency planning

15 15 Unqualified project personnel

Page 18: Dealing with Estimation, Uncertainty, Risk, and Commitment

Why is Software Late?

Genuchten 1991 IEEE

General

Manager Project

Manager Item

H H Customer/management changes

L H Overall complexity

H H Unrealistic project plan

M H Staffing problems

H L Insufficient front end planning

Page 19: Dealing with Estimation, Uncertainty, Risk, and Commitment

The Goal

On Time

To Spec

Within Budget

Page 20: Dealing with Estimation, Uncertainty, Risk, and Commitment

Da Plan, Boss – Da Plan

Page 21: Dealing with Estimation, Uncertainty, Risk, and Commitment

IEEE Software, May/June 2006

Page 22: Dealing with Estimation, Uncertainty, Risk, and Commitment

Accuracy of Initial Estimate A

ctu

al

Initial Estimate

Initial Estimate vs. Actual Duration

Ideal

LGC Data

DeMarco

Page 23: Dealing with Estimation, Uncertainty, Risk, and Commitment

Probability Distribution Curve

Distribution Curve of Actual/Estimated (DeMarco data vs. LGC)

(Demarco data is Effort/Effort; LGC data is Duration/Duration)

0

0.5

1

1.5

2

2.5

0 1 2 3 4 5 6 7 8

(Actual/Estimated)

Fre

qu

en

cy

DeMarco

LGC

Page 24: Dealing with Estimation, Uncertainty, Risk, and Commitment

Log Normal Distribution

• Estimation Accuracy follows a Log Normal

distribution

0.1 1 10 0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5

Median

Mean

0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 50.1 1 10 0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 50.1 1 10 0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5

Page 25: Dealing with Estimation, Uncertainty, Risk, and Commitment

Uncertainty Bounds

0%

10%

20%

30%

40%

50%

60%

70%

80%

90%

100%

0.1 1 10

CD

F P

rob

ab

ilit

y

Ratio of Actual/Estimate

Cumulative Distribution Function of Actual/Estimate Ratio

DeMarco Data

DeMarco Log-Normal

Landmark Data

Landmark Log-Normal

Page 26: Dealing with Estimation, Uncertainty, Risk, and Commitment

How does Estimation Accuracy

Improve Over Time?

Feasibility Concept ofOperation

RequirementsSpec

Product DesignSpec

Detail DesignSpec

AcceptedSoftware

Rela

tive C

ost

Ran

ge

Cone of Uncertainty from Boehm

4.0

2.0

0.5

0.25

1.5

0.67

1.25

0.8 1.0

Page 27: Dealing with Estimation, Uncertainty, Risk, and Commitment

Landmark Cone of Uncertainty

0.1

1

10

0.00 0.10 0.20 0.30 0.40 0.50 0.60 0.70 0.80 0.90 1.00

Acu

tal

To

tal

Du

rati

on

/ E

sti

mate

d T

ota

l D

ura

tio

n

Percent of Actual Duration

Estimation Error over Time

Page 28: Dealing with Estimation, Uncertainty, Risk, and Commitment

But is Uncertainty Really Reduced?

“Take away an ordinary person’s illusions and

you take away happiness at the same time.”

Henrik Ibsen--Villanden

Page 29: Dealing with Estimation, Uncertainty, Risk, and Commitment

Remaining Uncertainty

Page 30: Dealing with Estimation, Uncertainty, Risk, and Commitment

Remaining Uncertainty

Page 31: Dealing with Estimation, Uncertainty, Risk, and Commitment

Sources of Error

• Bias

• Uncertainty Range

• Scope Creep

Page 32: Dealing with Estimation, Uncertainty, Risk, and Commitment

Sources of Error

• Bias

Median

Mean

0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5

Estimate

Page 33: Dealing with Estimation, Uncertainty, Risk, and Commitment

Negotiation Bias

• "It is difficult to get a man to

understand something when his

salary depends upon his not

understanding it.“ » Upton Sinclair:

Page 34: Dealing with Estimation, Uncertainty, Risk, and Commitment

Politics and Schedule Estimation

http://www.stevemcconnell.com/ieeesoftware/bp03.htm

• Developers tend to be temperamentally opposed

to the use of negotiating tricks. Such tricks

offend their sense of technical accuracy and fair

play. Developers don't want to offer lopsidedly

high initial estimates even when they know that

customers, marketers, or bosses will start with

lopsidedly low bargaining positions.

– Steve McConnell

Page 35: Dealing with Estimation, Uncertainty, Risk, and Commitment

Space Shuttle Challenger

Engineers Management

Probability of loss of life 1 in 100 1 in 100,000

Page 36: Dealing with Estimation, Uncertainty, Risk, and Commitment

34

Group Subject % Correct (target 90%)

Harvard MBAs General Trivia 40%

Chemical Co. Employees General Industry 50%

Chemical Co. Employees Company-Specific 48%

Computer Co. Managers General Business 17%

Computer Co. Managers Company-Specific 36%

AIE Seminar (before training) General Trivia & IT 35%-50%

AIE Seminar (after training) General Trivia & IT ~90%

90% Confidence Interval

Overconfidence in Ranges

• Most people are significantly overconfident about

their estimates, especially educated professionals

Page 37: Dealing with Estimation, Uncertainty, Risk, and Commitment

Test 1 (Jørgensen IEEE

Software 2008)

Group Guidance Result

A 800

B 40

C 4

D None 160

Page 38: Dealing with Estimation, Uncertainty, Risk, and Commitment

Test 1

Group Guidance Result

A 800 300

B 40 100

C 4 60

D None 160

Page 39: Dealing with Estimation, Uncertainty, Risk, and Commitment

Test 2

Group Guidance Result

A Minor Extension

B New Functionality

C Extension 50

Page 40: Dealing with Estimation, Uncertainty, Risk, and Commitment

Test 2

Group Guidance Result

A Minor Extension

40

B New Functionality

80

C Extension 50

Page 41: Dealing with Estimation, Uncertainty, Risk, and Commitment

Test 3

Group Guidance Result

A Future work at stake, efficiency will be measured

B Control 100

Page 42: Dealing with Estimation, Uncertainty, Risk, and Commitment

Test 3

Group Guidance Result

A Future work at stake, efficiency will be measured

40

B Control 100

Page 43: Dealing with Estimation, Uncertainty, Risk, and Commitment

Understand Bias

• "What gets us into trouble is not what we

don't know. It's what we know for sure that

just ain't so.“ » Mark Twain

Page 44: Dealing with Estimation, Uncertainty, Risk, and Commitment

task “A”...

htt

p:/

/ww

w.f

lickr.

co

m/p

hoto

s/p

alo

oza

/330

92425

55/ Create a six sided random number generator.

Something like a dice like thingy.

Every member of the team needs to roll a double six.

Page 45: Dealing with Estimation, Uncertainty, Risk, and Commitment

Relative Sizing

Page 46: Dealing with Estimation, Uncertainty, Risk, and Commitment

Did you know? (Jørgensen IEEE

Software March 2013) • The US has 155 million more inhabitants

than Mexico, but Mexico has 100 million

fewer inhabitants than the US.

• Poland has 10 million more inhabitants

than Romania, but Romania has about the

same number of inhabitants as Poland.

• Austria’s population is 70% of Hungary’s,

while Hungary’s population is 80% of

Austria’s.

Page 47: Dealing with Estimation, Uncertainty, Risk, and Commitment

Velocity Helps Remove Bias

•𝑆𝑡𝑜𝑟𝑦 𝑃𝑜𝑖𝑛𝑡𝑠

𝑆𝑡𝑜𝑟𝑦 𝑃𝑜𝑖𝑛𝑡𝑠

𝐼𝑡𝑒𝑟𝑎𝑡𝑖𝑜𝑛

= 𝐼𝑡𝑒𝑟𝑎𝑡𝑖𝑜𝑛𝑠

8/25/2009

10/14/2009

12/3/2009

1/22/2010

3/13/2010

5/2/2010

6/21/2010

8/10/2010

9/29/2010

11/18/2010

0 1 2 3 4 5 6 7 8

Iteration

Projected Ship Date

Page 48: Dealing with Estimation, Uncertainty, Risk, and Commitment

But Velocity is not a Silver Bullet S

tory

Estim

ate

Page 49: Dealing with Estimation, Uncertainty, Risk, and Commitment

Sources of Error

• Range of Uncertainty

Page 50: Dealing with Estimation, Uncertainty, Risk, and Commitment

Estimation Errors

• Lan Cao - Estimating Agile Software

Project Effort: An Empirical Study

Page 51: Dealing with Estimation, Uncertainty, Risk, and Commitment

Lan Cao - Estimating Agile Software Project

Effort: An Empirical Study

Page 52: Dealing with Estimation, Uncertainty, Risk, and Commitment

Sources of Error

• Scope Creep

Page 53: Dealing with Estimation, Uncertainty, Risk, and Commitment

Scope Creep

• Capers Jones

–2% per month

–27% per year

Page 54: Dealing with Estimation, Uncertainty, Risk, and Commitment

We want this

Page 55: Dealing with Estimation, Uncertainty, Risk, and Commitment

Don’t know that

we don’t know

Knowable

Unknowable

Uncertainty

Know that

we know

Know that

we don’t know

Don’t know that

we know

Page 56: Dealing with Estimation, Uncertainty, Risk, and Commitment

Don’t know that

we don’t know

Knowable

Unknowable

Uncertainty

Know that

we know

Know that

we don’t know

Don’t know that

we know

Uncertainty

Management

Wishful Thinking Discoverable Risks

p10

p50

p90

Page 57: Dealing with Estimation, Uncertainty, Risk, and Commitment

Estimation Exercise

Page 58: Dealing with Estimation, Uncertainty, Risk, and Commitment

Risky Business

Page 59: Dealing with Estimation, Uncertainty, Risk, and Commitment

War

They couldn't hit an elephant at this dist…

General John B. Sedgwick, Union Army Civil War officer's last words, uttered during the Battle of Spotsylvania, 1864

Page 60: Dealing with Estimation, Uncertainty, Risk, and Commitment

Gordon the

Guided Missile

Page 61: Dealing with Estimation, Uncertainty, Risk, and Commitment

Movies

Page 62: Dealing with Estimation, Uncertainty, Risk, and Commitment

Books

Page 63: Dealing with Estimation, Uncertainty, Risk, and Commitment

Poker

Page 64: Dealing with Estimation, Uncertainty, Risk, and Commitment

Texas Hold’em:

Which is the best hole hand?

A B C

Page 65: Dealing with Estimation, Uncertainty, Risk, and Commitment

Texas Hold’em:

Which is the best hole hand?

33.5% 29.6% 36.5%

A B C

Page 66: Dealing with Estimation, Uncertainty, Risk, and Commitment

Poker Metric:

Percent of Hands Won

Page 67: Dealing with Estimation, Uncertainty, Risk, and Commitment

Oil & Gas Exploration

Page 68: Dealing with Estimation, Uncertainty, Risk, and Commitment

Oil & Gas Exploration

Page 69: Dealing with Estimation, Uncertainty, Risk, and Commitment
Page 70: Dealing with Estimation, Uncertainty, Risk, and Commitment

Which Risks Are Important

Page 71: Dealing with Estimation, Uncertainty, Risk, and Commitment

Real Options

• The right — but not the obligation — to

undertake certain actions prior to an expiry

date

Page 72: Dealing with Estimation, Uncertainty, Risk, and Commitment

Airline Tickets

Page 73: Dealing with Estimation, Uncertainty, Risk, and Commitment
Page 74: Dealing with Estimation, Uncertainty, Risk, and Commitment

Real Options • The right, but not the obligation to take

some action prior to an expiry date

Page 75: Dealing with Estimation, Uncertainty, Risk, and Commitment

Real Options

Value of Information

Value of Flexibility

Page 76: Dealing with Estimation, Uncertainty, Risk, and Commitment

Value of Information

Page 77: Dealing with Estimation, Uncertainty, Risk, and Commitment

Value of Information

Page 78: Dealing with Estimation, Uncertainty, Risk, and Commitment

Va

lue

or

Co

st

EVI

ECI

Increasing Value & Cost of Info.

• EVPI – Expected Value of

Perfect Information

• ECI – Expected Cost of

Information

• EVI – Expected Value of

Information

$0

$$$

Low certainty High certainty

EVPI

Aim for this

range

76

Perfect

Information

Page 79: Dealing with Estimation, Uncertainty, Risk, and Commitment

Value of Flexibility

• The right — but not the

obligation — to undertake

certain actions prior to an

expiry date

Page 80: Dealing with Estimation, Uncertainty, Risk, and Commitment

Making An Agile Conference Agile

0

100

200

300

400

500

600

700

800

900

1000

0 10 20 30 40 50 60 70

Days Before Deadline

Submissions for 2011 compared to 2010

Y2010

Y2011-IT1

Y2011-IT2

5 Extra weeks to

review sessions

Page 81: Dealing with Estimation, Uncertainty, Risk, and Commitment

0

200

400

600

800

1000

1200

1400

1600

1800

16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 FINAL

Weeks Out

Estimated Agile 2010 Attendance

Most Likely

Pessimistic

Optimistic

Page 82: Dealing with Estimation, Uncertainty, Risk, and Commitment

Do you have a choice?

80

Option

Commitment

Decision

Page 83: Dealing with Estimation, Uncertainty, Risk, and Commitment
Page 84: Dealing with Estimation, Uncertainty, Risk, and Commitment

Agile projects need risk management too

Page 85: Dealing with Estimation, Uncertainty, Risk, and Commitment

Analyze risks

probability

imp

act

sh

ow

sto

pp

er

op

po

rtun

ity

improbable near certainty

Alien Invasion

We’ll rock at Scrum

Early Finish

Task Switching

Evaluation

Sickness

Scope creep

ne

glig

ible

Page 86: Dealing with Estimation, Uncertainty, Risk, and Commitment

0

5

10

15

20

25

30

1 2 3 4 5 6 7

Ris

k

Iteration

Risk Burndown

Risk 5

Risk 4

Risk 3

Risk 2

Risk 1

Page 87: Dealing with Estimation, Uncertainty, Risk, and Commitment

Risk

Technical Uncertainty

Manual Process

Complexity

Rules Engine

Complexity Lack of Standardization

Uncertain

Benefits

Technical Uncertainty

Manual Process

Complexity

Rules Engine

Complexity Lack of Standardization

Uncertain

Benefits

Page 88: Dealing with Estimation, Uncertainty, Risk, and Commitment

Categories of risk

Delivery Failure

Business Case

Failure

Collateral Damage

Political Risk

Quality and Market

Acceptance

Page 89: Dealing with Estimation, Uncertainty, Risk, and Commitment

Two Risk Perspectives

Individual

Perspective

Business

Perspective

Page 90: Dealing with Estimation, Uncertainty, Risk, and Commitment

Collateral Damage

Page 91: Dealing with Estimation, Uncertainty, Risk, and Commitment

Delivery Failure results in Collateral

Damage

Page 92: Dealing with Estimation, Uncertainty, Risk, and Commitment

Titanic

• Time pressure

• Feedback blocks

• Unsinkable

Page 93: Dealing with Estimation, Uncertainty, Risk, and Commitment

I’m beginning to

think it wasn’t such

a good idea to turn

off those unit tests

Page 94: Dealing with Estimation, Uncertainty, Risk, and Commitment

Collateral Damage

Business

Perspective

Individual

Perspective

Could be catastrophic

Some individuals may be willing to

take on more risk than desired

Page 95: Dealing with Estimation, Uncertainty, Risk, and Commitment

Collateral Damage Management

An effective roll-back strategy Honor feedback

Inspect Incremental Delivery

Page 96: Dealing with Estimation, Uncertainty, Risk, and Commitment

Business Case Failure

Page 97: Dealing with Estimation, Uncertainty, Risk, and Commitment

Business Case Failure

Page 98: Dealing with Estimation, Uncertainty, Risk, and Commitment

Always or

Often Used:

20%

Never or

Rarely Used:

64% Sometimes

16% Rarely

19%

Never

45%

Often

13%

Always

7%

Features and Functions

Standish Group Study, reported by CEO Jim Johnson, XP2002

Page 99: Dealing with Estimation, Uncertainty, Risk, and Commitment

Powerful Questions are: What are we building?

What Business are we in?

What Building are

we in?

Page 100: Dealing with Estimation, Uncertainty, Risk, and Commitment

98

The Purpose Alignment Model

Page 101: Dealing with Estimation, Uncertainty, Risk, and Commitment

99

In Practice

CAN WE CREATE A

DIFFERENTIATED PARTNERSHIP?

INNOVATE, CREATE

MINIMIZE / ELIMINATE

ACHIEVE AND MAINTAIN

PARITY, MIMIC,

SIMPLIFY

Page 102: Dealing with Estimation, Uncertainty, Risk, and Commitment

Applicable at all Levels • Corporate

Strategy

• Product Strategy

Page 103: Dealing with Estimation, Uncertainty, Risk, and Commitment

101

A View of Strategy - Apple

ATT

NEW PRODUCT DESIGN

USER EXPERIENCE

CONTENT DISTRIBUTION

MS OFFICE

INTEL HARDWARE

OTHER SOFTWARE

PERIPHERALS

Page 104: Dealing with Estimation, Uncertainty, Risk, and Commitment

Business Case

Business

Perspective

Individual

Perspective

Sustainable competitive advantage

How can I sell this so that I can get

more budget?

Page 105: Dealing with Estimation, Uncertainty, Risk, and Commitment

Delivery Failure

Late

Over Budget

Page 106: Dealing with Estimation, Uncertainty, Risk, and Commitment

Uncertainty Bounds

0%

10%

20%

30%

40%

50%

60%

70%

80%

90%

100%

0.1 1 10

CD

F P

rob

ab

ilit

y

Ratio of Actual/Estimate

Cumulative Distribution Function of Actual/Estimate Ratio

DeMarco Data

DeMarco Log-Normal

Landmark Data

Landmark Log-Normal

Page 107: Dealing with Estimation, Uncertainty, Risk, and Commitment

The A/B/C List sets proper

expectations

A MUST be completed in order to ship the product and the schedule will be slipped if necessary to make this commitment.

B Is TARGETED to be completed in order to ship the product, but may be dropped without consequence.

C Is NOT TARGETED to be completed prior to shipping, but might make it if time allows.

Only “A” features may be committed to customers.

If more than 50% of the planned effort is allocated to “A”

items the project is at risk.

Page 108: Dealing with Estimation, Uncertainty, Risk, and Commitment

A

0

0.2

0.4

0.6

0.8

1

1.2

Janu

ary

Febru

ary

Mar

chApr

ilM

ay

June

July

Augus

t

Septe

mbe

r

Octob

er

Nov

embe

r

Dec

embe

r

A/B/C List

50% 100%

Backlog Plan

Typical Delivery

25%

A B C

B C D

50% 25%

Target

Delivery Date

Page 109: Dealing with Estimation, Uncertainty, Risk, and Commitment

0

0.2

0.4

0.6

0.8

1

1.2

Janu

ary

Febru

ary

Mar

chApr

ilM

ay

June

July

Augus

t

Septe

mbe

r

Octob

er

Nov

embe

r

Dec

embe

r

A/B/C List

50% 100%

Backlog Plan

Uncertainty Risk

25%

A B C

B C D

50% 25%

Target

Delivery Date

A

Page 110: Dealing with Estimation, Uncertainty, Risk, and Commitment

Estimating Story Difficulty Estimation

XL

L

M

S

S M L XL

Cost

Valu

e

Page 111: Dealing with Estimation, Uncertainty, Risk, and Commitment

Product Innovation Flow

Adaptive Activities

Pro

ject

Sanction

RTM

CORE Activities

Idea Filter

Hot Items

A Backlog

Burnup

Sales

Services

Customer Support

Product Backlog

A Items

Iteration Backlog

Flexible Scope Backlog

New

ly D

iscovere

d

It

em

s

Most Items for consideration in next release

B & C Release

Backlog

B/C/D

Page 112: Dealing with Estimation, Uncertainty, Risk, and Commitment

No

Surprises!

Risk Management = Expectation Management

Page 113: Dealing with Estimation, Uncertainty, Risk, and Commitment

Iteration Review Questions

• What promises have been made, to whom were

they made, and who made them?

• What key decisions or commitments might we

have to make within the next 2 iterations?

• Questions to ask team anonymously

– When will we be ready to ship?

– Will we be able to keep our promises?

– Is the team healthy and operating effectively?

– Is the team on the right path?

Page 114: Dealing with Estimation, Uncertainty, Risk, and Commitment

Ask the Team

0

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

2/6/2011 2/26/2011 3/18/2011 4/7/2011 4/27/2011 5/17/2011 6/6/2011 6/26/2011 7/16/2011

Page 115: Dealing with Estimation, Uncertainty, Risk, and Commitment

Cost of Delay

Page 116: Dealing with Estimation, Uncertainty, Risk, and Commitment

Uncertainty

Time

Valu

e

Contract

Minimum scope for the

release at the latest date

that it can be released.

Plan

Planned scope for the

release at the optimal time

that it can be released.

Target

Best possible scenario if

everything went perfectly.

Page 117: Dealing with Estimation, Uncertainty, Risk, and Commitment

Uncertainty

Time

Valu

e

C

B

A

Page 118: Dealing with Estimation, Uncertainty, Risk, and Commitment

Tools for Delivery Risk

0

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

2/6/20112/26/20113/18/20114/7/20114/27/20115/17/20116/6/20116/26/20117/16/2011

Stop Dreaming

Ask the Team

Cost of Delay

Page 119: Dealing with Estimation, Uncertainty, Risk, and Commitment

Delivery Risk

Business

Perspective

Individual

Perspective

Cost of Delay

Business Credibility

Personal Credibility

Page 120: Dealing with Estimation, Uncertainty, Risk, and Commitment

Market Acceptance

Features and Quality

Page 121: Dealing with Estimation, Uncertainty, Risk, and Commitment

“I skate to

where the

puck is

going to

be, not

where it

has been.”

Page 122: Dealing with Estimation, Uncertainty, Risk, and Commitment

As Knowledge

increases Leaders use

iterations to guide

project towards

enhanced goal

Allow Mid Course Corrections

Planned Path

Actual Path

Actual Completion

Start

Zone of success Planned

Completion

Incre

asin

g K

now

led

ge

Page 123: Dealing with Estimation, Uncertainty, Risk, and Commitment

The Cone of Uncertainty

We expect uncertainty and manage for it through iterations,

anticipation, and adaptation.

Page 124: Dealing with Estimation, Uncertainty, Risk, and Commitment
Page 125: Dealing with Estimation, Uncertainty, Risk, and Commitment

123

The Purpose Alignment Model

Page 126: Dealing with Estimation, Uncertainty, Risk, and Commitment

Quality and Market Acceptance

Strategies

Seek and honor feedback

Incremental Delivery

Page 127: Dealing with Estimation, Uncertainty, Risk, and Commitment
Page 128: Dealing with Estimation, Uncertainty, Risk, and Commitment

Wrong Priorities

Page 129: Dealing with Estimation, Uncertainty, Risk, and Commitment

Compute This

"I recently asked a colleague [CIO] whether he

would prefer to deliver a project somewhat late

and over-budget but rich with business benefits or

one that is on-time and underbudget but of scant

value to the business. He thought it was a tough

call, and then went for the on-time scenario.

Delivering on-time and within budget is part of his

IT department's performance metrics. Chasing

after the elusive business value, over which he

thought he had little control anyway, is not."

Cutter Sr. Consultant Helen Pukszta

Page 130: Dealing with Estimation, Uncertainty, Risk, and Commitment

Software Tornado Example

Item

-15M 0M 15M 30M 45M

Product Acceptance

Uncertainty ██ ███ ███ ███ ███ ███ ███

Schedule Uncertainty █ ███ ███ ██

General Market Uncertainty ██ ██

Cost Uncertainty ██ █

Page 131: Dealing with Estimation, Uncertainty, Risk, and Commitment

Software Tornado Example

Item

-15M 0M 15M 30M 45M

Product Acceptance

Uncertainty ███ ███ ███ ███ ███ ███

Schedule Uncertainty ███ ███ ██

General Market Uncertainty ██ ██

Cost Uncertainty ██ █

Page 132: Dealing with Estimation, Uncertainty, Risk, and Commitment

Software Tornado Example

Item

-15M 0M 15M 30M 45M

Product Acceptance

Uncertainty ███ ███

Schedule Uncertainty ███ ██

General Market Uncertainty ██ ██

Cost Uncertainty ██ █

Page 133: Dealing with Estimation, Uncertainty, Risk, and Commitment

The Measurement Inversion

132

• Initial cost

• Long-term costs

• Cost saving benefit other than labor productivity

• Labor productivity

• Revenue enhancement

• Technology adoption rate

• Project completion

Lowest

Information Value

Highest

Information Value

Most Measured

Least Measured

In a business case, the economic value of measuring a variable is usually

inversely proportional to the measurement attention it typically gets.

Page 134: Dealing with Estimation, Uncertainty, Risk, and Commitment

Market Acceptance

Business

Perspective

Individual

Perspective

Impact to revenue

Impact to credibility

Cost of rework

Priorities are often guided by other

perceived constraints

Page 135: Dealing with Estimation, Uncertainty, Risk, and Commitment

Political Risk

Page 136: Dealing with Estimation, Uncertainty, Risk, and Commitment

Change

or

Maintain

Page 137: Dealing with Estimation, Uncertainty, Risk, and Commitment

Political Challenges Boss and above Boss’s Peers Boss’s Indirect

Peers

You Peers Indirect Peers

Direct Reports Peers’ Reports Indirect

Page 138: Dealing with Estimation, Uncertainty, Risk, and Commitment

Network

What’s in it for them for everyone to succeed?

What do they worry about losing if you are successful?

Page 139: Dealing with Estimation, Uncertainty, Risk, and Commitment

Long Ago and Far, Far Away…

Page 140: Dealing with Estimation, Uncertainty, Risk, and Commitment
Page 141: Dealing with Estimation, Uncertainty, Risk, and Commitment

Collaborating with Non-Collaborators

Agreement Disagree Agree

Col

labo

rati

on

Non

- C

olla

bora

tor

Col

labo

rato

r

Compliance Combative

Creative Tension

Collegial

Common Practice M

ore

usef

ul

Page 142: Dealing with Estimation, Uncertainty, Risk, and Commitment

Agile Leadership

Page 143: Dealing with Estimation, Uncertainty, Risk, and Commitment

Politics

Business

Perspective

Individual

Perspective

Politics do not add to business value

other than by luck

Perception trumps Reality

Politics forms Perception

Page 144: Dealing with Estimation, Uncertainty, Risk, and Commitment

Final Summary Risk Business Perspective Individual Perspective Tools Business Case Strategic alignment with

market need

Demonstrate Confidence • Purpose Alignment

Model

Collateral

Damage

Could be catastrophic Make or Break career.

Individuals may be willing to

take more risk than the

organization

• Build quality in

• Feedback loops

Delivery of

Market/

Quality Need

Impact to revenue

Impact to credibility

Cost of rework

Depends on the individual -

Priorities are often guided

by other perceived

constraints

• Customer Feedback

Delivery on

Time or within

Budget

Cost of Delay

Reduction of ROI

Business Credibility

Personal credibility • Cost of Delay

• Tornado Charts

Politics Markets only care if politics

influence external

perception.

Perception trumps Reality

Politics forms Perception

• Networking &

Transparency

• Collaborating with

Non-Collaborators

Page 145: Dealing with Estimation, Uncertainty, Risk, and Commitment

Simulation Exercise

ID: 1 Value: Sum of all dice

Major feature

Test: Roll 3 dice - 2 or more dice are the

same

Commit Points: 2

Page 146: Dealing with Estimation, Uncertainty, Risk, and Commitment

Stories and Scoring

• Points (Value pts and Commit pts) are scored for accepted stories.

• Total points are Value + 10*Commit Points Made.

• Value is just an estimate…the market will decide

We will run 3 iterations,

with 10 rolls of the dice per

iteration

WIP limit of one story in

progress

Must commit to 15 pts for

the release, and 5 pt per

iteration

ID: 1 Value: Sum of all dice

Major feature

Test: Roll 3 dice - 2 or more dice are the

same

Commit Points: 2

Page 147: Dealing with Estimation, Uncertainty, Risk, and Commitment

Special Actions

• Information

– At the cost of one roll, you may pre-roll your next turn

prior to selecting the story to work on.

• Flexibility

– At the cost of one roll, you may designate that the

story that you will be working on can be refactored at

a future date, i.e. you first accept the story, but if a

future roll gives an improved result, you may use that

roll for the new value

• It is ok abandon a story

• It is ok to redo a story

Page 148: Dealing with Estimation, Uncertainty, Risk, and Commitment

Estimating Story Difficulty Estimation

XL

L

M

S

S M L XL

Cost

Valu

e

Page 149: Dealing with Estimation, Uncertainty, Risk, and Commitment

The Progress Board Backlog Committed In Work

Accepted

Committed for

this release (A)

Cutline

Potential stories

Committed for

this iteration

In Development

Passes test

criteria

Page 150: Dealing with Estimation, Uncertainty, Risk, and Commitment

Risk Management is not Risk Aversion

Page 151: Dealing with Estimation, Uncertainty, Risk, and Commitment

Contact

Todd Little

[email protected]

www.toddlittleweb.com

www.accelinnova.com

Page 152: Dealing with Estimation, Uncertainty, Risk, and Commitment

Extra Slides

Page 153: Dealing with Estimation, Uncertainty, Risk, and Commitment

Why is

Software

Late?

Page 154: Dealing with Estimation, Uncertainty, Risk, and Commitment

From the home office in Duncan, Oklahoma

Top Ten reasons why software is

late

Dubai, UAE

Page 155: Dealing with Estimation, Uncertainty, Risk, and Commitment

10: Requirements, what Requirements?

What you want, baby I

got it

R-E-Q-U-I-R-E

Find out what it

means to me

Top Ten reasons why software

is late

Page 156: Dealing with Estimation, Uncertainty, Risk, and Commitment

9: Dependencies on other groups that were late

Top Ten reasons why software

is late

Page 157: Dealing with Estimation, Uncertainty, Risk, and Commitment

8: Over-optimistic Schedule Estimation

Always look on the bright side of code

. . . . . . .

Always look on the bright side of code

. . . . . . .

The code’s a piece of $#!^,

when we look at it

We can always overlook a minor kink . . . .

It probably compiles, it might even link . . .

Surely that must mean it doesn’t stink

Top Ten reasons why software

is late

Page 158: Dealing with Estimation, Uncertainty, Risk, and Commitment

7: Those weren’t MY estimates

How low can you go!

Scheduling Ritual

Top Ten reasons why software

is late

Page 159: Dealing with Estimation, Uncertainty, Risk, and Commitment

6: Not enough testers or documentation

resources.

Who needs them anyway? We

put those bugs--I mean features--

in there on purpose. Besides, it

was difficult to program, it should

be difficult to use.

Top Ten reasons why software

is late

Page 160: Dealing with Estimation, Uncertainty, Risk, and Commitment

5: Offshore and Outsourcing issues

My source code lies over the ocean,

My source code lies over the sea .

My source code lies over the ocean,

Oh bring back my source code to me

. . . . .

Bring Back, Bring Back,

oh bring back my source code to me, to me

Bring Back, Bring Back,

oh bring back my source code to me

Top Ten reasons why software is

late

Page 161: Dealing with Estimation, Uncertainty, Risk, and Commitment

4: One word, Ch-ch-ch-changes

Top Ten reasons why software is

late

Page 162: Dealing with Estimation, Uncertainty, Risk, and Commitment

3: I can’t get no, System Admin

– I can’t get no, CM action

– ‘cause I try,

– ..and I try,

– ….and I try,

– ……and I try….

Top Ten reasons why software

is late

Page 163: Dealing with Estimation, Uncertainty, Risk, and Commitment

2: You didn’t give me the headcount that

you promised

Top Ten reasons why software

is late

Page 164: Dealing with Estimation, Uncertainty, Risk, and Commitment

1: Weren’t you doing the backups!?

Top Ten reasons why software

is late

Page 165: Dealing with Estimation, Uncertainty, Risk, and Commitment

Successful Projects?

Page 166: Dealing with Estimation, Uncertainty, Risk, and Commitment

Risk and Context

• One Size Doesn’t Fit All

Page 167: Dealing with Estimation, Uncertainty, Risk, and Commitment

Context Leadership Model

Project Complexity

Un

ce

rta

inty

Cows

Bulls Colts

Sheep Dogs

Page 168: Dealing with Estimation, Uncertainty, Risk, and Commitment

Context Leadership Model

Project Complexity

Un

ce

rta

inty

Simple, young projects.

Need agility

Tight Teams

Sheep Dogs Complex, mature market

Need defined interfaces

Cows

Bulls Agility to handle uncertainty Process definition to cope

with complexity

laissez faire

Colts

Low

Low

High

High

Page 169: Dealing with Estimation, Uncertainty, Risk, and Commitment

Bull Product Release

Page 170: Dealing with Estimation, Uncertainty, Risk, and Commitment

Reduce Uncertainty or Complexity

Uncertainty Complexity

Opportunities to Reduce Uncertainty:

• Use proven technologies

• Reduce project duration

Opportunities to Reduce Complexity:

• Collocate the team

• Break project into sub-projects

Attribute Score

Market ███

Technical ███

# Customers █████████

Duration █████████

Change ███

Attribute Score

Team Size █████████

Mission Critical █████████

Team Location █████████

Team Maturity ███

Domain Gaps ███

Dependencies █████████

Page 171: Dealing with Estimation, Uncertainty, Risk, and Commitment

Partitioning

Dog

Project

Cow

Project

Colt

Project

Bull

Program

Remember: Loose Coupling and Strong Cohesion

Page 172: Dealing with Estimation, Uncertainty, Risk, and Commitment

Project Leadership Guide

M

ark

et

Dif

fere

nti

ati

ng

High

Low

Mission Critical Low High

Invent

Manage Offload

Create

Change

Embrace

Change

Eliminate

Change

Control

Change

Ad Hoc Agile

Outsource Structured

Deploy

Page 173: Dealing with Estimation, Uncertainty, Risk, and Commitment

Portfolio Management

RAPID Quadrant Assessment

0.0

2.0

4.0

6.0

8.0

10.0

12.0

0.0 5.0 10.0 15.0 20.0 25.0 30.0

Project Complexity

Un

cert

ain

ty

Project Complexity

Un

ce

rta

inty

Page 174: Dealing with Estimation, Uncertainty, Risk, and Commitment

Not all dogs are the same

Page 175: Dealing with Estimation, Uncertainty, Risk, and Commitment

Financial Markets

A severe depression like that of 1920-21 is outside the range of probability.

Harvard Economic Society, Weekly Letter, November 16, 1929.

Page 176: Dealing with Estimation, Uncertainty, Risk, and Commitment
Page 177: Dealing with Estimation, Uncertainty, Risk, and Commitment

Getting Better

Page 178: Dealing with Estimation, Uncertainty, Risk, and Commitment

New Product Development

I think there is a world market for about five computers.

Thomas J. Watson, chairman of IBM, 1943.

Page 179: Dealing with Estimation, Uncertainty, Risk, and Commitment

Getting Better

0

1

2

3

4

5

6

7

8

9

1 2 3 4

Esti

mati

on

Qu

ali

ty F

acto

r (E

QF

)

Years

Page 180: Dealing with Estimation, Uncertainty, Risk, and Commitment

How do “Risky Businesses” work

“It’s tough to make predictions,

especially about the future.”

Yogi Berra, Niels Bohr

Page 181: Dealing with Estimation, Uncertainty, Risk, and Commitment

Exercise

Low Med High

Distance from Las Vegas to Houston, Texas

Height of the Empire State Building

Population of Sweden

U.S. Oil Consumption/day

Water in a 100 gallon vat filled with sand

Page 182: Dealing with Estimation, Uncertainty, Risk, and Commitment

Exercise

Low Med High

Distance from Las Vegas to Houston, Texas

1222

Height of the Empire State Building

1453

Population of Sweden 9MM

U.S. Oil Consumption/day 20MM

Water in a 100 gallon vat filled with sand

35

Page 183: Dealing with Estimation, Uncertainty, Risk, and Commitment

Uncertainty

Time

Valu

e

Failure

Maximal

Success

Schedule

Flexible

Scope

Flexible

Minimal

Success

Page 184: Dealing with Estimation, Uncertainty, Risk, and Commitment

Estimation accuracy improves

(Eveleens and Verhoef)

Page 185: Dealing with Estimation, Uncertainty, Risk, and Commitment

Estimation accuracy constant

(Eveleens and Verhoef)

Page 186: Dealing with Estimation, Uncertainty, Risk, and Commitment

Estimation accuracy decreases

(Eveleens and Verhoef)

Page 187: Dealing with Estimation, Uncertainty, Risk, and Commitment