Spike: Belirsizliği Zaman Kutusuyla Azaltan Araştırma Çalışması
Spike, bir işi tahmin edemeyecek ya da güvenle planlayamayacak kadar belirsizlik varsa, o belirsizliği gidermek için zaman kutusuna alınan kısa araştırma çalışmasıdır. Çıktısı çalışan ürün değil, bilgidir.
Bir bakışta
- Spike, ürün değil bilgi üretir. Amaç bir soruya cevap bulmaktır: yaklaşım uygulanabilir mi, hangi seçenek daha uygun, iş ne kadar büyük.
- Zaman kutusu spike'ın tanımının parçasıdır. Süre baştan sınırlanır; dolduğunda ekip öğrendiğiyle karar verir, açık uçlu araştırmaya dönüşmez.
- Her belirsizlik için spike gerekmez. Küçük ya da hızlı denenebilecek sorular normal çalışmanın içinde çözülür; spike teknik veya işlevsel bilinmeyenler için ayrılır.
- Çıktısı bir karar ya da yeni tahmin olmalıdır. Spike bittiğinde ekip bir cevap, bir öneri ve bir sonraki adımla çıkmalıdır.
Spike nedir?
Spike, çevik projelerde belirsizliği azaltmak için yapılan kısa ve zaman kutulu araştırma çalışmasıdır. Agile Alliance, ekibin teknik unsurları tam anlamadığı için bir hikâyeyi tahmin edemediği durumlarda o hikâye ya da birkaç hikâyenin ortak yönü üzerinde odaklı araştırma yapılabileceğini söyler. Spike'lar bu amaçla ayrılmış kısa, zaman kutulu süreçler olarak tanımlanır.
Burada kritik fark, spike'ın bir özelliği teslim etmek için değil bir soruyu cevaplamak için yapılmasıdır. Sonunda elde edilen şey çalışan bir ürün parçası olmak zorunda değildir; bir prototip atılabilir, notlar bir karar önerisine dönüşür.
Ne zaman spike gerekir?
Spike, ekibin iş hakkında eksik bilgisi yüzünden tahmin ya da plan yapamadığı durumlarda gündeme gelir. • Yeni bir teknolojiyle, kütüphaneyle ya da dış servisle ilk kez çalışılacaksa. • İki mimari yaklaşımdan hangisinin uygulanabilir olduğu bilinmiyorsa. • Bir hikâye çok büyük ya da belirsizdir ve parçalara bölünemiyorsa. • Kullanıcının gerçekten ne istediğine dair bir hipotezin hızlıca sınanması gerekiyorsa.
Belirsizlik küçükse spike gereksiz yüktür. Bir cevabı kısa bir deneme ya da bir konuşma verebiliyorsa onu ayrı iş kalemi yapmak süreci şişirir.
Belirsizliğin büyüklüğü yöntemi belirler
Spike mı, normal iş mi?
- Evet, eksik bilgi büyük ve kısa denemeyle kapanmıyorSpike açSoruyu, zaman kutusunu ve beklenen çıktıyı yaz.
- Evet ama bir konuşma ya da kısa deneme yetiyorNormal çalışmanın içinde çözAyrı iş kalemi açmak gereksiz yük getirir.
- Hayır, iş anlaşılmış durumdaHikâye olarak tahmin et ve planlaSpike'a gerek yoktur.
Spike nasıl yürütülür?
Etkili bir spike şu öğelerle başlar: net bir soru, zaman kutusu, beklenen çıktı ve bitiş ölçütü. "Bu API aylık yükümüzü kaldırır mı?" iyi bir sorudur; "API'yi araştır" değildir.
Zaman kutusu yaklaşık tahmin yerine geçer. Süre dolduğunda ekip neyi öğrendiğine bakar ve şu yollardan birini seçer: cevap bulundu ve iş artık tahmin edilebilir, cevap kısmen bulundu ve ikinci bir kısa spike gerekir, ya da yaklaşım uygulanamaz ve alternatife geçilir. Bulgular ekibin görebileceği bir yere kısa notla yazılır; çünkü bilgi yalnız bir kişide kalırsa spike değerini kaybeder.
Spike sırasında yazılan kod çoğu zaman atılır. Üretim koduna dönüşecekse ayrıca ve normal kalite ölçütleriyle yeniden yazılması beklenir.
Spike ve Scrum
Ekipler spike'ı genellikle Ürün Birikimi'ne bir madde olarak yazar, böylece zaman ve çaba görünür olur. Bazı ekipler bunu ürün birikimini iyileştirme çalışmasının parçası sayar, bazıları Sprint planına alarak şeffaflığı artırır. İki yaklaşım da kullanılır; önemli olan spike'ın ekip için görünür olması ve zaman kutusunun korunmasıdır.
Spike'ın puanlanıp puanlanmayacağı ekipler arasında tartışmalıdır. Zaman kutusu zaten süreyi sınırladığı için birçok ekip puan yerine süre belirtir. Hız (velocity) hesabında spike'ı saymak, ürün teslim etmeyen çalışmayı ilerleme gibi göstereceğinden dikkat ister.
Sık yapılan hatalar
En sık görülen hata zaman kutusunu esnetmektir. Süre uzadıkça spike gizli bir geliştirme çalışmasına dönüşür ve plan yine belirsiz kalır.
İkinci hata, çıktıyı baştan tanımlamamaktır. "Daha çok öğrendik" bir sonuç değildir; karar, öneri ya da yeni tahmin olmalıdır. Üçüncü hata, her zor işi spike'a çevirmektir; ekip kararsızlıktan kaçınmak için araştırmaya sığınırsa belirsizlik azalmaz, ertelenir. Çevik risk yönetimi, spike'ı bu risk azaltma araçlarından biri olarak anar; ancak sıralama ve eşik kararı ayrı bir konudur.
Spike Mindset programlarında nerede geçer?
Konu, PSPO I Product Owner Hazırlık programında Ürün Birikimi ve önceliklendirme çalışmasının bir parçası olarak, IT Proje Yönetimi Sertifika Programı'nda ise IT projelerinde Agile ve Scrum uygulamaları kapsamında anlam kazanır. Product Owner'lar ve proje yöneticileri için spike, belirsiz bir maddeyi sıralamadan önce bilgi toplamanın düşük maliyetli yoludur.
İlgili Mindset programı
PSPO I Product Owner Hazırlık
Sık sorulan sorular
Spike bir kullanıcı hikâyesi midir?
Hikâye, kullanıcıya değer sunan bir iş tanımıdır; spike ise bilgi üretir. Birçok ekip spike'ı ürün birikiminde bir madde olarak izler, ama bunu kullanıcı hikâyesi sayıp müşteriye teslim edilmiş iş gibi raporlamak yanıltıcıdır. Çıktısı karar ya da tahmin olarak ifade edilmelidir.
Spike ne kadar sürmeli?
Sabit bir süre yoktur; belirsizliğin büyüklüğüne ve ekibin ritmine göre belirlenir. Süre, sorunun cevabını bulacak kadar uzun ama gizli geliştirmeye dönüşmeyecek kadar kısa olmalıdır. Sprint'ten uzun bir spike genellikle sorunun bölünmesi gerektiğini gösterir.
Spike'ın sonunda kod yazılmış olmalı mı?
Zorunlu değil. Bazı spike'lar yalnız okuma, deneme ve not çıkarmayla biter; bazılarında atılabilir prototip yazılır. Kod ürüne girecekse sonradan düzgün biçimde yeniden yazılması gerekir. Çıktı kod değil, ekibin bir sonraki adımı belirleyebileceği bilgidir.
Spike başarısız olabilir mi?
Yaklaşımın işe yaramadığını göstermek de başarıdır. Spike, doğru cevabı bulmayı değil, belirsizliği azaltmayı hedefler. Zaman kutusu dolmuş ve cevap çıkmamışsa bile, hangi yolun kapandığı bilinir ve ekip bu bilgiyle yeni bir plan yapar.