Improving estimation accuracy of the COCOMO II using an adaptive fuzzy logic model

Software development time and cost estimation are the process of estimating the most realistic use of time and cost required for developing a software. It is one of the biggest challenges in the area of software engineering and project management, in the last decades. The software estimates are difficult to obtain due to incomplete software information is available in the early phase of software development process. Insufficient software information causes inaccuracy in software attributes. Thus, the vagueness and uncertainty of the software attributes is the main reason of inaccuracy of software estimates. Software cost estimation models such as regression model, expert judgment, SLIM, and COCOMO require accurate software attributes and long term estimation process, which are not completely achievable in early phase of software development process. Soft computing techniques such as fuzzy logic can reduce the vagueness and uncertainty of software attributes. Therefore, it may consider as alternative to decrease the inaccuracy of software estimates. This research aims to utilise an adaptive fuzzy logic model to improve the accuracy of software time and cost estimation. Using advantages of fuzzy set and fuzzy logic can produce accurate software attributes which result in precise software estimates. The Two-Dimension Gaussian Membership Function (2-D GMF) was used in the fuzzy model to make software attributes smoother in terms of the range of values. The COCOMO I, NASA98 data sets; and four project data from a software company in Malaysia were used in the evaluation of the proposed Fuzzy Logic COCOMO II (FL-COCOMO II). The evaluation of the obtained results, using Mean of Magnitude of Relative Error (MMRE) and PRED(25%) evaluation techniques, showed that the FL-COCOMO II produced the MMRE less than the original COCOMO and the value of PRED(25%) in the Fuzzy-COCOMO II is higher than the original COCOMO. Furthermore, the FL-COCOMO II showed 8.03% improvement in terms of estimation accuracy using MMRE when compared with the original COCOMO. Using advantages of fuzzy logic such as accurate estimation; adaption; understandability, and etc., can improve the accuracy of software estimates.

[1]  Hiok Chai Quek,et al.  FITSK: online local learning with generic fuzzy input Takagi-Sugeno-Kang fuzzy framework for nonlinear system estimation , 2006, IEEE Transactions on Systems, Man, and Cybernetics, Part B (Cybernetics).

[2]  Kai Keng Ang,et al.  RSPOP: Rough SetBased Pseudo Outer-Product Fuzzy Rule Identification Algorithm , 2005, Neural Computation.

[3]  R. Agarwal,et al.  Estimating software projects , 2001, SOEN.

[4]  Douglas Fisher,et al.  Machine Learning Approaches to Estimating Software Development Effort , 1995, IEEE Trans. Software Eng..

[5]  Barry W. Boehm,et al.  Software Engineering Economics , 1993, IEEE Transactions on Software Engineering.

[6]  Lotfi A. Zadeh,et al.  Fuzzy logic, neural networks, and soft computing , 1993, CACM.

[7]  Nikhil R. Pal,et al.  Integrated feature analysis and fuzzy rule-based system identification in a neuro-fuzzy paradigm , 2001, IEEE Trans. Syst. Man Cybern. Part B.

[8]  Satish Kumar,et al.  Fuzzy systems and neural networks in software engineering project management , 1994, Applied Intelligence.

[9]  Jing Ren,et al.  A soft computing framework for software effort estimation , 2006, Soft Comput..

[10]  Barry W. Boehm,et al.  Cost models for future software life cycle processes: COCOMO 2.0 , 1995, Ann. Softw. Eng..

[11]  Magne Jørgensen,et al.  Practical Guidelines for Expert-Judgment-Based Software Effort Estimation , 2005, IEEE Softw..

[12]  Michio Sugeno,et al.  Fuzzy identification of systems and its applications to modeling and control , 1985, IEEE Transactions on Systems, Man, and Cybernetics.

[13]  Khaled El Emam,et al.  Software Cost Estimation with Incomplete Data , 2001, IEEE Trans. Software Eng..

[14]  Isabelle Guyon,et al.  An Introduction to Variable and Feature Selection , 2003, J. Mach. Learn. Res..

[15]  Alain Abran,et al.  Software cost estimation by fuzzy analogy for web hypermedia applications , 2006 .

[16]  M. Sugeno,et al.  A review and comparison of six reasoning methods , 1993 .

[17]  Z. Fei,et al.  f-COCOMO: fuzzy constructive cost model in software engineering , 1992, [1992 Proceedings] IEEE International Conference on Fuzzy Systems.

[18]  Hiok Chai Quek,et al.  GenSoFNN: a generic self-organizing fuzzy neural network , 2002, IEEE Trans. Neural Networks.

[19]  Michio Sugeno,et al.  A fuzzy-logic-based approach to qualitative modeling , 1993, IEEE Trans. Fuzzy Syst..

[20]  Kjetil Moløkken-Østvold,et al.  A review of software surveys on software effort estimation , 2003, 2003 International Symposium on Empirical Software Engineering, 2003. ISESE 2003. Proceedings..

[21]  P. W. Garratt,et al.  A Neurofuzzy cost estimator , 1999 .

[22]  J. Ryder,et al.  Fuzzy modeling of software effort prediction , 1998, 1998 IEEE Information Technology Conference, Information Environment for the Future (Cat. No.98EX228).

[23]  M. Sugeno,et al.  Structure identification of fuzzy model , 1988 .

[24]  Nikhil R. Pal,et al.  Soft computing for feature analysis , 1999, Fuzzy Sets Syst..

[25]  Feng Liu,et al.  A Novel Generic Hebbian Ordering-Based Fuzzy Rule Base Reduction Approach to Mamdani Neuro-Fuzzy System , 2007, Neural Computation.

[26]  E. H. Mamdani,et al.  Application of Fuzzy Logic to Approximate Reasoning Using Linguistic Synthesis , 1976, IEEE Transactions on Computers.

[27]  Nikola K. Kasabov,et al.  Evolving fuzzy neural networks for supervised/unsupervised online knowledge-based learning , 2001, IEEE Trans. Syst. Man Cybern. Part B.

[28]  Stephen G. MacDonell,et al.  A Comparison of Modeling Techniques for Software Development Effort Prediction , 1997, ICONIP.

[29]  Barry W. Boehm,et al.  Software development cost estimation approaches — A survey , 2000, Ann. Softw. Eng..

[30]  Nikola K. Kasabov,et al.  DENFIS: dynamic evolving neural-fuzzy inference system and its application for time-series prediction , 2002, IEEE Trans. Fuzzy Syst..

[31]  Chin-Teng Lin,et al.  An ART-based fuzzy adaptive learning control network , 1997, IEEE Trans. Fuzzy Syst..

[32]  L. Glass,et al.  Oscillation and chaos in physiological control systems. , 1977, Science.

[33]  Ruowei Zhou,et al.  The POP learning algorithms: reducing work in identifying fuzzy rules , 2001, Neural Networks.

[34]  Jyh-Shing Roger Jang,et al.  ANFIS: adaptive-network-based fuzzy inference system , 1993, IEEE Trans. Syst. Man Cybern..

[35]  Cuntai Guan,et al.  SaFIN: A Self-Adaptive Fuzzy Inference Network , 2011, IEEE Transactions on Neural Networks.

[36]  Chris F. Kemerer,et al.  An empirical validation of software cost estimation models , 1987, CACM.

[37]  Lawrence H. Putnam,et al.  A General Empirical Solution to the Macro Software Sizing and Estimating Problem , 1978, IEEE Transactions on Software Engineering.

[38]  Ruowei Zhou,et al.  POPFNN: A Pseudo Outer-product Based Fuzzy Neural Network , 1996, Neural Networks.