Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Software Cost Estimation Techniques
1.
2. SOFTWARE COST ESTIMATION TECHNIQUES
Cost estimation simply means a technique that is used to find out the cost
estimates. The cost estimate is the financial spend that is done on the efforts to
develop and test software in Software Engineering. Cost estimation models are some
mathematical algorithms or parametric equations that are used to estimate the cost of a
product or a project.
There are two approaches for cost estimation. They are,
Top-Down Estimation
Bottom-Up Estimation
Top-down estimation first focuses on system-level costs, such as the
computing resources and personnel required to develop the system, as well as the
costs of configuration management, quality assurance, system integration, training,
and publications.
Bottom-up cost estimation first estimates the cost to develop each module or
subsystem. Those costs are combined to arrive at an overall estimate.
Expert Judgment:
The most widely used cost estimation technique is expert judgment, which is an
inherently top-down estimation technique. Expert judgment relies on the experience,
background, and business sense of one or more key people in the organization.
This knowledge base can be provided by a member of the project team, or
multiple members of the project team, or by a team leader or team leaders. However,
typically expert judgment requires an expertise that is not present within the project
team and, as such, it is common for an external group or person with a specific
relevant skill set or knowledge base to be brought in for a consultation.
3. Such expertise can be provided by any group or individual with specialized
knowledge or training and is available from many sources, including:
Units within the organization;
Consultants;
Stakeholders, including customers or sponsors;
Professional and technical associations;
Industry groups;
Subject matter experts (SME);
Project management office (PMO);
Suppliers.
Expert Judgment is use for situations which require recourse to expert
judgment by completing, validating, interpreting and integrating existing data,
assessing the impact of a change, predicting the occurrence of future events and the
consequences of a decision, determining the present state of knowledge in one field,
providing the elements needed for decision-making in the presence of several options.
The biggest advantage of expert judgment, namely, experience can also be a
liability. The expert may overlooked some factors of the project that makes the new
project significantly different. Or, the expert making the estimate may not have
experience with the project similar to the present one.
In order to compensate these factors, groups of experts sometimes prepare a
consensus estimate. This tends to minimize individual oversights and lack of
familiarity with particular projects, and neutralizes personal biases and the desire to
win the contract through an overly optimistic estimate. These disadvantages can be
overcome using the Delphi technique.
4. Delphi Cost Estimation:
The Delphi technique was developed at the Rand Corporation in 1948 to gain
expert consensus without introducing the adverse side effects of group meetings.
The Estimation Process:
1. A coordinator provides each estimator with System Definition document and
a form for recording cost estimate.
2. Estimators study the definition and complete their estimates anonymously.
They may ask questions of the coordinator, but they do not discuss their estimates
with one another.
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 estimate. Estimators whose estimates differ sharply from the group
may be asked, anonymously, to provide justification for their estimates.
5. The process is iterated for as many rounds as required. No group discussion
is allowed during the entire process.
A different approach that increases communication while preserving anonymity:
1. A coordinator provides each estimator with System Definition document and
a form for recording cost estimate.
2. Estimators study the definition and the coordinator calls a group meeting so
that estimators can discuss estimation issues with the coordinator and one another.
3. Estimators complete their estimates anonymously.
4. The coordinator prepares a summary of the estimates, but does not record
any rationales.
5. The coordinator calls a group meeting to focus on issues where the estimates
vary widely.
6. Estimators complete another estimate, again anonymously. The process is
iterated for as many rounds as necessary.
5. A Delphi Cost Estimation Form:
Work Breakdown Structures:
Expert judgment and group consensus are top-down estimation techniques. The
work breakdown structure method is a bottom-up estimation tool. A work breakdown
structure is a hierarchical chart that accounts for the individual parts of a system. A
WBS chart can indicate either product hierarchy or process hierarchy.
Product hierarchy identifies the product components are interconnected. A
WBS chart of process hierarchy identifies the work activities and the relationships
among those activities. Using the WBS technique, costs are estimated by assigning
costs to each individual component in the chart and summing the costs.
7. Advantages:
Some planners use both product and process WBS charts for cost estimation.
The primary advantages of the WBS technique are in identifying and accounting for
various process and product factors, and in making explicit exactly which costs are
included in the estimate.
Expert judgment, group consensus, and work breakdown structures are the
most widely used cost estimation techniques. Many organizations use all three
approaches and iterate on the estimates until differences have been resolved.