Upload
samuel-rose
View
218
Download
1
Embed Size (px)
Citation preview
Software Estimation Slide 1
1 of 41 of 4
Software Estimation
Demystifying the Black Art
by
Steve McConnell
Presented by
Lee Bennett, PMP
Software Estimation Slide 2
Definition of Estimating
• DeMarco– [The common definition of an estimate is]
“the most optimistic prediction that has a non-zero probability of coming true.” …the earliest date by which you can’t prove you won’t be finished.
• McConnell– … provides a clear enough view of the
project to allow … good decisions about how to control the project to hit its targets.
Software Estimation Slide 3
Software Estimation
• Author: Steve McConnell– Code Complete (1993, 2004)– Rapid Application Development (1996)– Software Project Survival Guide (1998)
Software Estimation Slide 4
Cone of Uncertainty
Software Estimation Slide 5
Estimating Techniques
• T Shirt sizing
• Software Estimation tools
• Wideband Delphi
• Story Points
Software Estimation Slide 6
T Shirt Sizing
• Technique– Estimate S/M/L Business Value– Estimate S/M/L Development Cost– Go with the low hanging fruit
• Applicability– Very early in project
• Results– Doesn’t actually produce an estimate– Eliminates the need to estimate some
cases
Software Estimation Slide 7
Estimation Tools
• Technique– Simulation– Probability analysis– www.construx.com
• Applicability– Early to middle for medium to large
projects
• Results– Can produce highly accurate results*
Software Estimation Slide 8
Wideband Delphi
• Technique– A structured group estimating technique– Basis of Agiletek’s estimating– Anonymous estimates
• Applicability– Early in medium to large projects
• Results– 40% improvement over initial group
average– Meeting time is expensive
Software Estimation Slide 9
Story Points
• Technique– Give each story a size estimate from the
Fibonacci sequence (1,2,3,5,8,13…)– Deliver some stories in an N week iteration– Velocity = [Story Points delivered] / N weeks– Duration = [Total Story Points] / Velocity
• Applicability– Early to Middle stage
• Example– http://www.planningpoker.com/
Software Estimation Slide 10
Project Planning and Control
Estimating is a skill of project planning.
Planning determines appropriate Commitments.
Project Controls are needed to help meet Commitments.
Software Estimation Slide 11
Questions ???
Software Estimation Slide 12
Estimating Concepts
• Use multiple estimating techniques– Estimate by analogy, top down– Estimate by components, bottom up
• Estimate size first– Scheduling estimates only after effort
estimate is in place