Abstract
Early-stage software effort estimation (SEE) is crucial for successfully completing any software project since it helps in project bidding and efficient resource allocation. Most SEE models consider software size as a key metric for estimating effort. Consequently, software size becomes vital for early-stage SEE. Recently, use case points (UCP), derived from use case diagrams, gained popularity among the research community. The researchers used different classical and learning models for UCP prediction. Although learning models performed better than the classical models, it is difficult to conclude which learning model is superior. Ensembling is considered one probable solution when the individual models are not performing well. However, the ensemble models are not explored for UCP prediction till now. Motivated by this, the current work presents an ensemble-based framework for UCP prediction and investigates different ensemble models. We conducted an experimental analysis over two publicly available UCP estimation datasets by implementing different ensemble models. The results show that the ensemble models outperformed the base learners used in this work. Further, we compared the best performing ensemble learner with the existing UCP prediction models in the literature and found an improvement in UCP prediction performance.
Similar content being viewed by others
Data availability
All data generated or analyzed during this study are included in https://doi.org/10.1016/j.infsof.2017.12.009 published article (and its supplementary information files).
References
Ali, A., & Gravino, C. (2019). A systematic literature review of software effort prediction using machine learning methods. Journal of Software: Evolution and Process.
Azzeh, M., Nassif, A., Banitaan, S., & Martín, C. (2018). Ensemble of learning project productivity in software effort based on use case points. In 17th IEEE International Conference on Machine Learning and Applications (ICMLA), pp. 1427-1431.
Azzeh, M., Nassif, A., & Martín C. (2021b). Empirical analysis on productivity prediction and locality for use case points method. Software Quality Journal, 29(2), 309–336.
Azzeh, M., Nassif, A. B., & Attili, I. B. (2021a). Predicting software effort from use case points: A systematic review. Science of Computer Programming, 204, 102596.
Badri, M., Badri, L., Flageol, W., & Toure, F. (2017). Source code size prediction using use case metrics: an empirical comparison with use case points. Innovations in Systems and Software Engineering, 13(2), 143–159.
Braz, M., & Vergilio, S. (2006). Software effort estimation based on use cases. In 30th Annual International Computer Software and Applications Conference (COMPSAC’06), pp. 221-228.
Dietterich, T. G. (2000). Ensemble methods in machine learning. In International workshop on multiple classifier systems, pp. 1-15.
Fan, G., Diao, X., Yu, H., Yeng, K., & Chen, L. (2019). Deep semantic feature learning with embedded static metrics for software defect prediction. In 6th Asia-Pacific Software Engineering Conference, pp. 244-251.
Frohnhoff, S., & Engels, G. (2008). Revised use case point method-effort estimation in development projects for business applications. International Conference on Quality Engineering in Software Technology, pp. 15-32.
Gautam, S. S., & Singh, V. (2018). The state-of-the-art in software development effort estimation. Journal of Software: Evolution and Process, 30(12).
Ho, T. K. (2002). Multiple classifier combination: Lessons and next steps. Series in Machine Perception and Artificial Intelligence, 47, 171–198.
Iraji, M. S., & Motameni, H. (2012). Object-oriented software effort estimate with adaptive neuro-fuzzy use case size point (ANFUSP). International Journal of Intelligent Systems and Applications, 4(6), 14–24.
Johnson, J. (2020). CHAOS 2020: Beyond Infinity, Standish Group.
Karner, G. (1993). Resource estimation for objectory projects. Objective Systems SF AB, 17, 1–9.
Kim, H. C., Pang, S., Je, H. M., Kim, D., & Bang, S. Y. (2003). Constructing support vector machine ensemble. Pattern recognition, 36(12), 2757–2767.
Kirmani, M., & Wahid, A. (2015). Revised use case point (Re-UCP) model for software effort estimation. International Journal of Advanced Computer Science and Applications, 6(3), 65–71.
Kocaguneli, E., & Menzies, T. (2013). Software effort models should be assessed via leave-one-out validation. Journal of Systems and Software, 86(7), 1879–1890.
Krauss, C., Do, X. A., & Huck, N. (2017). Deep neural networks, gradient-boosted trees, random forests: Statistical arbitrage on the S &P. European Journal of Operational Research, 259(2), 689–702.
Langdon, W., et al. (2016). Exact mean absolute error of baseline predictor, MARP0. Information and Software Technology, 73, 16–24.
Lavazza, L., & Robiolo, G. (2010). The role of the measure of functional complexity in effort estimation. In Proceedings of the 6th International Conference on Predictive Models in Software Engineering, pp. 1-10.
Lee, J., Lee, W. T., & Kuo, J. Y. (2011). Fuzzy logic as a basic for use case point estimation. In 2011 IEEE International Conference on Fuzzy Systems (FUZZ-IEEE 2011), pp 2702-2707.
Mendes-Moreira, J., Soares, C., Jorge, A., & Sousa, J. F. D. (2012). Ensemble approaches for regression: A survey. ACM Computing Surveys, 45(1), 1–40.
Mohagheghi, P., Anda, B., & Conradi, R. (2005). Effort estimation of use cases for incremental largescale software development. In Proceedings of 27th International Conference on Software Engineering, pp. 303-311.
Nassif, A. B., Capretz, L. F., & Ho, D. (2011). Estimating software effort based on use case point model using Sugeno fuzzy inference system. In 2011 IEEE 23rd International Conference on Tools with Artificial Intelligence, pp 393-398.
Nassif, A. B., Ho, D., & Capretz, L. F. (2013). Towards an early software estimation using log-linear regression and a multilayer perceptron model. Journal of Systems and Software, 86(1), 144–160.
Neill, C., & Laplante, P. (2003). Requirements engineering: the state of the practice. IEEE Software, 20(6), 40–45.
Nhung, H. L., Hoc, H. T., & Hai, V. V. (2019). A review of use case-based development effort estimation methods in the system development context. In Proceedings of the Computational Methods in Systems and Software, pp. 484-499.
Ochodek, M., Nawrocki, J., & Kwarciak, K. (2011). Simplifying effort estimation based on use case points. Information and Software Technology, 53(3), 200–213.
Pham, H., & Olafsson, S. (2019). Bagged ensembles with tunable parameters. Computational Intelligence, 35(1), 184–203.
Prokopova, Z., Silhavy, R., & Silhavy, P. (2017). The effects of clustering to software size estimation for the use case points methods. In Computer Science On-line Conference, pp. 479-490.
Rathore, S. S., & Kumar, S. (2017). Linear and non-linear heterogeneous ensemble methods to predict the number of faults in software systems. Knowledge-Based Systems, 119, 232–256.
Rathore, S. S., & Kumar, S. (2021). An empirical study of ensemble techniques for software fault prediction. Applied Intelligence, 51(6), 3615–3644.
Robiolo, G., Badano, C., & Orosco, R. (2009). Transactions and paths: Two use case-based metrics which improve the early effort estimation. International Symposium on Empirical Software Engineering and Measurement pp. 422- 425.
Sagi, O., & Rokach, L. (2018). Ensemble learning: A survey. Wiley Interdisciplinary Reviews: Data Mining and Knowledge Discovery, 8(4), e1249.
Seo, Y., & Bae, D. (2013). On the value of outlier elimination on software effort estimation research. Empirical Software Engineering, 18(4), 659–698.
Sewell, M. (2008). Ensemble learning. RN, 11(02), 1–34.
Shepperd, M., & MacDonell, S. (2012). Evaluating prediction systems in software project estimation. Information and Software Technology, 54(8), 820–827.
Silhavy, R., Silhavy, P., & Prokopova, Z. (2015). Algorithmic optimization method for improving use case points estimation. PloS One, 10(11), e0141887.
Silhavy, R., Silhavy, P., & Prokopova, Z. (2017a). Improving algorithmic optimization method by spectral clustering. In Computer Science On-line Conference, pp. 1-10.
Silhavy, R., Silhavy, P., & Prokopova, Z. (2017b). Analysis and selection of a regression model for the use case points method using a stepwise approach. Journal of Systems and Software, 125, 1–14.
Silhavy, R., Silhavy, P., & Prokopova, Z. (2018). Evaluating subset selection methods for use case points estimation. Information and Software Technology, 97, 1–9.
Subriadi, A. P., & Ningrum, P. A. (2014). Critical review of the effort rate value in use case point method for estimating software development effort. Journal of Theoretical and Applied Information Technology, 59(3), 735–744.
Verner, J., Sampson, J., & Cerpa, N. (2018). What factors lead to software project failure?. In: Proceedings of Second International Conference on Research Challenges in Information Science, pp. 71–80.
Wang, F., Yang, X., Zhu, X., & Chen, L. (2009). Extended use case points method for software cost estimation. International Conference on Computational Intelligence and Software Engineering, pp. 1-5.
Wang, G., Sun, J., Ma, J., Xu, K., & Gu, J. (2014). Sentiment classification: The contribution of ensemble learning. Decision support systems, 57, 77–93.
Willmott, C. J., & Matsuura, K. (2005). Advantages of the mean absolute error (MAE) over the root mean square error (RMSE) in assessing average model performance. Climate Research, 30(1), 79–82.
Acknowledgements
The authors are grateful to the reviewers, associate editor, and the editor for their valued feedback and efforts.
Funding
This work received project funding under the VAJRA Scheme from the Government of India.
Author information
Authors and Affiliations
Contributions
The contribution of both authors is equal in the manuscript development. Suyash Shukla: conceptualization, methodology, and initial draft preparation. Sandeep Kumar: writing review and editing, funding acquisition, supervision, and validation.
Corresponding author
Ethics declarations
Conflict of interest
The authors declare no competing interests.
Additional information
Publisher’s Note
Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.
Rights and permissions
Springer Nature or its licensor (e.g. a society or other partner) holds exclusive rights to this article under a publishing agreement with the author(s) or other rightsholder(s); author self-archiving of the accepted manuscript version of this article is solely governed by the terms of such publishing agreement and applicable law.
About this article
Cite this article
Shukla, S., Kumar, S. Towards ensemble-based use case point prediction. Software Qual J 31, 843–864 (2023). https://doi.org/10.1007/s11219-022-09612-2
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s11219-022-09612-2