Software Productivity Research
Home About Us Contact Us News & Refereneces
Training & Enablement
Software Metrics & Counsel
Benchmark & Assessment
Project Estimation
Client Services
Products Tools & Resources
Document Catalog

Function Points or Feature Points?

Feature Points, described originally by Capers Jones as an adjunct to the IFPUG sizing methodology, are not in common use today. The approach was defined about in response to concerns about the “under representation” of certain types of functionality by the IFPUG method. The current view is that (despite achieving the objective of larger “FP” numbers for algorithmically-intense applications) this is not an appropriate way to produce estimates.

The primary issue with the Feature Point approach (and that of similar approaches such as COSMIC type-2) is that it destabilizes the emphasis on pure elementary process content. The difference is that the sizing methodology remains intact and externally comparable as an industry standard approach. This is necessary for maintaining compliance with standards set by ISO and IFPUG. Moreover, aside from enumeration of algorithm types (used for identification and counting of algorithms) there are almost no documented guidelines or standards regarding how to the theoretical construct of Feature Points to actual estimates in a consistent and repeatable way.

To resolve these issues, we recommend the following method to accommodate algorithmic-intense projects: Use of the standard IFPUG methodology (based on elementary processes) combined with a rating of “Project Complexity” to properly scale effort (e.g., for the purpose of estimating effort.) In our estimation practice, SPR uses a project complexity rating that fully accommodates differences in effort for modeling. The rating takes into account project complexity across:

  • Newly developed functions
  • Modified functions (assuming a base of existing functionality is being enhanced)
  • Base functions (assuming that a base exists)

Each of these is rated in on a scale in terms of three primary attributes, with specific definitions and documented qualifications for each rating level:

  • Algorithmic complexity
  • Cyclomatic (code structure) complexity
  • Data (relational and structural) complexity

An overall project complexity factor is computed from the nine ratings and applied to the IFPUG Adjusted Function Point size (derived according to IFPUG CPM Release 4.3 standards.) This factor forms the basis for estimates in the SPR model. Note that a variety of additional factors (qualitative ratings of capability, process formality, life cycle activities, etc. are necessary in conjunction with the Size + Effort basis for prediction of effort and delivered defect for any given project.)

Moving from the theoretical to the practical, the latest version of our parametric estimation model, SPR KnowledgePLAN® 4.4, utilizes the complexity rating approach described above, as well as supporting sizing using COSMIC FFP and (for that matter) SPR Feature Points. For further information about SPR KnowledgePLAN®, please click here.