#ef7e12

Göreceliliğin Gücü: Hikaye Puanları, Saatlerle Bir Değildir!

Barış Erkent // Çevik Koç - Allianz Türkiye

Kullanıcı hikayesi puanlaması özellikle çevikliğe yeni geçen takımlarda başta karmaşık gelebilir. Gelin hikâye puanlarını yeni başlayanlar için biraz daha anlaşılır kılalım. 

Bildiğiniz gibi, kullanıcı hikâyesi puanlaması, hikâyelerin karmaşıklığını ve geliştirme süresini tahmin etmeye yardımcı olan bir teknik. Hikâye puanları, onları gerçekleştirirken gösterilen çaba ile doğrudan ilgilidir. Farklı hızlarda çalışan ekip üyelerinin iletişim kurmasına ve birlikte çalışırken yapacakları iş miktarını tahmin etmelerine yardımcı olurlar. Siz ister kartlarla, ister beden ölçüleri ya da Fibonacci sayı serisiyle tahmin yapıyor olun, aklınızda tutmanız gereken, hikaye puanlarının göreceli ölçü birimleri olduğudur. 

Kıdemli bir takım üyesi, belirli bir iş listesi (backlog) öğesini 8 saatte tamamlayabilirken, daha yeni ve deneyimsiz bir üyenin aynı işi yapması 16 saat sürebilir. Ancak her ikisi de bunun 1 puanlık bir hikâye olduğu konusunda hemfikir olarak ortak bir anlayışla tahmin yapmalıdır. 

Şimdi, 1 puanın belirli bir saat sayısına eşit olmamasının nedenini inceleyelim. 

En basit haliyle, takımda iki üye olduğunu düşünelim: Biri deneyimli, diğeri yeni. Yeni üyenin dört saatte tamamlayabileceği bir görevi, deneyimli üye bir saatte yapabilir. Takımın aşağıdaki gibi 25 puanlık bir iş listesinde, deneyimli olan üye dört kat daha üretken olduğu için, sprinti dört kat daha fazla puanla tamamlayabilir. Yani, sprintte planlanan 25 puanın 20'sini kıdemli üye, 5'ini ise yeni üye yapar. Yeni üye, beş öğeden herhangi biri üzerinde çalışabilir ve sprint sırasında başarılı bir şekilde tamamlar. Diyelim ki D öğesini seçti. Bu durumda, kıdemli üyeye A, B ve C öğeleri kalır.

hikaye ve puan tablosu

Peki, “1 puanı tamamlamak kaç saat sürer?” diye soran birine ne deriz? Bu örnek için 1 haftanın 40 saatlik bir sprint olduğunu varsayarsak, üç olası cevap vardır:

  • Kıdemli üye 40 saat çalışır ve 20 puan verir. Bu nedenle, 1 puan = 2 saatlik çalışmadır. 
  • Yeni üye 40 saat çalışır ve 5 puan verir. Bu nedenle, 1 puan = 8 saattir. Bu da kıdemli üyenin 4 kat daha üretken olduğu şeklindeki ilk varsayıma karşılık gelir. 
  • Birlikte 80 saat çalışırlar ve 25 puan tamamlarlar. Bu nedenle 1 puan = 3,2 saat (80/25) olur.

Puan ve saat arasında bir denklik olmadığını bu örnekten de anlayabiliriz. Kıdemli üye için 1 bir puan 2 saat iken, yeni üye için 8 saat, takım için 3,2 saattir. Ancak takım 1 puanı 3,2 saat olarak tanımlarsa, her ikisi de tahminler üzerinde anlaşamazlar çünkü 3,2 saatte çok farklı sonuçlar verirler. Evet hikâye puanları çaba ile ilgilidir ancak her puanı tamamlamak için gereken süre tüm ekip üyeleri için aynı miktara sabitlenemez. 

Puanları belirli saatlere eşitlemeyle ilgili diğer sorun ise ekip üyelerinin artık soyut düşünmemesidir. Hikâye puanlarını saatlere dönüştürmeye çalıştığınızda, her ekip üyesinin kafasında saatten hikâye puanlarına dönen bir hesaplayıcı başlatırsınız. Ekip üyeleri önce saat sayısını kullanarak zihinsel olarak tahmin yapacak ve ardından bu tahmini puanlara çevirecektir.

Özetle, bir hikâyeyi farklı saatler içinde tamamlayabilen üyelerin aynı sürede bitirmeye sabitlenmeleri matematiksel olarak mümkün olsa da; bir tahmin üzerine anlaşırken birbirlerinden uzaklaşırlar. Puanlar ve saatler arasındaki ilişki eşdeğer hale geldiğinde, puanlar artık göreceli olmaz ve tahmin tamamen işi kimin yaptığına bağlı hale gelir. Bu durum hem bağımlılık yaratır hem de sürdürülebilir değildir. Özellikle takımlardaki üye değişimlerinde, yeni üyelerle birlikte belli işlerde uzmanlığı yüksek olan üyelerin ayrıldığı ya da iş devri yaptığı örneklerde bu bağımlılıklar takımları zorlar ve çevik çalışmalarının önüne geçer. Ve hiçbirimiz, hiçbir takımda bunu yaşamak istemeyiz değil mi?

 

Ufak bir not: Bu konu hakkında merak ettiklerini sormak için buraya tıklayarak bize ulaşabilirsin.

Referans: https://www.mountaingoatsoftware.com/blog/dont-equate-story-points-to-hours

 

Yorumlar

Resimli CAPTCHA
Resimde görünen karakterleri girin.