السنة | 2022-06-29 |
---|---|
التخصص | ماجستير هندسة البرمجيات |
العنوان | combining machine learing with use-case point for enhancing software estimation |
اسم المشرف الرئيسي | احمد محمود عبد بني مصطفى | Ahmad Bani mustafa |
اسم المشرف المشارك | | |
اسم الطالب | نعمه صالح احمد الربابعه | Ne'meh Saleh Ahmed ALRababeh |
Abstract | Software estimation is one of the pivotal activities in software engineering projects. However, predicting software effort is challenging due to the complexity, intangibility, and diversity of software solutions and the associated expertise and applied technologies. This work aims at improving the prediction accuracy of software estimation using Machine Learning (ML) algorithms and is based on Use-Case Points analysis (UCP), which is typically used in object-oriented software estimation. This research involved applying nine regression and classification algorithms: Decision Trees (DT), K-Nearest Neighbor (KNN), Random Forests (RF), Stochastic Gradient Decent (SGD), Support Vector Machine (SVM), Artificial Neural Networks (ANN), Logistic Regression, Naïve Bays and CN2 Rule Induction. These techniques were applied to a historical dataset consisting of 70 projects that are described using 37 attributes, which are related to software requirements, development process, domain application, project technical and environmental factors, and other attributes computed based on UCP analysis. The experimental results in this work showed that in the regression model, the RF model scored 0.86% in R-Squared Error (R2), while the SGD model scored 0.83%. RF, KNN, and DT achieved the best classification results when applied to the three effort levels dataset with a Classification Accuracy (CA) score of 84.28%, 82.85% and 82.85% respectively. DT, KNN, and RF also achieved excellent performance when applied to the five effort levels dataset with a CA score of 85.71%, 77.14% and 72.85% respectively. These evaluation scores were found to be significantly better than those achieved using the UCP method calculations. Keywords: Software Effort Estimation, Machine Learning, Data Mining, Software Engineering, Project Management |
الأبحاث المستلة |