Ölçüt tabanlı yazılım hata kestirim yaklaşımlarının incelenmesi ve yeni bir yazılım hata kestirim önerisi
Investigation on of metric based software bug prediction approaches and a new software bug prediction recommendation
Yazar: BEGÜM ERKAL
Danışman: DR. ÖĞR. ÜYESİ TÜLİN ERÇELEBİ AYYILDIZ
Başkent Üniversitesi / Fen Bilimleri Enstitüsü / Bilgisayar Mühendisliği Ana Bilim Dalı / Bilgisayar Mühendisliği Bilim Dalı
Derece: Yüksek Lisans, 2020
Konu: Bilgisayar Mühendisliği Bilimleri-Bilgisayar ve Kontrol = Computer Engineering and Computer Science and Control

Özet:
Yazılım projelerinde elde edilen sonucun amacı sadece doğru çalışan bir ürün çıkarmak değildir. Gerçekleştirilen ve ortaya çıkarılan yazılımın kalitesinin değerlendirilmesi, ölçülmesi de gerekmektedir. Yazılım ne kadar kaliteli ve hatalardan arındırılmış olursa bakım onarım sürecinde maliyetler de bir o kadar azalacaktır. Yazılımın kalitesini etkileyen önemli noktalardan biri yazılımdaki hataların sayısıdır. Bu nedenle, geliştirilen yazılımlardaki hataların mümkün olduğunca erken belirlenebilmesi oldukça önem taşımaktadır. Çalışma kapsamında ölçüt tabanlı yazılım hata kestirimi yaklaşımlarından olan kaynak kod ölçütleri incelenmiş ve yazılım hata sayıları ile yazılım kalite ölçütleri arasındaki ilişki analiz edilmiştir. Bu amaçla,  25 adet açık kaynak kodlu java programlama diliyle geliştirilen oyun projesi veri seti olarak kullanılmıştır. Yazılım kalite ölçütlerinin analizinde "Understand" statik kod analiz aracı kullanılmıştır. Çalışmada projelerin hata sayılarının belirlenmesinde ise Spotbugs hata tespit aracından yararlanılmıştır. Yazılım hataları ve yazılım kalite ölçütleri arasındaki ilişkiyi çıkarabilmek için doğrusal regresyon yöntemi uygulanmıştır. Analiz sonuçlarında çıkan sonucun kestirim doğruluğu birisi-dışarıda çapraz doğrulama (Leave one out cross validation - LOOCV) ile yapılmıştır. Sonuçlar,  yazılım hata sayısını tahmin etmek için yazılım kalite ölçütlerinden faydalanmanın mümkün olduğunu göstermektedir.

Abstract:
The aim of the software project is not only to produce a product that works correctly. It is also necessary to evaluate the quality of the software performed and to measure the quality.
The more quality and error-free the software, the lower the costs during the maintenance process. One of the important points affecting the quality of the software is the number of bugs in the software. For this reason, it is very important to detect bugs in the software developed at an early stage. In the scope of the study, source code metrics which is one of the metric based software bug estimation approaches were examined. In the scope of the study, source code metrics from metric based software bug prediction approaches were examined and the relationship between software bug numbers and software quality metrics was analyzed. For this purpose, 25 open source game projects developed with java programming languages were used as data sets. "Understand" static code analysis tool was used to analyze software quality metrics. In the study, Spotbugs bug detection tool was used to determine the bug numbers of the projects. Linear regression method was used to determine the relationship between software bugs and software quality metrics. The prediction accuracy of the results obtained from the analysis results was made with leave one out cross validation. The results show that it is possible to make use of software quality metrics to estimate the number of software bugs.