A differential evolution‐based model to estimate the software services development effort

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‐based 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 differential evolution algorithm to estimate the software services development effort. In fact, the differential evolution algorithm was utilized for weighing features in the similarity function of the ABE method. This weighing process could help determining the importance level of the various service features and extracting the best similar historical case. The proposed hybrid model has been evaluated on two real datasets and two artificial datasets. The obtained results were compared with common effort estimation methods. This comparison showed more accuracy, faster convergence, and lower cost of the proposed model. Copyright © 2015 John Wiley & Sons, Ltd.

[1]  John E. Gaffney,et al.  Software Function, Source Lines of Code, and Development Effort Prediction: A Software Science Validation , 1983, IEEE Transactions on Software Engineering.

[2]  Filomena Ferrucci,et al.  Genetic Programming for Effort Estimation: An Analysis of the Impact of Different Fitness Functions , 2010, 2nd International Symposium on Search Based Software Engineering.

[3]  Barbara A. Kitchenham,et al.  Using simulated data sets to compare data analysis techniques used for software cost modelling , 2001, IEE Proc. Softw..

[4]  Martin Shepperd,et al.  Experiences Using Case-Based Reasoning to Predict Software Project Effort , 2000 .

[5]  Building a software cost estimation model based on categorical data , 2001, Proceedings Seventh International Software Metrics Symposium.

[6]  Alain Abran,et al.  Analogy-based software development effort estimation: A systematic mapping and review , 2015, Inf. Softw. Technol..

[7]  Y.F. Li,et al.  A study of genetic algorithm for project selection for analogy based software cost estimation , 2007, 2007 IEEE International Conference on Industrial Engineering and Engineering Management.

[8]  D. Ross Jeffery,et al.  Using public domain metrics to estimate software development effort , 2001, Proceedings Seventh International Software Metrics Symposium.

[9]  T. Capers Jones,et al.  Estimating software costs , 1998 .

[10]  Sérgio Soares,et al.  Hybrid morphological methodology for software development cost estimation , 2012, Expert Syst. Appl..

[11]  Peter I. Cowling,et al.  Fuzzy grey relational analysis for software effort estimation , 2010, Empirical Software Engineering.

[12]  Thong Ngee Goh,et al.  A study of project selection and feature weighting for analogy based software cost estimation , 2009, J. Syst. Softw..

[13]  Lefteris Angelis,et al.  LSEbA: least squares regression and estimation by analogy in a semi-parametric model for software cost estimation , 2010, Empirical Software Engineering.

[14]  Wei-Yin Loh,et al.  Classification and regression trees , 2011, WIREs Data Mining Knowl. Discov..

[15]  Tim Menzies,et al.  oftware effort models should be assessed via leave-one-out validation , 2013 .

[16]  Vachik S. Dave,et al.  Neural network based models for software effort estimation: a review , 2014, Artificial Intelligence Review.

[17]  Sun-Jen Huang,et al.  The adjusted analogy-based software effort estimation based on similarity distances , 2007, J. Syst. Softw..

[18]  Mohammad Azzeh,et al.  Analogy-based effort estimation: a new method to discover set of analogies from dataset characteristics , 2015, IET Softw..

[19]  S. Malathi,et al.  ANALYSIS OF SIZE METRICS AND EFFORT PERFORMANCE CRITERION IN SOFTWARE COST ESTIMATION , 2012 .

[20]  Günther Ruhe,et al.  Analysis of attribute weighting heuristics for analogy-based software effort estimation method AQUA+ , 2008, Empirical Software Engineering.

[21]  Capers Jones,et al.  Estimating software costs : bringing realism to estimating , 2007 .

[22]  Magne Jørgensen,et al.  The effects of request formats on judgment-based effort estimation , 2010, J. Syst. Softw..

[23]  Barry Boehm,et al.  Software Cost Estimation with Cocomo II with Cdrom , 2000 .

[24]  Mohammad Azzeh,et al.  Software effort estimation based on optimized model tree , 2011, Promise '11.

[25]  Jane Cleland-Huang,et al.  A Metrics Suite for Evaluating Flexibility and Complexity in Service Oriented Architectures , 2009, ICSOC Workshops.

[26]  Thong Ngee Goh,et al.  A study of the non-linear adjustment for analogy based software cost estimation , 2009, Empirical Software Engineering.

[27]  Rainer Storn,et al.  Differential Evolution – A Simple and Efficient Heuristic for global Optimization over Continuous Spaces , 1997, J. Glob. Optim..

[28]  Ioannis Stamelos,et al.  Global Optimization of Analogy-Based Software Cost Estimation with Genetic Algorithms , 2011, EANN/AIAI.

[29]  René Thomsen,et al.  A comparative study of differential evolution, particle swarm optimization, and evolutionary algorithms on numerical benchmark problems , 2004, Proceedings of the 2004 Congress on Evolutionary Computation (IEEE Cat. No.04TH8753).

[30]  Stefan Biffl,et al.  Optimal project feature weights in analogy-based cost estimation: improvement and limitations , 2006, IEEE Transactions on Software Engineering.

[31]  Carlos A. Coello Coello,et al.  A comparative study of differential evolution variants for global optimization , 2006, GECCO.

[32]  Moataz A. Ahmed,et al.  Adaptive fuzzy logic-based framework for software development effort prediction , 2005, Inf. Softw. Technol..

[33]  Z. Fang,et al.  A Convergent Differential Evolution Algorithm with Hidden Adaptation Selection for Engineering Optimization , 2014 .

[34]  Ragini Shukla,et al.  Predicting Software Development Effort Using Tuned Artificial Neural Network , 2015 .

[35]  D. Ross Jeffery,et al.  An Empirical Study of Analogy-based Software Effort Estimation , 1999, Empirical Software Engineering.

[36]  Magne Jørgensen,et al.  An analysis of data sets used to train and validate cost prediction systems , 2005, PROMISE '05.

[37]  Bart Baesens,et al.  Data Mining Techniques for Software Effort Estimation: A Comparative Study , 2012, IEEE Transactions on Software Engineering.

[38]  Deepak A. Vidhate Single Agent Learning Algorithms for Decision making in Diagnostic Applications , 2016 .

[39]  Raouf Boutaba,et al.  Assessing Software Service Quality and Trustworthiness at Selection Time , 2010, IEEE Transactions on Software Engineering.

[40]  Tshilidzi Marwala,et al.  Neural Network and Statistical Modeling of Software Development Effort , 2012, SocProS.

[41]  Sun-Jen Huang,et al.  Optimization of analogy weights by genetic algorithm for software effort estimation , 2006, Inf. Softw. Technol..

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

[43]  N. Dalkey,et al.  An Experimental Application of the Delphi Method to the Use of Experts , 1963 .

[44]  Barry W. Boehm,et al.  Achievements and Challenges in Cocomo-Based Software Resource Estimation , 2008, IEEE Software.

[45]  Siti Zaiton Mohd Hashim,et al.  A PSO-based model to increase the accuracy of software development effort estimation , 2012, Software Quality Journal.

[46]  Jianping Li,et al.  Linear combination of multiple case-based reasoning with optimized weight for software effort estimation , 2010, The Journal of Supercomputing.

[47]  Liam O'Brien,et al.  A Framework for Scope, Cost and Effort Estimation for Service Oriented Architecture (SOA) Projects , 2009, 2009 Australian Software Engineering Conference.

[48]  Mohammad Azzeh,et al.  An Optimized Analogy-Based Project Effort Estimation , 2017, ArXiv.

[49]  Chin-Yu Huang,et al.  Comparison of weighted grey relational analysis for software effort estimation , 2011, Software Quality Journal.

[50]  Chidchanok Lursinsap,et al.  Estimating Software Effort with Minimum Features Using Neural Functional Approximation , 2010, 2010 International Conference on Computational Science and Its Applications.

[51]  Qinbao Song,et al.  Predicting software project effort: A grey relational analysis based method , 2011, Expert Syst. Appl..

[52]  Michael M. Richter,et al.  A flexible method for software effort estimation by analogy , 2007, Empirical Software Engineering.

[53]  Janusz Zalewski,et al.  Rough sets: Theoretical aspects of reasoning about data , 1996 .

[54]  Lionel C. Briand,et al.  A replicated assessment and comparison of common software cost modeling techniques , 2000, Proceedings of the 2000 International Conference on Software Engineering. ICSE 2000 the New Millennium.

[55]  Seyyed Mohsen Hashemi,et al.  Software Effort Estimation: A Survey of Well-known Approaches , 2014 .

[56]  Prakash Kumar Hota,et al.  Controller parameters tuning of differential evolution algorithm and its application to load frequency control of multi-source power system , 2014 .

[57]  Ken-ichi Matsumoto,et al.  An Empirical Experiment on Analogy-Based Software Cost Estimation with CUDA Framework , 2013, 2013 22nd Australian Software Engineering Conference.

[58]  Michael A. Cusumano,et al.  Cloud computing and SaaS as new computing platforms , 2010, CACM.

[59]  Martin J. Shepperd,et al.  Estimating Software Project Effort Using Analogies , 1997, IEEE Trans. Software Eng..

[60]  Leandro L. Minku,et al.  An empirical evaluation of ensemble adjustment methods for analogy-based effort estimation , 2015, J. Syst. Softw..

[61]  Abhijit Gosavi,et al.  Convergence Analysis of Parametric Optimization Methods , 2015 .

[62]  Mohammad Teshnehlab,et al.  Streamlining the Global Village Grid Services , 2008 .