Kategori arşivi: Scrumban

Scrum ve Kanban Arasındaki Benzerlikler ve Farklılıklar

Scrum ve Kanban Arasındaki Benzerlikler ve Farklılıklar

Çevikliği düşününce aklıma gelen ilk iki şey Scrum ve Kanban oluyor. Tabi ki çeviklik sadece bu iki yaklaşımla bitmiyor, çok daha büyük bir şeyi, bir kültürü anlatıyor. Çevik yazılım geliştirme dediğimizde aklımıza gelen bu yaklaşımları ne kadar biliyoruz? Bu soru aklıma düştüğünde cevaplamanın en iyi yolunun bu iki yaklaşımın benzerliklerinin ve farklılıklarının neler olduğu belirleyerek çok daha kolay anlayabileceğimi ve anlatabileceğimi düşündüm. İşte burada Scrum ve Kanban arasındaki benzerlikler ve farklılıklar bulunuyor. Umarım faydalı olur.

Scrum ve Kanban Arasındaki Benzerlikler

  • İkisininde özünde Çeviklik ve Yalınlık bulunur.
  • İşler emir komuta ile değil iş çekme prensibine dayalı tamamlanır.
  • İkiside aynı anda geliştirilen işleri sınırlamayı önerir(Kanban WIP’i limitleyerek bunu direk olarak yaparken, Scrum bir Sprint’te geliştirilecek iş miktarını sınırlayarak yapar).
  • İkiside sürecin iyileştirilmesi için şeffaflığı kullanır.
  • İkiside deneyciliğe dayanır.
  • İkiside olabildiğince erken ve sık yazılım teslimatı yapmaya çalışır.
  • İkisinde de geliştirme takımları kendi kendini yönetir.
  • İkisinde de büyük işlerin küçük parçalara ayrılması tavsiye edilir.
  • Deneysel veriye(Scrum’da takımın ortalama hızı, Kanban’da lead time’a -bir fikrin ortaya çıkışı ve teslim tarihi arasındaki fark) göre teslim planı sürekli olarak güncellenir.
  • İkisinde de özellikle bir pratiğin- TDD, Sürekli Teslim, Refactoring, Acceptance Testing, Small Releases, Simple Design, Coding Standards, Shared Metaphor, Collective Code Ownership-  kullanılması belirtilmemiştir. İçinde bulunulan ortama göre bu pratiklerin benimsenmesi geliştirme takımına bırakılmıştır.

Scrum ve Kanban Arasındaki Benzerlikler ve Farklılıklar yazısına devam et

Product Backlog Refinement (Grooming) Nedir?

Product Backlog Refinement Meeting

Product Backlog Refinement – Grooming Nedir?

Ürün İş Listesi’nin Detaylandırılması, İşlerin Olgunlaştırılması

Product Backlog Refinement aktivitesi Scrum’da bulunan aktivitelerden biridir. Yapılması zorunlu değil fakat faydalıdır. Refinement Toplantısı’ndan kimi zaman “grooming” olarakta bahsedilir(Scrum Klavuzunun 2013 yılının Temmuz ayından önce çıkan versiyonlarında bu aktiviteden grooming olarak bahsedilir). Bu aktivitenin amacı ürün listesini temiz, düzenli tutmak ve Geliştirme Takımı’nın gelecek Sprint’ler içinde Ürün Sahibine sorularını Sprint başlamadan önce sormasıdır. Böylece Ürün Sahibi bir sonraki Sprint’in Planlama Toplantısı’na hazırlıklı olarak gelebilir.

 

Detaylandırma aktivitesinde Geliştirme Takımı ve Ürün Sahibi, Ürün İş Listesi’nde en üstte bulunan maddeler üzerine konuşurlar. Ürün İş Listesi’ndeki maddeler hakkında Geliştirme Takımı’nın soruları olabilir. Toplantıda Ürün Sahibine bu sorular yöneltilir. Ürün Sahibi bütün sorulara toplantı sırasında cevap veremeyebilir. Bu soruları alarak bir sonraki Sprint Planlama Toplantısı’na soruların cevaplarıyla gelmesi harika bir pratik olur.

 

Product Backlog Refinement (Grooming) Nedir? yazısına devam et

Kanban Metodunun İlkeleri

Kanban Boardu
Kanban Boardu

Kanban Metodunun İlkeleri

İlk önce temel ilkeleri kabul edin…

Şimdi yaptığınız şeyle başlayın…

Kısa aralıklarla, evrimsel değişimin sürdürülmesini kabul edin…

Var olan süreç, roller, sorumluluklar & unvanlara saygı duyun…

Daha sonra aşağıdaki 5 maddeyi gerçekleştirin.

  • İş akışını görselleştirme
  • Aynı anda gerçekleştirilen iş sayısını limitleme
  • Akışı yönetme
  • Süreçleri belirgin hale getirme
  • İşbirliği içinde gelişimi destekleme(modeller & bilimsel metotlar kullanma)

Hadi bu maddeleri tek tek inceleyelim…

Şimdi Yaptığınız Şeyle Başlayın

Kanban Metodu sürecinizi değiştirmenizi istemez. Temelinde var olan sürecin evrimleştiği düşüncesi bulunur. İçeriğinde mühendislik çalışması bulunan yeni bir süreç tanımı ya da yeni bir çalışma şekli yoktur. Kanban Yazılım Geliştirme Süreci ya da Kanban Proje Yönetim Metodu diye bir şey yoktur.

Kısa Aralıklarla, Evrimsel Değişimin Sürdürülmesini Kabul Edin

Bir organizasyon ya da takım, içinde bulundukları şartların yumuşak ve evrimsel bir yaklaşımla gelişim için birincil neden olduğunu kabul etmelidir. Belki takım üyelerinin direnişinden dolayı yakın zamanda büyük bir dönüşüm başarısız olmuştur. Organizasyon politikaları gereği, böyle büyük bir dönüşümün yöneticiler için çok riskli olduğu düşüncesiyle teklif bile edilmemiştir ve uygulanmamıştır. Anlaşma olmadan bu yavaş, yumuşak, evrimsel ve artımlı yaklaşım doğru yoldur eğer evrimsel yaklaşım uygulanmazsa Kanban girişimi için doğru çevre ya da yönetim desteği olmayacaktır.

Kanban Metodunun İlkeleri yazısına devam et

Scrum Master Sorumluluk Listesi ve Scrum Master Görevleri

Scrum Master Sorumluluk Listesi

Scrum Master sorumluluk listesi, tüm kontrol listeleri gibi insan dikkatinden ve hafızasından kaynaklı hataları en aza indirmek ya da engellemek için kullanılır. Gözlemlenmesi gerektiği düşünülen noktalar liste içinde belirtilir. Scrum’ı yeni öğrenen takımlarda kontrol listesi kullanmak ve gerekli refleksleri kazanmak çok iyi bir pratik olabilir. Kontrol listesi kullanırken dikkat edilmesi gereken konu; kontrol listesinin yaratıcılığı öldürmemesidir ve liste içinde bulunan maddelerin bir statuko oluşturmamasıdır. Statukodan anlaşılması gereken şey listede bulunan maddelerin olmazsa olmaz olarak görülmesi ve liste de bulunmayan konuların önemsenmemesi olarak düşünülebilir. Bu nedenle Scrum Master sorumluluk listesi 4-5 Sprint kullanılmalı ve bağımlılık kazanılmadan bırakılması yaratıcılığın ölmesini ve statukonun oluşmasını engelleyecektir.

Aşağıdaki kontrol listesi bir Scrum Master’ın Ürün Sahibi, Geliştirme Takımı, Çevik Mühendislik Pratikleri ve çalıştığı organizasyonu gözlemlerken kullanabileceği bir listedir.

Scrum Master Sorumluluk Listesi
Scrum Master’ın Görevleri ve Hizmetleri

Ürün Sahibi Nasıl?

  • Ürün İş Listesi önceliklendirilmiş mi?
  • Ürün İş Listesi’nde bütün paydaşların istekleri bulunuyor mu?
  • Ürün İş Listesi yönetilebilir bir büyüklükte mi? Yukarıda bulunan maddeler daha küçük aşağıdaki maddeler daha büyük mü?
  • Yukarıdaki iş maddeleri yazılırken iş maddesi yazım teknikleri kullanılmış mı? INVEST, DEEP, User Story
  • Ürün Sahibi’ni teknik borç ve teknik borcun nasıl ödenebileceği konusunda bilgilendirdiniz mi?
  • Ürün İş Listesi’nin bilgi yayıcı özelliği var mı? Ürün İş Listesi bütün paydaşlar tarafından görülebiliyor mu?
  • Ürün İş Listesi yönetimi için kullandığınız uygulama hakkında herkes bilgi sahibi mi?
  • Ürün İş Listesi çıktıları alarak bilgiyi görselleştiriyor mu?
  • Ürün Sahibi’ne, Ürün İş Listesi maddelerini uygun teslimler gerçekleştirebilecek şekilde sıralaması için yardım eder misiniz?
  • Teslim Plan’ı herkes tarafından biliniyor mu? Teslim planı için grafik kullanıyor musunuz?
  • Son Sprint Değerlendirme Toplantısı’ndan sonra Ürün Sahibi Teslim Planı’nı güncelledi mi?

Scrum Master Sorumluluk Listesi ve Scrum Master Görevleri yazısına devam et

Daily Scrum Nedir?

Daily Scrum
Daily Scrum

Daily Scrum Nedir?

Scrum Klavuzu’nda dört resmi toplantıdan bahsedilir. Bunlar Daily Scrum, Sprint Planning, Sprint Review ve Sprint Retrospective’dir.

 

Daily Scrum, Development Team üyelerinin katılımıyla 24 saatte bir aynı yer ve saatte gerçekleştirilir. Development Team üyelerinin katılımının zorunlu olduğu bu toplantıda üyeler aşağıdaki üç soruya yanıt verirler.

 

  1. Dün ne yaptım?
  2. Bugün ne yapacağım?
  3. Önümde bir engel var mı?

 

“Dün ne yaptım?” sorusuyla planlamada nerede olduklarını anlatırlar.

“Bugün ne yapacağım?” sorusuyla yeni günün planlamasını yaparlar.

“Önümde engel var mı?” sorusu ise geliştirmeyi geciktirecek herhangi bir engel varsa bunu tespit etmek ve ortadan kaldırmak için cevaplandırılır.

 

Birçok kişi ve birçok Takım tarafından bu toplantı statu alma ve verme toplantısı olarak değerlendirilse bile gerçekteki amacı yapılan Sprint Planlama’sına adapte olmak ve olabildiğince bu planlamaya sadık kalmak olarak düşünülmelidir.

Daily Scrum Nedir? yazısına devam et