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 (personhours or personmonths). 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 ، وذلكر جهود تطوير أداء لتقديتحديد أفضل ل