Software Development Effort Estimation Using Regression Fuzzy Models.

Journal: Computational intelligence and neuroscience
Published Date:

Abstract

Software effort estimation plays a critical role in project management. Erroneous results may lead to overestimating or underestimating effort, which can have catastrophic consequences on project resources. Machine-learning techniques are increasingly popular in the field. Fuzzy logic models, in particular, are widely used to deal with imprecise and inaccurate data. The main goal of this research was to design and compare three different fuzzy logic models for predicting software estimation effort: Mamdani, Sugeno with constant output, and Sugeno with linear output. To assist in the design of the fuzzy logic models, we conducted regression analysis, an approach we call "regression fuzzy logic." State-of-the-art and unbiased performance evaluation criteria such as standardized accuracy, effect size, and mean balanced relative error were used to evaluate the models, as well as statistical tests. Models were trained and tested using industrial projects from the International Software Benchmarking Standards Group (ISBSG) dataset. Results showed that data heteroscedasticity affected model performance. Fuzzy logic models were found to be very sensitive to outliers. We concluded that when regression analysis was used to design the model, the Sugeno fuzzy inference system with linear output outperformed the other models.

Authors

  • Ali Bou Nassif
    Department of Electrical and Computer Engineering, University of Sharjah, P.O. Box 27272, Sharjah, UAE.
  • Mohammad Azzeh
    Department of Software Engineering, Applied Science Private University, P.O. Box 166, Amman, Jordan.
  • Ali Idri
    Software Project Management Research Team, ENSIAS, Mohammed V University in Rabat, Morocco.
  • Alain Abran
    Department of Software Engineering, École de Technologie Supérieure, Montréal, Quebec, Canada.