
What Are Feature Points?
In 1986, Software Productivity Research, Inc. developed an experimental
method for applying Function Point logic to system software such
as operating systems, telephone switching systems, and the like.
To avoid confusion with the IBM Function Point method, this experimental
alternative was called "Feature Points." Though the initial
results of using Feature Points were favorable, the method
has been used only sporadically in iindustry, and restricted to software that has well-defined algorithms: systems
software, embedded software, real time software, CAD, AI, and some traditional
MIS software.
For the most recent thinking on metrics and appropriate use of Feature Points, please refer to this page for further information.
Function Points were originally invented to solve the measurement
problems of classical Management Information Systems. This MIS origin
means that Function Points are not necessarily perceived as optimal
for the following reasons:
| |
Real time software,
such as missile defense systems; |
| |
Systems software, such
as operating systems; |
| |
Embedded software,
such as radar navigation packages; |
| |
Communications software,
such as telephone switching systems; and |
| |
Process control software,
such as refinery drivers. |
Additive to this list are other types of engineering applications,
such as CAD, CIM, discrete simulations, mathematical software, and
the like.
When Function Points are applied to such systems, they of course
generate counts. However, the counts appear to be misleading for
software that is high in algorithmic complexity, but sparse in inputs
and outputs. From both a psychological and practical vantage point,
these kinds of systems software seem to require a counting method
that is equivalent to Function Points, but sensitive to the difficulties
brought on by high algorithmic complexity.
The SPR Feature Point metric is a superset of the IBM Function
Point metric and introduces a parameter, algorithms, in addition
to the five standard Function Point parameters. The algorithms parameter
is assigned a default weight of 3. The Feature Point method also
reduces the empirical weights for Logical Data Files from IBM's
average value of 10 down to an average value of 7. This reflects
the somewhat reduced significance of logical files for systems software
vis a vis information systems.
As may be seen, for applications where the number of algorithms
and logical data files are the same, Function Points and Feature
Points will of course generate the same numeric totals. When there
are many more algorithms than files, however, which is not uncommon
with systems software, the Feature Points will generate a higher
total than Function Points. Conversely, if there were only a few
algorithms but many files, which is common with some information
systems, Feature Points would generate a lower total than Function
Points.
When Feature Points and Function Points are used on classical MIS
projects, the results are often almost identical. For example, one
small MIS project totaled 107 Function Points and 107 Feature Points.
However, when applied to the more complex forms of system software,
Feature Point counts are significantly higher. For a PBX telephone
switch the Function Point total was 1,845, but the Feature Point
total was 2,300 due to the high algorithmic complexity of the application.
Since Feature Points are driven by algorithmic complexity, a definition
of "algorithm" is appropriate. An algorithm is defined
as the set of rules, which must be completely expressed to solve
a significant computational problem. For example, a square root
extraction routine, or a Julian date conversion routine, would both
be considered algorithms.
The SPR Feature Point method is similar in concept to Function
Points, as can be seen in the following table.
The 1986 SPR Feature Point Method
| Significant Parameter |
|
Empirical Weight |
|
 |
 |
 |
 |
| Number Of Algorithms |
______ |
X 3 = |
______ |
| Number Of Inputs |
______ |
X 4 = |
______ |
| Number Of Outputs |
______ |
X 5 = |
______ |
| Number Of Inquiries |
______ |
X 4 = |
______ |
| Number Of Data Files |
______ |
X 7 = |
______ |
| Number Of Interfaces |
______ |
X 7 = |
______ |
| Unadjusted Total |
|
|
______ |
| Complexity Adjustment |
|
|
______ |
| Adjusted Function Point Total |
|
|
______ |
The SPR Feature Point method and the IBM Function Point method
are obviously similar in concept, but what about pragmatic results?
As of 1992, the Feature Point technique is still experimental and
is still undergoing field trials. Some of the results to date are
as follows:
| |
When Feature Points
and Function Points are used on classical MIS projects, the
results are often almost identical. As mentioned above, one
project totaled 107 Function Points and 107 Feature Points,
and the Function Point and Feature Point values usually converge; |
| |
When used on real time
and systems software, Feature Points often generate higher totals
than Function Points. In one small real time project, the total
was 45 Function Points but 70 Feature Points. |
|