Definition of Done (Bitti Tanımı) Nedir?
Definition of Done, bir işin bitmiş sayılması için karşılanması gereken ortak kalite ölçütleri listesidir. Scrum'da nasıl çalıştığı, örnek ve sık hatalar.
Definition of Done nedir?
Definition of Done, Türkçesiyle bitti tanımı, bir işin gerçekten tamamlanmış sayılabilmesi için karşılanması gereken kalite ölçütlerinin ortak ve açık listesidir. Kısaca DoD denir. Scrum Guide'da ürün artımı (Increment) için kalite ölçüsü olarak tanımlanır.
Bitti tanımı olmadan "bitti" kelimesi kişiden kişiye değişir: geliştirici kodu yazdığında bitti der, test eden hâlâ test edilmedi der, ürün sahibi canlıya çıkmadığı için bitti saymaz. DoD bu belirsizliği ortak bir ölçütle kapatır.
DoD nasıl çalışır?
Ekip, ürün artımı için geçerli olacak ölçütleri birlikte yazar. Bir ürün backlog öğesi bu ölçütlerin hepsini karşılamadan Sprint'te bitmiş sayılmaz ve artıma dahil edilmez. Kısmen karşılanan iş "çoğu bitti" diye sayılmaz; ya bitmiştir ya da değildir.
Scrum Guide'a göre kuruluşun ortak bir standardı varsa Scrum Ekibi en azından onu izler. Böyle bir standart yoksa Scrum Ekibi kendi ürünü için uygun bir bitti tanımı belirler. Developers, yani geliştiriciler, bitti tanımına uygun çalışmaktan hesap verebilir.
Küçük bir örnek
Örneğin bir mobil uygulama ekibinin bitti tanımı şu maddelerden oluşabilir: • Kod gözden geçirildi ve ana dala birleştirildi. • Birim ve entegrasyon testleri yazıldı ve geçti. • Kabul ölçütleri ürün sahibiyle birlikte doğrulandı. • Erişilebilirlik ve güvenlik kontrolleri yapıldı. • Dokümantasyon güncellendi. • Test ortamında çalışır durumda ve canlıya alınabilir.
Sprint sonunda bir öğenin kodu yazılmış ama güvenlik kontrolü yapılmamışsa, öğe artımın parçası sayılmaz ve backlog'a geri döner.
Kabul ölçütü ve DoD farkı
İkisi sıkça karıştırılır: • Kabul ölçütleri bir backlog öğesine özeldir: "kullanıcı şifresini sıfırlayabilir" gibi o işin ne yapması gerektiğini söyler. • Bitti tanımı tüm öğeler için geçerlidir: testten kod gözden geçirmeye kalite standardını söyler.
Bir öğe bitmiş sayılmak için hem kendi kabul ölçütlerini hem de ekibin bitti tanımını karşılamalıdır. Biri işlevi, diğeri işin kalitesini güvence altına alır.
Definition of Ready ile ilişkisi
Definition of Ready (hazır tanımı), bir öğenin Sprint'e alınmadan önce ne kadar net olması gerektiğini anlatan ekip uygulamasıdır; Scrum Guide'da zorunlu bir artefakt değildir. Bitti tanımı ise işin çıkışındaki kalite kapısıdır.
İkisi birlikte çalışabilir: Hazır tanımı iş girmeden önce belirsizliği azaltır, bitti tanımı iş çıkarken kaliteyi güvenceye alır. Ancak hazır tanımı katı bir geçit hâline gelip planlamayı yavaşlatmamalıdır.
Sık yapılan hatalar
- Tanımı bir kez yazıp unutmak: Ekip olgunlaştıkça bitti tanımı da zamanla sıkılaşmalıdır.
- Ölçülemeyen maddeler yazmak: "Kaliteli kod" yerine kontrol edilebilir ölçütler gerekir.
- Tanımı dışarıdan dayatmak: Ekibin sahiplenmediği liste uygulanmaz.
- İstisna yapmak: Zaman baskısında maddeleri atlamak teknik borç biriktirir.
- Sprint sonuna bırakmak: Ölçütler iş sırasında takip edilmezse son güne yığılır.
Mindset programlarında bitti tanımı
Definition of Ready / Done programı Definition of Done tasarımı, ileri düzey DoD ile çok katmanlı kalite ile vaka çalışmaları ve uygulamalı egzersizleri içerir.
Program ayrıca kalite standartlarının ekibe gömülmesi, Definition of Ready tasarımı ve DoR ile DoD'nin uygulanması ve benimsenmesi modüllerinden oluşur.
İlgili Mindset programı
Definition of Ready / Done
Sık sorulan sorular
DoD'u kim belirler?
Kuruluşun ortak bir standardı varsa ekip onu temel alır. Yoksa Scrum Ekibi kendi ürünü için bitti tanımını birlikte belirler. Geliştiriciler bu tanıma uygun çalışmaktan hesap verebilir.
Bitti tanımı Sprint sırasında değişebilir mi?
Ekip genellikle tanımı Sprint Retrospektifi gibi toplantılarda gözden geçirip güncelleyerek geliştirir. Sprint ortasında kaliteyi düşürmek amacıyla maddeleri çıkarmak, DoD'un amacına aykırıdır. Yeni bir madde eklemek, örneğin bir güvenlik kontrolü, ekibin sonraki işlerde uygulayacağı ölçütü sıkılaştırır.
DoD yalnızca yazılımda mı kullanılır?
Hayır. En çok Scrum ve yazılım geliştirmede bilinse de pazarlama, tasarım ve ürün çalışması gibi iteratif işlerde de kullanılabilir. Önemli olan ekibin işin bitişini tanımlayan ortak ölçütleri yazmasıdır.
DoD ve acceptance criteria aynı şey mi?
Hayır. Acceptance criteria (kabul ölçütleri) tek bir backlog öğesine özgüdür, Definition of Done ise tüm öğeler için ortak kalite standardıdır. Öğenin bitmiş sayılması için ikisinin de karşılanması gerekir.