Facebook
CS 560 Otomatik Yanlış Ayıklama
Yanlış ayıklama, programlardaki hataların bulunmasını ve bu hataların düzeltilmesini içeren bir süreçtir. Bu süreçteki en masraflı adım hataların kök sebeplerinin bulunmasıdır. Yazılım geliştirenler, hatalı yürütmelerde çalıştırılan kaynak kod komutlarını baz alarak, hataların oluşmasına sebebiyet verebilecek potansiyel kök sebepleri hakkında hipotezler üretirler ve bu hipotezlerini tekrarlamalı bir süreç içinde gerçek kök sebepleri bulunana kadar revize eder ve sınarlar. Bu süreç genellikle yorucu ve zaman alan bir süreçtir. Literatürde yanlış ayıklama sürecine yardımcı olmak amacıyla birçok yöntem geliştirilmiştir. Bu yöntemlerin başlıca amacı kök sebeplerin hızlı ve etkili bir şekilde bulunmasını sağlamaktır. Bu ders otomatik yanlış ayıklama yöntemlerini hem pratik uygulama hem de akademik araştırma yönünden işleyecek ve başlıca iki bölümden oluşacaktır. Birinci bölümün amacı hem yanlış ayıklama sürecini gelişigüzel bir süreçten sistematik bir sürece dönüştürmek hem de öğrencilerin literatürdeki çalışmaları okuyup yorumlayabilmeleri için gerekli olan alt yapıyı oluşturmaktır. Bu bölümde işlenecek başlıca konular şöyledir: Programlarda hatalar nasıl oluşur, problemlerin kataloglanması, hataların gözlenmesi, hataların tekrar oluşturulması, potansiyel kök sebepleri uzayının basitleştirilmesi, yürütmelerdeki anormalliklerin saptanması ve gerçek kök sebeplerinin bulunması. Dersin ikinci bölümünde ise literatürdeki önemli otomatik yanlış ayıklama yöntemleri dört başlık altında işlenecektir: statik program analizlerine dayanan, dinamik program analizlerine dayanan, model tabanlı ve deneylere dayanan yöntemler.
SU Kredi : 3
AKTS Kredi : 10
Ön Koşul : -
Yan Koşul : -