A Novel Model for Software Services Development Effort Estimation

Document Type : Research Paper

Authors

uni

Abstract

Accurate estimation of software service development effort is a great challenge both in industry and for academia. The concept of effort is an important and effective parameter in process development and software service management. The reliable estimation of effort helps the project managers to allocate the resources better and manage cost and time so that the project will be finished in the determined time and budget. One of the most popular effort estimation methods is analogy base estimation (ABE) to compare a service with similar historical cases. Unfortunately ABE is not capable of generating accurate results unless determining weights for service features. Therefore, this paper aims to make an efficient and reliable model through combining ABE method and DE algorithm to estimate the software services development effort. In fact, the DE algorithm was utilized for weighting features in the similarity function of the ABE method. The proposed hybrid model has been evaluated on a real data set and two artificial datasets. The obtained results were compared with common effort estimation methods. Obtained values indicate 28, 34 and 19 percentage improvement on the three datasets ISBSG, Moderate, and Severe, respectively.

Keywords


[1] Jorgensen, M., Shepperd, M. (2007). “A systematic review of software development cost estimation studies”. IEEE Transactions on Software Engineering, Vol. 33, No. 1, pp. 33-53.
[2] Bardsiri, V.K., et al. (2013). “LMES: A localized multi-estimator model to estimate software development effort”. Engineering Applications of Artificial Intelligence, Vol. 26, No. 10, pp. 2624-2640.
[3] Limam, N., Boutaba, R. (2010). “Assessing software service quality and trustworthiness at selection time”. IEEE Transactions on Software Engineering, Vol. 36, No. 4, pp. 559-574.
[4] Boehm, B.W., R. Madachy, and B. Steece (2000). “Software cost estimation with Cocomo II with Cdrom”. Prentice Hall PTR.
[5] Boehm, B.W. and R. Valerdi (2008). “Achievements and challenges in cocomo-based software resource estimation”. Software, IEEE, Vol. 25, No. 5, pp. 74-83.
[6] Dalkey, N. and O. Helmer (1963). “An experimental application of the Delphi method to the use of experts”. Management science, Vol. 9, No. 3, pp. 458-467.
[7] Azzeh, M. (2012). “A replicated assessment and comparison of adaptation techniques for analogy-based effort estimation”. Empirical Software Engineering, Vol. 17, No. 1-2, pp. 90-127.
[8] Azzeh, M., Y. Elsheikh, and M. Alseid (2014). “An Optimized Analogy-Based Project Effort Estimation”. International Journal of Advanced Computer Science & Applications, Vol. 5, No. 4, pp. 6-11.
[9] Breiman, L., et al. (1984). “Classification and regression trees”. CRC press.
[10] Dejaeger, K., et al. (2012). “Data mining techniques for software effort estimation: A comparative study”. IEEE Transactions on Software Engineering, Vol. 38, No. 2, pp. 375-397.
[11] Bardsiri, A.K. and S.M. Hashemi (2014). “Software Effort Estimation: A Survey of Well-known Approaches”. International Journal of Computer Science Engineering, Vol. 3, No. 1, pp. 46-50.
[12] Jones, C. (2007). “Estimating software costs: bringing realism to estimating”. McGraw-Hill Professional.
[13] Boehm, B.W. (1981). “Software engineering economics”.  Prentice-hall Englewood Cliffs (NJ).
[14] Albrecht, A.J. and Gaffney, J.E. (1983). “Software function, source lines of code, and development effort prediction: a software science validation”. IEEE Transactions on Software Engineering, Vol. 9, No. 6, pp. 639-648.
[15] Andreou, A.S. and Papatheocharous, E. (2008). “Software Cost Estimation using Fuzzy Decision Trees”. 23rd IEEE/ACM International Conference on Automated Software Engineering (ASE '08). IEEE Computer Society, USA, pp. 371-374.
[16] Shepperd, M. and C. Schofield (1997). “Estimating software project effort using analogies”. IEEE Transactions on Software Engineering, Vol. 23, No. 11, pp. 736-743.
[17] Bardsiri, V.K., et al. (2013). “A PSO-based model to increase the accuracy of software development effort estimation”. Software Quality Journal, Vol. 21, No. 3, pp. 501-526.
[18] Azzeh, M. (2011). “Software effort estimation based on optimized model tree”. 7th International Conference on Predictive Models in Software Engineering, Canada, ACM, pp. 1-8.
[19] Shukla, R., M. Shukla, and T. Marwala (2014). “Neural network and statistical modeling of software development effort”. Second International Conference on Soft Computing for Problem Solving (SocProS), Springer, pp. 189-198.
[20] Azzeh, M., D. Neagu, and P.I. Cowling (2010). “Fuzzy grey relational analysis for software effort estimation”. Empirical Software Engineering, Vol. 15, No. 1, pp. 60-90.
[21] Angelis, L. and I. Stamelos (2000). “A simulation tool for efficient analogy based cost estimation”. Empirical software engineering, Vol. 5, No. 1, pp. 35-68.
[22] Chiu, N.-H. and S.-J. Huang (2007). “The adjusted analogy-based software effort estimation based on similarity distances”. Journal of Systems and Software, Vol. 80, No. 4, pp. 628-640.
[23] Hsu, C.-J. and C.-Y. Huang (2011). “Comparison of weighted grey relational analysis for software effort estimation”. Software Quality Journal, Vol. 19, No. 1, pp. 165-200.
[24] Li, Y., M. Xie, and T. Goh (2007). “A study of genetic algorithm for project selection for analogy based software cost estimation”. International Conference on Industrial Engineering and Engineering Management, Singapore, IEEE, pp. 1256-1260.
[25] Li, Y.-F., M. Xie, and T. Goh (2009). “A study of the non-linear adjustment for analogy based software cost estimation”. Empirical Software Engineering, Vol. 14, No. 6, pp. 603-643.
[26] Walkerden, F. and R. Jeffery (1999). “An empirical study of analogy-based software effort estimation”. Empirical software engineering, Vol. 4, No. 2, pp. 135-158.
[27] Wu, D., J. Li, and Y. Liang (2013). “Linear combination of multiple case-based reasoning with optimized weight for software effort estimation”. The Journal of Supercomputing, Vol. 64, No. 3, pp. 898-918.
[28] Ferrucci, F., et al. (2010). “Genetic programming for effort estimation: an analysis of the impact of different fitness functions”. Second International Symposium on Search Based Software Engineering (SSBSE), Italy, IEEE, pp. 89-98.
[29] Huang, S.-J. and N.-H. Chiu (2006). “Optimization of analogy weights by genetic algorithm for software effort estimation”. Information and software technology, Vol. 48, No. 11, pp. 1034-1045.
[30] Li, J., et al. (2007). “A flexible method for software effort estimation by analogy”. Empirical Software Engineering, Vol. 12, No. 1, pp. 65-106.
[31] Storn, R. and K. Price (1997). “Differential evolution–a simple and efficient heuristic for global optimization over continuous spaces”. Journal of global optimization, Vol. 11, No. 4, pp. 341-359.
[32] Mohanty, B., S. Panda, and P. Hota (2014). “Controller parameters tuning of differential evolution algorithm and its application to load frequency control of multi-source power system”. International Journal of Electrical Power & Energy Systems, Vol. 54, pp. 77-85.
[33] Hu, Z., et al. (2014). “A convergent differential evolution algorithm with hidden adaptation selection for engineering optimization”. Mathematical Problems in Engineering, Vol. 2014, pp. 1-18.
[34] Nassif, A.B., D. Ho, and L.F. Capretz (2013). “Towards an early software estimation using log-linear regression and a multilayer perceptron model”. Journal of Systems and Software, Vol. 86, No. 1, pp. 144-160.
[35] Kocaguneli, E. and T. Menzies (2013). “Software effort models should be assessed via leave-one-out validation”. Journal of Systems and Software, Vol. 86, No. 7, pp. 1879-1890.
[36] Mair, C., M. Shepperd, and M. Jørgensen (2005). “An analysis of data sets used to train and validate cost prediction systems”. ACM SIGSOFT Software Engineering Notes, ACMpp, pp. 1-6.
[37] ISBSG (2011). “International Software Benchmarking standard Group”, www.isbsg.org.
[38] Pickard, L., B. Kitchenham, and S. Linkman (2001). “Using simulated data sets to compare data analysis techniques used for software cost modelling”. IEEE Proceedings-Software, Vol. 148, No. 6, pp. 165-174.
[39] Ahmed, M.A., M. Omolade Saliu, and J. AlGhamdi (2005). “Adaptive fuzzy logic-based framework for software development effort prediction”. Information and Software Technology, Vol. 47, No. 1, pp. 31-48.
[40] Li, Y.-F., M. Xie, and T.N. Goh (2009). “A study of project selection and feature weighting for analogy based software cost estimation”. Journal of Systems and Software, Vol. 82, No. 2, pp. 241-252.