Transcript
Page 1: Estimation or, "How to Dig your Grave"

Estimation

Or,“How to Dig your own Grave”

Rowan Merewood

Page 2: Estimation or, "How to Dig your Grave"

Who

Page 3: Estimation or, "How to Dig your Grave"

Who

● Software Engineer● & Team Lead● at Ibuildings

Page 4: Estimation or, "How to Dig your Grave"

Who

● Software Engineer● & Team Lead● at Ibuildings

● @rowan_m

Page 5: Estimation or, "How to Dig your Grave"

Why

Page 6: Estimation or, "How to Dig your Grave"

Why

● I've seen (& made) mistakes

Page 7: Estimation or, "How to Dig your Grave"

Why

● I've seen (& made) mistakes

● You can avoid them

Page 8: Estimation or, "How to Dig your Grave"

Why

● I've seen (& made) mistakes

● You can avoid them

● Make your own

Page 9: Estimation or, "How to Dig your Grave"

What could possibly go wrong?

Page 10: Estimation or, "How to Dig your Grave"

Sales create estimates

Page 11: Estimation or, "How to Dig your Grave"

Sales create estimates

● Use skills correctly

Page 12: Estimation or, "How to Dig your Grave"

Sales create estimates

● Use skills correctly● Send a dev with sales

Page 13: Estimation or, "How to Dig your Grave"

Sales create estimates

● Use skills correctly● Send a dev with sales

● If you're sales & dev...

Page 14: Estimation or, "How to Dig your Grave"

Sales create estimates

● Use skills correctly● Send a dev with sales

● If you're sales & dev...

remember which hat you're wearing

Page 15: Estimation or, "How to Dig your Grave"

Lone developer creates estimates

Page 16: Estimation or, "How to Dig your Grave"

Lone developer creates estimates

● It's ok, he's a ROCKSTAR

Page 17: Estimation or, "How to Dig your Grave"

Lone developer creates estimates

● It's ok, he's a ROCKSTAR

● Independent estimates

Page 18: Estimation or, "How to Dig your Grave"

Lone developer creates estimates

● It's ok, he's a ROCKSTAR

● Independent estimates

● Or, at least review

Page 19: Estimation or, "How to Dig your Grave"

Estimate from detailed task lists

Page 20: Estimation or, "How to Dig your Grave"

Estimate from detailed task lists

● You know it will change

Page 21: Estimation or, "How to Dig your Grave"

Estimate from detailed task lists

● You know it will change

● Gives misplaced confidence

Page 22: Estimation or, "How to Dig your Grave"

Estimate from detailed task lists

● You know it will change

● Gives misplaced confidence

● Encourages micro-management

Page 23: Estimation or, "How to Dig your Grave"

Estimate a day as 8 hours

Page 24: Estimation or, "How to Dig your Grave"

Estimate a day as 8 hours

● 16 hr. task == 2 days

Page 25: Estimation or, "How to Dig your Grave"

Estimate a day as 8 hours

● 16 hr. task == 2 days(ha ha – you're cute)

Page 26: Estimation or, "How to Dig your Grave"

Estimate a day as 8 hours

● 16 hr. task == 2 days(ha ha – you're cute)

● You are not a code machine

Page 27: Estimation or, "How to Dig your Grave"

Estimate a day as 8 hours

● 16 hr. task == 2 days(ha ha – you're cute)

● You are not a code machine

● Even if you are,your team is not

Page 28: Estimation or, "How to Dig your Grave"

Estimate a day as 8 hours

● 16 hr. task == 2 days(ha ha – you're cute)

● You are not a code machine

● Even if you are,your team is not

● Dev: 6 hr. Lead: 4 hr.

Page 29: Estimation or, "How to Dig your Grave"

Estimate in hours

Page 30: Estimation or, "How to Dig your Grave"

Estimate in hours

● Still too much detail

Page 31: Estimation or, "How to Dig your Grave"

Estimate in hours

● Still too much detail

● Use ¼ days

Page 32: Estimation or, "How to Dig your Grave"

Estimate in hours

● Still too much detail

● Use ¼ days● ¼, ½, 1, 2, 3 days

Page 33: Estimation or, "How to Dig your Grave"

Estimate in hours

● Still too much detail

● Use ¼ days● ¼, ½, 1, 2, 3 days

● 1, 3, 5, 7 days

Page 34: Estimation or, "How to Dig your Grave"

Estimate in hours

● Still too much detail

● Use ¼ days● ¼, ½, 1, 2, 3 days

● 1, 3, 5, 7 days● Larger increments,

larger projects

Page 35: Estimation or, "How to Dig your Grave"

Just estimate coding time

Page 36: Estimation or, "How to Dig your Grave"

Just estimate coding time

● Remember your overheads

Page 37: Estimation or, "How to Dig your Grave"

Just estimate coding time

● Remember your overheads

● Remember team overheads

Page 38: Estimation or, "How to Dig your Grave"

Just estimate coding time

● Remember your overheads

● Remember team overheads

● Think about dependencies

Page 39: Estimation or, "How to Dig your Grave"

Estimates as commitments

Page 40: Estimation or, "How to Dig your Grave"

Estimates as commitments

● Well, yes and no...

Page 41: Estimation or, "How to Dig your Grave"

Estimates as commitments

● Well, yes and no...

● List and quantify risk

Page 42: Estimation or, "How to Dig your Grave"

Estimates as commitments

● Well, yes and no...

● List and quantify risk● Estimates != schedule

Page 43: Estimation or, "How to Dig your Grave"

Waterfall estimates are useless

Page 44: Estimation or, "How to Dig your Grave"

Waterfall estimates are useless

● Fine, stop calling yourself an engineer

Page 45: Estimation or, "How to Dig your Grave"

Waterfall estimates are useless

● Fine, stop calling yourself an engineer

● Lots of work in“off-the-shelf” tasks

Page 46: Estimation or, "How to Dig your Grave"

Waterfall estimates are useless

● Fine, stop calling yourself an engineer

● Lots of work in“off-the-shelf” tasks

● Cone of Uncertainty

Page 47: Estimation or, "How to Dig your Grave"

Agile means we can't estimate

Page 48: Estimation or, "How to Dig your Grave"

Agile means we can't estimate

“Yeah, well, you know, that's just like, your opinion, man.”

Page 49: Estimation or, "How to Dig your Grave"

Agile means we can't estimate

● Over-reaction to Waterfall

“Yeah, well, you know, that's just like, your opinion, man.”

Page 50: Estimation or, "How to Dig your Grave"

Agile means we can't estimate

● Over-reaction to Waterfall

● Excuse to drop software engineering and just hack it

“Yeah, well, you know, that's just like, your opinion, man.”

Page 51: Estimation or, "How to Dig your Grave"

Enough mistakes, time for a treat

Page 52: Estimation or, "How to Dig your Grave"

Help your client understand

● Estimates as a budget

Page 53: Estimation or, "How to Dig your Grave"

Help your client understand

● Estimates as a budget

● The Holy Triangle● MoSCoW● Kano model

Page 54: Estimation or, "How to Dig your Grave"

Holy Triangle

Good

Fast

Cheap

Page 55: Estimation or, "How to Dig your Grave"

Holy Triangle

Good

Fast

Cheap

Scope

Time

CostQuality

Page 56: Estimation or, "How to Dig your Grave"

MoSCoW

● Must● Should● Could● Won't

Page 57: Estimation or, "How to Dig your Grave"

MoSCoW

● Must● Should● Could● Won't

Density

Capacity

Page 58: Estimation or, "How to Dig your Grave"

MoSCoW

● Must● Should● Could● Won't

Density

Page 59: Estimation or, "How to Dig your Grave"

MoSCoW

● Must● Should● Could● Won't

Density

Page 60: Estimation or, "How to Dig your Grave"

MoSCoW

● Must● Should● Could● Won't

Density

Page 61: Estimation or, "How to Dig your Grave"

MoSCoW

● Must● Should● Could● Won't

Density

Page 62: Estimation or, "How to Dig your Grave"

MoSCoW

● Must● Should● Could● Won't

Density

Page 63: Estimation or, "How to Dig your Grave"

Kano Model

Page 64: Estimation or, "How to Dig your Grave"

Kano Model

● Basic functionality● Performance● Exciters

Page 65: Estimation or, "How to Dig your Grave"

Kano Model

● Basic functionality● Performance● Exciters Exciters

Performance

Basic

High Satisfaction

Low Satisfaction

FeatureAbsent

FeaturePresent

Page 66: Estimation or, "How to Dig your Grave"

Earn their trust, then get agile

Page 67: Estimation or, "How to Dig your Grave"

Earn their trust, then get agile

● Low risk, fixed price to start

Page 68: Estimation or, "How to Dig your Grave"

Earn their trust, then get agile

● Low risk, fixed price to start

● Create a roadmap

Page 69: Estimation or, "How to Dig your Grave"

Earn their trust, then get agile

● Low risk, fixed price to start

● Create a roadmap

● Move to sprint-based work

Page 70: Estimation or, "How to Dig your Grave"

Gamble with Planning Poker

Page 71: Estimation or, "How to Dig your Grave"

Gamble with Planning Poker

● The whole team makes the commitment

Page 72: Estimation or, "How to Dig your Grave"

Gamble with Planning Poker

● The whole team makes the commitment

● Combines independent estimates and review

Page 73: Estimation or, "How to Dig your Grave"

And now mistakes during projects

Page 74: Estimation or, "How to Dig your Grave"

Lose track of time

Page 75: Estimation or, "How to Dig your Grave"

Lose track of time

● Developers hate time-tracking

Page 76: Estimation or, "How to Dig your Grave"

Lose track of time

● Developers hate time-tracking

● Automate if you can

Page 77: Estimation or, "How to Dig your Grave"

Lose track of time

● Developers hate time-tracking

● Automate if you can● Include it in

stand-ups to update the burn-down

Page 78: Estimation or, "How to Dig your Grave"

Estimate bugs

Page 79: Estimation or, "How to Dig your Grave"

Estimate bugs

● “Nein, nein, nein! Das ist verboten!”-- @dzuelke

Page 80: Estimation or, "How to Dig your Grave"

Estimate bugs

● “Nein, nein, nein! Das ist verboten!”-- @dzuelke

● You do not know the size of the problem

Page 81: Estimation or, "How to Dig your Grave"

Estimate bugs

● “Nein, nein, nein! Das ist verboten!”-- @dzuelke

● You do not know the size of the problem

● Spend 3 days investigating – change 1 line of code

Page 82: Estimation or, "How to Dig your Grave"

Try to catch up

Page 83: Estimation or, "How to Dig your Grave"

Try to catch up

● [wo]man up and admit you're wrong

Page 84: Estimation or, "How to Dig your Grave"

Try to catch up

● [wo]man up and admit you're wrong

● Don't burn yourself or your team out

Page 85: Estimation or, "How to Dig your Grave"

Try to catch up

● [wo]man up and admit you're wrong

● Don't burn yourself or your team out

● Work overtime and you set a precedent

Page 86: Estimation or, "How to Dig your Grave"

Skip the review

Page 87: Estimation or, "How to Dig your Grave"

Skip the review

● Make time to learn

Page 88: Estimation or, "How to Dig your Grave"

Skip the review

● Make time to learn● Share your mistakes,

so others avoid them

Page 89: Estimation or, "How to Dig your Grave"

Questions?

● Feedback

http://joind.in/6321

(don't make me send the clown)

Page 90: Estimation or, "How to Dig your Grave"

Credits

● All sculpture/photos© Tamra Kohlhttp://www.flickr.com/photos/claylindo/

(Used with kind permission)

● Thank you!

● Photo jiggery-pokery:http://pixlr.com/o-matic/

● Background:http://www.colourlovers.com/pattern/635/Death_Flowers


Recommended