function point analysis: an idiots friendly introduction
TRANSCRIPT
Skills for delivering with certainty
Introducing
Function points analysisfor dummies sizing software
How big is this elephant?
Do these guidelines help?
Sizing elephant
seals
Welcome to Function points FP
A little history
Some geography
2.OUTPUT
1.INPUT
3.INQUIRIES
4.INTERNAL FILE
5.EXTERNAL INTERFACE
Transactional
2.OUTPUT
1.INPUT
3.INQUIRIES
4.INTERNAL FILE
5.EXTERNAL INTERFACE
Data Function
Data in motion = Transaction
Data at rest = Storage
How easy is this inquiry?
1124 elementary processes All possible routes Cities converted to 3 char codes international nomenclature Reports
Non stop Hop and reach With wide bodied air craft
Building blocks explained?
Lets learn by a case studySystem : Develop the first Self driving car application ever made
Current state : Appropriate map installed shows only where the car is right now.
To develop : 1. Show us a few possible routes between Office to Airport 2. Inputs : Start point, Destination, 3. Out put - Few possible routes ( Via Station, Bopodi, Camp etc) 4. Complexity : Thousands of possible routes between Office & Airport 5. For instance. 1000s of more or less stupid ones,6. Only a few worth considering. 7. How to let the system choose these last ones? 8. The shortest, and the fastest one? 9. How to let the system count it?10.How to let the car engine be controlled by map, GPS and traffic
Say you do complete wireframing
And.. Compute the different elements
Weightage points for each type
This is how your system points look
This is standard multiplication matrix
To get unadjusted function pointsDo A *B
X
= C (Say)
Multiply like this to get UFC
UFC = Unadjusted Function Point count
This is how C ( Unadjusted Function Count UFC) looks like
We have not yet looked at the
General System Characteristics comprising
Installation ease, Performance,
Distributedness etc
General System Characteristics(GSC) or Total Degree of Influence TDI)
0 (Low) <= GSC value <= 5 (High)
Each can have value 0 to 5
GSC computed
Total Degree of influence ( TDI ) = Sum of all VAFs
0 <= TDI < = 70 VAF can vary in range from 0.65 (when all GSCs are low) to 1.35 (when all GSCs are high).
Applying VAF( Value adjusted Function Points)
VAF = (TDI*0.01) + 0.65For this case TDI or GSC = 44
Therefore VAF = ( 44*0.01) + 0.65 = 0.44+ 0.65 =1.09Easy to see that 0.65< = VAF <= 1.35
( For the GSM project , The Adjusted Function Points)
Adjusted FP Count = Unadjusted FP Count * VAF
In our case :
Unadjusted FP Count = C = 508VAF = 1.09There foreAdjusted FP Count = 508 *1.09 = 553.72
= 554 (say)The project is now of 554 function points
Organization standards needed( Sample values)
= 0.5 person days
= 0.15 ( for <1000 fp project
= Rs 865/=
Organization internal projection ( Sample values)
Parameter
Org standard value/fp
Computed Project value Rounded Value
Outside value
Remarks
Efforts 0.5 Engineerdays
=554*0.5=277 280 310 Say 10 % effort buffer
Quality 0.15 =554*0.15=83.1 90 100 10% quality bufer
Costing 865 =554*865=4,79,210 4,80,000 7,50,000 50% Gross margin
FP/Hour
Project Function Point Size
0
0.05
0.1
0.15
0.2
0.25
0.3
0.35
0 50 100 150 200 250 300 350 400 450
•Every organization has an optimum size /productivity range
What’s Your Message?
Happy Function pointing @arunpurohit