Title: Calibrating Function Points Using NeuroFuzzy Technique
1Calibrating Function Points Using Neuro-Fuzzy
Technique
Luiz F Capretz
Danny Ho
Vivian Xia
IT Department HSBC Bank Vancouver, BC
Canada Vivian_xia_at_hsbc.ca
Department of Electrical and Computer
Engineering University of Western
Ontario London, Ontario, Canada lcapretz_at_eng.uwo.c
a
NFA Estimation Inc. London, Ontario,
Canada danny_at_nfa-estimation.com
2Roadmap
- Concepts of Calibration
- Neuro-Fuzzy Function Points Calibration Model
- Validation Result
- Conclusions
3Calibration Concept
- Internal Logical File (ILF) Complexity Matrix
DET, RET --- Component Associated Files
- Same methodology for all FP 5 components
External Input, External Output, External
Inquiry Internal Logical File, External
Interface File
4Calibration Concept Contd
- e.g. One project has 3 Internal Logical Files
(ILF)
- Calibrate complexity degree by fully utilizing
the number of component associated files - Calibrate to fit specific application
5Calibration Concept Contd
- Unadjusted Function Points Weight Values
- UFP weight values are determined in 1979 based on
- Albrechts study of 22 IBM Data Processing
projects
- .
- Calibrate UFP weight values to reflect global
software industry trend
6Neural Networks Basics
Learning from Data Source
- Adapting capability
- Modeling any complex nonlinear relationships
- Lack of explanation black box
- Cannot take linguistic information directly
7Neuro-Fuzzy Function Points Calibration Model
Overview
Estimation Equation
ISBSG 8
Project Data
Validated for better estimation
Calibrated by Neural Network
MMRE, PRED
Calibrated by Fuzzy Logic
8Calibrating by Fuzzy Logic
9Calibrating 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
10Data 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
11Validation 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
12Validation Results (MMRE)
- MMRE
- Mean Magnitude of Relative Error
- Criteria to assess estimation error
- The lower the better
13Validation Results (PRED)
- PRED
- Prediction at level p
- Criteria to assess estimation ability
- The higher the better
14Conclusions
- 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.