Function Point Analysis- A Forgotten Estimation Technique
1979-Allan Albercht of IBM devised this technqiue of software size estimation. Since then it has been a long way. This estimation technqiue went through multiple modification and around 2001 was standardised by IFPUG(International Functions Point Users Group).
To make it simple for someone who isn’t so familiar, it is a relative size based estimation technique which gives a ‘dimensionless’ number or a ‘unitless’ number as the size of the software being measured.
The meaurement involves identifying what is being meausred, i.e. setting up a boundary and knowing what is within and what is outside the software being measured along-with the characteristics of the software.
Some elements that we indaverantly find out during the ‘identification’ of the software are for example:-
External Input from another system/s
External Output to another system/s
External Interface Files
Internal Logical Files
External Inquiries by users on a front end/by other systems
These when counted are classified into type and number of unique elements in each type.A standard complexity is assigned by aligning the range of type-unique elements.A weighted sum of compleity* unique count gived the functional size which needless to say, gives a purely functional sizing when counted and sized according to standard complexity.This weighted sum is called the unadjusted function point (for a reason…)
Coming to the characteristics, they are 14 in number as identified originally bu Allan and within IFPUG’s standardised way of measurement.These 14 are called general system characteristics and in modern terminologies can be attributed as non-functional attributes of the software. These are rated on a scale of 1-5, 5 being the hightest and denoting the imortance of the particular characteristic.
A complexity adjustment factor (CAF) Iis derived as CAF = 0.65 + ( 0.01 * sum of the general system characteristics)
The final function point of the software is derived by multiplying the unadjusted function point with the complexity adjustment factor.
*******************________________________________***********************