Agile (Çevik) Proje Yönetimi, günümüzün hızla değişen iş dünyasında başarılı olmanın anahtarı haline gelmiştir. Bu yönetim yaklaşımı, geleneksel ve sıkı yapılanma yerine esneklik ve adaptasyon üzerine odaklanarak, projelerin daha hızlı ve etkili bir şekilde tamamlanmasını sağlar.
İşte bu esnek ve etkili yaklaşımlardan biri de Scrum’dur. Scrum, daha çok yazılım geliştirme olmak üzere benzeri projelerde de kullanılan bir çevik metodoloji olarak öne çıkar. Bu yazımızda, Scrum’un ne olduğunu, nasıl çalıştığını ve iş dünyasındaki önemini inceleyeceğiz.
Scrum, proje yönetiminde işi parçalara ayırarak ve düzenli aralıklarla yapılan geri bildirim toplantılarıyla ilerleyen çevik bir proje yönetim tarzıdır. Bu metodolojide müşterilerin (patronların/bölüm sorumlularının) sürece dahil olduğu ve ekip üyeleriyle iç içe bir süreç geçirdiğini söylemekte fayda var. Böylelikle daha şeffaf, hedefe yönelik ve hızlı reaksiyon alınan bir proje döngüsü gerçekleşmiş oluyor.
Projenin başlatılmasının ardından Product Owner tarafından belirlenen Produc backlog üzerine (Prodcut owner – Scrum Master – Developers katılımyla) bir Sprint Planning toplantısı gerçekleştirilir. Bu toplantıda yapılacak küçük parçalı işler developers tarafından alınır. Geliştiriciler kendi hızlarına ve işe verdikleri süreye göre işleri yapmaya başlarlar. İlerlemelerini, aldıkları işi ve iptal edilen süreçleri SCRUM TASK BOARD üzerinden işlerler. Sprintler, her sprint sonunda Product owner’ a sunulmak üzere 2-4 haftalık olmak üzere belirlenir.
Daily Scrum denilen ve genellikle her gün aynı yer ve saatte yapılan 15-20 dakikalık toplantılar yapılır. Bu toplantılarda üyelerin daveti beklenmez ve ne olursa olsun yapılır. Bu toplantılarda kısaca dün ne yaptım, proje nasıl gidiyor, problem var mı ve bugün ne yapacağım dikeyleri üzerinde hızlı bilgi akışı sağlanır.
Sprint sonuna geldiğimizde Sprint Review ve Sprint Retrospective denilen iki farklı süreç vardır:
Sprint Review her sprintin sonunda yapılır ve sprint özelinde genel bir değerlendirme toplantısıdır.
Sprint Retrospective ise sprint sürecindeki işlerin kalitesinin-sürecin ve hataların değerlendirilidiği toplantılardır. Bu toplantılarda Scrum Master etkin rol oynar ve Scrum takımının ilerideki sprintlerde daha efektif performans vermesi için geliştirmelerde bulunur.
Product Owner için ürünün vizyon sorumlusu demek yanlış olmaz. Müşteri (patron/bölüm sorumlusu) ile developers arasındaki ilişkiyi sağlar. Yapılması gereken işleri belirleyerek (sprint dediğimiz tüm süreç için) Product backlogu oluşturur. Sprintin amacını ve vizyonunu belirler.
*Product Owner için Product Backlog oluşturmak çok önemlidir. Product Owner işinin neredeyse %30 ‘luk bir kısmını bu sürece ayırır.
Scrum Master tüm Scrum sürecinde “Hizmetkar Lider” konumundadır. Çevik Proje yönetimine ve Scrum’a hakimdir. Bu nedenle sprintlerin sorunsuz geçmesini sağlamaya çalışır. Süreç içerisindeki engelleri ve dikkat dağıtıcı unsurları en aza indirmeyi hedefler. Aynı zamanda proje takımına koçluk ve mentorluk sağlar.
Developerlar, Scrum sürecinin teknik uzmanları konumundadır. Ürünün üretimiyle ilgili tüm süreçlerden sorumlu tutulurlar. Product owner tarafından belirlenen “yapılacaklar listesini” product backlogta parçalar halinde alıp çalışmak ile yükümlüdürler Bu görevleri kendilerinin alıp geliştirmeleri beklenir. Örneğin: Müşteri memnuniyeti için daha hızlı serverlara ihtiyacımız var şeklindeki bir product baklog girdisini, bu alanda uzman olan bir geliştiricinin kendi başına alması ve bu bölümün sorumluluğunu üstlenmesi gerekir. Böylelikle developer (server hızlandırma) çalışmasının tüm sorumluluğunu ve hesap verilebilirliğini üstüne almış olur.
*Developerlar genellikle 5-7 kişi arasında değişir ve çapraz görev dağılımı yapar. (Yani birden farklı görevi yapabilecek uzmanlıklarda olurlar)
Scrum konusunda birçok şeyden bahsettik. Peki son olarak Scrum ne gibi avantajlar – dezavantajlar sunuyor?
Scrum konusunda birçok şeyden bahsettik. Peki son olarak Scrum ne gibi avantajlar – dezavantajlar sunuyor?
Hızlı ve etkili proje tamamlama: Scrum, işleri küçük parçalara bölerek daha hızlı ve etkili bir şekilde ilerlemeyi sağlar. Bu da projenin zamanında ve bütçe dahilinde tamamlanmasını kolaylaştırır.
Büyük projelerin küçük görevlere bölünerek tamamlanabilmesi: Scrum, büyük ve karmaşık projeleri daha yönetilebilir parçalara ayırarak işleri daha kolay hale getirir. Bu da projenin yönetimini ve ilerlemesini daha etkili kılar.
Ekipteki herkesin süreç akışına dair net bir fikri olması: Scrum, düzenli olarak yapılan toplantılar ve sürekli iletişim sayesinde ekipteki herkesin projenin ilerleyişi hakkında net bir fikre sahip olmasını sağlar. Bu, ekip üyelerinin daha iyi koordine olmasını ve ortak hedeflere odaklanmasını sağlar.
Sık yapılan toplantılar ile sürece dair daha şeffaf bilgilerin edinilmesi: Scrum’un sık yapılan toplantıları, ekiplerin sürecin her aşamasında neyin işlediğini ve nelerin geliştirilmesi gerektiğini daha iyi anlamasını sağlar. Bu da projenin şeffaf bir şekilde yönetilmesini sağlar.
Yaratıcılığın ortaya çıkması: Scrum, ekiplerin belirli bir süreç içinde kendilerine verilen görevleri nasıl çözecekleri konusunda daha fazla özgürlük tanır. Bu da ekiplerin yaratıcı çözümler bulmalarına olanak tanır.
Ürüne karşı aidiyet hissedilmesi: Scrum, ekiplerin belirli bir projenin tamamlanmasında daha fazla sorumluluk hissetmelerini sağlar. Bu da ekip üyelerinin projeye daha fazla aidiyet hissetmelerini sağlar ve motivasyonlarını artırır.
Yeterli deneyime sahip olmayan ekipler için zorlayıcı olabilir: Scrum, düzenli ve hızlı iterasyonlar gerektirir, bu da deneyimsiz ekipler için zorlayıcı olabilir ve başlangıçta bazı sorunlarla karşılaşabilirler.
Sürekli değişen gereksinimlerle başa çıkmak zor olabilir: Scrum, esneklik sağlar ancak sürekli değişen gereksinimlerle başa çıkmak ve bunları etkili bir şekilde yönetmek zor olabilir.
Takım üyeleri arasında iletişim eksikliği: Scrum, düzenli iletişim ve işbirliği gerektirir ancak takım üyeleri arasında iletişim eksikliği veya uyumsuzluk yaşanabilir, bu da projenin ilerlemesini engelleyebilir.
Sürekli değişen öncelikler: Scrum’da öncelikler sürekli olarak değişebilir ve bu da ekip üyeleri arasında belirsizlik yaratabilir ve motivasyonu azaltabilir.
Sürekli takip gerektiren yönetim: Scrum, düzenli olarak takip ve güncelleme gerektirir, bu da yöneticilerin sürekli olarak proje ilerlemesini takip etmelerini gerektirir ve bu da zaman alabilir.
Scrum’un günümüz iş dünyasında giderek daha fazla tercih edilmesinin altında yatan nedenlerin anlaşılması, iş süreçlerinin hızla değişen ve rekabetin yoğun olduğu ortamlarda başarı için kritik öneme sahiptir. Esneklik, şeffaflık ve sürekli iyileştirme üzerine odaklanan bu yönetim metodolojisi, projelerin hızlı bir şekilde tamamlanmasını sağlamanın yanı sıra ekiplerin verimliliğini artırır ve müşteri memnuniyetini maksimize eder. Ancak, Scrum’un bazı dezavantajları da göz ardı edilmemelidir; deneyimsiz ekipler için zorlayıcı olabilir ve sürekli değişen gereksinimlerle başa çıkmak zor olabilir. Sonuç olarak, Scrum’un doğru şekilde uygulanması ve sürekli olarak iyileştirilmesi, işletmelerin rekabet avantajı elde etmelerine ve başarılı olmalarına yardımcı olabilir.
Bu Blog Gökberk Ata Mert tarafından İstinye Garage Incubation Hub’a yazılmıştır.