Hata tespitine tahsis edilen toplam kapasitenin denge yüzdesi, hata enjeksiyon oranına eşittir .
Tabii ki, birçok faktör bu oranı etkileyebilir: elbette: ekibin ne tür bir ürün geliştirdiğini, hangi teknolojileri ve teknik uygulamaları kullandıklarını, ekibin yetenek seviyesini, şirket kültürünü vb.
B takımını göz önünde bulundurarak, tamamladıkları her 10 iş için ortalama 8 ünite yeniden işleme yarattıkları takdirde, bu 8 ünitenin çalışması yeni 6.4 ünite yeniden işleme yaratacaktır. Sonuçta harcayacakları toplam çabayı geometrik bir ilerlemenin toplamı olarak tahmin edebiliriz:
10 + 8 + 6,4 + 5,12 + ...
Hataların sayısı zamanla katlanarak azalacak, ancak B Takımı, üslerinde çok yavaş bir şekilde sıfıra gidecek kadar katsayıya sahip. Aslında, yukarıdaki serideki ilk üç terimin toplamı sadece 24,4'tür; ilk beşin 33.6; ilk 10, 45; Tüm seri, 50. Öyleyse, B Takımının özeti: Hatalı enjeksiyon oranı, 0.8; özellik geliştirme, 10/50 =% 20; Hata giderme,% 80. 20/80 sürdürülebilir kapasite tahsisatıdır.
Aksine, A Takımı çok daha iyi durumda. İlerlemeleri şöyle gözüküyor:
40 + 10 + 2,5 + 0,625 + ...
Bu serinin toplamı 53 1/3, bu nedenle A Takımının özellik geliştirme tahsisi 40 / (53 1/3) =% 75 ve kusur tespit tahsisi% 25'tir, bu da kusur enjeksiyon oranlarını 10/40 = 0.25 ile eşleştirir. .
Aslında, ilk üçten sonra Team A serisindeki tüm terimler önemsiz derecede küçüktür. Bunun pratik açıdan anlamı, A Takımının tüm hatalarını birkaç bakım sürümüyle ezebilmesidir, ikinci sürüm kapsamı oldukça küçüktür. Bu aynı zamanda herhangi bir ekibin bunu yapabileceği bir yanılsama yaratır . Ama B Takımı değil.
David Anderson'un yeni kitabı "Kanban" ı okurken bu eşdeğerliği düşündüm . (Kitap farklı bir konu üzerinde ancak kalite endişelerini de ele alıyor.) Yazılım kalitesini tartışırken, Anderson bu kitabı, "Yazılım Değerlendirmeleri, Karşılaştırmalar ve En İyi Uygulamalar" başlıklı Capers Jones'tan alıyor :
"... 2000 yılında ... Kuzey Amerika ekipleri için ölçülen yazılım kalitesi ... işlev noktası başına 6 hata ile 100 işlev noktası başına 3 ile 200 arasında 1 arasında değişmekteydi. Orta nokta başına yaklaşık 1 hata 0,6 ile 1,0 arası işlev puanları Bu, takımların çabalarının% 90'ından fazlasının kusurlarını gidermek için yaygın olduğu anlamına geliyor. ” .
Anderson'ın kusurlu enjeksiyon oranından kusurlu sabitleme kapasitesi tahsisine (akıcılık talebi bunun için bir terim olduğu) akıcılık , iki şeyin eşitliğinin, yazılım kalitesi araştırmacıları tarafından iyi bilindiğini ve muhtemelen bir süredir bilindiğini ortaya koymaktadır. .
Burada sunmaya çalıştığım muhakeme doğrultusunda anahtar kelimeler "denge" ve "sürdürülebilir" dir. Sürdürülebilirliği ortadan kaldırırsak, bu sayıları aldatmanın açık bir yolu vardır: ilk kodlamayı yaparsınız, daha sonra başka bir yere kod koyarsınız ve bakımı başkalarına bırakırsınız. Ya da teknik borcu atar ve yeni bir mal sahibine atarsınız.
Açıkçası, belirli bir tahsisat tüm takımlara uygun olmayacaktır. % 20'nin böceklere harcanması gerektiğine karar verirsek, o zaman, eğer bir takım ultra düşük kusur enjeksiyon oranına sahipse, zamanı doldurmaya yetecek kadar böcekleri olmaz ve eğer bir takımın oranı çok yüksekse, birikmeye devam edecektir.
Burada kullandığım matematik basitleştirildi. Yüzdeleri biraz etkileyecek olan işlem maliyetleri (planlama ve tahmin toplantıları, ölüm sonrası vb.) Gibi şeyleri ihmal ettim. Aynı zamanda bir ürünü sürdürmeyi simule eden ve aynı anda diğerini geliştiren denklemleri atladım. Ancak sonuç hala geçerli. Hata enjeksiyon oranınızı ve dolayısıyla başarısızlık talebinizi azaltmak için birim testi, sürekli entegrasyon, kod incelemeleri vb. Teknik uygulamalar açısından elinizden geleni yapın. Her 10 özellik için yalnızca bir hata oluşturabilirseniz, yeni özellikler geliştirmek ve müşterilerinizi memnun etmek için çok fazla boş zamanınız olacak.