of 107
8/14/2019 Function Point Training Booklet
1/107
8/14/2019 Function Point Training Booklet
2/107
8/14/2019 Function Point Training Booklet
3/107
8/14/2019 Function Point Training Booklet
4/107
8/14/2019 Function Point Training Booklet
5/107
8/14/2019 Function Point Training Booklet
6/107
8/14/2019 Function Point Training Booklet
7/107
8/14/2019 Function Point Training Booklet
8/107
8/14/2019 Function Point Training Booklet
9/107
8/14/2019 Function Point Training Booklet
10/107
8/14/2019 Function Point Training Booklet
11/107
8/14/2019 Function Point Training Booklet
12/107
8/14/2019 Function Point Training Booklet
13/107
8/14/2019 Function Point Training Booklet
14/107
8/14/2019 Function Point Training Booklet
15/107
8/14/2019 Function Point Training Booklet
16/107
8/14/2019 Function Point Training Booklet
17/107
8/14/2019 Function Point Training Booklet
18/107
8/14/2019 Function Point Training Booklet
19/107
8/14/2019 Function Point Training Booklet
20/107
8/14/2019 Function Point Training Booklet
21/107
8/14/2019 Function Point Training Booklet
22/107
8/14/2019 Function Point Training Booklet
23/107
8/14/2019 Function Point Training Booklet
24/107
8/14/2019 Function Point Training Booklet
25/107
8/14/2019 Function Point Training Booklet
26/107
8/14/2019 Function Point Training Booklet
27/107
8/14/2019 Function Point Training Booklet
28/107
8/14/2019 Function Point Training Booklet
29/107
8/14/2019 Function Point Training Booklet
30/107
8/14/2019 Function Point Training Booklet
31/107
8/14/2019 Function Point Training Booklet
32/107
8/14/2019 Function Point Training Booklet
33/107
8/14/2019 Function Point Training Booklet
34/107
8/14/2019 Function Point Training Booklet
35/107
8/14/2019 Function Point Training Booklet
36/107
8/14/2019 Function Point Training Booklet
37/107
8/14/2019 Function Point Training Booklet
38/107
8/14/2019 Function Point Training Booklet
39/107
8/14/2019 Function Point Training Booklet
40/107
8/14/2019 Function Point Training Booklet
41/107
8/14/2019 Function Point Training Booklet
42/107
8/14/2019 Function Point Training Booklet
43/107
8/14/2019 Function Point Training Booklet
44/107
8/14/2019 Function Point Training Booklet
45/107
8/14/2019 Function Point Training Booklet
46/107
8/14/2019 Function Point Training Booklet
47/107
8/14/2019 Function Point Training Booklet
48/107
8/14/2019 Function Point Training Booklet
49/107
8/14/2019 Function Point Training Booklet
50/107
8/14/2019 Function Point Training Booklet
51/107
8/14/2019 Function Point Training Booklet
52/107
8/14/2019 Function Point Training Booklet
53/107
8/14/2019 Function Point Training Booklet
54/107
8/14/2019 Function Point Training Booklet
55/107
8/14/2019 Function Point Training Booklet
56/107
8/14/2019 Function Point Training Booklet
57/107
8/14/2019 Function Point Training Booklet
58/107
8/14/2019 Function Point Training Booklet
59/107
8/14/2019 Function Point Training Booklet
60/107
8/14/2019 Function Point Training Booklet
61/107
8/14/2019 Function Point Training Booklet
62/107
8/14/2019 Function Point Training Booklet
63/107
8/14/2019 Function Point Training Booklet
64/107
8/14/2019 Function Point Training Booklet
65/107
8/14/2019 Function Point Training Booklet
66/107
8/14/2019 Function Point Training Booklet
67/107
8/14/2019 Function Point Training Booklet
68/107
8/14/2019 Function Point Training Booklet
69/107
8/14/2019 Function Point Training Booklet
70/107
8/14/2019 Function Point Training Booklet
71/107
8/14/2019 Function Point Training Booklet
72/107
8/14/2019 Function Point Training Booklet
73/107
8/14/2019 Function Point Training Booklet
74/107
8/14/2019 Function Point Training Booklet
75/107
8/14/2019 Function Point Training Booklet
76/107
8/14/2019 Function Point Training Booklet
77/107
8/14/2019 Function Point Training Booklet
78/107
8/14/2019 Function Point Training Booklet
79/107
8/14/2019 Function Point Training Booklet
80/107
8/14/2019 Function Point Training Booklet
81/107
8/14/2019 Function Point Training Booklet
82/107
8/14/2019 Function Point Training Booklet
83/107
8/14/2019 Function Point Training Booklet
84/107
8/14/2019 Function Point Training Booklet
85/107
8/14/2019 Function Point Training Booklet
86/107
8/14/2019 Function Point Training Booklet
87/107
8/14/2019 Function Point Training Booklet
88/107
8/14/2019 Function Point Training Booklet
89/107
8/14/2019 Function Point Training Booklet
90/107
8/14/2019 Function Point Training Booklet
91/107
8/14/2019 Function Point Training Booklet
92/107
8/14/2019 Function Point Training Booklet
93/107
8/14/2019 Function Point Training Booklet
94/107
Chapter 14
Page 94 Revised March 2002
8/14/2019 Function Point Training Booklet
95/107
Case Studies and Exercises
Enhanced Weather ApplicationRelease 2.0
Release 2.0 is an enhancement to The Weather Application Release 1.0. The user wants theability to save temperature as either Celsius or Fahrenheit. To accomplish this a radio button isadded to the input screen, which allows the user to select either Celsius or Fahrenheit. Anadditional field is added to the file, and an additional field is added to the reports. Assume thatthe value adjustment factor increases to 1.0.
How many enhancement function points does this represent?
What is the baseline function point of release 2.0?
Copyright Longstreet Consulting Inc.Page 95
8/14/2019 Function Point Training Booklet
96/107
Case Studies and Exercises
BikeWareRelease 1.0
BikeWare is a software product designed for competitive bike riders. BikeWare captures andstores a variety of information. BikeWare is for a single rider only. The rider wants to be able tochange, add or delete information about a ride or rider. The following information is either entered by the rider or calculated. All bold items are stored. The following information isgrouped logically into two major groups (ride and rider):
Ride InformationAverage Speed Bike Chill Factor
T = Temperature during the RideW = Average Speed
X = .303439 * sqr (W) - .0202886 * WBikechill = Int (91.9 - (91.4 - T) * (X + .474266))CadenceCalories Burned = Exponential ((.092037 * Average Speed) - 4.26)) * (Duration of Ride) *Weight of Rider)
Date of the RideDistance of the RideDuration of RideTemperature during the Ride
Rider InformationAge (age of rider in years)Weight (weight of rider)Sex (sex either male or female)
Graphs Four separate graphs (see below) can be created by days, by weeks or by months for each item
below. A different set of calculations will be used depending of the graph is days, weeks or amonths graph. Each graph is available on line or as a hard copy and processing logic is different.
Distance of RideAverage SpeedDuration of RideCalories Burned
8/14/2019 Function Point Training Booklet
97/107
Case Studies and Exercises
For BikeWare determine the following information:
Identify the external inputs, how many data elements and how many files will be referenced?
How many files type referenced are there for the add, the change and the delete? Is it always thesame?
How many internal logical files are there and what are the data elements?
How many external outputs? Describe the external outputs also?
How many data elements for each external output?
8/14/2019 Function Point Training Booklet
98/107
Chapter 14
Pizza Screen Design
Option 1Toppings are read from
another application(kitchen application). If the topping is notavailable it is notdisplayed.
The cost of the Pizza iscalculated automatically.
When the OK button is clicked the Toppings, Pizza Crust Type and Cost of Pizza are saved.
Option 2The Items in the drop down box are hard code not read from a file.Available Toppings are read from another application (kitchen application).When a Topping is selected from Available Toppings it is copied to Selected Toppings
Page 98 Revised March 2002
Figure 8
8/14/2019 Function Point Training Booklet
99/107
Case Studies and Exercises
The Cost of the Pizza is
automatically calculated.When the OK button is clicked the Selected Toppings, Pizza Crust Type and Cost of Pizza are thesaved.
What are the differences if any between Option 1 and Option 2? Please fill in the table below.
Option 1 Option 2Component Data Elements Component Data Elements
Note: Components are external input, external inquiries, internal logical files, and externalinterface files
Figure 9
8/14/2019 Function Point Training Booklet
100/107
Chapter 14
www.PIZZACLUB.COM
Part 1
WWW.PizzaClub allows customers to order pizza via the Internet. The following is only onescreen of many screens.
1. Once the customer has accessed www.PizzaClub.Com they fill out this screen.2. When the customer clicks on the form the information is saved to a file.3. If any of the fields are not filled out (populated) the customer receives and error message
telling them All fields must be populated.
4. What are the data elements?5. How many unadjusted function points does this screen and one file represent.
Page 100 Revised March 2002
Figure 10
8/14/2019 Function Point Training Booklet
101/107
Case Studies and Exercises
Part 2
Www.PizzaClub.com is going to be enhanced. Instead of allowing the customer to type city andstate, they will input the zip code number. The application will search the zip code file and then
automatically populate City and State. The customer can override the populated fields. The zipcode file is maintained by another application.
How many unadjusted function points does this enhancement represent?
What are the new components?
What data elements are impacted?
8/14/2019 Function Point Training Booklet
102/107
Chapter 14
Control Information
What are the data elements in the following control screen (alignment)?
Figure 11
-Control Screen
How many data elements are therein the following Data EntryPreferences control screen?
Page 102 Revised March 2002
Figure 12
8/14/2019 Function Point Training Booklet
103/107
Case Studies and Exercises
If this control screen updates one internal logical file, then how many unadjusted function pointsdoes this represent?
8/14/2019 Function Point Training Booklet
104/107
Chapter 14
Word Problem 1
Lets assume your productivity rate is 10 hours per function point (it takes 10 hours of work todeliver a function point). Additionally, assume your cost per hour is $60. Therefore, the cost todeliver 1 function point is $600.
1. How much would it cost to develop an application with 5,000 function points?
2. Lets assume you anticipate a Maintenance Rate is $100/Function Point. How much needs to be budgeted to cover Maintenance Expenses for the first year?
3. Assume that the application will be operational for 6 years (application life expectancy is 6years). Maintenance Costs will be fixed at $100/Function Point Per Year. What is the totalexpected cost of the application-- including all development and maintenance costs?
4. Should maintenance costs be considered when developing an application? How do youdetermine expected maintenance costs?
Page 104 Revised March 2002
8/14/2019 Function Point Training Booklet
105/107
Case Studies and Exercises
Word Problem 2
Assume the same cost per function point as before ($600).
Suppose a vendor, a tool vendor, and claims that his tool will increase productivity by 50 percent-- cut your cost per function point in half. Assume the following to be true:
You are planning on implementing 1,000 function points over the next year.You want the tool to pay for itself within 1 year.
1. What is the maximum amount you would be willing to pay for this tool -- You want to break even.
8/14/2019 Function Point Training Booklet
106/107
Chapter 14
ACRONYMSDET Data Element Type (DET) : A DET is a unique user recognizable, non-
recursive (non-repetitive) field.EI External Inputs (EI) - is an elementary process in which data crosses the boundary from outside to inside.
EIF External Interface Files (EIF) - a user identifiable group of logically relateddata that is used for reference purposes only.
EO External Outputs (EO) - an elementary process in which derived data passes across the boundary from inside to outside
EQ External Inquiry (EQ) - an elementary process with both input and outputcomponents that result in data retrieval from one or more internal logicalfiles and external interface files.
FTR File Type Referenced (FTR) : A FTR is a file type referenced by atransaction. An FTR must also be an internal logical file or externalinterface file.
GSC General System CharacteristicsILF Internal Logical Files (ILF) - a user identifiable group of logically related
data that resides entirely within the application boundary and is maintainedthrough External Input
RET Record Element Type (RET) : A RET is user recognizable sub group of dataelements within an ILF or an EIF
UAF Unadjusted Function PointsVAF The value adjustment factor (VAF) is based on 14 general system
characteristicsAFP Application Function Point Count after the enhancementAFPB The initial application function point count or baselineCFP Conversion Unadjusted Function Point CountDFP Development Project Function Point CountEFP Enhancement Project Function Point CountUFP Unadjusted Function PointsUFPB Unadjusted Function Point Count Before EnhancementVAFA The value adjustment factor of the application after the enhancement
project.VAFB The value adjustment factor of the application before the enhancement
project.
Page 106 Revised March 2002
8/14/2019 Function Point Training Booklet
107/107
1 Albrecht, A.J.: Measuring Applications Development Productivity. Proceedings of IBM Application Development JointShare Guide Symposium, Monterey, CA, 1979, pp. 83-92.2 Symons, C. R., 1998, Function Point Analysis: Difficulties and Improvements, IEEE Transactions of SoftwareEngineering, Vol. 14 No.1, January, pp 2-11.3 Garrison, Ray and Eric Noreen. Managerial Accounting. Irwin McGraw-Hill, 2000.4 Ferguson, C.E and Charles Maurice. Economic Analysis and Application. Homeword Illinois: Richard D. Irwin, Inc,1978.