Function Point

As a Software Engineer, one of the major difficult questions faced by the client or management is What is the cost and time for the software development? It’s difficult to weigh the real value or worth of software. One of the best ways to estimate the software development cost and time is based on 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 Albrecht of IBM in 1977.

Function Point

  1. It measures functionality from the user’s 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

Functional Point
Functional Point

GA

5 Types 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 in data retrieval

How to Calculate Functional Points?

Final F.P = UFP X CAF
UFP = Unadjusted Function Point
CAF = Complexity Adjustment Factor

GA

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

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

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

Step 3: Calculate Final Function Points

Final F.P = UFP X CAF

“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

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

14 aspects of processing complexity questions are as follows:

  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
0 replies

Leave a Reply

Want to join the discussion?
Feel free to contribute!

Leave a Reply

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