23 Mayıs 2019 Perşembe

Software Estimation

Giriş
Projenin başlangıcında bir kestirim yapılır. Şu kadar adam ile bu kadar süre ve maliyetle bu işi bitiririm diye.Bu kestirimin hazırlanması her zaman sıkıntılı bir iştir.

Kestirim Yöntemleri
Kestirim için count/compute/judge yöntemlerinden birisi kullanılabilir. Yanlış yöntem ise üst yönetim tarafından belirtilen süre ve kaynak sınırlamasına uyacak şekilde kestirim yapmaya çalışmak.

1. Count yönteminde iş daha alt parçalara ayrılarak her bir parçanın değeri sayılarak bir değer elde edilir.
2. Compute yönteminde kabaca bir hesaplama yapılır
3. Judge yöntemi tamamen öngörüye dayalıdır. Resmin tamamını başka bir projeye dayanarak öngörür ve bu yeni iş için öngörüde bulunuruz.

Tahmin/Kestirimin Sorgulanması
Tahminin en iyi/en kötü hangi kritere göre yapıldığını belirtmekte fayda var. Tahminin diğerleri tarafından sorgulanması gayet normal.

Function Point
Function Point (FP) genellikle Count yönteminde kullanılır. Her gereksinim veya iş parçacığı için bir FP değeri hesaplanır.  FP teknolojiden bağımsız düşünülmelidir. Açıklaması şöyle
Since Function Points measures systems from a functional perspective they are independent of technology.
Bir diğer açıklama şöyle. Elimizde detaylı gereksinim yoksa FP hesaplamak kolay değil.
Function points are measured based on the requirements to fulfill (e.g. number of forms, number of fields in each forms, etc...). Productivity is then measured in FP per unit of time and per person. The problem with FP is that it requires very detailed requirements upfront.
Her bir FP şu noktalardan low, average, high olarak değerlendirilir.
External Inputs, External Outputs, External Inquiry, Internal Logical Files,External Interface Files
Bu FP değeri Function Point Languages Table ile SLOC'a dönüştürülebilir. Dönüşüm ne kadar anlamlı bilmiyorum.

Şirketlerin bir FP için nihai üründe ne kadar SLOC kodladıklarını hesaplamaları da ne kadar anlamlı bilmiyorum çünkü FP'nin kodda tam olarak nerede başlayıp nerede bittiğini anlamak ta bir mesele.

SLOC
Farklı programlama dilleri ve farklı alanlar çok farklı SLOC'lara sebep olabilir. Eğer aynı programlama dili ve aynı alanda çalışıyorsak SLOC bir fikir verebilir. Açıklaması şöyle.
...within a same company, with similar culture, line of business and with enough data, differences (as to unique situations and capabilities of individuals) blend enough so that the SLOC metric is useful for comparing productivity of tools and languages.
Kanban
Kanbdan'da toplam bir kapasite vardır. Bu kapasite / haftada biten iş sayısına bakılarak bu iş ne zaman biter sorusu cevaplanabilir. Bir örnek burada

Hiç yorum yok:

Yorum Gönder