Albrecht’s Function Point Example
Stock Control System Scenario
J.A. Roberts is a company that sells 200 different electrical goods on the phone. To do
this they want you to create a computerised stock control system. This system should
have the following functionality:
• Allow the operator to enter an existing customers number or for new customers
their details (up to 100 customers)
• Check the credit rating of customers and reject those with poor ratings
• Allow the operator to enter the goods being ordered.
• Check the availability of the goods being ordered.
o Where there are sufficient goods in stock supply all the goods
o Where there are not sufficient goods supply number available and create
back order to be supplied when goods become available.
• Update the stock levels and customer account details.
• Produce Dispatch note and invoice.
• Update stock levels based on and delivery of goods.
• Update customer account details based on payment by a customer.
External Inputs = 7
Customer Number
New Customer Details
Order Details
Stock Delivery Details
Customer Payment Details
Main Menu Selection
External Outputs = 6
Credit Rating
Invoice
Dispatch Note
Customer Details Information
Order Details Information
Stock Details
External Inquiries = 3
Customer Details Request
Order Details Request
Stock Details Request
External Files = 0
Internal Files = 4
Goods Transaction File
Customer File
Goods File
Customer Transaction File
Function Point Complexity Weighting
External Inputs Simple 3
External Outputs Simple 4
External inquiries Simple 3
External Files None
Internal Files Simple 7
Unadjusted Function Point Count = 3(7)+4(6)+3(3)+7(0)+5(4)
Unadjusted Function Point Count = 65
Technical Complexity Factors
Fi
1 Does the system require reliable back up and recovery? 3
2 Are data communication required 0
3 Are there distributed processing functions? 0
4 Is performance critical 4
5 Will the system run in an existing, heavily utilized 3
operating system
6 Does the system require on-line entry? 4
7 Does the on-line data entry require the input transaction to 3
be built over multiple screen or operations?
8 Are the master files updated on-line? 5
9 Are the inputs, outputs, files, or inquiries complex? 0
10 Is the internal processing complex? 2
11 Is the code designed to be reusable 4
12 Are the conversion and installation included in the 0
design?
13 Is the system designed for multiple installations in 0
different organizations?
14 Is the application designed to facilitate change and ease 3
by the user?
Total 31
FP = 65 * [0.65+0.01*31]
FP=62.4