(back)          (Home)   

Software Cost Estimation

The purpose of software cost estimation is to predict the total development effort required to produce 

a given piece of software in terms of manpower and duration.

 Select one of the method:

COCOMO Model

Intermediate COCOMO Model

Advanced COCOMO Model (COCOMO II Model)

Function Point

              

      Back to Top 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

I.      COCOMO Model

 

       I.      Basic COCOMO Model

It is a static single-valued model that computes software development effort ( and cost ) as a 

function of program size in estimated lines of code.

 ·        Carpark Management System project is an organic mode project delivering about 2000 lines of

 code.

Estimated Effort, E    =  ab(KLOC)bb

= 2 x 2.51.05 

= 5 person-monthswhere KLOC is estimated number of delivered lines of 

code for the project (expressed in thousand); 

coefficients ab  = 2.4, bb = 1.05 since the project is in the organic mode.

          Estimated Development Time, D      = cb(E)db

=  2.5 x 5 0.38

=  4.61 months ,   where coefficients cb = 2.5 bb,  db = 0.38 

since the project is in the organic mode.

 

Estimated Productivity, P     =  LOC / E

                                                =  2000/5

                                                =  400 lines of code per person-months

  

Estimated Average Staffing, AS       = E / D

                                                            = 5/4.61

= 1.1 FSP        where, AS is a measure of the equivalent number of 

people working on this project at a given time. Unit for Average 

Staffing is  FSP (Full-time-equivalent Software Personnel)

 

                                                                                                               
Back to Top                                                                                                                  Back to Top                                                                                                          

 

 

 

 

 


    II.      Intermediate COCOMO Model

 

It is an extension of the Basic COCOMO Model to compute software development effort as a function of

program size and a set of "cost drivers"  that include subjective assessment of product, hardware,

personnel, and project attributes.

 

 ·        Carpark Management System project is an organic mode project delivering about 2000 lines of 

code that nominal. The programming language experience is consider low that required to produce 

a high software reliability with the database size is rated low.

 

Estimated Effort Adjustment Factor, EAF

= 1.00 (nominal) x 1.07 (programming language experience) x 1.15 (required

    software reliablity) x 0.88 (database size)                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           

 = 1.08

 

Estimated Effort, E    = ai(KLOC)bi x EAF

                                                = 3.2 x 21.05 x 1.08

                                                = 7 person-months

 

Since the development time, D, is calculated from the Intermediate COCOMO Model estimates 

of effort but using the Basic COCOMO Model equations,

 

Estimated Development Time, D      = cb(E)db

=  2.5 x 7 0.38

=  5.24 months,   where 

coefficients cb = 2.5 bb,  db = 0.38 since the project is in the organic mode

Estimated Productivity, P     =  LOC / E

                                                =  2000/7

                                                =  286 lines of code per person-months

Estimated Average Staffing, AS       = E / D

                                                            = 7/5.24

= 1.3 FSP        where, AS is a measure of the equivalent number of people 

working on this project at a given time. Unit for Average Staffing is 

FSP (Full-time-equivalent Software Personnel)


                                                                                                                                            Back to Top                                                                                                                                            

 

 

 

 

 

 

 

 

 

                          

 III.      Advanced COCOMO Model ( COCOMO II Model)

 

It incorporate all characteristics of the intermediate version with an assessment of the cost driver's 

impact on each life of the software engineering approach. We recommend the Post-Architecture Model 

here because it is the most detailed estimated model. The effort is expressed the amount of time one 

person spends working on the software development project for one month (PM).

                                                     

       

                           

B  = 1.01 + 0.01 ∑ SFj

where:       

A = constant, Provisionally set to 2.5,

B = scale factor that accounts for relative economies or diseconomies of scale encountered for 

software projects of different sizes. Since our project is small(2KLOC) , the economies and 

diseconomies of scale are in balance. Thus, set

 

Scale Factors (SFj) :

              I.            Precedentedness (PREC) = Nominal 2.43

          II.            Development Flexibility (FLEX) = Nominal 3.64

       III.            Architecture/Risk Resolution (RESL) = Nominal 2.53

        IV.            Team cohesion (TEAM) = Nominal 2.97

           V.            Process Maturity (PMAT) = Nominal 2.73

 

Cost Driver (EMi) :

                 I.      RELY (Required Software Reliability) = High 1.15

               II.       DATA (Database Size) = Low 0.93

             III.      CPLX (Product Complexity) = Nominal 1.00

            IV.      RUSE (Required Reusability) = Nominal 1.00

               V.      DOCU (Document to match lifecycle needs) = Nominal 1.00

            VI.      TIME (Execution Time Constraint) = Nominal 1.00

          VII.      STOR (Main Storage Constraint) = Nominal 1.00

       VIII.      PVOL (Platform Volatility) = Low 0.87

            IX.      ACAP (Analyst Capability) = High 0.83

               X.      PCAP (Programmer Capability) = High 0.87

            XI.      PCON (Personnel Continuity) = Nominal 1.00

          XII.      AEXP (Applications Experience) = Very Low 1.22

       XIII.      PEXP (Platform Experience) = Low 1.12

       XIV.      LTEX (Language and Tool Experience) = Nominal 1.00

         XV.      TOOL (Use of Software Tools) = Nominal 1.00

        XVI.      SITE (Multi-site operation) = Very Low 1.25

    XVII.      SCED (Required Development Schedule) = Low 1.10

 

 Emi  = EAF  =  RELY x  DATA x CPLX x RUSE x DOCU x TIME x STOR x PVOL ACAP x PCAP 

                            x PCON x AEXP x PEXP x LTEX x TOOLx SITE x  SCED

                      = 1.26

 

            B = 1.01 + 0.01 (PREC x FLEX x RESL x TEAM x PMAT)

               =  1.01 + 0.01 (2.43+3.64+2.53+2.97+2.73)

               =  1.15

 

      Estimated Effort, PMM          = 2.5 x 21.15x 1.26

                                                      = 7 person-months        

 

 

      Estimated Development Time =

 ,  where TDEV is the time to develop

                                                                                          with an estimated effort PM,

                                                                                          A = 3 (Constant)

 

            = 3 x 7 0.33+0.2(1.15-1.01) x 0.85

            = 5.39 months

 

(All calculation with Values at COCOMO II.1997)

 

                                                                                                                                    Back to Top 

 

 

 

 

 

 

 

 

IV     Function Points Metric

   

Function points attempt to quantify the functionality of a software system. It characterizes the 

complexity of the software system and thus can be used to forecast how long it will take to develop 

the system and how many people will be needed.

 

·        Our Vehicle Parking System project will have 20 simple, 10 average and 3 complex user inputs

There are 10 simple, 4 average and 4 complex user outputs. There are 20 simple and 4 average 

user requires. Also, there are 1 database file and 1 external interface of average complexity.

 

Each factor on a scale of 0 to 5 is rated as below:

 

0                        1                      2                      3                      4                      5

          |-------------------|-----------------|-----------------|-----------------|------------------|

No           Incidental        Moderate       Average        Significant      Essential

                                                    Influence

 

Factor:

1.      Does the system require reliable backup and recovery? ----------------   4

2.      Are data communications required?--------------------------------------------   5

3.      Are there distributed processing functions? --------------------------------    0

4.      Is performance critical? -------------------------------------------------------------    4         

5.      Will the system run in an existing, heavily utilized operational

Environment?  -------------------------------------------------------------------------    4

         6.   Does the system require on-line data entry? -------------------------------     0

7.      Does the on-line data entry require the input transaction to be built

Over multiple screens or operations? ----------------------------------------     0

         8.   Are the master file updated on-line?  -----------------------------------------     0

         9.   Are the inputs, outputs, files, or inquires complex? --------------------      3

        10.  Is the internal processing complex? -------------------------------------------     0

        11.  Is the code designed to be reusable?  ----------------------------------------      3

        12.  Are conversion and installation included in the design? -------------       3

13.    Is the system designed for multiple installations in different

Organizations?   --------------------------------------------------------------------       0

14.    Is the application designed to facilitate change and ease of

Use by the user? -------------------------------------------------------------------        5

 

      Degree of Influence, DI 

 DI = 4+5+4+4+3+3+5 = 31

      Technical Complexity Factor, TCF

TCF = 0.65+0.01xDI

 

      Estimated Function Points, FP

  Estimated Function Points , FP

= UFP x TCF

=  (20x3 +10x4 +3x 6+ 10x4 + 4x5 + 4x7 + 20x3 + 4x4 +1x7 + 1x10) x 0.96

=  (60+40+18+40+20+28+60+16+7+10) x 0.96

=  287.4

 

Once function points have been calculated, they are used in a manner analogous to LOC as a measure of 

software productivity, quality, and other attributes:

 

      Estimated Productivity 

            Estimated Productivity  = FP / person-months

                                                            = 287.4/7

                                                            = 41.06

   (All calculation with reference to Values at COCOMO II.1997, Table II-3)

                                                                                    Back to Top 

 
Hosted by www.Geocities.ws

1