mtat.03.244 software economics lecture 6: software cost
TRANSCRIPT
MTAT.03.244 Software Economics
Lecture 6: Software Cost Estimation (part II)
Marlon Dumas
marlon.dumas ät ut . ee
2
Outline
• Review of Effort Estimation Homework • Discussion on book chapter by Caper Jones • Earned Value Analysis
3
Six forms of software cost estimation (by Caper Jones)
Project
Phase
Activity
Project
Phase
Activity
4
Discussion (cont.)
• What is the difference between a phase, an activity and a task? How many phases/activities/tasks are typical in a software project?
• What key issue arises when estimating only at the level of project/phases? Does it mean that project-level estimation is useless?
• According to the study reported in the chapter, which form of cost estimation is most accurate? In which context is manual estimation most used? In which context is automated estimation used?
Project Monitoring using Earned Value Analysis
6
Project Monitoring
• Cost estimation is about estimating how much will be spent by a project/phase/activity.
• Cost estimation is a planning tool • Project monitoring is about assessing how much
has been done in order to answer the question: – Are we on track to deliver on-time and on budget?
• Earned Value Analysis (EVA)
7
Earned Value Analysis (EVA)
• Technique for objectively comparing actual project progress against planned progress
• Rooted in early 20th century industrial manufacturing
• Introduced in the 1960s to monitor United States Department of Defense projects
• Nowadays considered as a project management technique (Earned Value Management)
• Standardized: ANSI/EIA 748-A standard
8
For discussion…
• What do you think about the following reasoning: – We’re mid-way through the project timeline and we’ve
only implemented 30% of the features. We’re late ?? – We’re mid-way through the project timeline, we’ve
spent 50% of the budget and 50% of the work is done. So we’re doing well ??
9
Some Terminology
• WBS (Work Breakdown Structure) – Decomposition of a project into phases/activities/tasks – We consider WBS where each unit is annotated with
an estimate of duration and cost – Can be obtained from the cost estimation
• Planned value at time t – How much will have been spent at time t according to
the plan?
10
Project Monitoring: A Naïve Approach
Source: Wikipedia
11
Let’s get a bit more sophisticated
• Three basic measures: – Budgeted Cost of Work Performed (BCWP) – also
called Earned Value – Budgeted Cost of Work Scheduled (BCWS) – also
called Planned Value – Actual Cost of Work Performed (ACWP) – also called
Actual Cost
12
The three measures in a nutshell…
Source: Wikipedia
13
And a bit more sophisticated…
• Two derived measures: – SV: Schedule Variance (BCWP-BCWS) – CV: Cost Variance (BCWP-ACWP)
14
Schedule Variance
Source: Wikipedia
15
Cost Variance
Source: Wikipedia
16
A bit more…
Three more derived measures: • SPI: Schedule Performance Index = BCWP/BCWS
– SPI < 1 project is behind schedule • CPI: Cost Performance Index = BCWP / ACWP
– CPI < 1 project is over budget • CSI: Cost Schedule Index = CPI x SPI
– The further CSI is from 1.0, the less likely project recovery is
• Question: What if SPI or CPI are very high?
17
Forecasting
• BAC – Budget at Completion • IEAC – (Independent) Estimate At Completion
= BAC / CPI • ISAC – Independent Schedule At Completion
= Schedule / SPI (Schedule is the planned project duration)
18
Let’s get our hands dirty
• Exercises – http://tinyurl.com/ygskv53 – Last page of: – www.dfw-asee.org/archive/Earned_Value.doc
19
EVA after the deadline…
• If the project has already passed its planned deadline, BCWP will converge to BCWS and SPI becomes useless since it tends to 1…
• A more appropriate measure of delay in this case is: – Days Ahead: how many days ahead of schedule we are
(negative if behind schedule), calculated from the original schedules of the individual tasks.
20
Pros and cons of EVA
• Pros: – Provides early warning of cost/schedule problems – Enables forecasting final project cost/schedule – Allows one to trace impact of key events on a project – Allows one to estimate the cost of changes
• Cons: – High data collection effort – May be distorted by inaccurate work-in-progress
measures (some authors recommend to grade work using only three values: 0%, 50% or 100% completed
– Significant effort required if the requirements/scope change significantly.
21
Agile Project Monitoring
• In agile methods, relatively little upfront effort is spent in requirements analysis and planning
• Requirements creep is intentionally high • WBS is very dynamic • EVA may be inappropriate as primary monitoring
tool (although it can still be used externally)
22
Agile Project Monitoring
• Measure of effort: story point (or ideal day) • Project decomposition unit: iteration/sprint • Productivity measure: Velocity (e.g. story points
per iteration) • Visual tracking techniques
– Burndown chart (curve) – Burndown bar chart – takes into account work
completed and scope change
23
Burndown Chart
Burn-up event St
ory
poin
ts
24
Burndown Bar Chart
-40
-20
0
20
40
60
80
100
120
140
160
1 2 3 4 5
Work Added Work Remaining
Stor
y po
ints
25
Forecasting Completion from Burndown
http://www.mountaingoatsoftware.com/alt-releaseburndown
26
Acknowledgments
• Some material is adapted from: – http://www.authorstream.com/Presentation/
aSGuest9815-134667-evaslides-education-ppt-powerpoint/ (earned value analysis)
– Wikipedia article on Earned Value Management – http://www.mountaingoatsoftware.com (burndown
charts)