Definition of Done Nedir? Ekiplerin En Çok Yanlış Yaptığı Scrum Pratiği
Definition of Done'ı teoride herkes biliyor. Ama gerçekten uygulayan ekip az. DoD'un ne olduğunu, nasıl yazılacağını ve neden bu kadar kritik olduğunu açıklıyoruz.
Sprint bitti. Ekip 'done' dedi. Feature canlıya çıktı. Üç saat sonra P1 bug bildirimi geldi. Testler çalıştırılmamıştı. Deployment script güncellenmemişti. Bir manuel adım atlanmıştı.
Kimse kasıtlı yapmamıştı. Sadece herkesin 'done' için farklı bir tanımı vardı.
Definition of Done tam bu karmaşayı çözmek için var. Ama çoğu ekipte ya hiç yok ya da kağıt üzerinde kalıyor. Bu yazıda DoD'un ne olduğunu, nasıl yazılacağını ve neden bu kadar kritik olduğunu konuşacağız.
Definition of Done Nedir? Scrum'ın En Az Kullanılan Aracı
Definition of Done (DoD), bir sprint'teki her Product Backlog Item'ın (PBI) 'tamamlanmış' sayılabilmesi için karşılaması gereken kriterlerin resmi listesidir.
2020 Scrum Guide şöyle tanımlıyor: 'Definition of Done, bir Increment'in ürün için gereken kalite ölçütlerini karşıladığındaki durumunun resmi tanımıdır.'
Bu 'developer kodu commit etti' demek değildir. 'Releasable — şu an canlıya çıkarmaya hazır' demektir. Sprint Review'da gösterilebilir, paydaşlara teslim edilebilir kalitede.
DoD tüm ekip için geçerlidir. Her story için ayrı ayrı yazılmaz. Her story için kontrol edilir.
- Resmidir: Ekibin ortak kararıyla oluşturulur, kişiye göre değişmez
- Evrenseldir: Tüm sprint backlog item'ları için geçerlidir
- Ölçülebilirdir: 'Kaliteli olmalı' değil, 'unit test coverage %80 ve üzeri'
- Yaşayan belgedir: Her sprint retrospective'inde gözden geçirilebilir
Definition of Done ile Acceptance Criteria Farkı
Bu iki kavram Scrum'da en sık karıştırılan ikililerden biridir. Farkı net anlamak kritik.
Acceptance Criteria (Kabul Kriterleri): O story'e özgüdür. 'Kullanıcı şifremi sıfırladığında onay e-postası almalıdır.' Product Owner yazar. Her story için farklıdır. Story tamamlandığında kontrol edilir.
Definition of Done: Tüm ekip için geçerlidir. 'Her kod değişikliği code review'dan geçmeli.' Ekip birlikte yazar. Her story için aynıdır. Her story için kontrol edilir.
Analoji: Acceptance criteria 'Bu yemeği nasıl yapmak istiyorsunuz?' sorusunu yanıtlar. DoD ise 'Mutfağımızın hijyen ve kalite standartları nelerdir?' sorusunu.
- Acceptance Criteria: Story bazlı, PO yazar, her story için farklı
- Definition of Done: Ekip bazlı, ekip birlikte yazar, tüm story'ler için aynı
- İkisi birbirini tamamlar — biri olmadan diğeri eksik kalır
DoD Olmadan Ne Olur? 'Undone Work' Tuzağı
Definition of Done olmayan ekiplerde tablo genellikle şöyle:
'Done' denen ama aslında test edilmemiş, deploy hazırlığı yapılmamış story'ler sprint sonunda listeye ekleniyor. Velocity şişiyor çünkü yarım işler done sayılıyor.
Birkaç sprint sonra 'neden bu kadar bug var?' sorusu geliyor. Yanıt genellikle şu: 'Done' tanımı yoktu veya kimse uygulamıyordu.
Scrum Guide buna 'undone work' diyor — görünmez teknik borç. Backlog'da görünmüyor. Sprint review'da konuşulmuyor. Ama canlıda patlıyor.
Undone work en tehlikeli borç türüdür: ne kadar olduğunu bilmiyorsunuzdur.
İyi Bir Definition of Done Nasıl Görünür?
Soyut maddeler işe yaramaz. 'Kalite sağlanmalı' diye bir DoD maddesi var ama 'kalite' ne demek? Her madde somut ve kontrol edilebilir olmalı.
Tipik bir yazılım ekibi için örnek DoD:
- Kod yazıldı ve en az bir başka developer tarafından code review yapıldı
- Tüm unit testler yazıldı ve geçiyor (coverage hedefi: %80)
- Integration testler çalıştırıldı ve geçiyor
- Feature branch ana branch'e merge edildi, merge conflict yok
- Uygulama staging ortamında başarıyla deploy edildi
- Acceptance criteria ekip tarafından test edildi ve geçti
- Bilinen critical veya high öncelikli bug yok
- Gerekiyorsa kullanıcı dokümantasyonu güncellendi
Bu liste bir başlangıç noktasıdır. Ekibinizin teknik yapısına, deployment sürecine ve kalite standartlarına göre uyarlanmalıdır.
Kültür Kazanır: Sahadan Ofise Çeviklik
Mikro yönetim, rapor takıntısı ve güven eksikliğini sahadan okuyun. Futbol sahasındaki dinamikler ile iş dünyasındaki kontrol refleksini paralel bir anlatımla keşfedin.
Türkçe e-kitap
Scrum bilgin ne kadar sağlam? Definition of Done, Sprint Review ve Scrum rolleri konularındaki anlayışını test etmek ister misin? Scrum Quiz ile 10 dakikada nerede durduğunu görebilirsin.
Definition of Done'ı Ekiple Nasıl Yazarsınız?
DoD'u Scrum Master tek başına yazmamalı. Product Owner da tek başına. Bu bir ekip çıktısıdır. Şu workshop formatı pratikte işe yarıyor:
- Adım 1 — Soruyu sorun: 'Son 3 sprintte hangi story'ler beklenenden geç bitti veya canlıda sorun çıkardı? Nedenleri nelerdi?'
- Adım 2 — Root cause bulun: Bu sorunların büyük çoğunluğu 'done' tanımındaki boşluktan kaynaklanır. Listeyi beraber çıkarın.
- Adım 3 — Taslak oluşturun: Her madde somut ve kontrol edilebilir olmalı. 'Kaliteli olmalı' bir madde değildir.
- Adım 4 — İlk sprint'te uygulayın: Her story için DoD'u kontrol edin. İlk sprintlerde yavaşlayabilirsiniz — bu geçici ve normaldir.
- Adım 5 — Retrospective'de güncelleyin: DoD yaşayan bir belgedir. Her sprint biraz daha olgunlaşır.
Yaygın Definition of Done Hataları
1. DoD hiç yok: 'Zaten biliyoruz' deniyor. Ama herkesin 'bildiği' farklı. Yazılı olmayan kural, kural değildir.
2. Var ama kontrol edilmiyor: Sprint Review'da hiçbir story DoD'a göre kontrol edilmiyor. Doküman var, uygulama yok. Bu en yaygın senaryo.
3. Çok uzun ve pratik değil: 40 maddelik DoD kimse okumaz, kimse uymaz. 8-12 madde arası ideal. Az ama gerçekten uygulanan maddeler daha değerlidir.
4. Story bazlı yazılıyor: Her story için ayrı DoD yazmak hem hatalı hem verimsiz. DoD ekip genelinde geçerlidir, story'ye özgü değil.
5. Hiç güncellenmiyor: Ekip büyüdükçe, teknik yapı değiştikçe, DoD da güncellenmeli. Yıllarca değişmeyen bir DoD olgunlaşmamış bir DoD'dur.
Definition of Done ve Definition of Ready Farkı
Bu iki terim sıkça karıştırılıyor. Fark kısa ve net:
Definition of Ready (DoR): Bir PBI'nın sprint'e alınabilmesi için karşılaması gereken kriterler. Sprint planning'e girmeden önce kontrol edilir. 'Bu iş başlamaya hazır mı?'
Definition of Done (DoD): Bir PBI'nın tamamlanmış sayılabilmesi için karşılaması gereken kriterler. Sprint'ten çıkmadan önce kontrol edilir. 'Bu iş gerçekten bitti mi?'
- Definition of Ready: Sprint'e GIRMEDEN önce — 'Başlamaya hazır mı?'
- Definition of Done: Sprint'ten ÇIKMADAN önce — 'Gerçekten bitti mi?'
- İkisi birbirini tamamlar ama farklı soru işaretlerini giderir
Ekibinizle bir DoD workshop'u yapmak mı istiyorsunuz? Definition of Done oluşturma sürecini nasıl yöneteceğinizi, ekiple nasıl uzlaşacağınızı ve ilk sprint'e nasıl entegre edeceğinizi Scrum Master Coach ile adım adım planlayabilirsiniz.
Sonuç: 'Done' Kelimesini Tanımlamak Her Şeyi Değiştirir
Definition of Done, Scrum'ın en az ilgi gören ama en çok değer katan araçlarından biri.
Sprint velocity'ye, story point'lere, retrospective formatlarına odaklanırken DoD ikinci plana düşüyor. Ama yaşadığınız kalite sorunlarının, beklenmedik bug'ların ve 'neden bu kadar iş birikiyor?' sorularının büyük çoğunluğu done tanımının net olmamasından kaynaklanıyor.
İyi bir DoD şunu sağlar: Herkes aynı 'done' tanımında. Sprint sonunda hangi işin gerçekten bittiği tartışmasız. Teknik borç görünür ve yönetilebilir hale gelir.
Ekibinizde hâlâ bir DoD yoksa, bir sonraki retrospective'de başlayın. Tek bir maddeden bile başlayabilirsiniz. Mükemmel bir DoD bugün başlamaktan değerli değildir.
Sıkça Sorulan Sorular
Her ekip kendi DoD'unu mu yazar? Evet. Her ekibin teknik yapısı, deployment süreci ve kalite standartları farklıdır. Genel bir şablon başlangıç noktası olabilir ama DoD'un ekibe özgü olması şarttır.
Product Owner DoD'u değiştirebilir mi? Tek başına hayır. DoD Development Team tarafından oluşturulur. PO sürece dahil olabilir ama son karar ekiptedir.
Sprint ortasında DoD değiştirilebilir mi? Hayır. Sprint ortasında DoD değiştirmek sprint hedefini değiştirmek demektir. Değişiklikler retrospective sonrasına bırakılmalı.
Bir story DoD'u karşılamıyorsa ne olur? O story done sayılmaz. Sprint Review'da gösterilemez. Bir sonraki sprint'in backlog'una döner.
DoD ne sıklıkla güncellenmelidir? Her sprint retrospective'inde gözden geçirilmeli. Değişiklik zorunlu değil ama fırsat olarak değerlendirilmeli. Ekip büyüdükçe ve süreç olgunlaştıkça DoD da derinleşir.
İlgili Aracı Dene
Sprint problemini tanımla, hipotez kur, deney planı çıkar ve takip döngüsünü yönet.
Koç agent'i aç->Kısa testlerle bilgini ölç, doğru yanıtları öğren ve gelişimi takip et.
Simülasyonu dene->Scrum Master etkini görünür kıl + ücretsiz PDF
Her hafta kısa, uygulanabilir ipuçları al. İlk e-postada “Scrum Master Etki Panosu” PDF’iyle katkını görünür hale getirmeye başla.
Scrum Master olarak katkını nasıl kanıtlarsın?
Velocity’ye takılmadan: 5 metrik + 6 haftalık planla görünür etki hikayesi çıkar.
- 5 metriklik etki panosu
- 6 haftalık uygulama planı
- Yöneticiye anlatım şablonu
Gizliliğine saygı duyuyoruz. E-postanı sadece PDF ve haftalık ipuçları için kullanırız.
Spam yok. İstediğin an çıkabilirsin.