# Extended Function Point (EFP) Metrics

Function Point (FP) measure was inadequate for many engineering and embedded systems. To overcome this, A number of extensions to the basic function point measure have been proposed. These are as follows:

- Feature Points are computed by counting the information domain values.
- It can be used in those areas where there is a level of complexity, is comparatively very high.
- Function point (FP) measure is the subset for the Feature point.
- But both the Function point and feature point represents the functionality of the systems

**Feature Points:**

**Table for feature point calculation:**

Sr. No. | Measurement Parameter | Count | ** | Weighting factor |
---|---|---|---|---|

1 | Number of external inputs(EI) | – | * | 4 |

2 | Number of external outputs(EO) | – | * | 5 |

3 | Number of external Inquiries(EQ) | – | * | 4 |

4 | Number of internal files (ILF) | – | * | 7 |

5 | Number of external interfaces(EIF) | – | * | 7 |

6 | Algorithms used Count total | – | * | 3 |

**3D function points:**

- Data, Functional, and control are three dimensions represented by 3D function points.
**Data:**User interfaces and data as in the original method.**Control:**Real-time behavior(s)**Function:**Internal processing

- Data dimension calculation is the same as the FPs. Feature-Transformation is done in the functional dimension. While in the control dimension, feature-Transition is added.
- The 3D Function Point method was proposed by Boeing.
- It is designed to solve two problems with the Albrecht approach.

**Example:**

Compute the FP, feature point and 3D-function point value for an embedded system with the following characteristics:

1. Internal data structures = 8 2. No. of user inputs = 32 3. No. of user outputs = 60 4. No. of user inquiries = 24 5. No. of external interfaces = 2 6. No. of transformation = 23 7. No. of transition = 32

Assume complexity of the above counts is average case = 3.

**Explanation:**

**Step-1:** We draw the Table first for computing FPs.

Sr. No. | Measurement Parameter | Count | ** | Simple Weighting factor | Average Weighting factor | Complex Weighting factor | Calculated Value |
---|---|---|---|---|---|---|---|

1 | Number of external inputs(EI) | 32 | * | 3 | 4 | 6 | 128 |

2 | Number of external outputs(EO) | 60 | * | 4 | 5 | 7 | 300 |

3 | Number of external Inquiries(EQ) | 24 | * | 3 | 4 | 6 | 96 |

4 | Number of internal files (ILF) | 8 | * | 7 | 10 | 15 | 80 |

5 | Number of external interfaces(EIF) | 2 | * | 5 | 7 | 10 | 14 |

6 | Number of Transformation | 23 | * | 23 | |||

7 | Number of Transition | 32 | * | 32 | |||

Count – Total | —–> | 673 |

**Step-2:** Find the sum of all fi (1 to 14)

Σ(&fi) = 14 * 3 = 42

**Step-3:** Calculate the functional point:

FP = Count-total * [0.65 + 0.01 *Σ(&fi) ] = 618 * [0.65 + 0.01 * 42] = 618 * [0.65 + 0.42] = 618 * 1.07 = 661.26

**Step-4:** Calculate the Feature point:

= (32 *4 + 60 * 5 + 24 * 4 + 80 +14) * 1.07 + {12 * 15 *1.07} = 853.86

**Step-5:** Calculate the 3D function point, it is calculated by counting the total calculated values. So, for 3D function points, the required index is 673.

## Recommended Posts:

- Software Engineering | Halstead’s Software Metrics
- Software Engineering | Identifying Software Development Metrics
- Software Measurement and Metrics
- Software Engineering | Function Oriented Design
- Software Engineering | Functional Point (FP) Analysis
- Software Engineering | Calculation of Function Point (FP)
- Levels of Capability Maturity Model (CMM)
- When should you use Waterfall Model
- Steps in Rapid Application Development (RAD) model
- Pilot Testing in Software Testing
- Cause Effect Graphing Example in Software Engineering
- Cause Effect Graphing in Software Engineering
- Software As A Service (SaaS)
- Empirical Research in Software Engineering

If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to contribute@geeksforgeeks.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.

Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.