1 Calibrating Function Points Using Neuro-Fuzzy Technique Vivian Xia NFA Estimation Inc. London, Ontario, Canada Danny Ho IT Department HSBC Bank Vancouver, BC Canada Department of Electrical and Computer Engineering University of Western Ontario London, 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) Low Average 2-5LowAverageHigh 6+AverageHigh 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 AILF BILF C DET RET333 Original ClassificationAverage Low Original Weight Value10 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 ComponentLowAverageHigh External Input 34 6 External Output 45 7 Internal Logical File External Interface File External Inquiry 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 Neural Network Validated for better estimation Estimation Equation ISBSG 8 MMRE, PRED
7 Calibrating by Fuzzy Logic Fuzzy SetFuzzy Rule Fuzzy Inference Output Input 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 neurons Back-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.1Exp.2Exp.3Exp.4Exp.5 MMRE Original MMRE Neuro-Fuzzy IMPRV % 20% 19%25%26%22% Avg. IMPRV % 22% MMRE: Mean Magnitude of Relative Error Criteria to assess estimation error The lower the better
12 Validation Results (PRED) PRED: Prediction at level p Criteria to assess estimation ability The higher the better
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.