Professional Documents
Culture Documents
Software Engineering
Function Point and Coco MO
Submitted to
DET
RET
1 to 19 20 to 50 >=51
1 low low average
2 to 5 low average high
>5 average high high
Practice Question:
1. External Input (EI): Add a Product to the Cart
DET: 5 (Hypothetical number)
RET: 1 (Assuming all elements are in one group)
FTR: 1 (Internal file representing the shopping cart)
2. External Output (EO): View Shopping Cart
DET: 4 (Hypothetical number)
RET: 1 (Assuming all elements are in one group)
FTR: 1 (Internal file representing the shopping cart)
3. External Inquiry (EQ): Search for a Product
DET: 4 (Hypothetical number)
RET: 1 (Assuming all elements are in one group)
FTR: 1 (Internal file representing the product catalog)
Internal Logical File (ILF): Shopping Cart
DET: 9 (Sum of DET from EI and EO)
RET: 2 (Assuming separate groups for cart items and product details)
External Interface File (EIF): Product Catalog
DET: 4 (DET from EQ)
RET: 1 (Assuming all elements are in one group)
Now first we will find complexity according to the tables given above:
EI= low
EO= low
EQ= low
ILF= low
EIF= low
Now we will allot function points based on complexity:
EI= 3
EO= 4
EQ= 3
ILF=7
EIF=5
BY adding these function points we get U.A.F (unadjusted function points):
3+4+3+7+5=22
To make them final function points we need to find TDI (Total Degree of
influence) but in this case let’s suppose it is 5
Now using TDI we will find V.A.F (value adjustment factor)
V.A.F= (TDI * 0.01) + 0.65
V.A.F= (5 * 0.01) + 0.65
V.A.F= 0.7
Now to calculate Final function points Multiply U.A.F with V.A.F
F.F.P= U.A.F * V.A.F
F.F.P= 22 * 0.7
F.F.P= 15.4
Constructive Cost Model and Regression:
The Constructive Cost Model (COCOMO) is a software cost estimation model
developed by Dr. Barry Boehm. COCOMO provides a framework for estimating
the cost and effort required for software development projects.
The key parameters which define the quality of any software products, which are
also an outcome of the Cocomo are primarily Effort & Schedule:
Effort: Amount of labor that will be required to complete a task. It is measured in
person-months units.
Schedule: Simply means the amount of time required for the completion of the
job, which is, of course, proportional to the effort put in. It is measured in the units
of time such as weeks, and months.
Example: COCOMO I
Given Information:
Project Type: Organic
Size of the Project: 100 KLOC (Kilo Lines of Code)
Constants for Organic Projects (from COCOMO I table):
a=2.4
b=1.05
c=2.5
d=0.38
Effort Estimation:
Effort=a×(KLOC)b
Effort=2.4×(100)1.05
Duration Estimation:
Time=c×(Effort)d
Time=2.5×(Effort)0.38
Example: COCOMO II
Given Information:
Project Type: Organic
Size of the Project: 100 KLOC
Scale Factors (SF) Ratings:
Precendentedness (PREC): High
Development Flexibility (FLEX): Nominal
Team Cohesion (TEAM): High
Effort Adjustment Factor (EAF) Calculation:
EAF=PREC×FLEX×TEAM
EAF=3.72
Effort Estimation:
Effort=a×(KLOC)b×EAF
Effort=2.4×(100)1.05×3.72
Duration Estimation:
Time=�×(Effort)�Time=c×(Effort)d
Time=2.5×(Effort)0.38Time=2.5×(Effort)0.38
Example: COCOMO III
Given Information:
Project Type: Organic
Size of the Project: 100 KLOC
Rating for Additional Attributes:
Modern Programming Practices (MODP): High
Modern Tools (TOOL): High
Scale Factors (SF) Calculation:
SF=0.91+0.01×(MODP+TOOL)
SF=0.91+0.01×(2+2)=0.95
Effort Adjustment Factor (EAF) Calculation:
EAF=SF×PREC×FLEX×TEAM
EAF=0.95×3.72
Effort Estimation:
Effort =a×(KLOC)b×EAF×(SF)n
Effort=2.4×(100)1.05×(0.95×3.72)0.2
Duration Estimation:
Time=c×(Effort)d
Time=2.5×(Effort)0.38