• No results found

3. MLP and Linear Regression Models

4.11 Conclusions

This chapter introduces a novel model based on four sub-models to predict software estimation from use case diagrams. These models include non-linear regression, linear

regression with a logarithmic transformation, Radial Basis Function Neural Network (RBFNN) and General Regression Neural Network (GRNN). The first step of our model was to estimate the size of a project by counting the number of use cases in the use case diagram as well as the number of transactions in both the Main Success Scenario and the Extensions part. Moreover, the project complexity, team productivity and the degree of requirements uncertainty are factors in the effort estimation. We have also proved that the relationship between software effort and size is non-linear because when software size increases, the number of team members required to develop this software increases. When the team becomes larger, communication overhead will incur and this requires additional effort. This concludes that when software size increases, software effort will increase exponentially. Furthermore, when building regression models, we found that one regression equation cannot fit all project datasets of different size ranges. For this purpose, we proposed three non-linear equations as well as three linear equations for software effort estimation that can be used with three different ranges (Small, Medium and Large) of software size. In the non-linear regression, a second degree polynomial equation was proposed for the Small range and two different exponential equations were proposed for the Medium and Large projects respectively. We have noticed that the non- linear relationship is not significant in the Small projects and thus, the linear regression model performed better in this range. However, the non-linear relationship stands out in the Medium and Large projects.

Two neural network models were also proposed to predict software effort. The GRNN model was slightly better than the RBFNN. We also showed that the RBFNN and GRNN

models can be used for software effort prediction as alternatives method to linear and non-linear regression.

We have collected 214 industrial projects from three different sources. Sixty five projects were used to train the regression models; however, 149 projects were used to train the neural network models. All models were evaluated (tested) using 65 projects based on four experiments which include evaluation using all data points (65 projects), evaluation using small data points (25 projects), evaluation using medium-sized data points (21 projects) and evaluation using large data points (19 projects). Our model was also evaluated against two other models (UCP and Schneider) that predict software effort from use cases. We used four different evaluation criteria; MMRE, MMER, PRED and the Mean Error with 95% Confidence Interval (CI). The proposed model gave promising results in comparison with the other two models and especially with the MMER criterion. Our model is limited to projects of maximum effort around 150,000 person-hours. Despite this limitation, we believe that our model can widely be applied since 150,000 person-hours projects are classified as large in the eye of the industry.

References

[1] G. Karner, "Resource Estimation for Objectory Projects," Objective Systems, 1993.

[2] M. Ochodek, J. Nawrocki and K. Kwarciak, "Simplifying effort estimation based on Use Case Points," Information and Software Technology, vol. 53, pp. 200-213, 2011.

[3] D. Baccarini, "The concept of project complexity—a review," Int. J. Project Manage.,

vol. 14, pp. 201-204, 8, 1996.

[4] L. Ireland, "Project complexity: A brief exposure to difficult situations," Asapm, Tech. Rep. PrezSez 10-2007, 2007.

[5] D. D. Galorath and M. W. Evans, Software Sizing, Estimation, and Risk Management.

Boston, MA, USA: Auerbach Publications, 2006.

[6] S. McConnell, Software Estimation: Demystifying the Black Art. Redmond,

Washington: Microsoft, 2006.

[7] B. Boehm, C. Abts, W. Brown and S. Chulani, Software Cost Estimation with

COCOMO II. Upper Saddle River, New Jersey: Addison Wesley, 2000.

[8] E. H. Mamdani, "Application of Fuzzy Logic to Approximate Reasoning Using Linguistic Synthesis," IEEE Transactions on Computers, vol. C-26, pp. 1182-1191, 1977.

[9] Z. Xu and T. M. Khoshgoftaar, "Identification of fuzzy models of software cost estimation," Fuzzy Sets and Systems, vol. 145, pp. 141-163, 2004.

[10] P. D. Allison, Event History Analysis: Regression for Longitudinal Event Data. Sage

Publications, 1984.

[11] A. Legendre, Nouvelles Méthodes Pour La Détermination Des Orbites Des Comètes.

“Sur La Méthode Des Moindres Quarrés”. 1805.

[12] C. F. Gauss, Theoria Motus Corporum Coelestium in Sectionibus Conicis Solem

Ambientum. 1809.

[13] A. B. Nassif, D. Ho and L. F. Capretz, "Regression model for software effort estimation based on the use case point method," in 2011 International Conference on

Computer and Software Modeling, Singapore, 2011, pp. 117-121.

[14] A. B. Nassif, L. F. Capretz and D. Ho, "Estimating software effort based on use case point model using sugeno fuzzy inference system," in 23rd IEEE International

Conference on Tools with Artificial Intelligence, Florida, USA, 2011, pp. 393-398.

[15] W. Humphrey, A Discipline for Software Engineering. Addison Wesley, 1995.

[16] A. C. Cameron and P. K. Trivedi, Regression Analysis of Count Data. Cambridge,

[17] J. M. Zhu, P. Du and T. T. Fu, "Research for RBF Neural Networks Modeling Accuracy of Determining the Basis Function Center Based on Clustering Methods," Advanced Materials Research, vol. 317-319, pp. 1529-1536, 2011.

[18] S. Chen, X. Hong and C. J. Harris, "Orthogonal forward selection for constructing the radial basis function network with tunable nodes," in IEEE International Conference

on Intelligent Computing, 2005, pp. 777-786.

Chapter 5

Related documents