Software development effort estimation using ensemble machine learning
Topluluk yapay öğrenme ile yazılım geliştirme maaliyet tahmini
- Tez No: 436106
- Danışmanlar: Assist. Prof. Dr. BETÜL ERDOĞDU ŞAKAR
- Tez Türü: Yüksek Lisans
- Konular: Bilgisayar Mühendisliği Bilimleri-Bilgisayar ve Kontrol, Computer Engineering and Computer Science and Control
- Anahtar Kelimeler: Belirtilmemiş.
- Yıl: 2016
- Dil: İngilizce
- Üniversite: Bahçeşehir Üniversitesi
- Enstitü: Fen Bilimleri Enstitüsü
- Ana Bilim Dalı: Bilgi Teknolojileri Ana Bilim Dalı
- Bilim Dalı: Belirtilmemiş.
- Sayfa Sayısı: 52
Özet
Yazı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.
Özet (Çeviri)
In 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.
Benzer Tezler
- Assessment of ensemble and cross-project software reliability growth models for industrial projects
Endüstriyel projeler için topluluk ve çapraz-proje yazılım güvenilirliği büyüme modellerinin değerlendirilmesi
ELİFNUR ÖZTÜRK
Yüksek Lisans
İngilizce
2022
Bilgisayar Mühendisliği Bilimleri-Bilgisayar ve Kontrolİstanbul Teknik ÜniversitesiBilgisayar Mühendisliği Ana Bilim Dalı
DR. ÖĞR. ÜYESİ AYŞE TOSUN KÜHN
- Software development effort estimation by using artificial neural networks
Yapay sinir ağları ile yazılım projelerinin eforunun tahminlenmesi
TUĞÇE UĞURLU ALTUNTAŞ
Yüksek Lisans
İngilizce
2017
Endüstri ve Endüstri MühendisliğiGalatasaray ÜniversitesiEndüstri Mühendisliği Ana Bilim Dalı
DOÇ. DR. SADETTİN EMRE ALPTEKİN
- Yazılım projelerinde iş gücü tahmini için makine öğrenmesi yöntemlerinin karşılaştırılması
Comparison of machine learning methods for software project effort estimation
VEHBİ YURDAKURBAN
Yüksek Lisans
Türkçe
2018
Bilgisayar Mühendisliği Bilimleri-Bilgisayar ve Kontrolİstanbul Teknik ÜniversitesiBilgisayar Mühendisliği Ana Bilim Dalı
PROF. DR. TAKUHİ NADİA ERDOĞAN
- Yazılım projeleri ölçüm sonuçları veri tabanının oluşturulması ve yeni yazılım projelerinin maliyet tahmininde kullanimi
Construction of software projects measurement result database and usage in new software projects' cost estimations
MURAT AYYILDIZ
Doktora
Türkçe
2007
Bilgisayar Mühendisliği Bilimleri-Bilgisayar ve KontrolYıldız Teknik ÜniversitesiBilgisayar Mühendisliği Ana Bilim Dalı
PROF. DR. OYA KALIPSIZ
- Yapay zeka yöntemleri ile yazılım projelerinde maliyet kestirimi
Effort estimation in software projects by using artificial intelligence methods
OKTAY ADALIER
Doktora
Türkçe
2007
Bilgisayar Mühendisliği Bilimleri-Bilgisayar ve KontrolEge ÜniversitesiBilgisayar Mühendisliği Bölümü
YRD. DOÇ. DR. AYBARS UĞUR