Software Development Effort Estimation Using Regression Fuzzy Models
This work addresses software project management by improving effort estimation accuracy, but it is incremental as it builds on existing fuzzy logic methods with a regression-based design.
The research tackled software effort estimation by designing and comparing three fuzzy logic models (Mamdani, Sugeno with constant output, and Sugeno with linear output) using regression analysis, finding that the Sugeno fuzzy inference system with linear output outperformed the others when regression was used to design the model.
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.