Demystifying Function Points

Clarifying Common Terminology

This is very different from enhancement in the context of function point counting, where it means functional enhancement. The IFPUG counting practices manual (IFPUG 4.1) glossary definition is: “Enhancement project function point count (EFP): A count that measures the modifications to the existing application that add, change, or delete user functions delivered when the project is complete.”

Enhancement in function point terminology strictly refers to logical, functional enhancements, i.e., only those modifications to the logical user requirements or elementary processes (EI, EO, EQ, ILF or EIF) of the software. As such, if an enhancement project in business terms does not create new logical functions, modify existing logical functions, or remove logical functions from the software; no function points can be counted. What this means is that out of the previous list of enhancements in the business and IT context, potentially only the last point (adding new data elements to an existing report) would count any function points. This is because the remaining list items are not considered to be functional enhancements, and therefore, would score zero FP.

This can be very frustrating to the uninitiated function point practitioner who does not have an appreciation for the importance of the context in which the term "enhancement project" is used. Remember, enhancement project to the business/IT community is not necessarily considered to be an enhancement project when counting function points.

The term "file," when used by system developers, usually evokes images of mainframe, transaction-oriented processing, and the term is used interchangeably with dataset (associated terms such as research files, output files, sort files, batch files, excel files, and transaction files, are still common vernacular today).

In function point counting, the term "file" is used to represent a logical grouping of data that is a requirement of users. The CPM defines file as: “For data function types, a logically related

About the author

AgileConnection is a TechWell community.

Through conferences, training, consulting, and online resources, TechWell helps you develop and deliver great software every day.