Date post: | 02-Jan-2016 |
Category: |
Documents |
Upload: | kermit-wyatt |
View: | 23 times |
Download: | 1 times |
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
Neural Networks Basics
Adapting capability Modeling any complex nonlinear
relationships Lack of explanation: “black box” Cannot take linguistic information
directly
Learning from Data Source
7
Neuro-Fuzzy Function Points Calibration Model Overview
Project Data
Calibratedby Fuzzy Logic
Calibrated by
NeuralNetwork
Validated for better estimation
EstimationEquationISBSG 8
MMRE, PRED
8
Calibrating by Fuzzy Logic
Fuzzy Set Fuzzy Rule
Fuzzy Inference
OutputInput
Fuzzy Logic System
9
Calibrating by Neural Network Learn UFP weight
values by effort the values should reflect
complexity complexity proportioned to
effort 15 UFP inputs as
neurons Back-propagation
algorithm
Y
w1
w15
w2 v1X2
X15
X1
v2
X16
Z
NINLOW
NINAVG
NIXHGH
1
Effort
10
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
11
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
12
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
13
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
14
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.