1
Calibrating Function Points Using Neuro-Fuzzy Technique
Vivian Xia
NFA Estimation Inc. London, Ontario, Canada
Danny Ho
IT DepartmentHSBC Bank
Vancouver, BC Canada
Department of Electrical and Computer Engineering
University of Western OntarioLondon, Ontario, Canada
Luiz F Capretz
2
Roadmap Concepts of Calibration Neuro-Fuzzy Function Points Calibration Model Validation Result Conclusions
3
Calibration Concept
DET, RET --- Component Associated Files
Same methodology for all FP 5 components
Data Element Types (DET)
Record Element Types (RET) 1-19 20-50 51+
1 Low Low Average
2-5 Low Average High
6+ Average High High
Internal Logical File (ILF) Complexity Matrix
External Input, External Output, External Inquiry
Internal Logical File, External Interface File
4
Calibration Concept Cont’d e.g. One project has 3 Internal Logical Files (ILF)
ILF A ILF B ILF C
DET 50 20 19
RET 3 3 3
Original Classification Average Average Low
Original Weight Value 10 10 7
Observation 1 Ambiguous Classification
Observation 2 Crisp Boundary
Calibrate complexity degree by fully utilizing the number of component associated files
Calibrate to fit specific application
5
Calibration Concept Cont’d
Component Low Average High
External Input 3 4 6
External Output 4 5 7
Internal Logical File 7 10 15
External Interface File 5 7 10
External Inquiry 3 4 6
. Calibrate UFP weight values to reflect global software
industry trend
Unadjusted Function Points Weight Values UFP weight values are determined in 1979 based on
Albrecht’s study of 22 IBM Data Processing projects
6
Neuro-Fuzzy Function Points Calibration Model Overview
Project Data
Calibrated by Fuzzy Logic
Calibrated by
NeuralNetwork
Validated for better estimation
EstimationEquationISBSG 8
MMRE, PRED
7
Calibrating by Fuzzy Logic
Fuzzy Set Fuzzy Rule
Fuzzy Inference
OutputInput
Fuzzy Logic System
8
Calibrating by Neural Network
Learn UFP weight values by effort the values should reflect complexity complexity proportioned to effort
15 UFP inputs as neuronsBack-propagation algorithm
9
Data Source --- ISBSG Release 8 ISBSG
International Software Benchmarking Standards Group Non-profit organization
Release 8 Contains 2,027 projects 75% built in recent 5 years Filter on ISBSG 8 data set
Filter Criteria: Quality, Counting method, Resource level,
Development Types, UFP breakdowns Shrink to 184 projects
10
Validation Methodology Developed a calibration tool Randomly split data set
totally 184 data points 100 training points 84 testing points for validation
Repeat 5 times Using estimation equation for comparison
11
Validation Results (MMRE)
Exp.1 Exp.2 Exp.3 Exp.4 Exp.5
MMREOriginal
1.38 1.58 1.57 1.39 1.42
MMRENeuro-Fuzzy
1.10 1.28 1.17 1.03 1.11
IMPRV %20% 19% 25% 26% 22%
Avg.IMPRV %
22%
MMRE: Mean Magnitude
of Relative Error Criteria to assess
estimation error The lower the
better
n
i i
ii
Act
ActEst
nMMRE
1
1
12
Validation Results (PRED)
PRED: Prediction at level p
Criteria to assess estimation ability
The higher the better
n
kpPRED )(
0.0
10.0
20.0
30.0
40.0
50.0
60.0
70.0
80.0
Pred 25 Pred 50 Pred 75 Pred 100
Perc
enta
ge Original
Calibrated
13
Conclusions Neuro-Fuzzy Function Points model improves
software cost estimation by an average of 22%. Fuzzy logic calibration part improves UFP
complexity classification. Neural network calibration part overcomes
problems with UFP weight values.