Abstract
Software Effort Estimation (SEE) is a procedure to estimate the effort required to develop software. The researchers have been dealing with SEE issues for a long time. Several methods were developed until the formulation of Function Point (FP) and Constructive Cost Estimation (COCOMO) methods. However, these methods were useful only for procedurally developed software, not for modern object-oriented software. On the other hand, using the Use Case Point (UCP) metric acquired from the UML diagrams can be more suitable, as the use case is the fundamental unit of an object-oriented system. An ample amount of research has already been done for UCP prediction using linear regression-based models. However, various nonlinear regression models have not been explored for predicting UCP values from different UCP parameters. Although, some of the researchers have used nonlinear regression models for predicting effort, given the UCP value. Motivated by this, the current work investigates different nonlinear regression models such as a k-nearest neighbor, decision tree, random forest, support vector machine, and multilayer perceptron for UCP prediction. The experimental investigation has been conducted on two publicly available UCP estimation datasets. Further, we compared the performance of nonlinear regression models with the linear regression-based models using different performance measures. The results suggest that the nonlinear regression models perform better than the linear regression-based models.
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
Johnson J (2020) CHAOS 2020: Beyond Infinity, Standish Group
Curcio K, Navarro T, Malucelli A, Reinehr S (2018) Requirements engineering: a systematic mapping study in agile software development. J Syst Softw 139:32–50
Ochodek M, Nawrocki J, Kwarciak K (2011) Simplifying effort estimation based on use case points. Inf Softw Technol 53(3):200–213
Boehm BW (1981) Software Engineering Economics, Prentice-Hall, New York, 197
Albrecht A (1979) Measuring application development productivity. In Proceedings Joint Share, Guide, and IBM Application Development Symposium, pp 83
Kirmani M, Wahid A (2015) Use case point method of software effort estimation: a review, International Journal of Computer Applications 116(15):43–47
Rathee A, Chhabra JK (2019) A multi-objective search-based approach to identify reusable software components. Journal of Computer Languages 52:26–43
Karner G (1993) Resource estimation for objectory projects. Objective Systems SF AB 17:1–9
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 (2017) Improving algorithmic optimization method by spectral clustering. In Software Engineering Trends and Techniques in Intelligent Systems (Advances in Intelligent Systems and Computing) 575:1–10
Wang F, Yang X, Zhu X, Chen L (2009) Extended use case points method for software cost estimation. In 2009 International Conference on Computational Intelligence and Software Engineering, pp 1-5
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
Silhavy R, Silhavy P, Prokopova Z (2017) Analysis and selection of a regression model for the use case points method using a stepwise approach. J Syst Softw 125:1–14
Prokopova Z, Silhavy R, Silhavy P (2017) The effects of clustering to software size estimation for the use case points methods. In Software Engineering Trends and Techniques in Intelligent Systems (Advances in Intelligent Systems and Computing) 575: 479–490
Silhavy R, Silhavy P, Prokopova Z (2018) Evaluating subset selection methods for use case points estimation. Inf Softw Technol 97:1–9
Rahaman M, Mu W, Odqvist J, Hedstrom P (2020) Machine learning to predict the martensite start temperature in steels. Metall and Mater Trans A 50(5):2081–2091
Shobha G, Rangaswamy S (2018) Machine learning. In Handbook of statistics 38:197–228
Nassif AB, et al. (2016) Neural network models for software development effort estimation: a comparative study. Neural Comput & Applic 27(8):2369–2381
Azzeh M, Nassif AB, Martín C L (2021) Empirical analysis on productivity prediction and locality for use case points method. Softw Qual J 29(2):309–336
Satapathy S, Acharya BP, Rath S (2016) Early-stage see using random forest technique based on use case points. IET Softw 10(1):10–17
Azzeh M, Nassif AB, Banitaan S (2018) Comparative analysis of soft computing techniques for predicting software effort-based use case points. IET Softw 12(1):19–29
Kocaguneli E, Menzies T (2013) Software effort models should be assessed via leave-one-out validation. J Syst Softw 86(7):1879–1890
Diev S (2006) Software estimation in the maintenance context. ACM SIGSOFT Software Engineering Notes 31(2):1–8
Azzeh M, Nassif AB, Attili IB (2021) Predicting software effort from use case points: a systematic review. Sci Comput Program 204:102596
Subriadi AP, Ningrum PA (2014) Critical review of the effort rate value in use case point method for estimating software development effort. J Theor Appl Inf Techno 59(3):735–744
Frohnhoff S, Engels G (2008) Revised use case point method effort estimation in development projects for business applications. In 11th International Conference on Quality Engineering in Software Technology (CONQUEST 2008), pp 15–32
Iraji MS, Motameni H (2012) Object-oriented software effort estimate with adaptive neuro-fuzzy use case size point (ANFUSP). Int J Intell Syst 4(6):14–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
Robiolo G, Badano C, Orosco R (2009) Transactions and paths: Two use case-based metrics which improve the early effort estimation. In 2009 3rd International Symposium on Empirical Software Engineering and Measurement, pp 422–425
Badri M, Badri L, Flageol W, Toure F (2017) Source code size prediction using use case metrics: an empirical comparison with use case points. Innov Syst Softw Eng 13(2):143–159
Nassif AB, Ho D, Capretz LF (2013) Towards an early software estimation using log-linear regression and a multilayer perceptron model. J Syst Softw 86(1):144–160
Praynlin E (2021) Using meta-cognitive sequential learning Neuro-fuzzy inference system to estimate software development effort. Journal of Ambient Intelligence and Humanized Computing 12(9):8763–8776
Idri A, Abnane I, Abran A (2018) Evaluating Pred (p) and standardized accuracy criteria in software development effort estimation. Journal of Software: Evolution and Process 30(4):e1925
Langdon W, et al. (2016) Exact mean absolute error of baseline predictor, MARP0. Inf Softw Technol 73:16–24
Nadi A, Moradi H (2019) Increasing the views and reducing the depth in random forest. Expert Systems with Applications 138:112801
Holodinsky JK, Yu AY, Kapral MK, Austin PC (2021) Using random forests to model 90-day home time in people with stroke. BMC Med Res Methodol 21(1):1–12
Zaeimi M, Ghoddosian A (2020) Color harmony algorithm: an art-inspired metaheuristic for mathematical function optimization. Soft Comput 24(16):12027–12066
Patwary MJ, Wang XZ, Yan D (2019) Impact of fuzziness measures on the performance of semi-supervised learning. Int J Fuzzy Syst 21(5):1430–1442
Acknowledgements
The authors are thankful to the Government of India for project funding under the SPARC and VAJRA Scheme. We are also grateful to the reviewers, associate editor, and the editor for their valued feedback and efforts.
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
Additional information
Publisher’s note
Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.
Rights and permissions
About this article
Cite this article
Shukla, S., Kumar, S. Towards non-linear regression-based prediction of use case point (UCP) metric. Appl Intell 53, 10326–10339 (2023). https://doi.org/10.1007/s10489-022-04002-4
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s10489-022-04002-4