Early Function Point CountingThe NESMA recognizes three types of function point counts:
The methods estimated and indicative function point counts have been developed by NESMA to enable function point counting early in the system life cycle. The NESMA indicative function point count is well known in the world and is referred to as "the Dutch method". This page discusses the different methods for function point counting, their applicability, and results of research to determine the accuracy of each of the methods.
The (detailed) function point countThe (detailed) function point count is the usual function point count and is performed as follows:
The estimated function point countThe estimated function point count is performed as follows::
So, the only difference with the usual function point count is that the complexity is not determined per individual function, but by default. The indicative function point countThe indicative function point count is performed as follows:
So this estimate is based solely on the present logical files (ILFs and EIFs) The indicative function point count is based on the assumption that there will be about three EIs (to add, change, and delete information in the ILF), two EOs, and one EQ on average for every ILF, and about one EO and one EQ for every EIF. Example of indicative, estimated and detailed function point countsThis section illustrates these three types of function point counts by a small and simple case study: an application that maintains Customer data and Product data, and references Supplier data. The more accurate function point count one wants, the more detailed user requirements one needs. That's why this case study presents the three methods of function point counting in the order of increasing accuracy:
Indicative function point countUser requirements:
This (rough) specification is enough for an indicative function point count:
Estimated function point countTo perform an estimated function point count we also need information about the transactional functions, so more detailed user requirements are necessary: User requirements:
This more detailed specification of the user requirements shows the actual amount of transactional functions, and therefore enables an estimated function point count.
Detailed function point countTo carry out a detailed function point count, one does not only need the number of functions of each function type (EI, EO, EQ, ILF, EIF), but one also needs to determine the functional complexity of each individual function (Low, Average, High). In FPA, the functional complexity of a (data or transactional) function
is determined, based on the number of DETs, RETs and File Types Referenced
that are relevant to this function. This detailed analysis of the user requirements could result in the following function point count:
ConclusionIn this particular case study all three methods result in the same functional size of 85 function points. Usually the results are not exactly the same, but still are pretty close to each other. Later on this page you'll see the results of research on the accuracy of the estimated and indicative function point counts. When to use which method for function point countingA (usual or detailed) function point count is of course more accurate
than an estimated or an indicative count; but it also costs more time and
needs more detailed specifications. It's up to the project manager and the
phase in the system life cycle as to which type of function point count
can be used. Results of research based on a 100+ projects data baseUsing a database of about 100 developed and implemented applications the NESMA did some research on the accuracy of the estimated and indicative function point counts. The implemented applications were simultaneously measured using all three types of function point counts. The results are presented in two graphs:
We see a good correlation (straight line) in both cases. In the graph of the indicative count, however, we see that there are considerable deviations (up to about 50%) in some cases. That is why one should be careful using the indicative function point count. The strength of this type of count is that one easily gets a rough estimate of the size of an application in only a very short time. In an application with more (or less) than a normal amount of outputs, one might need to change the multipliers of 35 and 15; but the philosophy behind the approach can generally be used. The result of the estimated function point count and the detailed function point count is very close. © 1998-2012 NESMA |