98
Mythbusting Software Estimation Todd Little VP Product Development IHS

Mythbusting Software Estimation

Embed Size (px)

DESCRIPTION

Mythbusting Software Estimation. Todd Little VP Product Development IHS. Test First. #1: Estimation challenges are well understood by General Management, Project Management, and Teams and it is normal to be able to estimate projects within 25% accuracy. - PowerPoint PPT Presentation

Citation preview

Page 1: Mythbusting  Software Estimation

Mythbusting Software Estimation

Todd Little

VP Product Development

IHS

Page 2: Mythbusting  Software Estimation

Test First

Page 3: Mythbusting  Software Estimation

#1: Estimation challenges are well understood by General Management, Project Management, and Teams and it is normal to be able to estimate projects within 25% accuracy.

Page 4: Mythbusting  Software Estimation

#2: Estimation accuracy significantly improves as the project progresses

Page 5: Mythbusting  Software Estimation

#3: Estimations are frequently impacted by biases and these biases can be significant.

Page 6: Mythbusting  Software Estimation

#4: We’re pretty good at estimating things relatively

Page 7: Mythbusting  Software Estimation

#5: Velocity/Throughput is a good tool for adjusting estimates.

Page 8: Mythbusting  Software Estimation

#6: We’re a bit behind, but we’ll make it up in testing since most of our uncertainty was in the features.

Page 9: Mythbusting  Software Estimation

#7: Scope Creep is a major source of estimation error.

Page 10: Mythbusting  Software Estimation

#8: Having more estimators, even if they are not experts, improves estimation accuracy

Page 11: Mythbusting  Software Estimation

#9: Project success is determined by on-time delivery

Page 12: Mythbusting  Software Estimation

#10: Estimation is waste

Page 13: Mythbusting  Software Estimation

#1: Estimation challenges are well understood by General Management, Project Management, and Teams and it is normal to be able to estimate projects within 25% accuracy.

Page 14: Mythbusting  Software Estimation

Managing the Coming Storm Inside the Cyclone

When will we get the requirements?All in good time, my little pretty, all in good timeBut 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 15: Mythbusting  Software Estimation

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 HeroReorg

Testing

Page 16: Mythbusting  Software Estimation

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 17: Mythbusting  Software Estimation

The Context of Feedback

Page 18: Mythbusting  Software Estimation

Why is Software Late?Genuchten 1991 IEEE

General Manager

Project Manager Item

H H Customer/management changes H H Unrealistic project plan M H Staffing problems L H Overall complexity H L Insufficient front end planning

Page 19: Mythbusting  Software Estimation

Negotiation Bias

• "It is difficult to get a man to understand something when his salary depends upon his not understanding it.“

» Upton Sinclair:

Page 20: Mythbusting  Software Estimation

Space Shuttle Challenger

Engineers Management

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

135 Flights

2 Disasters

14 Deaths

Page 21: Mythbusting  Software Estimation

Overconfidence of Success

Measured Perceived0%

10%20%30%40%50%60%70%80%90%

42%

79%

Project Success

Matthew G. Miller, Ray J. Dawson, Kieran B. Miller, Malcolm Bradley (2008). New Insights into IT Project Failure & How to Avoid It. Presented at 22nd IPMA World Congress - ‐ Rome (Italy) November 9- ‐11, 2008, in Stream 6. As of May 2013, self published at http://www.mgmiller.co.uk/files/paper.pdf

Page 22: Mythbusting  Software Estimation

IEEE Software, May/June 2006

Page 23: Mythbusting  Software Estimation

Accuracy of Initial Estimate

Initial Estimate vs. Actual Duration

IdealLGC DataDeMarco

Initial Estimate

Ac

tua

l

Page 24: Mythbusting  Software Estimation

Data From Steve McConnell

Page 25: Mythbusting  Software Estimation

UncertaintyPercentage of Projects

10-20% Less than or equal to original estimate

50% Less than 2X original estimate

80-90% Less than 4X original estimate

Page 26: Mythbusting  Software Estimation

Jørgensen 2013

• Put software development project for bid on online marketplace vWorker.com

• Received 16 bids. • Reduced down to 6 bids from vendors that

had high (9.5) client satisfaction.• All 6 bidders went ahead and built the

software

Page 27: Mythbusting  Software Estimation

Jørgensen 2013

• Highest Estimate 8x the Lowest• Actual/Estimate Range: 0.7 – 2.9 (4x)• Actual Performance Range: Worst took

18X the effort of the best

Estimate Ratio of Actual to Estimate Actual0

2

4

6

8

10

12

14

16

18

20

Best Worst

Page 28: Mythbusting  Software Estimation

#1: Estimation challenges are well understood by General Management, Project Management, and Teams and it is normal to be able to estimate projects within 25% accuracy.

Page 29: Mythbusting  Software Estimation

#2: Estimation accuracy significantly improves as the project progresses

Page 30: Mythbusting  Software Estimation

How does Estimation Accuracy Improve Over Time?

Feasibility Concept of Operation

Require-ments Spec

Product Design Spec

Detail Design Spec

Accepted Software

Cone of Uncertainty from Boehm

Re

lati

ve

Co

st

Ra

ng

e

4.0

2.0

0.5

0.25

1.5

0.67

1.25

0.81.0

4x

Page 31: Mythbusting  Software Estimation

Landmark Cone of Uncertainty

0.00 0.10 0.20 0.30 0.40 0.50 0.60 0.70 0.80 0.90 1.000.1

1

10

Estimation Error over Time

Percent of Actual Duration

Acu

tal

To

tal

Du

rati

on

/ E

stim

ated

To

tal

Du

rati

on

Page 32: Mythbusting  Software Estimation

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 33: Mythbusting  Software Estimation

The Real Business Question

• How much work do we have left to do and when will we ship?

Page 34: Mythbusting  Software Estimation

Remaining Uncertainty

4x

Page 35: Mythbusting  Software Estimation

Remaining UncertaintyS

tory

E

stim

ate

Page 36: Mythbusting  Software Estimation

#2: Estimation accuracy significantly improves as the project progresses

Page 37: Mythbusting  Software Estimation

#3: Estimations are frequently impacted by biases and these biases can be significant.

Page 38: Mythbusting  Software Estimation

Optimism Bias

0.00 0.10 0.20 0.30 0.40 0.50 0.60 0.70 0.80 0.90 1.000.1

1

10

Estimation Error over Time

Percent of Actual Duration

Acu

tal

To

tal

Du

rati

on

/ E

stim

ated

To

tal

Du

rati

on

Page 39: Mythbusting  Software Estimation

Test 1 (Jørgensen IEEE Software 2008)

Group Guidance Result

A 800

B 40

C 4

D None 160

Page 40: Mythbusting  Software Estimation

Test 1Group Guidance Result

A 800 300

B 40 100

C 4 60

D None 160

Page 41: Mythbusting  Software Estimation

Test 2

Group Guidance Result

A Minor Extension

B New Functionality

C Extension 50

Page 42: Mythbusting  Software Estimation

Test 2

Group Guidance Result

A Minor Extension

40

B New Functionality

80

C Extension 50

Page 43: Mythbusting  Software Estimation

Test 3

Group Guidance Result

A Future work at stake, efficiency will be measured

B Control 100

Page 44: Mythbusting  Software Estimation

Test 3

Group Guidance Result

A Future work at stake, efficiency will be measured

40

B Control 100

Page 45: Mythbusting  Software Estimation

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 46: Mythbusting  Software Estimation

#3: Estimations are frequently impacted by biases and these biases can be significant.

Page 47: Mythbusting  Software Estimation

#4: We’re pretty good at estimating things relatively

Page 48: Mythbusting  Software Estimation

Anchoring

Page 49: Mythbusting  Software Estimation

Relative Anchoring

• “A” relative to “B” is not symmetric with “B” relative to “A”

• Jørgensen IEEE Software March 2013– Austria’s population is 70% of Hungary’s

(Austria relative to Hungary), while Hungary’s population is 80% of Austria’s (Hungary relative to Austria).

Page 50: Mythbusting  Software Estimation

Relative Sizing - Dimensionality

Low by 4X

Page 51: Mythbusting  Software Estimation

#4: We’re pretty good at estimating things relatively

Page 52: Mythbusting  Software Estimation

#5: Velocity/Throughput is a good tool for adjusting estimates.

Page 53: Mythbusting  Software Estimation

Velocity

Scope Creep

Burnup Chart

Page 54: Mythbusting  Software Estimation

Velocity Helps Remove Bias

𝑆𝑡𝑜𝑟𝑦 𝑃𝑜𝑖𝑛𝑡𝑠

𝑁𝑒𝑡𝑉𝑒𝑙𝑜𝑐𝑖𝑡𝑦=𝑆𝑡𝑜𝑟𝑦 𝑃𝑜𝑖𝑛𝑡𝑠𝐼𝑡𝑒𝑟𝑎𝑡𝑖𝑜𝑛

=𝐼𝑡𝑒𝑟𝑎𝑡𝑖𝑜𝑛𝑠

0 1 2 3 4 5 6 7 83/28/2009

7/6/2009

10/14/2009

1/22/2010

5/2/2010

8/10/2010

11/18/2010

Projected Ship Date

Iteration

Page 55: Mythbusting  Software Estimation

But Velocity is not a Silver BulletS

tory

E

stim

ate

Page 56: Mythbusting  Software Estimation

#5: Velocity is a good tool for adjusting estimates.

Page 57: Mythbusting  Software Estimation

#6: We’re a bit behind, but we’ll make it up in testing since most of our uncertainty was in the features.

Page 58: Mythbusting  Software Estimation

Lan Cao - Estimating Agile Software Project Effort: An Empirical Study

Page 59: Mythbusting  Software Estimation

#6: We’re a bit behind, but we’ll make it up in testing since most of our uncertainty was in the features.

Page 60: Mythbusting  Software Estimation

#7: Scope Creep is a major source of estimation error.

Page 61: Mythbusting  Software Estimation

Scope Creep

• Capers Jones 2% per month 27% per year

Velocity

Scope Creep

Page 62: Mythbusting  Software Estimation

Estimate Velocity Net of Scope Creep

0 10 20 30 40 50 600

1

2

3

4

5

6Impact of 2%/month Scope Creep

Planned Duration (months)

(Ra

tio

Ac

tua

l/O

rig

ina

l E

sti

ma

te)

Page 63: Mythbusting  Software Estimation

Success vs. Project DurationLarman / Standish

Page 64: Mythbusting  Software Estimation

#7: Scope Creep is a major source of estimation error.

Page 65: Mythbusting  Software Estimation

#8: Having more estimators, even if they are not experts, improves estimation accuracy

Page 66: Mythbusting  Software Estimation

Group Estimation Exercise

• Number of Jellybeans in the jar

Page 67: Mythbusting  Software Estimation

Jellybean Results

Type of Estimate Typical RangesIndividual Estimates 0.20 – 3.0 (15X)Groups (of ~6) 0.75 – 1.50 (2X)Average of the Individuals

0.80 – 1.20

Page 68: Mythbusting  Software Estimation

Wisdom of Crowds

• Jelly Beans• “Who Wants To Be a

Millionaire?” audience correct 91%

• Dutch Tulip Mania 1637

Page 69: Mythbusting  Software Estimation

Ask the Team

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/20110

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

Page 70: Mythbusting  Software Estimation

#8: Having more estimators, even if they are not experts, improves estimation accuracy

Page 71: Mythbusting  Software Estimation

#9: Project success is determined by on-time delivery

Page 72: Mythbusting  Software Estimation

Delivery Challenges/Failures

Challenged46%

Failed19%Succesful

35%

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

Page 73: Mythbusting  Software Estimation

• Why do we care about on-time delivery?

Page 74: Mythbusting  Software Estimation

Cost of Delay

Page 75: Mythbusting  Software Estimation

Wrong Priorities

The Cost of Crap

Page 76: Mythbusting  Software Estimation

Poker Metric: Percent of Hands Won

Page 77: Mythbusting  Software Estimation

Software Metric – On Time%

Page 78: Mythbusting  Software Estimation

Value Metric

Page 79: Mythbusting  Software Estimation

The Measurement Inversion

79

LowestInformation Value

Highest Information Value

Most Measured

Least Measured

Cost & Time

Value Delivery

Page 80: Mythbusting  Software Estimation

#9: Project success is determined by on-time delivery

Page 81: Mythbusting  Software Estimation

#10: Estimation is waste

Page 82: Mythbusting  Software Estimation

The Real Business Questions

• Is it worth doing?• What is the priority?• When is the target time to ship?• What is the critical scope?• Do we have the right investment?• What is the cost of delay?

Page 83: Mythbusting  Software Estimation

#10: Estimation is waste

Page 84: Mythbusting  Software Estimation

Now What?

Page 85: Mythbusting  Software Estimation

Estimation and Prioritization

XL

L

M

S

S M L XL

Cost

Val

ue

Priority

Page 86: Mythbusting  Software Estimation

The A/B/C List sets proper expectations (similar to MoSCoW)

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

B Is WISHED 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 87: Mythbusting  Software Estimation

Sizing for Scope Creep

500 Point release backlog

Velocity of 25 points per 2 week iteration

2%/mo = 1% scope creep per iteration = 5 pts.

Net Planned Velocity = 20 pts/iteration

Page 88: Mythbusting  Software Estimation

A

0

0.2

0.4

0.6

0.8

1

1.2

A/B/C List

50% 100%

Backlog Plan

Typical Delivery

25%

A B C

B C D

50% 25%

Target Delivery Date

Page 89: Mythbusting  Software Estimation

0

0.2

0.4

0.6

0.8

1

1.2

A/B/C List

50% 100%

Backlog Plan

Uncertainty Risk

25%

A B C

B C D

50% 25%

Target Delivery Date

A

Page 90: Mythbusting  Software Estimation

Metrics to Track

Page 91: Mythbusting  Software Estimation

Velocity

Scope Creep

Burnup Chart

Monitor Quality

Page 92: Mythbusting  Software Estimation

Ask the Team

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/20110

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

Page 93: Mythbusting  Software Estimation

Cost of Delay

Page 95: Mythbusting  Software Estimation

www.synerzip.comConfidential • 95

84

www.synerzip.comHemant Elhence

[email protected]

Page 96: Mythbusting  Software Estimation

www.synerzip.comConfidential

Synerzip in a Nutshell

1. Software product development partner for small/mid-sized technology companies

• Exclusive focus on small/mid-sized technology companies, typically venture-backed companies in growth phase

• By definition, all Synerzip work is the IP of its respective clients• Deep experience in full SDLC – design, dev, QA/testing, deployment

2. Dedicated team of high caliber software professionals for each client• Seamlessly extends client’s local team, offering full transparency• Stable teams with very low turn-over• NOT just “staff augmentation”, but provide full mgmt support

3. Actually reduces risk of development/delivery• Experienced team - uses appropriate level of engineering discipline• Practices Agile development – responsive, yet disciplined

4. Reduces cost – dual-shore team, 50% cost advantage5. Offers long term flexibility – allows (facilitates) taking offshore team

captive – aka “BOT” option

Page 98: Mythbusting  Software Estimation

www.synerzip.comConfidential

Call Us for a Free Consultation!

Hemant Elhence [email protected]

469.374.0500

Thanks!