Proje efor tahmini için makine öğrenmesi modellerinin geliştirilmesi ve SHAP yöntemi kullanılarak açıklanması
Development of machine learning models for project effort prediction and explanation using SHAP method
- Tez No: 919590
- Danışmanlar: DR. ÖĞR. ÜYESİ YASİN GÖRMEZ
- Tez Türü: Yüksek Lisans
- Konular: Yönetim Bilişim Sistemleri, Management Information Systems
- Anahtar Kelimeler: Belirtilmemiş.
- Yıl: 2025
- Dil: Türkçe
- Üniversite: Sivas Cumhuriyet Üniversitesi
- Enstitü: Sosyal Bilimler Enstitüsü
- Ana Bilim Dalı: Yönetim Bilişim Sistemleri Ana Bilim Dalı
- Bilim Dalı: Belirtilmemiş.
- Sayfa Sayısı: 83
Özet
Günümüzde işletmeler, dijital dönüşüm sürecine uyum sağlayabilmek ve rekabet avantajı elde edebilmek adına etkin bir proje yönetim sürecine ihtiyaç duymaktadır. Özellikle yazılım projelerinin giderek artan bir ivmeyle yaygınlaşması, yazılım projelerinde doğru ve güvenilir efor tahmini yapmayı kritik bir gereklilik hâline getirmiştir. Efor tahmini, bir projenin tamamlanması için ihtiyaç duyulan iş gücü ve zamanın öngörülmesini sağlayarak kaynak planlamasının optimize edilmesine ve maliyetlerin etkin bir şekilde yönetilmesine katkıda bulunmaktadır. Ancak, yazılım projelerinin dinamik ve karmaşık yapısı, geleneksel yöntemlerle gerçekleştirilen efor tahminlerinin doğruluğunu sınırlayabilmektedir. Bu nedenle, son yıllarda veri odaklı yaklaşımlar ve makine öğrenmesi teknikleri, efor tahmini sürecinde önemli bir araştırma alanı hâline gelmiştir. Bu çalışmada, yazılım projelerinde efor tahmininin doğruluğunu artırmaya yönelik olarak rastgele orman, karar ağacı, doğrusal regresyon, yapay sinir ağı, GradientBoost ve AdaBoost gibi yaygın kullanılan makine öğrenmesi yöntemleri uygulanmıştır. Çalışmanın deneysel aşamasında, china_original, cocomonasa_v1, humans2, nasa93, usp05 ve usp05-ft olmak üzere altı farklı veri seti üzerinde model performansları değerlendirilmiştir. Model sonuçlarının güvenilirliğini artırmak amacıyla 50 tekrarlayan sınama yaklaşımı kullanılmış ve modellerin performansları ortalama mutlak hata, ortalama logaritmik kare hatası, belirleme katsayısı ve ortalama göreli büyüklük hatası gibi yaygın metrikler aracılığıyla karşılaştırılmıştır. Deneysel analizler sonucunda, yapay sinir ağı, rastgele orman, karar ağaçları ve GradientBoost modellerinin belirli veri setlerinde yüksek başarı gösterdiği tespit edilmiştir. Bununla birlikte, genel değerlendirmeler doğrultusunda karar ağacı modelinin proje efor tahmini açısından en başarılı yöntem olduğu sonucuna varılmıştır. Çalışmanın bir diğer önemli aşaması olarak, geliştirilen modellerin karar verme süreçlerini anlamlandırmak ve model şeffaflığını artırmak amacıyla SHAP yöntemi kullanılmıştır. SHAP analizi sonuçları, her bir veri setinde bazı özniteliklerin model karar alma süreçlerinde diğer özniteliklere kıyasla daha etkili olduğunu ortaya koymuştur. Bu bulgular, proje yöneticilerinin ve yazılım geliştiricilerinin karar süreçlerini daha bilinçli bir şekilde yönlendirmelerine olanak tanıyacak önemli içgörüler sunmaktadır. Elde edilen sonuçlar, makine öğrenmesi tabanlı modellerin yazılım projelerinde efor tahmini süreçlerinde başarılı bir şekilde uygulanabileceğini ve açıklamalı yapay zekâ teknikleri ile bu modellerin yorumlanabilirliğinin artırılabileceğini göstermektedir. Bu bağlamda, çalışmanın yazılım mühendisliği ve proje yönetimi alanlarında ileriye dönük araştırmalar için değerli bir kaynak teşkil etmesi beklenmektedir.
Özet (Çeviri)
In today's digital era, businesses require an effective project management process to successfully adapt to digital transformation and gain a competitive advantage. The increasing prevalence of software projects has made accurate and reliable effort estimation a critical requirement. Effort estimation plays a crucial role in optimizing resource planning and managing costs effectively by predicting the workforce and time needed to complete a project. However, the dynamic and complex nature of software projects poses significant challenges, limiting the accuracy of effort estimation using traditional methods. Consequently, data-driven approaches and machine learning techniques have emerged as a prominent research area in effort estimation. This study explores the application of common machine learning methods, including random forest, decision tree, linear regression, artificial neural networks, GradientBoost, and AdaBoost, to enhance the accuracy of effort estimation in software projects. The experimental phase involved evaluating the performance of these models on six distinct datasets: china_original, cocomonasa_v1, humans2, nasa93, usp05, and usp05-ft. To ensure the reliability of the model results, a 50 repeated holdout approach was implemented, and the models were compared using widely used evaluation metrics, including mean absolute error, mean squared logarithmic error, coefficient of determination, and mean magnitude of relative error. The results of the experimental analyses indicate that artificial neural networks, random forests, decision trees, and GradientBoost models demonstrated high performance on specific datasets. However, the decision tree model was identified as the most successful approach for project effort estimation based on overall evaluations. Additionally, to enhance the interpretability of the developed models and improve model transparency, this study employed the SHAP method. The SHAP analysis results revealed that certain attributes had a greater influence on the decision-making process of the models across different datasets. These findings provide valuable insights that can help project managers and software developers make more informed decisions. The results demonstrate that machine learning-based models can be effectively applied to effort estimation in software projects, and their interpretability can be significantly enhanced using explainable artificial intelligence techniques. In this context, the study is expected to serve as a valuable resource for future research in software engineering and project management.
Benzer Tezler
- Development of an agile story point estimation model for scrum: A fusion of natural language processing and machine learning techniques
Scrum için çevik bir hikaye puanı tahmin modelinin geliştirilmesi: Doğal dil işleme ve makine öğrenmesi tekniklerinin birleşimi
BURCU YALÇINER
Doktora
İngilizce
2024
Bilgisayar Mühendisliği Bilimleri-Bilgisayar ve KontrolHacettepe ÜniversitesiBilgisayar Mühendisliği Ana Bilim Dalı
PROF. DR. MEHMET ÖNDER EFE
- A dataset quality enhancement method for fine-grained just-in-time software defect prediction models
İnce taneli tam zamanında yazılım hata tahmin modelleri için veri kalitesi iyileştirme yöntemi
İREM FİDANDAN
Yüksek Lisans
İngilizce
2024
Bilgisayar Mühendisliği Bilimleri-Bilgisayar ve Kontrolİstanbul Teknik ÜniversitesiBilgisayar Mühendisliği Ana Bilim Dalı
DOÇ. DR. FEZA BUZLUCA
- Software defect prediction with a personalization focus and challenges during deployment
Kişiselleştirme odaklı yazılım hata tahmini ve entegrasyon zorlukları
BEYZA EKEN
Doktora
İ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
- 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
- Makine Öğrenmesi tabanlı yazılım maliyet tahmini yöntemlerinin karşılaştırmalı analizi
A comparive analysis of machine learning based software cost estimation methods
MUAZ GÜLTEKİN
Doktora
Türkçe
2019
Bilgisayar Mühendisliği Bilimleri-Bilgisayar ve KontrolYıldız Teknik ÜniversitesiBilgisayar Mühendisliği Ana Bilim Dalı
PROF. DR. OYA KALIPSIZ