0 ratings0% found this document useful (0 votes) 73 views7 pagesCocomo 1
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content,
claim it here.
Available Formats
Download as PDF or read online on Scribd
ing Une UP by an adjust
The finn aot fare «i arrived al by anulliplying the ment
The final number of funetion points is arrived al by: ing complexity which are given
i
fielor that in determined by considering 14 axpoets of proce : 295% 4
in Tublo 4.8, "This adjustment factor allows the UEP count to be modified by al most 35%, Thy
final adjusted FP count is obtained by using the following relationship.
FP = UFP* CAR
Where CAF is complexity adjustment faclor and is equal to [0.65 + 0.01 x ZI). The
FE = 1 ty 14) are the degrees of influence and are based on responses to questions noted in
Tuble 4.3,
‘Table 4.3: Computing function points
Rate ench factor on a neale of 0 to 6,
! 2 3 f
Significant Easential
0
No Incidental Morterate Averayye
Influence
Numbor of fuctors considered (F, ) a
1, Doen the system require reliatile backup und recovery?
i data communication required?
4. Are there distributed procensing function?
4. tn performance critical?
5, Will the nystern run in au exusting fiewvily utifized operational environment?
G. Does the system require on line dala entry?
7. Does the on line data entry require the input transaction Lo be built over muitiple
fereens or operations?
8. Are the master files updated on line?
9. Ie the inputs, outputs, files, or inquiriex complex?
10. Ju the internal processing, complex?
AL, Ii the code designed to be reusable?
12. Are converti Mion ined in Uw design’
13, fy the system designed for multiple i
fs the application designed to facilitate change and ease of
ilfatinns
different organs
Uses of iunetlon points
‘The collection of function point data has to primary motivations. One is th ¢ desire by manag:
ors to monitor levels of productivity, for example, number of function Points uehieved per work
hour expended. From this perspective, the manager is nol concern with when the function
point counts are made, but only thal the function points accurately dencribo the jae f the
final software project. In this instance, function points have an advantage ove LOC in that
they provile a more objective measure of altware sie by whieh isan oiled
Another use of function points is in the estimation of software day ol ae a a a There
are only a few studies thataddresa this issu, though iis arguably unc see eet come Tore
uso of function point data, 'Y Wie most important potentialFunctions points may compute the following important metrics:
productivity = — FP/persons-months
Quality = Defects/FP
Cost = Rupees /FP
Documentation = Pages of documentation per PP
‘These metrics are controversial and are not universally acceptable. There are stand-
ydsissued by the International Function Point User Group (IFPUG, covering the Albrecht
yelhod) and the United Kingdom Function Point User Group (UFPGU, covering the MK11
githod). An ISO standard for function point. methods is also being developed.
The function point method continues to be réfined. So if we intend to use it we should
isin copies of the latest international function point user group (IFPUG) guidelines and
endards. IFPUG is the fastest growing non-profit soflware metries user group in the world
sihan annul growth rate of 30%. Today it has grown to over 800 corporate members and over
£00 individual members in more than 50 countries,
Sample 4.1
Insider a project with the following functional units:
Number of user inpuls =50
‘Number of user outputs = 40:
Number of user enquiries = 35
Number of user Giles =06
Number of external interfaces = 04
Assume all complexity adjustment faetors and weighting factors are average.
Compute the function, points for the project.
Botution
5 8
We know upp = >) Y) 2yuy
ere
BU xd dU x D+ 35x44 6x 104A xT
= 200 + 200 + 140 + 60 + 28 = 628,
CAF = (0.65 + 0.01 EF)
= (0.65 + 0.01(14 x 3) = 0.85 + 0.42 = 1.07
FP = UFP x CAF
= 628 x 1.07 = 672
UE
a ks
‘application has the following:
10 low external inputs, 12 high external outputs, 20 low interrial logical files, 15 high
femal interface files, 12 average external inequiries, and a value of complexity adjustment
of 1.10,
What are the unadjusted and adjusted function point counts ?Solution
Unadjusted function point counts may be calculated using as:
53
urP= ¥ Y) Zyuy
am
=10x3412%7420x7 +15 +104 12%4
= 30+ 84 +140 + 150 + 48
=45200
FP = UFP x CAF
= 452% 1.10 = 497.2,
Example 4.3
Consider a project with the following parameters
(i) External Inputs:
(a) 10 with low complexity
(0) 15 with average complexity
(©) 17 with high complexity.
Gi) External Outputs:
(a) 6 with low complerity
(b) 13 with high complexity.
(iii) External Inquiries:
(a) 3 with low complexity
(0) 4 with average complexity
(c) 2 with high complexity.
(iv) Internal logical files:
(a) 2 with average complexity
(B) 1 with high complexity.
(v) External Interface Giles:
(a) 9 with low complexity.
* In addition to above, system requires
(i) Significant data communication
(i) Performance is very critical
(iii) Designed code may be moderately reusable
(io) Systom is not designed for multiple installations in g
Other complexity adjustment factors are treated ag . ifferent organisations,
for the projec:. "Tae. Compute the function pointsglution
Unadjusted function points may be counted using Table 4.2
functional Count Complexity i
wis Complesity
— totals
Bxternal 10
Inputs 15 Average-x 4 = 0
(Els) 7 i
High x6 = 702 wm]
External 6 low x4 = u
Gutputs ” 0 Average x5 = 7
(0s) 13 High x 7 = 1 is]
External 3 Low x3 = 2
Inquiries 4 Average x40 = 16
ls) 2 High x 6 = 12 a7
Internal e Low x7 =
Logical le Average x 100 = 20
Files (ILFs) 1 High x 150 = (15 [35
External 9 Low x5. = 5
Interface 0 Avergae x7 = 7
Files (EIFs) La] High x 10 = 7 B
‘Total unadjusted function point count = Caw]
‘The factors given in Table 4.3 may be calculated as:
Vy adedeS+5pdegrd Se 3494249404324]
is
CAF = (0.65 + 0.01 x EF)
= (0.65 x 0.01 x 41)
1.06
FP = UFP x CAF
= 424 x 1.06
= 449.44
Hence FP = 449. yKLOC) to medivm (a few tens of KLO! i
2 ver lane (few hundreds of LO, we modes the size ranges from
‘The semi detached mode is an intermedia
ja Bde Nid Stipa eh eae te mode between the organic mode and
les is given in Table 44
Table 4.4; The comparison of three COCOMO modes
Mode Project Nature of project | Innova- | Deadline | Development
size tion ofase Ql terratnent
Project
Organic Typically Small size project, ex-| Little | Not tight | Familiar &
2-50 KLOC | perienced developers In house
in the familiar envi-
ronment. For exam-
ple, pay roll, inventory
projects ete
emi ‘Typically Medium size project, | Medium } Medium Medium
tached 50-300 KLOC | Medium size team,
Average previous ex:
perience on similar
projects.
For Example: Utility
systems like compil-
ers, database systems,
editors ete.
Tmbedded | Typically over | Large project, Real | Signifi- | Tight Complex
300 KLOC. time systems, Com- | cant Hardvare!
plex interfaces, Very alma
little previous experi- ‘Tnterfaces
ence. required
For Example: ATMs,
Air Traffic Control ete.
Depending on the problem at hand, the team might include a mixture of re
®dless expérienced people with only/a recent history of working together. Phe basie COCO!
‘ations take the form ws
Cg = a,(KLOC)” =
(4
a
p-@* 2 l
: ang D is the development time in months} The co
we is effort applied in Person-Months,
Ns a, by, c, and d, are given in Table 4.4(a).Table 4.4(a); Basic COCOMO co-efficients
Y Project a, | Bos
Organic 24 1.05 25 0.38
Semidetached 3.0 La 26 0.85
Embedded 36 1.20 28 a2
Gihen effort and development time ‘are known, the average staff size to complete the
Project may be calculated as: <)
\_Brterage staf sine (88) = z Pevibii:
‘When project size is known, the productivity level may be calculated as:
. Loc :
+ _Productivity (P) = = KLOCPM:)
With the basic model, the software estimator has a useful tool for estimating quickly, by
two runs on a pocket calculator, the cost and development time of a software project, once the
size is estimated. The software estimator will have to assess by himself/herself which mode is
the most appropriate.
Suppose that a project-was estimated to be 400 KLOC. Calculate the eff
a ort and development
time for each of the three modes i.e, organic, semidetached and embed.
ded.
Solution
The basic COCOMO equations take the form:
E = 4,(KLOC)*
D= ¢,(KLOC)*
Estimated size of the project = 400 KLOG.
@ Organic mode
B= 2.4(400)!°5 - 1995.31 pry
D = 2.5(1296.91)958 - 38 07 54
(ii) Semidetached mode
B= 8.0(400)!2 = 2469.79 pap
D = 2.5(2462.79)95 = 39.45 hy
(iii) Embedded mode
E = 3.6(400)L20_ ATI2.81 PM
D=2.5(472,g)32 _ 38M
‘As we have seen, effort calculated for embedded
recs oy rune made, Goer, Cb ert calecatad © “PPTuaimately 4-oen, the
effort of organic mode. There is a large difference ; ‘or Semidetached mode i; :
development time is approximately the same for all ioe ese Values, Bure 2 times the
* Sut, surprisi the
mor prisingly,
“S-Ttis clear fram hare os thaPr. oment. Lt We LOK LO thi a avery mode wi iff,
“ad mode is the right man 444, it is mentioned that Toes tnt manpomer
: so on other par: ce. The selection of a mode is not onl, a KLOC projects,
y put a a Parameters as mentioned in Table 4.4, 'Y dependent on project
yt the selection of mode for the project. 4. We should be utmost careful
ample 4.6
ct size of 200 KLOC is to be di
oasis type of prj The eft etna rennet fee has average expe-
elopment time, average staff size and Productivity of the peek eae
lution
The semi-detached mode is the most a
wexperience of the development team.
Hence E = 3.0(200)!22 = 1133.19 PM
D = 2.5(1133.12)% = 29.3 M
propriate mode; keeping in view the size, schedules
Average staff size (SS) = z Persons
= 1188.12 ae orp,
= 393 = 3867 Persons
LOG
Productivity = ee = 0.1765 KLOC/PM
P = 176 LOC/PM
4.2 intermediate Model
2 basic model allowed for a quick and rough estimate, but it resulted in a lack of accuracy. }
ehm introduced an additional set of 15 predictors called cost drivers in the intermediate
wel to take account of the software development environment Cost drivers are used to
lust the nominal cost of a project to the actual project environment, hence increasing the
turacy of the estimate.
cost drivers are grouped into four categories:
+A Product attributes
(a) Required software reliability (RELY)
(b) Database size (DATA)
(c) Product complexity (CPLX)
Computer attributes
(a) Execution time constraint. (TIME)
(b) Main storage constraint (STOR)
(c) Virtual machine volatility (VIRT)
(d) Comnnter turnaround time (TURN)