A hybrid model for estimating software project effort from Use Case Points

Display Omitted Project productivity is key factor in estimating effort from UCP.Project productivity must be flexible and adjustable when historical data is available.Environmental factors are good indicators for predicting productivity.Class decomposition is a good method to produce fine-grained productivity labels.Using fixed productivity ratios is not a good practice from managerial perspective. Early software effort estimation is a hallmark of successful software project management. Building a reliable effort estimation model usually requires historical data. Unfortunately, since the information available at early stages of software development is scarce, it is recommended to use software size metrics as key cost factor of effort estimation. Use Case Points (UCP) is a prominent size measure designed mainly for object-oriented projects. Nevertheless, there are no established models that can translate UCP into its corresponding effort; therefore, most models use productivity as a second cost driver. The productivity in those models is usually guessed by experts and does not depend on historical data, which makes it subject to uncertainty. Thus, these models were not well examined using a large number of historical data. In this paper, we designed a hybrid model that consists of classification and prediction stages using a support vector machine and radial basis neural networks. The proposed model was constructed over a large number of observations collected from industrial and student projects. The proposed model was compared against previous UCP prediction models. The validation and empirical results demonstrated that the proposed model significantly surpasses these models on all datasets. The main conclusion is that the environmental factors of UCP can be used to classify and estimate productivity.

[1]  Emilia Mendes,et al.  Software productivity measurement using multiple size measures , 2004, IEEE Transactions on Software Engineering.

[2]  Danny Ho,et al.  Neural network models for software development effort estimation: a comparative study , 2015, Neural Computing and Applications.

[3]  Stephen G. MacDonell,et al.  Evaluating prediction systems in software project estimation , 2012, Inf. Softw. Technol..

[4]  Danny Ho,et al.  Towards an early software estimation using log-linear regression and a multilayer perceptron model , 2013, J. Syst. Softw..

[5]  Danny Ho,et al.  Enhancing Use Case Points Estimation Method Using Soft Computing Techniques , 2010, ArXiv.

[6]  D. Broomhead,et al.  Radial Basis Functions, Multi-Variable Functional Interpolation and Adaptive Networks , 1988 .

[7]  Danny Ho,et al.  Software Effort Estimation in the Early Stages of the Software Life Cycle Using a Cascade Correlation Neural Network Model , 2012, 2012 13th ACIS International Conference on Software Engineering, Artificial Intelligence, Networking and Parallel/Distributed Computing.

[8]  Stephan Frohnhoff,et al.  Revised Use Case Point Method-Effort Estimation in Development Projects for Business Applications , 2008 .

[9]  Elena García Barriocanal,et al.  Empirical findings on team size and productivity in software development , 2012, J. Syst. Softw..

[10]  Magne Jørgensen,et al.  Estimating Software Development Effort Based on Use Cases-Experiences from Industry , 2001, UML.

[11]  Hae-Sang Park,et al.  A simple and fast algorithm for K-medoids clustering , 2009, Expert Syst. Appl..

[12]  Gabriela Robiolo,et al.  Employing use cases to early estimate effort with simpler metrics , 2007, Innovations in Systems and Software Engineering.

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

[14]  Gabriela Robiolo,et al.  Transactions and paths: Two use case based metrics which improve the early effort estimation , 2009, ESEM 2009.

[15]  Danny Ho,et al.  A Treeboost Model for Software Effort Estimation Based on Use Case Points , 2012, 2012 11th International Conference on Machine Learning and Applications.

[16]  Miroslaw Ochodek,et al.  Improving the reliability of transaction identification in use cases , 2011, Inf. Softw. Technol..

[17]  Bente Anda,et al.  Improving Estimation Practices by Applying Use Case Models , 2002, PROFES.

[18]  Gabriela Robiolo,et al.  Transactions and paths: Two use case based metrics which improve the early effort estimation , 2009, 2009 3rd International Symposium on Empirical Software Engineering and Measurement.

[19]  Reidar Conradi,et al.  Effort estimation of use cases for incremental large-scale software development , 2005, ICSE.

[20]  Mohammad Azzeh,et al.  Software cost estimation based on use case points for global software development , 2013, 2013 5th International Conference on Computer Science and Information Technology.

[21]  Bernhard E. Boser,et al.  A training algorithm for optimal margin classifiers , 1992, COLT '92.

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

[23]  Gustav Karner,et al.  Resource Estimation for Objectory Projects , 2010 .

[24]  A. Scott,et al.  A Cluster Analysis Method for Grouping Means in the Analysis of Variance , 1974 .

[25]  Stephen G. MacDonell,et al.  What accuracy statistics really measure , 2001, IEE Proc. Softw..

[26]  Miroslaw Ochodek,et al.  Simplifying effort estimation based on Use Case Points , 2011, Inf. Softw. Technol..

[27]  Geri Schneider,et al.  Applying use cases (2nd ed.): a practical guide , 2001 .

[28]  Silvia Regina Vergilio,et al.  Using fuzzy theory for effort estimation of object-oriented software , 2004, 16th IEEE International Conference on Tools with Artificial Intelligence.

[29]  Chih-Jen Lin,et al.  LIBSVM: A library for support vector machines , 2011, TIST.

[30]  Jonathan Lee,et al.  Fuzzy logic as a basic for use case point estimation , 2011, 2011 IEEE International Conference on Fuzzy Systems (FUZZ-IEEE 2011).

[31]  Geri Schneider,et al.  Applying Use Cases: A Practical Guide , 1998 .

[32]  Sheng Chen,et al.  Orthogonal Forward Selection for Constructing the Radial Basis Function Network with Tunable Nodes , 2005, ICIC.

[33]  Danny Ho,et al.  Estimating Software Effort Based on Use Case Point Model Using Sugeno Fuzzy Inference System , 2011, 2011 IEEE 23rd International Conference on Tools with Artificial Intelligence.

[34]  Dennis Brandão,et al.  Task effort fuzzy estimator for software development , 2015 .

[35]  Danny Ho,et al.  Estimating Software Effort Using an ANN Model Based on Use Case Points , 2012, 2012 11th International Conference on Machine Learning and Applications.

[36]  S. Ajitha,et al.  Neural Network model for software size estimation using Use Case Point approach , 2010, 2010 5th International Conference on Industrial and Information Systems.