SOFTWARE COST ESTIMATION
TECHNIQUES
Presented By,
T. Janani
II-M.SC(CS&IT)
Nadar Saraswathi
College Of Arts & Science, Theni.
Software Cost Estimation Techniques:
1. Expert Judgment
2. Delphi Cost Estimation
3. Work Breakdown Structures
4. Algorithmic Cost Models
Software Cost Estimation Techniques:
 Software cost estimates based on Past Performance.
 Cost estimates using to be in a two techniques:
1. Top-down
2. Bottom-up
Top-down estimation are focused on system-
level costs, such as the resources and personnel
required to develop the system.
Bottom-up estimates the cost to develop each
module Or subsystem
1. Expert Judgment:
 It is top-down estimation technique.
 Expert judgments relies on the experience,
background, and business sense of more key
people in the organization
 The biggest advantage of following as: Namely,
experience, can also be a liability.
 The major disadvantages of group estimation is
the effect that interpersonal group dynamics
may have on individuals in the group.
 The Delphi technique can be used to overcome
these disadvantages.
2. Delphi Cost Estimation:
 The Delphi technique was developed at the Rand
Corporation in 1948.
 The Delphi technique can be adapted to software cost
estimation in the following manner.
1. A Coordinator provides each estimator with the
System Definition document and a form for recording a
cost estimate.
2. Estimators study the definition and complete their
estimates anonymously.
3. The coordinator prepares and distributes a
summary of the estimators’ responses, and includes any
unusual rationales noted by the estimators.
4. Estimators complete another estimate, again
anonymously, using the results from the previous
estimates.
5. The process is iterated or as many rounds as
required. No group discussion is allowed during the
entire process.
Delphi technique:
1. Estimators complete their estimates anonymously.
2. The coordinator prepares a summary of the
estimates, but does not record any rationales.
3. The coordinator calls a group meeting to focus on
issues where the estimates vary widely.
4. Estimators complete another estimate, again
anonymously. The process is iterated for as many rounds as
necessary.
3. Work Breakdown Structures:
 Expert judgment and group consensus are top-
down estimates techniques.
 The work breakdown structure method is a bottom-
up estimation tool.
 A WBS chart can indicate either product hierarchy
or process hierarchy.
 A WBS chart of process hierarchy identifies the
work activities and the relationships among those
activities
 Typical product and process WBS charts are
illustrated in figures 1.1a and 1.1b
 The primary advantages of the WBS technique are in
identifying and accounting or various process and
product factors, and in making explicit exactly costs are
included in the estimate.
Figure 1.1a A product work breakdown structure.
Product
Input System
Transform
system
Output
Subsystem
Read
module
Parser
Data
validator
Results
Computer
Services
Process
QA
Computer
services
Dvmt.
Public
ation
Project
Mgmt.
System
test
Accept
Integr
ation
Unit
test
Code,
debug
DesignReview
and audit
Plan
Figures 1.1b A process work breakdown structure
4. Algorithmic Cost Models:
 Algorithmic models are thus bottom-up estimators.
 The Constructive Cost Model(COCOMO) is an
algorithmic cost model described by Boehm(BOE81).
 Effort multipliers are then used to adjust the
estimate for product attributes, computer attributes,
personnel attributes, and project attributes.
 Table 2.1 summarizes the COCOMO effort
multipliers and their ranges of values.
 The COCOMO equations incorporate a number of
assumptions.
Multiplier Range of Values
Product attributes
Required reliability 0.75 to 1.40
Data-base size 0.94 to 1.16
Product complexity 0.70 to 1.65
Project Attributes
Analyst capability 1.46 to 0.71
Programmer capability 1.42 to 0.70
Applications experience 1.29 to 0.82
Virtual machine
experience
1.21 to 0.90
COCOMO effort multipliers:
Software projects estimated by COCOMO include the following:
 Careful-definition and validation of requirements is
performed by a small number of capable people.
 The requirements remain stable throughout the project.
 Detailed design, coding, and unit testing are performed
in parallel by groups of programmers working in teams.
 Integration testing is based on early test planning.
 Interface errors are mostly found by unit testing and by
inspections and walk-through before integration testing.
Merits:
 This model can be applied to almost entire
software product for easy and rough cost estimation
during early stage.
 It can also be applied at the software product
component level for obtaining more accurate cost
estimation.
Limitation:
 The effort multipliers are not dependent on
phases.
 A product with many components is difficult to
estimate
Example:
Consider a project having 30,000 lines of code which in an embedded
with critical area hence reliability is high. The estimation can be
E=ai(KLOC)bi*(EAF)
As reliability is high EAF=1.15(product attribute)
ai=2.8
bi=1.20 for embedded software
E=2.8(30)1.20 * 1.15
=191 person month
D=c b (E)db=2.5(191)0.32
=13months approximately
N=E/D
=191/13
N=15 persons approximately.
Thank You

Software Engineering

  • 1.
    SOFTWARE COST ESTIMATION TECHNIQUES PresentedBy, T. Janani II-M.SC(CS&IT) Nadar Saraswathi College Of Arts & Science, Theni.
  • 2.
    Software Cost EstimationTechniques: 1. Expert Judgment 2. Delphi Cost Estimation 3. Work Breakdown Structures 4. Algorithmic Cost Models
  • 3.
    Software Cost EstimationTechniques:  Software cost estimates based on Past Performance.  Cost estimates using to be in a two techniques: 1. Top-down 2. Bottom-up Top-down estimation are focused on system- level costs, such as the resources and personnel required to develop the system. Bottom-up estimates the cost to develop each module Or subsystem
  • 4.
    1. Expert Judgment: It is top-down estimation technique.  Expert judgments relies on the experience, background, and business sense of more key people in the organization  The biggest advantage of following as: Namely, experience, can also be a liability.  The major disadvantages of group estimation is the effect that interpersonal group dynamics may have on individuals in the group.  The Delphi technique can be used to overcome these disadvantages.
  • 5.
    2. Delphi CostEstimation:  The Delphi technique was developed at the Rand Corporation in 1948.  The Delphi technique can be adapted to software cost estimation in the following manner. 1. A Coordinator provides each estimator with the System Definition document and a form for recording a cost estimate. 2. Estimators study the definition and complete their estimates anonymously.
  • 6.
    3. The coordinatorprepares and distributes a summary of the estimators’ responses, and includes any unusual rationales noted by the estimators. 4. Estimators complete another estimate, again anonymously, using the results from the previous estimates. 5. The process is iterated or as many rounds as required. No group discussion is allowed during the entire process.
  • 7.
    Delphi technique: 1. Estimatorscomplete their estimates anonymously. 2. The coordinator prepares a summary of the estimates, but does not record any rationales. 3. The coordinator calls a group meeting to focus on issues where the estimates vary widely. 4. Estimators complete another estimate, again anonymously. The process is iterated for as many rounds as necessary.
  • 8.
    3. Work BreakdownStructures:  Expert judgment and group consensus are top- down estimates techniques.  The work breakdown structure method is a bottom- up estimation tool.  A WBS chart can indicate either product hierarchy or process hierarchy.  A WBS chart of process hierarchy identifies the work activities and the relationships among those activities  Typical product and process WBS charts are illustrated in figures 1.1a and 1.1b
  • 9.
     The primaryadvantages of the WBS technique are in identifying and accounting or various process and product factors, and in making explicit exactly costs are included in the estimate. Figure 1.1a A product work breakdown structure. Product Input System Transform system Output Subsystem Read module Parser Data validator Results Computer
  • 10.
  • 11.
    4. Algorithmic CostModels:  Algorithmic models are thus bottom-up estimators.  The Constructive Cost Model(COCOMO) is an algorithmic cost model described by Boehm(BOE81).  Effort multipliers are then used to adjust the estimate for product attributes, computer attributes, personnel attributes, and project attributes.  Table 2.1 summarizes the COCOMO effort multipliers and their ranges of values.  The COCOMO equations incorporate a number of assumptions.
  • 12.
    Multiplier Range ofValues Product attributes Required reliability 0.75 to 1.40 Data-base size 0.94 to 1.16 Product complexity 0.70 to 1.65 Project Attributes Analyst capability 1.46 to 0.71 Programmer capability 1.42 to 0.70 Applications experience 1.29 to 0.82 Virtual machine experience 1.21 to 0.90 COCOMO effort multipliers:
  • 13.
    Software projects estimatedby COCOMO include the following:  Careful-definition and validation of requirements is performed by a small number of capable people.  The requirements remain stable throughout the project.  Detailed design, coding, and unit testing are performed in parallel by groups of programmers working in teams.  Integration testing is based on early test planning.  Interface errors are mostly found by unit testing and by inspections and walk-through before integration testing.
  • 14.
    Merits:  This modelcan be applied to almost entire software product for easy and rough cost estimation during early stage.  It can also be applied at the software product component level for obtaining more accurate cost estimation. Limitation:  The effort multipliers are not dependent on phases.  A product with many components is difficult to estimate
  • 15.
    Example: Consider a projecthaving 30,000 lines of code which in an embedded with critical area hence reliability is high. The estimation can be E=ai(KLOC)bi*(EAF) As reliability is high EAF=1.15(product attribute) ai=2.8 bi=1.20 for embedded software E=2.8(30)1.20 * 1.15 =191 person month D=c b (E)db=2.5(191)0.32 =13months approximately N=E/D =191/13 N=15 persons approximately.
  • 16.