Doğru Yazılmış mı, Doğru Şey mi? Gereksinim Doğrulama ile Geçerleme
Karşılaştırma

Doğru Yazılmış mı, Doğru Şey mi? Gereksinim Doğrulama ile Geçerleme

Hazırlayan: Mindset Institute EditörlüğüGüncellendi: 6 dk okuma

Gereksinim doğrulama, bir gereksinimin açık, tutarlı, eksiksiz ve test edilebilir yazılıp yazılmadığını kontrol eder; geçerleme ise o gereksinimin işin gerçek ihtiyacını ve hedefini karşılayıp karşılamadığını sorar. Kusursuz yazılmış bir gereksinim yanlış şeyi isteyebilir, doğru ihtiyaç da belirsiz yazılabilir.

Bir bakışta

  1. Doğrulama yazımın, geçerleme amacın kalitesine bakar. İlki gereksinimin kendisini standarda göre denetler, ikincisi gereksinimi iş hedefine ve paydaş ihtiyacına bağlar.
  2. İki kontrolün soracağı kişi farklıdır. Doğrulamayı çoğunlukla analist ve teknik ekip yapar; geçerleme için iş birimi ve karar vericiler gerekir.
  3. Biri diğerinin yerine geçmez. Test edilebilir ama gereksiz bir gereksinim de, değerli ama belirsiz bir gereksinim de projeye zarar verir.
  4. Terimler kaynaktan kaynağa farklı kullanılır. NASA'nın el kitabı yazım kontrollerini de gereksinim geçerlemesinin içinde sayar; ekip içinde hangi anlamın kullanıldığı baştan netleşmelidir.
  5. Erken yakalanan kusur ucuzdur. Gereksinim düzeyinde bulunmayan bir belirsizlik ya da yanlış ihtiyaç, test ve kabul aşamasında çok daha pahalıya düzelir.

Ortak zemin: gereksinimler koddan önce sınanır

Doğrulama ve geçerleme, ürün yapıldıktan sonra değil, gereksinimler yazılırken başlayan iki ayrı kontroldür. PMI'ın terim sözlüğü gereksinimi, bir iş ihtiyacını karşılamak için üründe, hizmette ya da sonuçta bulunması gereken koşul ya da yetenek olarak tanımlar. Aynı sözlük doğrulamayı (verification) bir ürünün bir gerekliliğe, şartnameye ya da düzenlemeye uyup uymadığının değerlendirilmesi, geçerlemeyi (validation) ise ürünün müşterinin ve paydaşların ihtiyacını karşıladığına dair güvence olarak tanımlar.

NASA'nın sistem mühendisliği el kitabı farkı akılda kalan bir biçimde özetler: doğrulama ürünün doğru yapıldığını, geçerleme ise doğru ürünün yapıldığını gösterir. Aynı mantık gereksinimlere uygulandığında iki soru ortaya çıkar. Gereksinim doğru yazılmış mı, yani açık, tutarlı, eksiksiz ve test edilebilir mi? Gereksinim doğru şeyi mi istiyor, yani işin hedefine ve paydaşın gerçek ihtiyacına hizmet ediyor mu? İlki doğrulamanın, ikincisi geçerlemenin sorusudur.

Ölçüt ölçüt fark

  • Ölçüt: Temel soru. Doğrulama: Gereksinim iyi yazılmış mı? / Geçerleme: Gereksinim doğru ihtiyacı karşılıyor mu?
  • Ölçüt: Neye göre bakılır? Doğrulama: yazım kurallarına, şablona, kalite özelliklerine (açıklık, tutarlılık, tamlık, test edilebilirlik). / Geçerleme: iş hedeflerine, üst düzey iş gereksinimlerine, paydaş beklentilerine ve kullanım senaryolarına.
  • Ölçüt: Kimlerle yapılır? Doğrulama: iş analisti, diğer analistler, tasarımcılar ve test uzmanları. / Geçerleme: iş birimi temsilcileri, ürün sahibi, sponsor ve son kullanıcılar.
  • Ölçüt: Tipik teknikler. Doğrulama: akran gözden geçirmesi, kontrol listesi, tutarlılık analizi, test senaryosu yazma denemesi. / Geçerleme: iş hedefine izlenebilirlik, paydaş gözden geçirmesi, prototip ya da gösterim, kullanım senaryosu üzerinden yürüme, değer ve maliyet değerlendirmesi.
  • Ölçüt: Bulduğu kusur. Doğrulama: belirsiz sözcük, çelişki, eksik koşul, ölçülemeyen ifade, tekrar. / Geçerleme: gereksiz özellik, yanlış anlaşılmış ihtiyaç, hedefle bağı kopmuş istek, gözden kaçmış paydaş.
  • Ölçüt: Çıktı. Doğrulama: kaliteli ve kullanılabilir gereksinim seti. / Geçerleme: işin onayladığı, değeri gösterilmiş gereksinim seti.

İki kontrol çoğunlukla bu sırayla yapılır: önce gereksinim okunabilir ve tutarlı hale getirilir, sonra iş birimine "istediğiniz bu mu?" diye sorulur. Belirsiz yazılmış bir gereksinimi geçerlemeye götürmek, herkesin ona farklı bir anlam yüklediği bir onay üretir.

Dört olası durum

Bir gereksinim iki kontrolden ayrı ayrı geçer ya da kalır; bu da dört durum doğurur. Her durumun düzeltme yolu farklıdır.

  • İyi yazılmış ve doğru ihtiyaç: Gereksinim tasarıma ve test planına hazırdır.
  • İyi yazılmış ama yanlış ihtiyaç: Kusursuz ama gereksizdir. Ölçülebilir, test edilebilir, ama iş hedefine katkısı yoktur ya da paydaşın asıl sorununu çözmez. Bu durum en tehlikelisidir, çünkü yazım kalitesi yanlışlığı gizler. Çözüm, gereksinimi hedefe geri izlemek ve gerekmiyorsa çıkarmaktır.
  • Doğru ihtiyaç ama kötü yazılmış: Fikir değerlidir, ifade belirsizdir. "Hızlı", "kolay", "gerektiğinde" gibi sözcükler herkesin farklı anladığı bir gereksinim üretir. Çözüm, ölçütü ve koşulu ekleyerek yeniden yazmaktır.
  • Kötü yazılmış ve yanlış ihtiyaç: Gereksinim baştan ele alınmalıdır; düzeltmek yerine ihtiyaç yeniden ortaya çıkarılmalıdır.

Ekiplerin çoğu yalnız tek eksene bakar: ya yazım kalitesine ya da iş birimi onayına. Dört kutuyu birlikte düşünmek, her iki türden kusurun da gözden kaçmamasını sağlar.

Şekil 1

İyi yazılmış olmak, doğru şeyi istemek anlamına gelmez

Kötü yazılmışİyi yazılmış
Kusursuz ama gereksizHedefe geri izle, gerekmiyorsa çıkar.
Uygulamaya hazırTasarıma ve test planına aktar.
Baştan ele alİhtiyacı yeniden ortaya çıkar.
Doğru fikir, belirsiz ifadeÖlçüt ve koşul ekleyerek yeniden yaz.
Yanlış ihtiyaçDoğru ihtiyaç
Kaynak: Sayfa içeriğiMindset Institute

Doğrulamada en sık bulunan kusurlar

NASA el kitabının gereksinim kontrol listesi, iyi bir gereksinimin özelliklerini somut sorulara çevirir: Gereksinim açık ve tek anlamlı mı? Belirsiz zamirler ve "uygun şekilde", "vb.", "ve/veya" gibi muğlak ifadeler içeriyor mu? Her gereksinim tek bir düşünceyi mi ifade ediyor? Nasıl yapılacağını değil, neye ihtiyaç duyulduğunu mu söylüyor? Diğer gereksinimlerle çelişiyor mu? Ürün tamamlandığında doğrulanabilecek biçimde mi yazılmış?

Bu sorular en sık şu kusurları yakalar ve her birinin bir düzeltme yolu vardır:

  • "Sistem hızlı olmalı" ölçülemez. Doğrusu, hangi işlemin hangi yük altında hangi hedef süre içinde tamamlanacağını yazmaktır.
  • "Rapor kullanıcı dostu olmalı" test edilemez. Doğrusu, belirlenen kullanıcıların belirlenen görevleri yardım almadan tamamlayabildiği bir kullanılabilirlik koşulu tanımlamaktır.
  • "Gerekli durumlarda yönetici onayı alınmalı" koşulu belirsizdir. Doğrusu, onayın hangi koşulda (örneğin hangi eşiğin üzerinde) ve kimden alınacağını yazmaktır.
  • "Sistem tüm dosya türlerini desteklemeli" sınırsızdır. Doğrusu, desteklenecek türleri bir listeyle belirlemektir.

Her düzeltmenin ortak noktası, gereksinimi yazan kişi ile testi yazacak kişinin aynı şeyi anlamasını sağlamaktır.

Şekil 2

Doğrulama, belirsiz ifadeyi test edilebilir koşula çevirir

Belirsiz
Doğrulanabilir
Sistem hızlı olmalı
Hangi işlem, hangi yük altında, hangi hedef sürede
Rapor kullanıcı dostu olmalı
Belirlenen görevler yardım almadan tamamlanabilmeli
Gerekli durumlarda yönetici onayı alınmalı
Hangi eşiğin üzerinde, kimden onay
Sistem tüm dosya türlerini desteklemeli
Desteklenecek türler bir listeyle belirli
Kaynak: Sayfa içeriği; kontrol soruları NASA Systems Engineering Handbook, Appendix C'den derlendi.Mindset Institute

Kurgusal örnek: müşteri hizmetleri için geri arama özelliği

Bir sigorta şirketinin çağrı merkezi, bekleme süresini kısaltmak için "geri arama talebi" özelliği istiyor. İş analisti şu gereksinimi yazıyor: "Müşteri, bekleme kuyruğundayken geri aranmayı seçebilmeli ve sırası geldiğinde sistem müşteriyi otomatik olarak aramalıdır."

Doğrulama: Analist, gereksinimi bir test uzmanıyla gözden geçirir. "Sırası geldiğinde" ifadesinin, müşterinin kuyruktaki yerinin korunması mı yoksa yeni bir kuyruğa alınması mı anlamına geldiği belirsizdir; ayrıca müşteriye ulaşılamazsa ne olacağı yazılmamıştır. Gereksinim, kuyruk sırasının korunacağı ve ulaşılamama durumunda yapılacak işlemle birlikte yeniden yazılır. Artık test edilebilir.

Geçerleme: Analist yeniden yazılmış gereksinimi çağrı merkezi müdürü ve birkaç temsilciyle bir senaryo üzerinden yürütür. Temsilciler, poliçe iptali için arayan müşterilerin özel bir ekibe yönlendirildiğini ve bu çağrıların geri arama için uygun olmadığını hatırlatır; müdür ise asıl hedefin yalnız bekleme süresini değil, çağrıyı bırakıp giden müşteri sayısını azaltmak olduğunu söyler. Gereksinime, hangi çağrı türlerinin geri aramaya uygun olduğu eklenir ve başarı, çağrıyı bırakma oranındaki değişimle izlenecek biçimde hedefe bağlanır.

İki kontrolün bulduğu kusurlar tamamen farklıdır: biri ifadedeki belirsizliği, diğeri iş kuralındaki eksikliği ve hedefle bağı.

Terim karmaşasına dikkat

"Doğrulama" ve "geçerleme" sözcükleri farklı kaynaklarda farklı sınırlarla kullanılır ve bu, ekipler arasında gereksiz tartışmaya yol açar.

NASA'nın sistem mühendisliği el kitabı, gereksinim geçerlemesini adım adım anlatırken gereksinimlerin doğru yazılıp yazılmadığını, teknik olarak doğru olup olmadığını, paydaşları tatmin edip etmediğini, uygulanabilir ve doğrulanabilir olup olmadığını ve gereksiz tekrar içerip içermediğini aynı başlık altında sayar. Yani bu kaynakta yazım kontrolleri de geçerlemenin içindedir. İş analizi uygulamasında ise yaygın ayrım, yazım kalitesini doğrulamaya, iş değerine ve hedefe uygunluğu geçerlemeye bırakır.

Türkçede de karşılıklar oturmamıştır: "validation" için geçerleme, onaylama ya da doğrulama, "verification" için doğrulama ya da teyit kullanılabilir. Pratik öneri şudur: proje başında ekip içinde hangi sözcüğün hangi kontrol için kullanılacağını yazın ve gereksinim yönetimi planına ekleyin. Önemli olan sözcük değil, iki ayrı sorunun da sorulmasıdır.

Sık yapılan hatalar

  • İş birimi onayını tek kontrol saymak. Onay alınan bir gereksinim hâlâ belirsiz olabilir; geliştirici ve test uzmanı onu farklı anlayabilir.
  • Yalnız yazım kalitesine bakmak. Kurallara uygun, ölçülebilir bir gereksinim seti, işin hedefine hizmet etmeyen özelliklerle dolu olabilir.
  • Geçerlemeyi yalnız yöneticilerle yapmak. Süreci fiilen yürüten kullanıcılar, yöneticinin bilmediği iş kurallarını ve istisnaları bilir.
  • İzlenebilirliği atlamak. Hangi gereksinimin hangi iş hedefinden geldiği kayıtlı değilse geçerleme bir izlenim sorusuna döner.
  • Kontrolleri bir kez yapıp bırakmak. Gereksinimler değiştikçe her iki kontrol de değişen kısım için tekrarlanmalıdır.
  • Testi geçerleme sanmak. Ürün testleri gereksinime uygunluğu gösterir; gereksinim yanlışsa testler başarıyla geçer ve yanlış ürün teslim edilir.

Mindset programlarında nerede çalışılır?

Gereksinimleri yazan ve onaylatan iş analistleri için bu iki kontrol, gereksinim analizinin günlük işidir. İş Analizi Uzmanlığı Sertifika Programı - IIBA Uyumlu, gereksinim yaşam döngüsü yönetimini ve gereksinim analizi ile tasarım tanımını ayrı modüllerde ele alır; doğrulama ve geçerlemenin gereksinim akışındaki yerini burada çalışırsınız. Gereksinimin test ve kabul tarafını derinleştirmek isteyenler için Proje Test ve Doğrulama Süreçleri eğitimi test planlamasından kullanıcı kabul testine uzanan adımları işler.

İlgili Mindset programı

İş Analizi Uzmanlığı Sertifika Programı - IIBA Uyumlu

Sık sorulanlar

Sık sorulan sorular

Çevik ekiplerde gereksinim doğrulama ve geçerleme nasıl yapılır?

İş kalemleri backlog'a girerken ekip, kullanıcı hikâyesinin ve kabul kriterlerinin anlaşılır ve test edilebilir olup olmadığını backlog iyileştirme toplantılarında kontrol eder; bu doğrulamadır. Ürün sahibi kalemin değerini ve önceliğini belirler, sprint incelemesinde paydaşlar çalışan ürünü görüp ihtiyaçlarını karşılayıp karşılamadığını söyler; bu da geçerlemenin çevik karşılığıdır.

Gereksinim geçerleme ile kullanıcı kabul testi aynı şey mi?

Hayır, ama birbirine bağlıdır. Gereksinim geçerleme ürün yapılmadan önce gereksinimin doğru ihtiyacı yansıttığını kontrol eder. Kullanıcı kabul testi ise ürün yapıldıktan sonra, ürünün iş birimi açısından kabul edilebilir olduğunu sınar. Gereksinim düzeyinde iyi bir geçerleme, kabul testinde ortaya çıkacak sürprizleri azaltır.

Doğrulama için hazır bir kontrol listesi kullanmalı mıyım?

Kullanmak yararlıdır, çünkü kişiden kişiye değişen bir gözden geçirmeyi tutarlı hale getirir. Açıklık, tek düşünce, tutarlılık, tamlık, uygulanabilirlik ve doğrulanabilirlik gibi başlıklar iyi bir başlangıçtır. Liste, kurumun kendi gereksinim şablonuna ve sık karşılaşılan hatalarına göre zamanla genişletilmelidir.

Geçerlemede paydaşlar birbiriyle çelişirse ne yapılır?

Çelişki, geçerlemenin değerli bir bulgusudur ve gereksinim onaylanmadan çözülmelidir. Önce her paydaşın isteğinin hangi iş hedefine dayandığı netleştirilir; çoğu çelişki, farklı hedeflerin ya da farklı kullanım durumlarının sonucudur. Hedeflerin önceliği karar verici tarafından belirlenir ve sonuç gerekçesiyle kayda geçirilir.

Gereksinim Doğrulama ile Geçerleme Farkı