Yazılım Kalite Güvencesi ve Testi Dersi Dönem Proje Önerisi -2

Proje Adı: Yazılım Karmaşıklığını Ölçme ve Kalite Değerlendirmesi

Çevrimsel karmaşıklık, bir programın karmaşıklığını belirtmek için kullanılan bir yazılımsal metriktir. Bir programın kaynak kodu üzerinden doğrusal bağımsız yolların sayısal bir ölçüsüdür. Thomas J. McCabe, Sr tarafından 1976’da geliştirilmiştir. Çevrimsel karmaşıklık, programın kontrol akış grafiğini kullanarak hesaplanır: Grafiğin düğümleri, bir programın bölünemez komut gruplarına karşılık gelir ve ikinci komut birinci komutun hemen ardından yürütülebiliyorsa, yönlendirilmiş bir kenar iki düğümü birbirine bağlar. Çevrimsel karmaşıklık, bir program içindeki bireysel işlevlere, modüllere, yöntemlere veya sınıflara da uygulanabilir. Kaynak kodun bir bölümünün döngüsel karmaşıklığı, içindeki doğrusal bağımsız yolların sayısıdır. Örneğin, kaynak kodda kontrol akışı ifadeleri (koşullar veya karar noktaları) yoksa, kod boyunca yalnızca tek bir yol olacağı için karmaşıklık 1 olacaktır.

Proje 1: Yazılım Karmaşıklığı Açısından Kalite Değerlendirmesi ve Kod Karmaşıklık Ölçüm Araçlarının İncelenmesi

Kod metrikleriyle çalışırken, en az anlaşılan öğelerden biri, döngüsel karmaşıklık gibi konulardır. Esasen, döngüsel karmaşıklıkla, daha yüksek rakamlar “kötü” ve daha düşük rakamlar “iyi” olarak değerlendirilmektedir. Herhangi bir kodun test edilmesi, bakımı veya sorunlarının giderilmesi için ne kadar zor olabileceğinin yanı sıra kodun hata üretme olasılığının bir göstergesi olarak karmaşıklık ölçütleri kullanılır. Yüksek seviyede, kaynak kodda yapılan kararların sayısını sayarak döngüsel karmaşıklığın değeri belirlenir. Bu çalışmada geliştirilen kapsamlı bir çalışma karmaşıklık açısından değerlendirilecek ve bazı araçlarla testi ve raporlanması gerçekleştirilecektir.

Kod Karmaşıklık Ölçüm Araçları

Testwell CMT ++  (C, C ++ (ve C #)):

Testwell CMT ++, C / C ++ / C # için Karmaşıklık Ölçüm Aracı, C, C ++ ve C # dilleri için kullanımı kolay bir kod metrik aracıdır. Ayrıca, bir C / C ++ kaynak dosyasında veya ayrı bir derleme dosyasında yer alan montaj kodu da ölçülebilir.  CMT ++, düşük hata oranı ve kod bakım kolaylığı ile sonuçlanan olgun yazılım geliştirme organizasyonları için üretken geliştirme süreci için çalışıyor. Kod karmaşıklığı, programı test etmek ve korumak ne kadar zor olmaktadır.

Testwell CMTJava (Java için):

CMTJava, Java için Karmaşıklık Önlemleri Aracı, Java dili için kullanımı kolay bir kod metrik aracıdır. Yüksek kaliteli ürünlerle sonuçlanan üretken bir gelişim süreci için çalışan olgun yazılım geliştirme organizasyonları için tasarlanmıştır. Kod karmaşıklığı, programı test etmek ve korumak ne kadar zor olmaktadır. CMTJava, muhtemel problemli karmaşık kod işlevlerini ve dosyalarını büyük kod kütlelerinden bulmaya yardımcı olur. CMTJava’yı sadece ne kadar kodunuz olduğunu ölçmek için de kullanabilirsiniz: fiziksel satırlar, yorum satırları, program çizgileri, ifadeler. Örneğin, tüm proje kod tabanının ölçülmesi CMTJava için sorun değildir.

EK KAYNAK

Kaynak:

http://ieeexplore.ieee.org/abstract/document/5070510/

https://dl.acm.org/citation.cfm?id=76382

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

* Copy This Password *

* Type Or Paste Password Here *

+ 4 = 14