24 Ocak 2017 Salı

Teknik Büyüklük Kestirim Yöntemleri




Satır Sayısı (Lines of Code - LOC): Uygulamanın büyüklüğünü anlamak için bilgisayar programlarındaki kodların satırlarını sayma en geleneksel ve en yaygın şekilde kullanılan yazılım ölçümüdür.
Kolaylığı ve doğrudan ölçülebilirliği açısından en fazla kullanılan yazılım ölçme yöntemi, satır sayısıdır. Bir programın büyüklüğü denince ilk akla gelen kaç satırlık kaynak kodu ile üretildiğidir.
Satır Sayısı, kod içerisindeki satır sayısını temsil eder.

Kod satır sayısı kestiriminde, proje tahmin edilen alt birimlerine ayrıştırılır. Her bir alt birim için satır sayıları önerilir. Bu kestirimler yapılırken de en küçük, en olası ve en büyük ihtimaller belirlenip, bunlarla bir ortalama işlemi yapılır.

Satır sayısı kestirimi: (k+4o+b)/6 şeklinde hesaplanabilir.


Satır Sayısı (Lines of Code - LOC)

Tabi ki 1000 LOC değeri olan bir Java programı, 100 LOC değerine sahip bir Java programından 10 kat daha büyüktür. Fakat bu sayının içinde yorum satırları var mı? Yorum satırlarını dahil etmeli miyiz?  (Yorum Satırının Avantajı)
Deneyim ile kod oluşturumu (Aynı özellik farklı kod sayısı)
Programlaa dili farkı Assembler <> Visual Basic

Değişkenlerin tanımlanması ? LOC olarak sayılmalı mıdır?
Yorum satırları kodun bize ne yaptığını anlatması açısından önemlidir. Bu aynı zamanda koddaki hataların ayıklanması açısından işleri daha da kolaylaştırır ve diğer insanların programdaki kod parçalarının ne yaptığına dair bir fikir edinmelerini sağlar.

Satır Sayısı (Lines of Code - LOC)

İki başlıca LOC Kaynak Kod Satır Sayısı ölçüm çeşidi vardır. Bunlar;
Fiziksel LOC
Mantıksal LOC

Örnek 1:
for (i=0; i<100; ++i) printf ("hello"); /* How many lines of code is this? */

1 Fiziksel Kod Satırı
2 Mantıksal Kod Satırı (for ve printf ifadesi)
1 Yorum Satırı

Satır Sayısı (Lines of Code - LOC)

Örnek 2:
Programcıya göre ve/veya kodlama standartlarına göre Örnek 1’deki kod aşağıdaki şekilde de yazılabilir.

for (i=0; i<100; ++i)
 {
      printf("hello");
  } /* Now how many lines of code is this? */

4 Fiziksel Kod Satırı
2 Mantıksal Kod Satırı (for ve printf ifadesi)
1 Yorum Satırı