Show simple item record

dc.contributor.advisorErdoğdu Şakar, Betül
dc.contributor.authorHidmi, Omar
dc.date.accessioned2020-12-03T17:07:11Z
dc.date.available2020-12-03T17:07:11Z
dc.date.submitted2016
dc.date.issued2018-08-06
dc.identifier.urihttps://acikbilim.yok.gov.tr/handle/20.500.12812/60051
dc.description.abstractYazılım mühendisliğindeki ana amaç belli bir zaman dilimi ve bütçe ile yüksek kaliteli projeler üretmektir, bu yönteme efor tahmini denir. Efor tahmini için uzman tahmini ve yapay öğrenme tekniklerinin kullanımı gibi oldukça farklı yöntemler bulunmaktadır. Efor tahmini firmalar için oldukça önemli ve kritik bir karardır. Çünkü fazla personel ile çalışılması durumunda firma finansal zarara uğrarken az personel ile çalışıldığında projenin uzaması ya da ertelenmesi gibi durumlar oluşabilir. Bu projenin amacı uzman tahmini ya da benzerlikle tahmin gibi öznel ve zaman alıcı yöntemler yerine yapay öğrenme tekniklerini kullanarak yazılım efor tahminini nesnel hale getirmektir. Bu çalışmada önerilen çözüm ile yazılım efor tahmini sürecinde aşırı öğrenme ve az öğrenme sorunlarının üstesinden gelinmeye çalışılmıştır. Bu çalışmada iki farklı yapay öğrenme tekniği, Destek Vektör Makinaları ve K-En Yakın Komşu algoritmaları hem ayrı ayrı denenmiş, hem de AdaBoost arttırma yöntemi bu iki algoritmanın sonuçlarını birleştirilerek yeni yazılım geliştirme projelerinin eforr tahminini yapacak modeller önerilmiştir. Yapay öğrenme teknikleri tüm kullanıcılara açık olan Desharnais ve Maxwell veri kümeleri üzerinde denenmiştir.
dc.description.abstractIn software engineering, the main aim is to develop a high quality projects that fall within scheduled time and budget, this procedure is called effort estimation. There are many techniques to estimate the effort including expert judgment and the use of machine learning techniques. Effort estimation is crucial and important for a company to do because hiring more people than needed will lead to loss of income, and hiring less people than needed will lead to delay of project delivery. The aim of this study is to estimate software effort objectively by using machine learning techniques instead of subjectively and time consuming estimation methods like expert judgment and estimation by analogy. The proposed solution mentioned in this study tries to overcome the problems of over-estimation and under-estimation by improving the software effort estimation process. This study will propose a model that uses two machine learning techniques which are Support Vector Machine (SVM) and K-Nearest Neighbor (k-NN) and combining them together using a boosting technique called AdaBoost for better effort estimation in new software development projects. Machine learning techniques have been applied to two publically available dataset which are Desharnais and Maxwell. Results show that SVM technique outperform k-NN technique, results also show much improvement in estimations when using AdaBoost.en_US
dc.languageEnglish
dc.language.isoen
dc.rightsinfo:eu-repo/semantics/openAccess
dc.rightsAttribution 4.0 United Statestr_TR
dc.rights.urihttps://creativecommons.org/licenses/by/4.0/
dc.subjectBilgisayar Mühendisliği Bilimleri-Bilgisayar ve Kontroltr_TR
dc.subjectComputer Engineering and Computer Science and Controlen_US
dc.titleSoftware development effort estimation using ensemble machine learning
dc.title.alternativeTopluluk yapay öğrenme ile yazılım geliştirme maaliyet tahmini
dc.typemasterThesis
dc.date.updated2018-08-06
dc.contributor.departmentBilgi Teknolojileri Anabilim Dalı
dc.identifier.yokid10114025
dc.publisher.instituteFen Bilimleri Enstitüsü
dc.publisher.universityBAHÇEŞEHİR ÜNİVERSİTESİ
dc.identifier.thesisid436106
dc.description.pages52
dc.publisher.disciplineDiğer


Files in this item

Thumbnail

This item appears in the following Collection(s)

Show simple item record

info:eu-repo/semantics/openAccess
Except where otherwise noted, this item's license is described as info:eu-repo/semantics/openAccess