Software Project Management: Cost Estimation
Software Project Management: Cost Estimation
Project
Management
C O ST ESTI M ATI O N
Cost Estimation
Expert Judgment
Top – Down
Bottom – Up
Estimation by Analogy
Cost Estimation
Cost estimation in project management is the process of forecasting the financial and other resources
needed to complete a project within a defined scope. Cost estimation accounts for each element required
for the project from materials to labor and calculates a total amount that determines a project's budget.
Cost estimation is extremely important for running successful projects. The management of
costs in many ways, reflect the project organization strategic goals, mission statement and
business plan.
Being able to make accurate cost estimates is key to delivering a solid project plan.
Cost estimating utilizes many techniques that translate the project scope into deliverables and
develop an approximation of costs of the resources needed to complete project activities.
Project Cost Management Processes
Resource planning: determining what resources and quantities of them should be used
Cost estimating: developing an estimate of the costs and resources needed to complete a project
Cost budgeting: allocating the overall cost estimate to individual work items to establish a
baseline for measuring performance
Cost control: controlling changes to the project budget
Common classification of Cost
Direct and Indirect are the overhead cost, depreciation, health and retirement benefits, selling
and general administrative expenses. It is depend on type of cost.
Recurring includes labor, logistic and material etc. whereas Non recurring include charges
applied once at the beginning or end of project. It is depend on frequency of cost.
Fixed is when leasing capital equipment or other project hardware , the leasing price is likely not
to go down or up with the amount of uses, whereas Variable is changing time to time and varies
based on output. It is depend on adjustment of cost.
Normal occur in regular manner and expediting includes incremental cost. It is depend on
adjustment of cost.
Cost Estimation Methods
3. Top – Down
4. Bottom – Up
5. Estimation by Analogy
Algorithmic (Parametric) Model
Use of mathematical equations to perform software estimation
Use input such as SLOC, number of functions to perform and other cost drivers
Accuracy of model can be improved by calibrating the model to the specific environment
Algorithmic Model Examples
COCOMO (COnstructive C0st MOdel)
Developed by Boehm in 1981 Became one of the most popular and most transparent cost model
Mathematical model based on the data from 63 historical software project
COCOMO II Published in 1995 To address issue on non-sequential and rapid development process
models, reengineering, reuse driven approaches, object oriented approach etc.
Disadvantages
Unable to deal with exceptional conditions
Examples :
Delphi
Developed by Rand Corporation in 1940 where participants are involved in two assessment rounds.
Work Breakdown Structure (WBS)
A way of organizing project element into a hierarchy that simplifies the task of budget estimation and
control.
Expert Judgment (Cont.)
Advantages
Useful in the absence of quantified, empirical data.
Can factor in differences between past project experiences and requirements of the proposed project
Disadvantages
Estimate is only as good expert’s opinion
Derived from the global properties of the product and then partitioned into various low level
components
Disadvantages
No detailed basis
Bottom - Up
Cost of each software components is estimated and then combine the results to arrive the total cost for
the project
The goal is to construct the estimate of the system from the knowledge accumulated about the small
software components and their interactions
More detailed
Disadvantages
Disadvantages
Impossible if no comparable project had been tackled in the past.