Function
Point Analysis for GUI applications
When Alan Albrecht introduced Function Points sizing method to the world,
most of the applications/ projects were data rich applications or MIS
applications. In those days, first generation languages such as COBOL, Fortran
etc. were in use. But when next generation languages were introduced, critics started
slamming FP methodology citing its inability to size GUI, scientific, and
complex applications. However, later it was proved by various practitioners that, Albrecht’s FP can
be leveraged for sizing the entire spectrum of applications including GUI, and complex applications.
In this document, I will try to explain some of the rules for GUI functions using IFPUG
FP. GUI is an on-line display and processing of graphical data
presentation.
Following rules can be applied.
1.
Menu bar –
File
a.
Open –
EO/EQ
b.
File Save/
Save as/ Edit/ Update/ Create/ Delete – EIs
c.
File Print
– EO/EQ
2.
Help – EQ
3.
Selection
of an item from the pick list is usually a DET on an EI or input side of an EQ/
EO and not a separate function
4.
Mutually
exclusive choices on the same screen may count as unique EQ
5.
Command
button may specify add/ delete or change actions. A button like “Ok” may invoke
several types of transactions. Each command button would be counted as a data
element for the action it invokes
6.
Dropdown
or pick list can be considered as EQ if coming from an ILF/ EIF
7.
Informational
and warning messages other than error or confirmation messages are considered
as EQs/ EOs
8.
Functions
which permit selection of one choice out of multiple choices such as radio button/s,
one DET should be considered on the EI or EO/EQ
9.
If
multiple selections can be accepted just like check boxes, then count each
independent selection as a DET
10.
Implied
queries must be counted as EQs
11.
Logon
screens that facilitate entry to the application are counted as EQ
12.
Pictures
on the screen (if not hard coded) can be considered as DETs
13.
A sound
byte can also be considered as a DET
Do
not count
1.
File – New
option
2.
Exit
3.
Extract
files/ view files as ILFs
4.
Separate
EO/ EQ when same results are output to paper and screen
5.
Refresh/
Cancel
6.
Maximize/
minimize/ Zoom – Functions provided by OS
7.
Scroll
bars, “Next”/ “Previous” buttons and other navigation devices/ functions
8.
Drop down
list which displays data not maintained/ hard coded data
9.
Multiple
screens as separate EOs/ EQs
10.
Resorting
or rearrangement of data as separate EO or EQ
11.
Common
print options as they are provided by the environment
12.
Hyperlinks
on webpages
No comments:
Post a Comment