Professional Documents
Culture Documents
CH-3 Software Project Estimation
CH-3 Software Project Estimation
CH-3 Software Project Estimation
Chapter Three
Software Project Estimation
Sem. I – 2023
SITE-AAiT
1
Introduction
Estimation problems
Uniqueness of software project
Large human involvement
Intangibility of product
Customer requirements
Unclear Requirements
Feature Creep
Resources
Identification and availability
Competing with other projects 3
Introduction
Estimation problems …
Productivity:
Level of productivity
Variations in productivity
Change of scope/technology:
Platform changes
Use of new technology
Absences of metrics
Constraints:
Pressure of time
Development method
Use of standards
Estimation Approaches
Ad hoc approaches Expert judgment approaches
Analogy approach Empirical models
4
Estimation Approaches
Ad hoc approaches
Two approaches: Pricing to win and Parkinson’s Law
Pricing to Win
The project costs whatever the customers has to spend on it.
Budget, time and contract value is known
How much the client is willing to spend?
When does the client need the delivery of the product?
How much have the competitors quoted?
Estimates mainly to vindicate the feasibility of budget or target dates
Advantages
High probability getting the contract
Disadvantages
The probability that the customer gets the system s/he wants is small. Costs
do not accurately reflect the work required.
Often leads to budget overshooting
Poor overall systems performance
5
Estimation Approaches
Ad hoc approaches …
Parkinson’s Law
Available resources and time is known. The project costs whatever resources are
available.
Estimated by available resources rather than by objective
Advantage
No Overspend
Disadvantage
Work expands to fill available budget and time
System is usually unfinished
6
Estimation Approaches
Estimation By Analogy
The cost of a project is computed by comparing the project to a similar project in the
same application domain.
Assume past projects are accurate
Disadvantage:
Impossible if no comparable project is tackled
Needs systematically maintained cost database
Expert judgment
Estimates are based on the experience of one or more experts. Extrapolates expert’s
experience.
Advantage
Accurate* and cheap (*if experts have direct experience)
Can address exceptional situations
Disadvantage:
(1) expert’s recall capability may be limited (2) Subject to personal bias
7
Two approaches: Delphi &Wideband Delphi
Estimation Approaches
Empirical Models
It is methodical cost estimation based on the available data and skills.
Uses empirically derived formulas to predict effort as a function of LOC
Provide reliable estimates based on data from earlier projects
Estimates are based on objective and repeatable formulae
Disadvantage
Rely on the estimates of some parameters such as lines of code which is difficulty
at early stages.
Parameter values tend to be highly organization-dependent
Limited usefulness of past data in light of advancing tech
Dependent on the correctness of the inputs
Cannot handle exceptional conditions
Calibrate to past projects not to future
Impact of new technology is difficult to judge
10
Estimation Approaches
Product Attributes
Required reliability 0.75 0.88 1.00 1.15 1.40
Hardware Attributes
Runtime performance constraints - - 1.00 1.11 1.30 1.66
12
Estimation Approaches
Project Attributes
13
Estimation Approaches
The staffing requirement is small during requirements and design, max during
implementation and testing, and drops again during the final phases of integration
and testing.
15
Estimation Approaches
Empirical Models: COCOMO - Example
Suppose RAD has been produced for a certain project. After assessing the document,
the following have been identified:
The project falls in the organic category
The size is estimated to be 6KLOC
The cost driver factors are :
Complexity High 1.15
Storage High 1.06
Programmer cap. Low 1.17
Use of SW tools Low 1.10
All other attributes Nominal 1.00
Find the total duration and staffing
EAF = 1.15*1.06*1.17*1.10*1.00*…*1.00 =1.57
Ei= 2.4 * pow(6,1.05)
E=Ei*EAF 15.74
D=2.5*pow(E,0.3)=5.7
S=E/D persons= 3 16
Financial Analysis of Projects
Financial Analysis of Projects
Important consideration in selecting projects
3 primary methods for determining the projected financial value of projects:
Net present value analysis(NPVA)
Return on investment(ROI)
Payback analysis(PBA)
Payback Analysis
Payback analysis is a mathematical methodology to determine the payback period for
an investment. The payback period is how long it will take to pay off the investment
with the net income derived from the asset or project. In colloquial terms, it calculates
the 'break even point.' The payback period is usually measured in fractions of years.
Payback period is the amount of time it will take to recoup, in the form of net cash
inflows, the net amount invested in a project. Payback Period = Initial Investment / Annual Net
Cash Flow
18
Payback occurs when the cumulative discounted benefits and costs are greater than
Estimation Approaches