Tezin Türü: Doktora
Tezin Yürütüldüğü Kurum: Eskişehir Osmangazi Üniversitesi, Fen Bilimleri Enstitüsü, Bilgisayar Yazılımı Bilim Dalı, Türkiye
Tezin Onay Tarihi: 2023
Tezin Dili: Türkçe
Öğrenci: YUSUF KARTAL
Danışman: Kemal Özkan
Özet:
Modern kod incelemesi, güvenli ˘gi sa ˘gladı ˘gı, hataları erken tespit etti ˘gi ve
kod kalitesini iyile¸stirdi ˘gi için yazılım geli¸stirme süreçlerinde kritik bir adımdır.
Ancak, manuel incelemeler zaman alıcı ve güvenilmez olabilmektedir. Otomatik
kod incelemesi bu sorunları çözebilir. Kod inceleme yorumlarını önermek için
önerilmi¸s derin ö ˘grenme yöntemleri olsa da, bunların e ˘gitilmesi ve çalı¸stırılması
maliyetlidir. Bunun yerine, otomatik kod incelemesi için bilgi eri¸sim tabanlı
yöntemler verimlilik, etkililik ve esneklik açısından umut verici sonuçlar
sergilemektedir. Ana hedef, otomatik kod incelemede en iyi sonuçları veren
vektöre dönü¸stürme yöntemi ile benzerlik yönteminin optimal kombinasyonunu
belirlemek ve böylece bilgi eri¸sim tabanlı yöntemlerin performansını ölçmektir.
Ayrıca ön i¸slemlerin modellerin ba¸sarısı üzerindeki etkisini incelemek de hedefler
arasında bulunmaktadır. Önceki ara¸stırmalardan (TF-IDF ve Bag-of-Words) farklı
olan birden fazla vektörle¸stirme yöntemi (Word2Vec, Doc2Vec ve Transformer) ve
benzerlik yöntemi (Kosinüs, Öklid ve Manhattan) kaynak kod metinleri arasındaki
anlamsal benzerlikleri belirlemek için çalı¸smaya dahil edilmi¸stir. BLUE, METEOR
ve ROUGE-L gibi standart metrikleri kullanarak bu yöntemlerin performansı
de ˘gerlendirilmi¸s ve modellerin çalı¸sma süreleri de sonuçlara dahil edilmi¸stir. Elde
edilen sonuçlara göre Transformer modeli tüm standart metriklerde ve benzerlik
ölçümlerinde son çalı¸smalara göre daha iyi performans göstermektedir. Ayrıca tam
e¸sle¸sme sa ˘glamada %19,1’lik ve benzer öneriler sa ˘glamada %6,2’lik bir iyile¸sme
görülmektedir. Elde edilen bulgular, transformer modelinin, insanlar tarafından
yazılanlara çok benzeyen kod inceleme yorumları önermek için oldukça etkili ve
verimli bir yakla¸sım oldu ˘gunu, otomatik kod inceleme sistemleri geli¸stirmek için
de ˘gerli bilgiler sa ˘gladı ˘gını göstermektedir.