Date post: | 13-Jul-2015 |
Category: |
Technology |
Upload: | techwellpresentations |
View: | 131 times |
Download: | 2 times |
BT9 Concurrent Session 11/8/2012 3:45 PM
"Estimating in Software Development: No Silver Bullets Allowed"
Presented by:
Kent McDonald Knowledge Bridge Partners
Brought to you by:
340 Corporate Way, Suite 300, Orange Park, FL 32073 888‐268‐8770 ∙ 904‐278‐0524 ∙ [email protected] ∙ www.sqe.com
Kent McDonald Knowledge Bridge Partners
Kent McDonald is an author, speaker, and coach who helps organizations improve the effectiveness of their projects. Kent’s more than fifteen years of experience include work in business analysis, strategic planning, project management, and product development in a variety of industries including financial services, health insurance, performance marketing, human services, nonprofit, and automotive. The co-author of Stand Back and Deliver: Accelerating Business Agility, Kent currently delivers business analysis training for B2T Training and shares his thoughts on raising the level of business analysis at BeyondRequirements.com
11/8/2012
1
Estimating in Software Development:
No Silver Bullets Allowed
Kent J. McDonald
@beyondreqs
Disclaimer
11/8/2012
2
A Familiar Situation?
Issues with Estimating
Estimating Techniques
Don’t worry, we’ll get to these…
11/8/2012
3
Has this ever happened to you? How long will it take to build the
commission system?
I just found out about it this
morning, so I’ll need to do some analysis .
Ok, great. The Sales VP promised an estimate to the
CEO next Monday. It better be right.
Issues with Estimating
Initial Uncertainty Accuracy/Effort Tradeoff
False Precision Differing Skill Levels
11/8/2012
7
False Precision
How precise do you have to be?
How long, and how much?
Approximately 374 days and
$2,548,931.27.
11/8/2012
9
Estimating Techniques
Guestimate Break it down, add it up
Relative Estimating
Guestimate
11/8/2012
10
Aka “Gut Feel” or “Ball Park”
How long, and how much? About a year and
$2.5 million.
Comparison to Past Projects
$1,000 $100K $10M ??
$1M
11/8/2012
11
Your turn…
Want to create an online application for Mortgage Insurance
How long to deliver the online application for Mortgage Insurance?
A ballpark answer is sufficient.
11/8/2012
12
Does it address our issues?
Initial Uncertainty Accuracy/Effort Tradeoff
False Precision Differing Skill Levels
When to use it
11/8/2012
14
Assign factor to each small bit
Tasks Time Factor (hour/bit)
# of bits
Total Time (hours)
Interfaces
GUI - Simple 8
GUI - Medium 16
GUI - Hard 24
System Interface - Simple 12
System Interface - Complex 30
Total Interfaces
Processes
Simple Process 16
Medium Process 32
Complex Process 48
Total Processes
Where do we come up with the factors?
11/8/2012
15
This is where time cards may be useful…
Know ahead of time what you want to track
Build up information over time
Often requires excruciating detail in time collection.
Identify How Many Bits
Tasks Time Factor (hour/bit)
# of bits
Total Time (hours)
Interfaces
GUI - Simple 8 3
GUI - Medium 16 2
GUI - Hard 24 1
System Interface - Simple 12 3
System Interface - Complex 30 2
Total Interfaces 11
Processes
Simple Process 16 5
Medium Process 32 4
Complex Process 48 3
Total Processes 12
11/8/2012
16
Do the math to get an estimate
Tasks Time Factor (hour/bit)
# of bits
Total Time (hours)
Interfaces
GUI - Simple 8 3 24
GUI - Medium 16 2 32
GUI - Hard 24 1 24
System Interface - Simple 12 3 36
System Interface - Complex 30 2 60
Total Interfaces 11 176
Processes
Simple Process 16 5 80
Medium Process 32 4 128
Complex Process 48 3 144
Total Processes 12 352
This gives us development hours
11/8/2012
17
What about analysis & testing &…
Percentage of development hours
Estimate tasks separately
You mean we have to estimate analysis & testing?
Data Warehouse Example
Adding a new source to data warehouse
Count of sources
Count of tables/source
Count of elements/table
Considerations of complexity
11/8/2012
18
Data Warehouse Example
1. Gather all the info
2. Plug it into a spreadsheet
3. Look at the resulting (realistic but “too high”) number
4. Revise…
Your turn…
Want to create an online application for Mortgage Insurance
How long to deliver the online application for Mortgage Insurance?
Identify how you would break this down to estimate
11/8/2012
20
Or, you could always add up tasks
Does it address our issues?
Initial Uncertainty Accuracy/Effort Tradeoff
False Precision Differing Skill Levels
11/8/2012
22
Calibrated Estimates in Ranges
Manage Tracks
Moderate Content
Manage Deadlines
Manage Venue
1 – 2 Days 3 – 5 Days 1 – 2 Days
Build Program
4 – 6 Days .5 – 1 Days
9.5 – 16 Days @ $100/hour & 8 hours/day
$7,600 – $12,800
Note, Entire team calibrated and involved in determining these estimates.
For More information
How to Measure Anything: Finding the Value of Intangibles in Business
by
Douglas W. Hubbard
HowToMeasureAnything.com
11/8/2012
23
Where it Helps
Initial Uncertainty Accuracy/Effort Tradeoff
False Precision Differing Skill Levels
Relative Estimating
11/8/2012
24
Ah ha! Here’s the poker connection!
Discuss (briefly) the item to estimate
As an Event Organizer I want to know how audience members vote by athlete by gender So That I can determine if men and women vote differently.
11/8/2012
26
Estimating Scales
(Modified) Fibonacci Sequence:
0, ½, 1, 2, 3, 5, 8, 13, 20, 40, 80, 100
Using a regular deck of cards:
A, 2, 3, 5, 8, King
Team Member Hands:
1 – 5
Leonardo Pisano Bigollo aka Fibonacci Italian Mathematician
Reveal estimates all at once
11/8/2012
27
So why did you pick a king?
Discuss outliers
I wasn’t sure we knew how to tell an audience member’s gender.
And how about the two aces?
Well, we changed the voting machines to ask gender during
sign in last iteration, so it should be easy
Yeah, what she said.
Repeat until convergence
11/8/2012
28
Assumptions: 2 week iterations Overall backlog size: 600 points Planning Velocity: 30 5 Person Team Avg Cost/person/wk: $4,000
Extrapolate based on Velocity
Estimate: $800,000
Your turn…
Determine relative sizes of these various features using the scale 1,2,3,4,5
Based on this feature being sized an 1.
11/8/2012
29
Does it address our issues?
Initial Uncertainty Accuracy/Effort Tradeoff
False Precision Differing Skill Levels
11/8/2012
30
When to use it
An Alternative to Planning Poker
User Story
User Story
User Story User Story
User Story
User Story
User Story User Story
User Story
User Story
User Story
User Story
1 2 5 3 8
11/8/2012
31
How should we approach estimating for a project?
Phase Based Guestimate
Break it down add
it up
Set expectation for revisions
Calibrated Estimates
11/8/2012
32
Agile Comparison
to past projects Extrapolate
from Velocity
Set expectation for revisions
Calibrated Estimates
If you remember nothing else
Initial uncertainty means you will not be accurate.
Don’t spend more effort than it’s worth.
Don’t imply more precision than is possible.
Incorporate multiple perspectives.
11/8/2012
33
Questions?
Kent J. McDonald
www.BeyondRequirements.com
Twitter: @BeyondReqs
Slides available from:
http://www.knowledgebridgepartners.com/presentations/softwareestimating/
65