Journal of Education and Science (ISSN 1812-125X), Vol: 30, No: 5, 2021 (80-92)
80
Software Development Effort Estimation Techniques: A Survey
Farah B. Ahmad
1*
, Laheeb M. Ibrahim
2
1*,2
Department of Software Engineering, College of Computer Sciences & Mathematics, University
of Mosul, Mosul, Iraq
E-mail:
1*
farah.20csp11@student.uomosul.edu.iq,
2
laheeb_alzubaidy321966@uomosul.edu.iq
(Received November 24, 2021; Accepted January 17, 2022; Available online March 01, 2022)
DOI: 10.33899/edusj.2021.129868.1156, © 2022, College of Education for Pure Science, University of Mosul.
This is an open access article under the CC BY 4.0 license ( http://creativecommons.org/licenses/by/4.0/)
ABSTRACT:
Software Effort Estimation (SEE) is used in accurately predicting the effort in terms of (person–hours
or person–months). Although there are many models, Software Effort Estimation (SEE) is one of the
most difficult tasks for successful software development. Several SEE models have been proposed.
However, software effort overestimation or underestimation can lead to failure or cancellation of a
project.
Hence, the main target of this research is to find a performance model for estimating the software effort
through conduction empirical comparisons using various Machine Learning (ML) algorithms. Various
ML techniques have been used with seven datasets used for Effort Estimation. These datasets are
China, Albrecht, Maxwell, Desharnais, Kemerer, Cocomo81, Kitchenham, to determine the best
performance for Software Development Effort Estimation. Root Mean Square Error (RMSE), Mean
Absolute Error (MAE), and R-Squared were the evaluation metrics considered. Results and
experiments with various ML algorithms for software effort estimation have shown that the LASSO
algorithm with China dataset produced the best performance compared to the other algorithms.
Keywords: Software Effort Estimation (SEE); Machine Learning (ML); Random Forest; Decision
Tree; Support Vector Machines (SVM).
تقديرقنيات تلبرمجيات: جهود تطوير ا دراسه
سل احمد فرح با
1 *
، د ابراهيمحم لهيب م
2
، العراقموصل، الموصلمعة الاضيات، جاب والريلحاسوت، كلية علوم البرمجيا قسم ا
ملخص: ال
لبرمجيات يتم استخدام تقدير جهد ا(Software Effort Estimation (SEE)) ل ل تنبؤ وبشكلعدد( يق بالجهد من حيث دق شهور
)عملت المل أو عدد ساعا الع ، و على من وجود العديد من الرغملبرمجيا فإن تقدير جهد النماذج ا تهام لتطوير يعد من أصعب الم
نماذج اح العديد منجحة. حيث تم اقترلنات البرمجيا البرمجيات تقدير جهد ا ومع ذلك ، فإن امج أو النقص تقدير جهد البر اط في الفر
تقدير جهد في المشروعمشروع أو فشلء الؤدي إلى إلغا امج ي البر.
ثور علذا البحث هو العسي له إن الهدف الرئي أداء لتقدير جهد البر ى نموذج مجيات ال إجر من خل ء اسه و دربي تجري مقارنات ة
لم التعلت الرزميا لخوا ي.قنيات تم استخدام تليم التعل ال مجموع مع سبع ةضمنت مستخدمة والتي ت بياناتchina ، Albrecht ،
Maxwell Desharnais ، Kemerer ، Cocomo81 ، Kitchenham ، وذلكر جهود تطوير أداء لتقديتحديد أفضل ل