Nesne tabanlı metrikler kullanılarak yazılım projeleri maliyetlerinin tahmin edilmesi / Prediction of software project costs using object-oriented metrics


Tezin Türü: Yüksek Lisans

Tezin Yürütüldüğü Kurum: Ankara Üniversitesi, Fen Bilimleri Enstitüsü, Türkiye

Tezin Onay Tarihi: 2020

Tezin Dili: Türkçe

Öğrenci: Adem Dilbaz

Danışman: BÜLENT TUĞRUL

Özet:

azılım metrikleri, yazılım projelerinin ölçülebilen ya da yapılan bu ölçümlere göre hesaplanan değerlerine denir. Yazılım metrikleri, yazılımların test, geliştirme, bakım, hata giderme ve proje yönetimi gibi konularda yazılımın birçok yönden değerlendirilmesini sağlayan ölçüm yöntemleridir. Bir yazılım geliştirici maliyet, hata, güvenilirlik, test, güvenlik tahminleri gibi birçok zorlu ihtiyaçlar ile baş etmek durumundadır. Yazılım geliştirmenin büyük oranda payını insan gücü oluşturduğundan yapılan işin her aşamada takibi de önem arz etmektedir. Bu yüksek lisans tez çalışmasında sık kullanılan yazılım metrikleri, bu metriklerin sonuçlarının değerlendirilip analiz edilmesi ve yazılım ölçüm metrikleri ile ilgili çalışmalar anlatılmış, literatür taraması sonrasında 103 farklı Java kütüphanesinin majör versiyonlarına ait kaynak kodlar Github ve Maven Repository kaynaklarından elde edilmiş, bu kodlar Source Monitor adlı yazılım metrik ölçüm aracına girdi olarak verilerek, 13 farklı yazılım metriği bu kütüphaneler için hesaplanmıştır. Metrik sonuçları normalize edilerek, Rapidminer uygulaması kullanılarak 3 farklı makine öğrenme algoritmasına kaynak olarak verilmiş, algoritmaların parametrelerindeki değişime göre hata payı (RMSE) değişimi takip edilmiştir. Bu veriler ışığında yazılım versiyon değişikliğindeki maliyet ölçümlemede minimum hata oranı hangi algoritmada ve hangi parametrelerle gerçekleşebileceği gözlemlenmiştir.