Function Point Analysis

(FPA) A standard metric for the relative size
and complexity of a software system, originally developed by
Alan Albrecht of IBM in the late 1970s.

Functon points (FPs) can be used to estimate the relative size
and complexity of software in the early stages of development
- analysis and design. The size is determined by identifying
the components of the system as seen by the end-user: the
inputs, outputs, inquiries, interfaces to other systems, and
logical internal files. The components are classified as
simple, average, or complex. All of these values are then
scored and the total is expressed in Unadjusted FPs (UFPs).
Complexity factors described by 14 general systems
characteristics, such as reusability, performance, and
complexity of processing can be used to weight the UFP.
Factors are also weighted on a scale of 0 - not present, 1 -
minor influence, to 5 - strong influence. The result of these
computations is a number that correlates to system size.

Although the FP metric doesn't correspond to any actual
physical attribute of a software system (such as lines of
code or the number of subroutines) it is useful as a relative
measure for comparing projects, measuring productivity, and
estimating the amount a development effort and time needed for
a project.