Maintaining Function Point Data (Counts)
"Work FP vs. Base FP"
Function Points are always counted following the same published
rules. When maintaining or updating function point data, there
is a difference between Work vs. Base. Work is
everything we do encompassed in the FP model. Base is the net
total functionality available to "users" at any point
in time.
In a brand new development 1000 fp of Work should deliver 1000
fp of Base functionality to the user. However, some development
yields no on-going functionality, e.g. a conversion. If the above
project requires 100 fp of conversion programs, the estimate of
Work is 1100 fp, but the Base remains 1000 fp.
In an enhancement project, Work vs. Base can fluctuate between
ratios of:
1 fp of Work yields 1 fp of Base
to
1 fp of Work yields 0 fp of Base.
For example, if a new "average" rated report is requested,
the result is 5:5, 5 fp of Work yielding 5 new fp of Base functionality.
If instead, a new field is added to an existing average report
and the report remains average, the result is 5:0. That is, 5
fp of Work with no increase in the total Base functionality.
User Work
These are activities that the user is responsible for, but that
we perform for business reasons. For example, balancing is an
on-going user responsibility (requirement). If this is performed
by people in DP Operations on third shift, it is still User
Work. This is very important in staffing justification.
Another example is security. Creating security functionality
is an Information Systems' (IS) responsibility. Adding 2000 users
to the security table is a user responsibility, even if it is
performed by someone in IS.
Time spent adding rows to tables, like changing rates in rate
tables, does not add user functionality and therefore is not counted
as Work FP's. The time is User Work and it currently impacts
your overall productivity and quality numbers in a negative fashion.
We recommend staffing and recording this effort separately
so it can be understood and explained to management. Functionality
created to reduce this effort, e.g. a new screen to update a rate
table instead of recompiling and retesting multiple programs is
counted.
Suppose 25 tables (ILF's) with 25 maintenance screens are created
to reduce future NPA splits (splitting area codes in Telecommunications)
by 2000 hours/split. Total functionality increases by 360 fp.
(Assume 75 EI's (A,C,D) and 25 EQ's, all LOW and the VAF=1.20).
Bottom line productivity (Function Points Supported per Person)
is doubly improved by increased user functionality and reduced
User Work.
Supplemental Metrics
Supplemental Metrics are additional metrics that help "tell
the story" of issues outside the function point model. These
might be the number of users, number of accounts, sales impact
or other objective number that helps explain what we are doing
and why. For instance, an NPA split may require 5000 hours of
Work and result in no increase in Base FP's for users. A supplemental
metric might be that as a result of the split, our rule set data
base now has 10,000 rules versus the previous 8,000, a 25% increase.
One system processes 6 Billion records per month. What
was it 2 years ago? Has the arrival of cellular phones increased
the number of calls people make; or has voice mail reduced it?
Both of these business features have probably caused more
work than the increase in FP might show. Their impact can be
shown with supplemental metrics.
Supplemental metrics recognize that the Function Point model is
not a "silver bullet." Like any other tool, if management
only uses one number, we guarantee they will shoot themselves
in the foot. It becomes the Metrics Coordinator's job to assist
all levels of managers with understanding and conveying their
full story.
Counting Enhancements and Releases
To count a release, you need to analyze the files, screens and
reports. This information is usually contained in a Design document,
Time & Cost document and/or Bulletins.
Design documents: Check the input section for new on-line
and/or batch transactions. These will update one of the files
(ILF's) identified in either the original count or a subsequent
release. Some transactions just start a process, like an input
parameter. Be careful of the word "input." In the
FP model this may be an External Interface File.
Design document: Check the processing section for new
or changing files. If a new file (ILF) is identified a logical
question is how is it maintained. If it is maintained outside
the system, it will be an EIF. If it is maintained inside our
boundaries there must be on-line or batch input (EI transactions).
If these were not identified in the above input section, contact
the subject matter expert (SME) to find out why.
Updating user data is a user function even if it performed by
someone outside of the "user" area, e.g. system administrator
or user "coordinator" in Information Technology. Be
sure to count these user functions.
Design document: Check the output section for reports.
Don't forget EO's on multiple media get counted once per media
actually used. Therefore a report viewed on-line, on paper or
on fiche is three EO's. Note: A "file" in data processing
jargon may be any set of data on tape or disk. If the data is
sent outside our boundaries it is an External Output to the FP
model..
Design document: Check the miscellaneous section for any
screens, files or reports not previously identified.
Time & Cost document: This may also identify screens,
files or reports to count. Read the summary carefully, as a
free format may hide user functionality, either Work or Base,
that should be counted.
Bulletins: Check each bulletin associated with a Change
Request (CR). This may also be free format so watch for all
function point components (EI's, EO's, EQ's, ILF's and EIF's).
Functionality in Bulletins associated with Maintenance Requests
(MR's) should have already been counted.
Situations and scenarios
Maintenance functionality, (generally but not exclusively
MR's) has already been claimed and counted. Therefore
do not count either Work or Base function points. New functionality,
created under an MR can be counted, but this may be a quality
issue.
Scrubs and Scans, for new user requirements, count as Work
fp.
When analyzing Work, be aware that staff members may not use FP
jargon when documenting MR's and CR's. Contact the
SME if necessary.
Recording
Using the FP Tools, record each of the function point components
and identify whether they were ADDed (New), CHANGEd or DELETEd.
Use the appropriate input or output matrix to determine Low,
Average or High ratings. For Change or Delete, if the rating
is not obvious, check the original count for its rating. Original
ratings were derived with the SME's. This provides additional
cross checking, while improving consistency and quality.