Quick Learnology

Estimating Software Costs


For each new software project, you need to know how much it will cost to develop it and how long it will take to develop it. These estimates are needed before any development can begin, but how is this done? Several estimation methods have been developed that share the following attributes:

  • Project scope must be defined in advance.
  • Software metrics are used as a support to be evaluated.
  • Projects are divided into smaller PCs that are individually quoted.
  • There are several options for obtaining actual cost and schedule estimates.
  • Delay Estimation 
  • symbolic decomposition technique used to generate project cost and schedule estimates.
  • Purchase one or more automated estimators.

Availability of Estimates

During the planning stage, you need to select the number of engineers you need for your project and create a schedule.
Project progress monitoring includes checking whether the project is progressing according to procedures and taking corrective action when necessary.

Cost Estimation Models

Models can be static or dynamic. A static model uses a single variable as the primary factor for calculating cost and time. In a dynamic model all variables are dependent on each other and there are no base variables.

Static single-variable model: If the model uses a single variable to calculate a desired value such as cost, time, or effort, it is called a single-variable model. The most common formulas are:

C=aL^b

where C = cost
L = size
a and b are constants

The Software Engineering Laboratory has developed a model called the SEL model to estimate its software production. This model is an example of a single-variable static model.

E=1.4L0.93
DOC=30.4L0.90
D=4.6L0.26

where E= Effort (people/month)
DOC=Documents (number of pages)
D = Duration ( D, in months)
L = lines per code

Static multivariable models: These models are based on method (1) and rely on several variables representing different aspects of the software development environment . Some models require multiple variables to describe the software development process, and the equations chosen combine these variables to obtain time and cost estimates. These models are called multivariate models.

WALSTON and FELIX develop models at IBM. The following formula shows the relationship between the number of lines of source code and the effort.

E=5.2L0.91

Similarly, the development time is

D=4.1L0.36

The productivity index uses 29 variables and was found to be highly correlated with productivity: The ,+ 1} estimator gives Xione a value of -1, 0, or +1 depending on whether the variable is decreasing, having no effect, or increasing productivity.

Example: Compare the Walston-Felix model and the SEL model, and imagine software development requiring eight man-years of effort.

Calculates the number of lines of source code that can be generated.
Calculate the development period. Calculate productivity at
LOC/PY.
average crew calculation

Labor = 8PY = 96 man-months

(a) The number of lines of source code can be obtained by calculating back the following formula. 1 .4 )1⁄0.93=94264 LOC
L (SEL) = (96/5.2)1⁄0.91=24632 LOC

(b) The period in months is the formula

D (SEL) = 4.6 (L ) 0.26
= 4.6 (94.264)0.26 = 15 months
D (W-F) = 4.1 L0.36
= 4.1 (24.632)0.36 = 13 months

)

Software cost estimate
(d) Average staffing is Average number of people required per month for the project

Software Cost Estimate