Effective software bug localization using information retrieval and machine learning algorithms
Bilgi geri getirimi ve makine öğrenmesi algoritmalarını kullanarak yazılımda hata konumlandırılması
- Tez No: 656937
- Danışmanlar: DOÇ. DR. SEMİH UTKU
- Tez Türü: Doktora
- Konular: Bilgisayar Mühendisliği Bilimleri-Bilgisayar ve Kontrol, Computer Engineering and Computer Science and Control
- Anahtar Kelimeler: Belirtilmemiş.
- Yıl: 2020
- Dil: İngilizce
- Üniversite: Dokuz Eylül Üniversitesi
- Enstitü: Fen Bilimleri Enstitüsü
- Ana Bilim Dalı: Bilgisayar Mühendisliği Ana Bilim Dalı
- Bilim Dalı: Belirtilmemiş.
- Sayfa Sayısı: 69
Özet
Yazılım kalite güvence yönetimi, yazılımın başarısı için çok önemlidir. Büyük ölçekli yazılım projelerinde, hata konumlandırma zor ve maliyetli bir süreçtir. Yazılım geliştirme yaşam döngüsünün hem geliştirme hem de bakım aşamasında birçok sorun veya hata rapor edilebilir. Hata düzeltmenin yazılım kalite güvencesinde önemli bir rolü vardır ve hata konumlandırma bu sürecin ilk adımıdır. Geliştiriciler programın akışını, kodlama yapısını ve mantığını anlaması gerektiği için zaman alıcı bir süreçtir. Bu nedenle, geliştiricilerin hatanın yerini keşfetmeleri önemlidir. Genel olarak, yazılım kaynak kodları ve hata kayıtları, farklı teknikler yardımıyla hata konumunun tanımlanması için kullanılır. Bilgi geri getirimi tabanlı hata konumlandırma, hatanın oluştuğu kod bölümünü bulmak için hata raporları ve kaynak kodu bilgilerini kullanır. Bilinen en iyi yöntemler, yazılım geliştirme dillerinin çeşitliliğine, tasarım örüntülerinin ve geliştirme standartlarının farklılıklarından dolayı yeni projelerde tatmin edici bir performans gösterecek şekilde uygulanmaları mümkün değildir. Bu tez, hata konumlandırma süreçlerini yeni bir yazılım projesine uyarlamak için yeni bir algoritma olan Adaptasyonlu Ağırlık Belirleme'yi önermektedir. Bu tez aynı zamanda tüm yazılım projeleri üzerinde çalışmak için yeni bir hata konumlandırma aracı olan BugSTAiR'nin geliştirilmesini de içermektedir. Deneysel çalışmalar, BugSTAiR aracının Adaptasyonlu Ağırlık Belirleme algoritmasının etkisiyle, farklı dillerle geliştirilen ticari yazılım projelerinde, hem gerçek yaşam hem de deneysel veri kümeleri dahil olmak üzere, mevcut algoritmalara göre performansının üst seviyede olduğunu göstermektedir.
Özet (Çeviri)
Software quality assurance is crucial for the success of software. In large scale software projects, bug localization is a difficult and costly process. Many issues or bugs may be reported at both the development and maintenance phases of the software development lifecycle. Bug fixing has an essential role in software quality assurance, and bug localization is the first step of this process. Bug localization (BL) is time-consuming since the developers should understand the flow, coding structure, and logic of the program. Hence, it is crucial for developers to discover the location of the bug. In general, source codes and bug reports are used for identifying bug location with the help of many different techniques. Information retrieval-based bug localization (IRBL) also uses the information of bug reports and source code to locate the section of code in which the bug occurs. It is not possible to apply state-of-the-art approaches having a satisfactory performance to new projects according to the diversity of software development languages, design patterns and development standards. This thesis proposes a novel algorithm, Adaptive Attribute Weighting (AAW), to adopt a new software project for BL processes. This thesis also includes the development of a new BL tool, BugSTAiR, in order to work on with all software projects. Experimental studies demonstrate the capability of the AAW algorithm and also the BugSTAiR tool on both real-life and experimental datasets, including commercial software projects which are developed with different languages and improvement in performance compared to the existing algorithms.
Benzer Tezler
- Software quality prediction models: A comparative investigation based on machine learning techniques for object-oriented systems
Yazılım kalite tahmin modelleri: Nesne odaklı sistemler için makine öğrenme tekniklerine dayalı karşılaştırmalı bir araştırma
ÖZCAN İLHAN
Yüksek Lisans
İngilizce
2020
Bilgisayar Mühendisliği Bilimleri-Bilgisayar ve KontrolBaşkent ÜniversitesiBilgisayar Mühendisliği Ana Bilim Dalı
DR. ÖĞR. ÜYESİ TÜLİN ERÇELEBİ AYYILDIZ
- Hata raportörünün itibarının hesaplanması ve itibarın hata çözüm süresine etkisi
Measuring bug reporter's reputation and its effect on bug resolution time
MUHAMMED KADİR YÜCEL
Yüksek Lisans
Türkçe
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
- Towards an auction-based reward mechanism for effective bug resolution
Etkili hata çözümü için ihale tabanlı ödüllendirme mekanizması
ÇAĞDAŞ ÜSFEKES
Yüksek Lisans
İngilizce
2019
Bilgisayar Mühendisliği Bilimleri-Bilgisayar ve KontrolÇankaya ÜniversitesiBilgisayar Mühendisliği Ana Bilim Dalı
DOÇ. DR. MURAT YILMAZ
DR. ERAY TÜZÜN
- 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
- Nesne yönelimli yazılım ölçütlerinin uzun ömürlü yazılımlarda hata oranlarını gösterme düzeyinin belirlenmesi
Determining the level of indicating bug rates in long-lived software based on object-oriented software metrics
ÖZGE ESEN ÇOLAK
Yüksek Lisans
Türkçe
2024
Bilgisayar Mühendisliği Bilimleri-Bilgisayar ve KontrolYıldız Teknik ÜniversitesiBilgisayar Mühendisliği Ana Bilim Dalı
DR. ÖĞR. ÜYESİ YUNUS EMRE SELÇUK