Scrum Nedir? Scrum Rollerini Tanıyalım
Son dönemlerde yazılım projelerinin karmaşıklaşması ve müşterilerle etkileşimin zorlaşmasından dolayı yepyeni bir kavram ortaya çıktı; Scrum. Yazılım dünyasında sıklıkla kullanılan ve proje süreçlerinin yönetilmesini direkt etkileyen Scrum kavramını, prensiplerini, yapısını ve rollerini sizin için araştırdık.
Gelişen teknolojinin hızı ve projelerin büyüklüğü ile yazılım sürecinde müşterilerle iletişim problemleri oluşmaya başladı. İşte bu problemin giderilmesi için de Scrum proje yönetimi kavramı doğdu; Çevik (Agile) Yazılım Geliştirme Manifestosu olarak açıklanan Scrum ile doğru iletişim ve işbirliği sağlanarak, projelerin en iyi şekilde geliştirilmesi ve yönetilmesi hedefleniyor. Scrum kavramı hakkında tüm merak edilenleri sizler için hazırladık.
Scrum Prensipleri Nedir?
Teknolojinin çok hızlı gelişmesiyle beraber, müşterilerin talep ve ihtiyaçları da hızlıca farklılaşıyor. Farklılaşan talepler projelere entegre edilemezse süreç olumsuz etkileniyor. Daha başarılı projeler ve daha az hata fikri ile ortaya Scrum, yani Çevik (Agile) Yazılım Geliştirme Manifestosu çıktı. Scrum, tarafların etkileşimi arttıran, işbirliği ve yüz yüze iletişim ile değişime hızla karşılık veren bir sistem. Scrum ile çalışan yazılımlarda düzenli geri bildirim ve onay sağlanarak projedeki hataların en aza indirilmesi hedefleniyor. Şeffaflık, denetleme ve uyarlama prensipleri üzerine kurulan bu manifestoda; projenin ilerleyişi herkes tarafından görülebilir, kontrol edilebilir ve yapılacak değişiklikler proje ile uyum içinde olur.
Scrum Yapısı Nasıldır?
Scrum en basit açıklama ile bir proje yönetim sürecidir. Bu süreçte belirlenen kavramlar, roller ve toplantılarla planlama, görevlendirme ve iletişim en üst seviyede tutularak projenin son teknolojiye en uygun ve en kusursuz şekilde tasarlanması amaçlanır.
- Kavramlar
- Product Backlog ile proje sonunda ne üretilmek isteniyor, bunun için gereksinimler nedir, sorularına yanıt aranır. Product owner, Product Backlog'a ihtiyaçlara göre eklemeler ve çıkarmalar uygulayabilir.
- Product Backlog Item, Product Backlog içindeki gereksinimler
- Sprint, projeler sprintlere ayrılır. Scrum etkileşimi sprint dönemlerinde yapılır. 1-2 haftalık süreçlerdir.
- Sprint Backlog, bir sprint boyunca yapılacak, geliştirme takımı tarafından alınan Product Backlog Itemleri ve zaman çizelgesini oluşturur.
- Scrum Board, sprint yönetimi burada yapılır. yapılacak olanlar “to do” bölümünde belirtilir. Takım üyesi işe başladığında maddeyi “in progresse” bölümüne taşır. İş test aşamasına hazırsa “to verify” durumuna getirilir. Kontrollerden sonra “done” alanına taşınır.
- Burndown Chart, yatayda sprint günlerini, dikeyde sprintte kalan işleri gösteren grafiktir. Şeffaflık ilkesini yansıtır.
- Roller
- Chicken Roller; Scrum sürecinde aktif yer almayan kişiler
- Pig Roller; sürece dahil olan ve projede iş yapan kişilerdir.
- Product Owner; projenin özelliklerini tanımlar. Product Backlog'u oluşturur. Geliştirme takımı ve müşteri arasındaki iletişimi sürdürür. Sprint’i iptal edebilir.
- Scrum Master; Scrum kurallarını, teori ve pratiklerine hakimdir. Takımın uygulama sürecindeki sorumlu kişidir. Ancak yönetici değil sadece sorunları ortadan kaldırmakla yükümlüdür.
- Geliştirme Takımı, Sprint’teki işleri yapacak olan aktif kişilerdir. Sprint Backlog'u oluştururlar. İşin verilmesini beklemez, kendi kendilerini planlarlar. Tek bir görevleri olmaz, herkes her işi yapabilir. 5-7 kişilik bir gruptur.
- Toplantılar
- Sprint Planning; Product Backlog’daki gereksinimler geliştirme takımı tarafından tasklara ayrılır. Bu toplantıya Pig rollerin tamamı katılır.
- Daily Scrum; her gün aynı yerde, aynı saatte yapılan 15 dakikalık toplantılardır. Gelecek 24 saat planlanır. Bir önceki gün raporlanır. Bir kişinin olmaması etkilemez ancak takımın büyük çoğunluğu yoksa toplantı yapılamaz.
- Sprint Rewiew; her sprint sonunda düzenlenir Sprint’te ortaya çıkan ürün üzerine konuşulur. Yazılımın ürün sahibinin gereksinimlerine uygun olup olmadığı değerlendirilir. Fark edilen hatalar düzeltilir.
- Sprint Retrospective; Sprint sürecindeki işlerin kalitesi ve doğruluğunun değerlendirildiği toplantılardır. “Daha iyi nasıl yapılabilir?” ana sorudur.