Yazılım Projelerindeki Kod Yorum Satırı Klonlarının Evrimsel Derin Öğrenme Ile Tespiti

dc.contributor.authorÖztürk, Muhammed Maruf
dc.contributor.authorHorasan, Fahrettin
dc.date.accessioned2025-01-21T16:11:57Z
dc.date.available2025-01-21T16:11:57Z
dc.date.issued2023
dc.departmentKırıkkale Üniversitesi
dc.description15.10.2023
dc.description.abstractYazılım geliştirme süreci emek yoğun ve özellikle bakım aşaması diğer aşamalara göre daha fazla zaman alan bir süreçtir. Bu süreçte, yazılım tecrübesine bakılmaksızın her geliştirici kod yorumları oluşturabilir. Ancak, kodların kopyalanmasının bakım açısından riskler taşıdığı gibi, kod yorumlarının da eşsiz olmaması yazılım testini olumsuz etkileyen unsurlardan biridir. Nitekim Java gibi bazı programlama dilleri için kod yorumlarından test senaryoları üreten araçlar mevcuttur. Kod klon tespitinde kullanılan kelime ilişki çıkarma yöntemlerinden biri Word2Vec'tir. Ancak, bu yöntem sözlük eksikliğinden kaynaklanan belirsiz çıktıları üretebilmektedir. Diğer taraftan, kod yorum klon tespiti için geliştirilen yöntemlerin büyük çoğunluğu çapraz-dil klon tespitinde etkili değildir. Klon kod yorumlarının tespit edilmesinden sonra karşılaşılan en büyük güçlük klon kod yorumlarının silinmesidir. Nitekim bu süreç manuel olarak geliştiriciye bırakılan bir süreçtir. Geliştirici iki klon kod yorumundan istediğini siler. Ancak, bu işlem için kayna-kopya kod yorum ilişkisinin otomatik olarak çıkarılarak geliştiricinin yönlendirilmesi gerekmektedir. Böylelikle orijinal kod yorum bloku korunmuş olacaktır. Yukarıda bahsedilen problem göz önüne alınarak bu projede Word2Vec sözlük belirsizliğine yardımcı bir algoritma geliştirilmiştir. Algoritmanın özellik çıkarımında genetik algoritma yardımıyla optimizasyon uygulanmıştır. Geliştirilen yöntemin GLMNET algoritması yardımıyla kod klon tespitindeki başarısı gözlemlenmiştir. Farklı programlama dillerindeki kod klonlarının tespitindeki gözlemler şunlardır: 1) Java, C ve C# dilleri için python ve php dilleri ile kıyaslandığında daha yüksek başarı (0.95) elde edilmiştir, 2) Çapraz klon tahminin Java ile eğitilen model C ve php gibi dillerde daha umut verici sonuçlar üretmektedir, 3) Önerilen yöntem tip-1 ve tip-2 kod yorum klonları için daha uygun bir yöntem olarak bulunmuştur.
dc.identifier.endpage35
dc.identifier.startpage0
dc.identifier.trdizinid1222322
dc.identifier.urihttps://search.trdizin.gov.tr/tr/yayin/detay/1222322
dc.identifier.urihttps://hdl.handle.net/20.500.12587/21606
dc.indekslendigikaynakTR-Dizin
dc.language.isotr
dc.relation.publicationcategoryProje
dc.relation.tubitakinfo:eu-repo/grantAgreement/TUBITAK/EEEAG/122E420
dc.rightsinfo:eu-repo/semantics/openAccess
dc.snmzKA_20241229
dc.subjectBilgisayar Bilimleri
dc.subjectYazılım Mühendisliği
dc.subjectBilgisayar Bilimleri
dc.subjectYapay Zeka
dc.titleYazılım Projelerindeki Kod Yorum Satırı Klonlarının Evrimsel Derin Öğrenme Ile Tespiti
dc.typeProject

Dosyalar