Scrum Nedir? Scrum Ne İşe Yarar? Scrum Yapısı
TEKNOLOJİ

Scrum Nedir? Scrum Ne İşe Yarar? Scrum Yapısı

09 Kasım 2020 01:28
  • Whatsapp'ta Paylaş

    Zaman geçtikçe, çoğu proje aşağıdaki sorunlardan dolayı başarısız olmaya başlıyor: projeler büyüyor ve daha karmaşık hale geliyor, müşteriler tüm resmi göremiyor, ihtiyaçlarını tam olarak gösteremiyor, teknolojideki hızlı değişimler ve ihtiyaçlardaki hızlı değişiklikler Ve onu projemize entegre edememe. Dolayısıyla proje süreçlerini yönetme sorunu önemli bir konu haline geldi ve "çevik(agile) yazılım geliştirme manifestosu" ortaya çıktı.

    Bu çevik yazılım geliştirme manifestosu nedir? Süreçler yerine bireylerin etkileşimine, kapsamlı dokümantasyondan ziyade çalışan yazılıma, sözleşme görüşmelerinden ziyade müşterilerle işbirliğine ve planlara uymaktan ziyade değişikliklere yanıt vermeye dayanır. Böylelikle projenin son aşamasında bile değişen ihtiyaçlar kabul edilebilir, bildirim süresini kısaltarak hata payını azaltır ve süreç boyunca müşterilere, işletme sahiplerine ve yazılım geliştiricilere yüz yüze iletişime dayalı çalışan yazılımlar sunar. Bilgi alışverişi sağlar.

    Peki Scrum nedir? Scrum; Çevik proje yönetimi yöntemlerinden biridir. Karmaşık yazılım süreçlerini yönetmek için kullanılır. Bunu yaptığınızda bütünü yok edeceksiniz. Tekrara dayalı bir yaklaşım izler. Düzenli geri bildirim ve planlama yoluyla hedeflere ulaşılmasını sağlar. Bu anlamda talep odaklı esnek bir yapıya sahiptir. Müşteri ihtiyaçlarına göre şekillendiği için müşteri geri bildirimlerine göre yapılandırılabilir. İletişim ve takım çalışması çok önemlidir. 3 temel ilkeye dayanmaktadır;

    Şeffaflık; projenin ilerlemesini, sorunlarını ve gelişimini herkes görmelidir.

    Denetleme; proje ilerlemesini düzenli olarak kontrol edin.

    Uyarlama; proje yapılabilecek değişikliklere uyum sağlayabilmelidir.

    Scrum Yapısı

    Kavramlar

    1)Product Backlog; Projenin gerektirdiği gereksinimlerin bir listesidir. "Ne üretmek istiyorsunuz?" Bu sorunun cevabını arıyorsunuz. Ürün sahipleri, müşterilerden gereksinimleri alır ve gereksinimleri öncelik sırasına göre sıralar. Ürün sahibi, değişen ihtiyaçlara göre ürün biriktirme listesine ekleyebilir veya silebilir. Bu nedenle değişiklikler, projenin her aşamasında kolaylıkla projeye entegre edilebilir.

    2)Product Backlog Item; Product backlog içindeki her bir gereksinime verilen isimdir.

    3)Sprint(Koşma); Proje sprint denilen küçük kısımlara ayrılır. Scrum içerisindeki tüm aktiviteler sprint içerisinde gerçekleşir.1–2 haftalık süreçlerdir.

    4)Sprint Backlog; Ürün biriktirme listesi öğeleri, geliştirme ekibi tarafından öncelik sırasına göre sprint edilir. Sprint sırasında yapılacak projelerin bir listesi oluşturulur. Ayrıntılı bir çalışma programı hazırlanır.

    5)Scrum board; Bir sprint içerisinde yapılacak olan maddeler burada yönetilir. Yapılacak olan tasklar “TO DO” bölümüne alınır. Takım üyesi bu işe başladığında “IN PROGRESS” bölümüne getirilir. Bir iş, test için hazırsa “TO VERIFY” durumuna getirilir. İş, kontrol edildikten sonra “DONE” bölümüne getirilir. Scrum toplantılarında bu maddeler durumlarına göre yerleri değiştirilir.

    6)Burndown Chart; Yatay ekseninde sprintin günlerini, dikey ekseninde sprintte kalan işi gösteren grafiktir. Scrum’un temel ilkelerinden olan şeffaflığı sağlar.

    Roller

    Pig Roller; Scrum sürecine dahil olanlar yani projede asıl işi yapan kişilerdir. Bunlar Scrum Master, Product Owner, Geliştirme Takımı’dır.

    1) Product Owner; Geliştirme takımı ve müşteri arasındaki iletişimi sağlar. Projenin özelliklerini tanımlar. Projenin önceliklerine göre product backlogu oluşturur. Sprint’i iptal yetkisine sahiptir. Sprint neden iptal edilmek istenebilir? Hızla değişen ortamlarda bir sprinte alınan işlerin iş birimi için önemi kalmamış olabilir ya da sprinte alınan işlerden daha önemli işler ortaya çıkabilir. İş sahibi bunu görüp sprinti iptal etmek isteyebilir.

    2) Scrum Master; Scrum kurallarını, teorilerini ve pratiklerini iyi bilir ve takımın bu kurallarını uygulamasından sorumlu kişidir. Takımın yöneticisi değildir. Takımı rahatsız eden, verimli çalışmalarını engelleyen durumları ortadan kaldırır.

    3) Geliştirme Takımı; Bir Sprint’e alınan bütün işleri tamamlayacak özelliklere sahip kişilerdir. sprint backlogu oluştururlar. Kendi kendini yönetir. İşin verilmesini beklemezler, işi kendileri alır ve geliştirirler. Kişilerin tek bir görevi yoktur, çapraz görev dağılımı yaparlar, herkes her şeyi yapabilir konumdadır. 5–7 kişi arasında değişir. Projenin geliştirilmesi ile ilgili sorumluluk geliştirme takımına aittir.

    Chicken Roller; Scrum’ın işleyişinde aktif olarak yer almayan kişilerdir. Müşteriler, satıcılar gibi.

    Toplantılar

    1) Sprint Planning; Product backlog ile belirtilen gereksinimler, bu toplantı ile geliştirme takımı tarafından küçük görevlere (task) ayrılır. Takımdaki her bir kişi kendi hızına göre bu taskleri kendilerine alır. Bu toplantıya product owner, geliştirme takımı ve scrum master katılır. Sprintler; her sprint sonunda product owner a sunulmak üzere yazılım geliştirmeyi hedefleyecek şekilde belirlenir.1–3 haftalık sprintler oluşturulur.

    2) Daily Scrum; Her gün aynı yerde aynı saatte ayak üstü yapılan 15 dakikalık toplantılardır. Üyeler davet edilmeyi beklemezler. Bu toplantı gelecek 24 saati planlamak üzere yapılır. Takımdaki her üye dün ne yaptım,bugün ne yapacağım, işimi engelleyen herhangi bir sorun var mı sorularına cevap verir. Bu sayede herhangi bir sorunu var ise scrum master bu problemi ortadan kaldırır. Takım üyelerinden bu probleme yardımcı olabilecek biri var ise toplantı sonunda iletişime geçebilirler. Daily scrum her ne koşulda olursa olsun yapılır. Takımdaki birinin geç kalması veya gelmemesi toplantıyı etkilemez. Sadece takımdaki büyük çoğunluk yok ise toplantı yapılmaz.

    3)Sprint Review; Her sprint sonunda yapılır. Yapılan sprint gözden geçirilir, ortaya çıkan ürün değerlendirilir. Amaç yazılımın ürün sahibinin gereksinimlerine uygun olarak geliştirildiğinden emin olmaktır. Eğer bir hata var ise farkedilir ve düzeltilir.

    4)Sprint Retrospective; Sprint boyunca yapılan işlerin kalitesinin, doğruların ve yanlışların değerlendirildiği toplantıdır. Bu toplantı scrum takımının kendini geliştirebilmesi için bir fırsattır. “Neleri daha iyi yapabiliriz?”, “Nasıl daha iyi yapabiliriz?” sorularına cevap aranır. Bu aşamadan sonra bir sonraki sprint planning toplantısı gerçekleştirilerek yazdıklarımızın hepsi tekrardan yaşanır.

  • Whatsapp'ta Paylaş

    Yorumlar

    İlk Yorum Yapan Sen Ol smiley


    Yorum Yap