Functional Points

Functional Point Units
Functional Point Units

As a Software Engineer, one of the major difficult questions face from the client or management is What the cost and time for the software development?. Its difficult to weigh the real values or worth of software. One of the best ways to estimate the software development cost and time is based on the previous software development experience.

To measure the standard worth of the software, as a unit of software worth, Function Point was developed. Functional Point was first defined by Allan Albercht of IBM in 1977.

Study another type of Software Estimation: COCOMO MODEL

Functional Points

  1. It measures functionality from users point of view.
  2. What the user receives from Software and what the user requests from Software.
  3. Focuses on what functionality is being delivered.

A Functional Point is a unit of measurement to express the amount of business functionality an information system provides to a user. – Source: Wikipedia


Function Point – Step by Step Guide with Numerical Examples

5 Type of Functional Units

  1. Internal Logic Files (ILF) – The control info or logically related data that is present within the system.
  2. External Interface Files (EIF) – The control data or other logical data i.e referenced by the system but present in another system.
  3. External Inputs (EI) – Data / control info that comes from outside our system
  4. External Outputs (EO) – data that goes out of the system after generation
  5. External Enquired (EQ) – Combination of i/o – o/p resulting data retrieval

How to Calculate Functional Points?

Final F.P = UFP X CAF

UFP = Unadjusted Function Point

CAF = Complexity Adjustment Factor

Step 1: Each Function point is ranked according to complexity. There exist per-defined weights for each F.P in each category.

Functional UnitWighting Factors
LowAverageHigh
External Inputs (EI) 346
External Outputs (EO) 457
External Enquired (EQ) 346
Internal Logic Files (ILF)  71015
External Interface Files (EIF) 5710



Step 2: Calculate Unadjusted Function Point by multiplying each F.P by its corresponding weight factor.

Unadjusted Functional Points

UFP = Sum of all the Complexities of all the EI’s, EO’s EQ’s, ILF’s and EIF’s

Unadjusted Funcationla Points

Step 3: Calculate Final Function Points

Final F.P = UFP X CAF

Complexity Adjustment Factor
Complexity Adjustment Factor

“Total Degree of Influence of the 14 General System Characteristics”

Complexity Adjustment Factor is calculated using 14 aspects of processing complexity. 14 questions answered on a scale of 0 – 5

0 – No Influences

1 – Incidental

2 – Moderate

3 – Average

4 – Significant

5 – Essential


14 aspects of processing complexity questions are as follow:

  1. Data Communication
  2. Distributed Data Processing
  3. Performance
  4. Heavily Used Configuration
  5. Transaction Role
  6. Online Data Entry
  7. End-User Efficiency
  8. Online Update
  9. Complex Processing
  10. Reusability
  11. Installation Ease
  12. Operational Ease
  13. Multiple Sites
  14. Facilitate Change

Also study another type of Software Estimation: COCOMO MODEL

2 comments

Leave a Reply

Your email address will not be published. Required fields are marked *