Bu Hesaplayıcı Ne İşe Yarar?
Bu araç, yazılım mühendisliğinde sıkça kullanılan iki kalite metriğini hesaplar: test yoğunluğu (kod tabanınızın boyutuna kıyasla kaç test senaryonuz olduğu) ve hata yoğunluğu (kod tabanı boyutuna kıyasla kaç hata tespit edildiği). Her iki değer de hem LOC (kod satırı sayısı) hem de KLOC (binlerce kod satırı) başına raporlanır; çünkü sektörde standart raporlama birimi KLOC'tur. Bu, bölgeye özgü kuralları olmayan evrensel bir metriktir.
Nasıl Kullanılır?
Çalıştırdığınız test senaryosu sayısını, bulunan hata sayısını ve kaynak kodunuzun boyutunu girin. Kod boyutu değerinin ham satır sayısı (LOC) olarak mı yoksa binlerce satır (KLOC) olarak mı verildiğini seçin — hesaplayıcı, işlem yapmadan önce bu değeri ham LOC'a dönüştürür. Tüm yoğunluk değerleri otomatik olarak hesaplanır.
Formül Açıklaması
Önce kod boyutu normalize edilir:
$$\text{locSatır} = \text{loc} \times \text{çarpan}$$burada çarpan LOC için 1, KLOC için 1000'dir. Ardından LOC başına test yoğunluğu ve LOC başına hata yoğunluğu şöyle bulunur:
$$\text{Test Yoğunluğu} = \frac{\text{test sayısı}}{\text{locSatır}}, \qquad \text{Hata Yoğunluğu} = \frac{\text{hata sayısı}}{\text{locSatır}}$$KLOC başına değerler ise LOC başına değerin 1000 ile çarpılmasıyla elde edilir. Test sayısı ve hata sayısı tam sayı olup hiçbir zaman ölçeklenmez.
Örnek Hesaplama
Diyelim ki 500 test çalıştırdınız, 25 hata buldunuz ve kod tabanınız 10 KLOC. Normalize boyut:
$$10 \times 1000 = 10{.}000 \text{ LOC}$$Test yoğunluğu:
$$\frac{500}{10{.}000} = 0{,}05 \text{ test/LOC} = 50 \text{ test/KLOC}$$Hata yoğunluğu:
$$\frac{25}{10{.}000} = 0{,}0025 \text{ hata/LOC} = 2{,}5 \text{ hata/KLOC}$$Sıkça Sorulan Sorular
Neden hem LOC hem de KLOC başına değer sunuluyor? LOC başına değerler çok küçük ve okunması zordur; bu yüzden sektörde geleneksel olarak KLOC başına raporlama yapılır. İkisi de aynı bilgiyi taşır — biri diğerinin yalnızca 1000 katıdır.
Sonuç neden boş çıkıyor veya hata veriyor? LOC sıfır ise yoğunluk matematiksel olarak tanımsızdır (sıfıra bölme), bu nedenle hesaplayıcı sonsuz bir değer yerine hata gösterir.
Bu sayıları projeler arasında karşılaştırabilir miyim? Yalnızca LOC sayım kuralları aynıysa. Yorum satırlarının ve boş satırların sayılıp sayılmayacağına tutarlı bir şekilde karar verin; çünkü bu tercih yoğunluk değerlerini ciddi ölçüde değiştirir.