Blog
Mert Özen'in yazılım geliştirme, backend, frontend ve DevOps üzerine blog yazıları.
Kanban Nedir? Toyota'dan Yazılıma ve Board'dan Fazlası
Kanban bir board değil, WIP'i sınırlayarak value akışını optimize eden bir stratejidir; board yalnız onu görünür kılar. Toyota'nın pull sisteminden Anderson'ın Microsoft ve Corbis deneyimine, Kanban Method ile The Kanban Guide 2025.5 arasındaki farka, Guide'ın üç pratiğine ve dört flow metric'ine Bookstore destek ekibinin board'u üzerinden bakıyoruz.
Definition of Workflow ve Board Tasarımı: İş Ne Zaman Başlar, Ne Zaman Biter?
Board'u Kanban yapan, arkasındaki Definition of Workflow'dur: work item tanımı, started/finished noktaları, state'ler, WIP kontrolü, explicit policy'ler ve SLE. Bookstore ekibinin board'unu bu altı parçayla kuruyor, queue ve active state'leri ayırıyor, Done'ı merge yerine production deploy'una bağlamanın cycle time'ı nasıl değiştirdiğini ve sık yapılan board tasarımı hatalarını konuşuyoruz.
WIP Limit ve Little's Law: Daha Az İşe Başlayıp Daha Çok Bitirmek
Throughput sabitken WIP'i artırmak cycle time'ı aynı oranda uzatır; Little's Law bunun aritmetiğidir. C# ile yazdığımız simülasyonda WIP 3'ten 10'a çıkınca ortalama cycle time 2,4 günden 7,9 güne çıkıyor, context switching eklenince throughput da düşüyor. Little's Law'un varsayımlarını, neden tahmin aracı olmadığını, ilk WIP limit'ini belirlemeyi ve kişi başına limit gibi tuzakları konuşuyoruz.
Flow Metric'leri: WIP, Throughput, Work Item Age ve Cycle Time
Kanban Guide'ın dört zorunlu metric'i olan WIP, Throughput, Work Item Age ve Cycle Time'ı Bookstore ekibinin altı aylık board verisinden bir .NET 10 console uygulamasıyla hesaplıyoruz. Ortalama yerine percentile kullanmayı, cycle time scatterplot ve aging chart okumayı, Work Item Age'in neden en erken uyarı olduğunu ve Created tarihinden hesaplamanın p85'i 14 günden 79 güne nasıl çıkardığını görüyoruz.
Service Level Expectation ve Monte Carlo: "Ne Zaman Biter?" Sorusuna Olasılıkla Cevap
Tek item için cevap SLE'dir ("%85 olasılıkla 14 gün"); çok item için geçmiş günlük throughput'tan örneklem alan bir Monte Carlo simülasyonu. Bookstore verisiyle 10.000 çalıştırma yapan C# kodu, 30 item'ın %50 olasılıkla 25 Kasım'da, %85 olasılıkla 6 Aralık'ta biteceğini söylüyor. Percentile'ı doğru yönden okumayı, stakeholder'a anlatmayı ve tahminin hangi koşullarda yanıldığını konuşuyoruz.
Kanban'da Aktif Yönetim ve İyileştirme: Blocker, Aging ve Flow Review
Flow'u aktif yönetmek; board'u her gün sağdan sola ve en yaşlı item'dan başlayarak okumak, blocked işi eskale etmek, expedite'i sınırlamak ve bottleneck'i veriyle bulmaktır. Bookstore verisinden CFD bantlarını C# ile hesaplıyor, Code Review'ın Temmuz'da nasıl darboğaz olduğunu, Theory of Constraints adımlarıyla nasıl çözüldüğünü (p85 16 günden 11 güne) ve sıradaki constraint'in deploy ritmi olduğunu görüyoruz.
Scrumban ve Kanban Guide for Scrum Teams: Scrum'a Flow Eklemek
Scrum'a flow eklemek için Sprint'i bırakmak gerekmez: Kanban Guide for Scrum Teams, Scrum Guide'ın hiçbir parçasını değiştirmeden DoW, WIP limit'i ve dört flow metric'ini Sprint Planning, Daily Scrum, Review ve Retrospective'e ekler. Ladas'ın geçiş yolu olarak tarif ettiği Scrumban'ı, bugünkü gevşek kullanımını ve destek, platform, ürün ekipleri için Scrum, Kanban ya da ikisi birlikte seçimini konuşuyoruz.