|
|
Software Cost EstimationThe 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:
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-months, where 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
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)
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 =
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
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, DIDI = 4+5+4+4+3+3+5 = 31 Technical Complexity Factor, TCFTCF = 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) |