Geri Dön

Software development effort estimation using ensemble machine learning

Topluluk yapay öğrenme ile yazılım geliştirme maaliyet tahmini

  1. Tez No: 436106
  2. Yazar: OMAR HIDMI
  3. Danışmanlar: Assist. Prof. Dr. BETÜL ERDOĞDU ŞAKAR
  4. Tez Türü: Yüksek Lisans
  5. Konular: Bilgisayar Mühendisliği Bilimleri-Bilgisayar ve Kontrol, Computer Engineering and Computer Science and Control
  6. Anahtar Kelimeler: Belirtilmemiş.
  7. Yıl: 2016
  8. Dil: İngilizce
  9. Üniversite: Bahçeşehir Üniversitesi
  10. Enstitü: Fen Bilimleri Enstitüsü
  11. Ana Bilim Dalı: Bilgi Teknolojileri Ana Bilim Dalı
  12. Bilim Dalı: Belirtilmemiş.
  13. Sayfa Sayısı: Belirtilmemiş.

Ö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

  1. 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

    İngilizce

    2022

    Bilgisayar Mühendisliği Bilimleri-Bilgisayar ve Kontrolİstanbul Teknik Üniversitesi

    Bilgisayar Mühendisliği Ana Bilim Dalı

    DR. ÖĞR. ÜYESİ AYŞE TOSUN KÜHN

  2. 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

    İngilizce

    2017

    Endüstri ve Endüstri MühendisliğiGalatasaray Üniversitesi

    Endüstri Mühendisliği Ana Bilim Dalı

    DOÇ. DR. SADETTİN EMRE ALPTEKİN

  3. Estimation of development effort and success criteria using machine learning methods for outsourced software projects

    Dış kaynak yazılım geliştirme projelerinin geliştirme eforları ve başarı kriterlerinin makine öğrenimi ile tahminlemesi

    EMRAH KIVANÇ

    Yüksek Lisans

    İngilizce

    İngilizce

    2017

    Bilgisayar Mühendisliği Bilimleri-Bilgisayar ve KontrolBahçeşehir Üniversitesi

    Bilgisayar Mühendisliği Ana Bilim Dalı

    YRD. DOÇ. DR. CEMAL OKAN ŞAKAR

  4. Çevik yazılım geliştirmede çaba tahmini için büyük dil modeli tabanlı yeni bir yaklaşım

    A new large language model based approach for effort estimation in agile software development

    TUNAHAN ÇATAK

    Yüksek Lisans

    Türkçe

    Türkçe

    2026

    Bilgisayar Mühendisliği Bilimleri-Bilgisayar ve KontrolKocaeli Üniversitesi

    Bilgisayar Mühendisliği Ana Bilim Dalı

    DOÇ. DR. PINAR ONAY DURDU

  5. A software benchmarking methodology for effort estimation

    İş gücü kestirimi için bir yazılım referans veri kümesi yöntemi

    MİNA NABİ

    Yüksek Lisans

    İngilizce

    İngilizce

    2012

    Bilgisayar Mühendisliği Bilimleri-Bilgisayar ve KontrolOrta Doğu Teknik Üniversitesi

    Bilişim Sistemleri Bölümü

    PROF. DR. ONUR DEMİRÖRS