Page 153 - Yazılım Teknolojileri Araştırma Bülteni 2023
P. 153
Scrum’da Uygulanan Kötü Pratikler | 153
Scrum Takımı
Geliştiriciler (Developers)
Scrum kılavuzuna göre, bir üründe ilerleme (increment) oluşturmak için sprint boyunca efor
harcayan her bir Scrum takımı üyesi aynı zamanda geliştiricidir. Geliştiriciler ürün iş listesini
oluşturur ve Bitti Tanımı’na bağlı kalarak kaliteyi korurlar. Çok disiplinli, disiplinler arası bir
takım oldukları için kendi kendilerine organize olabilirler. Scrum etkinliklerinde bahsedilenlerin
bir çoğunda geliştiriciler aktif olarak görev aldığı için scrum etkinliklerinde bahsedilen hatalı
uygulamaların bir çoğu geliştiriciler için de konuşulabilir. Geliştiricilerin bahsedilen hataları
scrum süresince tekrarlamaması gerekmektedir. Sprint planlama yaparken kapasitenin üzerinde
iş alınırsa doğal olarak sprint hedefine ulaşmakta zorluk çekilecektir. Izinli veya raporlu takım
üyeleri, resmi tatiller, bayramlar gibi durumlar dikkate alınarak ürün iş listesi oluşturulmalıdır.
Ayrıca her sprinte kod iyileştirmesi (refactor) için zaman ayrılmalıdır. Aksi durumda teknik borçlar
(technical debts) çoğalacak ve ilerisi için daha kötü senaryolar bizleri bekleyecektir. Planlama
sırasında kod iyileştirmesine zaman ayrıldığı gibi geliştiricilere kendi özgür alanında çalışmalarını
gerçekleştireceği vakit de bırakılmalıdır. Tüm bu durumlar göz önüne alınarak sprint planlama
tamamlanmalıdır. Sprint planlama esnasında işler üzerinde ne aşırı tahmin yürütülmelidir ne de
yetersiz planlama yapılmalıdır.
Ürün Sahibi (Product Owner)
Ürün sahibi, takım üyeleri tarafından gerektiğinde ulaşılabilir olmalıdır. Böylece geliştiricilerin
soruları olduğunda ona ulaşabilirler ve cevap alabilirler. Ulaşılamaz olduğu durumda yanlış
geliştirmeler ortaya çıkabilir. Ürün sahibi takımla birlikte çalışmalıdır. Ürün sahibi sorumluluklarını
ve övgüleri takımla paylaşmalıdır; eğer takımın başarılarının tüm övgüsünü kendine mâl eder veya
hataların sorumluluğunu da takıma yüklerse takımın motivasyonu etkilenir ve güvensizlik ortamı
oluşur.
Ürün iş listesi, ürün sahibinin sorumluluğundadır. Olması gerektiği gibi güncel ve sıralı tutması
gerekmektedir. Gerekli işleri eklemediğinde veya gereksiz (eskiden kalıp geçersizleşen veya
yapmaktan vazgeçilen) işleri silmediğinde takımın işleri yönetememesine yol açar. Işler ürün iş
listesindeyken, ürün sahibi işler üzerinde istediği gibi değişiklik yapabilir. Ama ürün iş listesine
girdiği zaman, işler geliştiricilerin sorumluluğunda olur. Bu yüzden ürün sahibi değişiklik yapamaz.
Değişiklik yapıldığında kapsam değişir ve bu da geliştiricilerde kafa karışıklığına, planın bozulmasına
ve hedeften sapılmasına yol açabilir.
Çok önemli bir durum olmadığı sürece sprint iptal edilmemelidir. Sprint hedefi ulaşılamaz
olduğunda veya yönetim tarafından hedeften vazgeçildiğinde ürün sahibi bu durumu
düşünmelidir. Iptal için mutlaka takıma danışmalıdır. Sprint hedefi ulaşılamaz olduğunda takım
üyelerinin hedefe ulaşmak için fikirleri olabilir. Hedeften vazgeçildiğinde yine takımın fikirleri
alınmalı ve buna bağlı olarak ortak fikirle hareket edilmelidir. Tam tersi durum olduğunda
ve sprint hedefine sprint sonundan önce ulaşıldığında ürün sahibi, ürün iş listesinden yeni iş