Previous FPA-Transactional-Functions FPA-Practical Application Next

FPA Calculation

Summing to Get Unadjusted FP (UFP)

Step 1: List Counts & Weights

ComponentCountWeightSubtotal
EIs6424
EOs4520
EQs3412
ILFs21020
EIFs177
Total UFP83

Step 2: Verification & Sign-off

  • Review each count with stakeholders.
  • Document assumptions (e.g., DET/RETs).
  • Obtain written sign-off before moving on.

Common Pitfalls

  • Double-counting simple screens as both EI and EO.
  • Ignoring boundary transactions.
  • Failing to update counts when requirements change.

The Complete FPA Calculation

This section outlines the entire FPA process, from counting functions to applying the final complexity adjustment. The final Function Point value is calculated based on these steps. This is where all the previous counting and classification work comes together to produce a single, meaningful metric for the software's size. The calculation is broken into three main parts: calculating unadjusted function points, determining a value adjustment factor, and finally, computing the final adjusted function point count.

Part 1: Calculate Unadjusted Function Points (UFP)

The UFP is calculated by multiplying the number of each function type (ILF, EIF, EI, EO, EQ) at each complexity level (Low, Average, High) by its corresponding weight, then summing the results. The weights are as follows:

  • ILF: Low (7), Average (10), High (15)
  • EIF: Low (5), Average (7), High (10)
  • EI: Low (3), Average (4), High (6)
  • EO: Low (4), Average (5), High (7)
  • EQ: Low (3), Average (4), High (6)

For example, if you have 3 Average ILFs and 2 High EIs, your UFP contribution from these would be $(3 \times 10) + (2 \times 6) = 30 + 12 = 42$. This process is repeated for every function identified in the system and the total is summed up to give the final UFP. The UFP is a raw measure of the size of the system's functionality, before any consideration of the technical or environmental complexity.

Total UFP: A sum of all weighted function counts.

Part 2: Determine Value Adjustment Factor (VAF)

The VAF is a factor that adjusts the UFP based on 14 General System Characteristics (GSCs). Each GSC is rated from 0 (no influence) to 5 (strong influence). The total of these ratings is the Total Degree of Influence (TDI). Some examples of GSCs are 'Data Communications', 'Distributed Data Processing', 'Performance', 'End-User Efficiency', 'Transaction Rate', 'Online Data Entry', 'Operational Ease', and 'Reusability'. The VAF accounts for the technical and operational complexity of the system as a whole, beyond just the raw count of functions. It's a way to fine-tune the estimate based on the unique environmental factors of the project, such as whether the system needs to run on a distributed network or if it has to be highly performant.

The formula is: $VAF = (TDI \times 0.01) + 0.65$

For instance, if your TDI is 25, your VAF would be $(25 \times 0.01) + 0.65 = 0.25 + 0.65 = 0.90$. The VAF can range from 0.65 to 1.35, depending on the TDI, and it is a multiplier to the UFP. The 0.65 constant represents a baseline system with minimal complexity, and the TDI component scales the factor up or down from there.

Total Degree of Influence (TDI): The sum of ratings for 14 GSCs.

Value Adjustment Factor (VAF): The final calculated factor.

Part 3: Final Adjusted Function Point Count

The final Function Point (FP) count is the product of the Unadjusted Function Points (UFP) and the Value Adjustment Factor (VAF). This is the number that represents the total size of the software, adjusted for its overall complexity. This final number is the most important metric because it is a direct result of both the raw functional size and the technical/environmental challenges of the project.

The formula is: $FP = UFP \times VAF$

Continuing the example from above, if your UFP is 100 and your VAF is 0.90, your final Function Point count would be $100 \times 0.90 = 90$. This final number is a single, objective metric that can be used for a wide range of project management activities. The entire calculation process ensures that the final FP count is a robust and defensible measure of software size.

Total Function Points: The final calculated value.

Previous FPA-Transactional-Functions FPA-Practical Application Next
*