Proje Yönetimi 101 | Kanban vs Scrum
June 9, 2023
Türkçe
Projelerde hangi yaklaşımı kullanmalıyız? Eminim ki bu soru tüm çevik ekiplerin ve yöneticilerin aklınıza gelmiştir. Peki gerçekten hangisini kullanmalıyız? Gelin isterseniz cevabını birlikte arayalım. Öncelikle Kanban ve Scrum’un ne olduğunu anlayalım.
Kanban nedir?
Çevik yöntemler arasında popüler olarak kullanılan bir yöntem olan “Kanban”, Japonca’da görsel kart anlamına gelir ve ilk olarak Toyota’nın üretim fabrikasında ortaya çıkmıştır. Buradaki ilk hedefler üretimdeki sürekliliği artırmak ve yapılacak işlerin kartlar kullanılar bir tahtada üzerinde izlenmesini sağlamak oldu. Bu tahtada her kartın ve sütunun bir anlamı olduğu gibi işlerin nerde, ne adımda olduğu veya tamamlanıp tamamlanmadığı gibi detaylara da tüm takımın hakim olmasını sağlamaktadır. Yazılım sektörüne ise 2000’li yılların başında uyarlanmaya başlanmış olup o zamandan beri en çok kullanılan yaklaşımlar arasında yer almaktadır. Kanban uygulanırken dikkat edilmesi gereken bazı temel prensipler bulunmaktadır.
Görselleştirme: sisteminizde görsellik kullanmak, işin takibini kolaylaştıracağı gibi ekip içerisindeki darboğazları, işi bloklayan durumları tespit ederek anında müdahaleye olanak sağlamaktadır.
Limitlendirme: Yapılacak işlerin her zaman için bir limite ihtiyacı vardır. Bu limitler sayesinde iş akışındaki yığılmanın önüne geçilmesinde büyük bir etken olacaktır. Burada dikkat edilmesi gereken temel kelime WIP( work in progress) limitidir. WIP limiti ile, işlerin belirli limitlere göre hareketini sağlamak hedeflenmiştir.
Akış: Kanban board üzerindeki kartların, stabil bir düzen içerisinde sağlıklı bir akışı temsil eden bu prensip işlerin devamlılığı amaçlanmıştır.
İşbirliği ile iyileşme: Kanban, takım üyeleri arasında işbirliğini önemseyerek, işbirliğinin sadece işbirliği olarak kalmamasını aynı zamanda analiz, kalite, verimlilik gibi konulara değinerek takımın etkinliğini artırmayı hedeflemektedir.
Scrum Nedir?
Ekiplerde kullanılan bir diğer yöntem olan scrum ise projeleri küçük parçalara bölerek hem işin daha kolay tamamlanabilmesi hem de hataların daha hızlı tespit edilerek işte engelleri aşmayı kolaylca çalışmaktadır. Scrum’da, ekiplerin kendi kendini organize ederek, ortak amaçlar doğrultusunda projeyi benimsemeye dayalı bir yöntem izlenmesi amaçlanır. Scrum takımlarında olması gereken temel 3 rol bulunmaktadır.
Bu temel 3 rol;
Product Owner(ürün sahibi): Proje gereksinimlerini belirleyen, projede ortaya çıkacak durumunun direkt sorumlusudur. Sprint iptal yetkisi olmak üzere birçok yetkisi vardır.
Development Team(Geliştirme Ekibi): Sprinte dahil edilen tüm işleri yapacak ve bu yetkinliklere sahip kişilerdir. Kendi kendini yönetebilirler ve kimsenin tek bir işi yoktur, herkes takımında işlere hakim ve fikir sahibidir.
Scrum Master(Scrum Uzmanı): Scrum takımlarının önüne çıkan her türlü engeli aşmaktan başlar, tüm takımın scrumu başarılı bir şekilde uygulamasına yardımcı olmaya kadar uzanan büyük bir sorumluluğu bulunmaktadır. Takım yöneticisi değildirler.
Scrum’ın uygulanabilirliğini artırmak için bazı yapısal gereklilikler de mevcuttur. İşte bu yapılar;
Product Backlog(Ürün Gereksinimleri Listesi): Projenin gereksinimlerinin ve ihtiyaçlarının listelenmesidir. Bu listeyi product owner hazırlar ve gerektiği durumlarda ekleme çıkarma yapabilir. Bu liste daima güncel olmalıdır.
Sprint(Koşma): Projede yapılması gereken işler mümkün olan en küçük parçalara ayrılır, bu parçaların her birine sprint ismi verilir. Her bir sprint 1 ila 4 hafta arasında değişim gösterebilir. Bu değişim işlerin boyutuna, önemine göre belirlenir.
Sprint Backlog(Sprint İş Listesi): Bir sprint boyunca yapılacak işlerin listesidir. Bu işlemi sprint takımı yapar.
Sprint Planning(Sprint Planlama): Product backlog da belirlenen ihtiyaçlar bu toplantı ile gündeme alır. Geliştirme takımı ile birlikte yapılan bu toplantıda, kimin hangi işi ne kadar sürede nasıl yapacağı gibi konular tartışılarak herkesin o sprint süresi boyunca ne yapacağı belirlenmiş olur.
Daily Scrum(Günlük Toplantı): Geliştirme ekiplerinin günlük olarak yaptığı toplantılardır. Bu toplantılarda takım üzerinde çalıştıkları işleri, ilerlemelerini ve olası aksilikleri tartışırlar. Genelde toplantıda herkes dün ne yaptım, bugün ne yapacağım ve işimi engelleyen bir durum var mı sorularına cevap verirler. Daily scrum çok uzun sürmez genellikle 15 dakika uygun görülmektedir.
Sprint Review(Sprint İnceleme): Sprintler bittikten sonra yapılan toplantıdır. Bu toplantılarda tamamlanan sprint gözden geçirilir ve sprint planına ne kadar sadık kalındığı, ortaya çıkan ürünün istediğimizi ne kadar karşıladığı gibi konular tartışılır.
Sprint Retrospective(Sprint Değerlendirme): Sprint boyunca yapılan her işin veya durumun, olayın tartışmasının yapıldığı bir toplantıdır. Bu toplantıda iyi, kötü, doğru-yanlış, eksik-fazla ne varsa rahatça konuşarak bu durumları iyileştirmek için neler yapılabileceği tartışılır. Bir sonraki sprintte bu durumlar dikkate alınır.
Story Point(Hikaye Puanı): Story Point tahminlemesi genellikle bir grup çalışması şeklinde yapılır. Scrum ekibi, bir işin tahmini zorluğunu, harcanacak eforu ve karşılaşılabilecek riskin derecesini ortak bir anlayışla belirlemek için bir araya gelir. Bu puanlar sprint toplantısında takım ile tartışılıp ve belirlenebilir.
Kanban Mı? Scrum mı?
Bu yazımızda Kanban ve Scrum’ın neler olduğundan başlayarak, birbirleri arasındaki farklara değinmeye çalıştık. Keyifli okumalar dilerim.
Gelecek yazılarda görüşmek dileğiyle, teşekkürler 🙂
Doğukan Yılmaz | Project Manager
Project Management
Kanban
Scrum
Product
Productivity