CRUD Matrisi: Rol ve Süreçlerin Veriyle İlişkisini Göstermek
CRUD matrisi, hangi rol ya da sürecin hangi veri varlığını oluşturduğunu, okuduğunu, güncellediğini ve sildiğini tek tabloda gösterir. Gereksinimlerdeki eksik ve çelişkileri yakalamak için nasıl kullanıldığını öğrenirsiniz.
Bir bakışta
- Bir satırda varlık, bir sütunda rol ya da süreç bulunur. Hücreler C, R, U, D harflerinden hangilerinin geçerli olduğunu gösterir.
- Boş hücreler ve boş satırlar sorunu gösterir. Hiç kimsenin oluşturmadığı ya da silmediği bir varlık, gereksinimde bir boşluktur.
- Yetki matrisi değildir. CRUD matrisi veri işlemini anlatır; kimin onay verdiği ayrı bir konudur.
- Erken kullanılırsa pahalı hataları önler. Kod yazılmadan veri sahipliği ve eksik ekranlar görünür.
CRUD matrisi nedir?
CRUD matrisi, iş analizinde kullanılan bir tablodur. Satırlarda veri varlıkları, sütunlarda roller ya da süreçler bulunur; her hücre, o rol ya da sürecin o varlık üzerinde hangi işlemleri yaptığını gösterir. CRUD harfleri, verinin dört temel işleminin baş harfleridir: oluştur (Create), oku (Read), güncelle (Update) ve sil (Delete).
Tablonun amacı, veri ve davranış arasındaki ilişkiyi tek bakışta görünür kılmaktır. Böylece analist, yazdığı gereksinimlerin bütün veriyi kapsayıp kapsamadığını kontrol eder.
Matris nasıl okunur?
Kurgusal bir sipariş sisteminde üç rol ve dört varlık düşünelim. Hücredeki harfler o rolün o varlıkta yapabildiği işlemleri gösterir.
Satır boyunca bakıldığında bir varlığı kimin yönettiği görülür: Sipariş satırında satış temsilcisi oluşturur ve günceller, muhasebe okur, depo okur ve günceller. Sütun boyunca bakıldığında bir rolün hangi veriye dokunduğu görülür: stok kaydını yalnız depo yönetir.
Tablo, kimin hangi veriye dokunduğunu tek bakışta söyler
Kurgusal sipariş sistemi
| Satış temsilcisi | Muhasebe | Depo | |
|---|---|---|---|
| Müşteri | C R U | R | R |
| Sipariş | C R U | R | R U |
| Fatura | R | C R U | R |
| Stok kaydı | R | - | C R U |
Matrisle bulunan gereksinim boşlukları
Matrisin gücü, boşlukları ortaya çıkarmasıdır. • Hiçbir rolün oluşturmadığı bir varlık: Veriyi sisteme kimin sokacağı belli değildir, gereksinim eksiktir. • Hiçbir rolün okumadığı bir varlık: Veri toplanıyor ama kullanılmıyor, gereksiz olabilir. • Hiçbir rolün silmediği bir varlık: Kayıtlar sonsuza kadar birikir; saklama ve silme kuralı gerekebilir. • Çok sayıda rolün güncellediği bir varlık: Veri sahibi belirsizdir, tutarsızlık riski vardır.
Bu örnekte hiçbir hücrede silme işlemi yok; bu, silme ve saklama kuralının sorulması gereken bir işarettir.
Nasıl hazırlanır?
Önce veri varlıkları belirlenir; bunlar genellikle veri modelinden ya da iş süreçlerinden çıkar. Sonra roller ve gerekirse süreçler listelenir. Her hücre, ilgili gereksinim ya da kullanıcı hikâyesiyle ilişkilendirilerek doldurulur.
Tablo taslağı çıkınca paydaşlarla gözden geçirilir: veri sahipleri kendi varlıklarına bakar, uygun olmayan hücreleri düzeltir. Son adımda tablo gereksinim belgesine eklenir ve değişikliklerde güncellenir. Böylece analist ile geliştirici aynı tabloya bakar.
Sık yapılan hatalar
- CRUD matrisini yetki matrisi sanmak. Burada işlem türü gösterilir; onay yetkisi ve limitler ayrı bir matrisin konusudur.
- Silmeyi atlamak. Silme çoğu zaman düşünülmez; sonradan saklama ve veri koruma sorunu çıkar.
- Varlıkları çok ince ya da çok kaba bölmek. Müşteri adresi ile müşteri aynı satırda mı, ayrı mı diye karar verilmezse matris okunmaz.
- Matrisi bir kez çıkarıp bırakmak. Yeni gereksinim gelince tablo güncellenmezse boşluk yeniden açılır.
- Yalnız insan rollerini yazmak. Dış sistemler ve zamanlanmış işlemler de veriyi değiştirebilir.
CRUD matrisi Mindset programlarında nerede çalışılır?
Veri ve gereksinim ilişkisi, Mindset'in İş Analizi Uzmanlığı Sertifika Programı'nda "Gereksinim Analizi ve Tasarım Tanımı" modülüyle yakından ilgilidir. Gereksinimlerin tam ve tutarlı olup olmadığını teknik ekibe geçmeden sınamak isteyen iş analistleri için CRUD matrisi pratik bir kontrol aracıdır.
İlgili Mindset programı
İş Analistliği Uzmanlığı Sertifika Programı (BABOK® v3 Temelli)
Sık sorulan sorular
CRUD matrisi ile yetki matrisi arasındaki fark nedir?
CRUD matrisi hangi rolün hangi veri işlemini yaptığını gösterir. Yetki matrisi ise kimin neyi onaylayabileceğini, hangi limitlere kadar karar verebileceğini anlatır. İkisi aynı projede birlikte kullanılabilir.
CRUD matrisi yalnız yazılım projelerinde mi kullanılır?
Çoğunlukla yazılım ve veri odaklı projelerde kullanılır; ancak mantığı her sürece uygulanabilir. Bir kurumda hangi birimin hangi kaydı tuttuğunu, kimin değiştirdiğini anlamak için de işe yarar.
Matrise 'oku' işlemi neden yazılır?
Çünkü okuma ihtiyacı çoğu zaman rapor, ekran ya da entegrasyon gereksinimi anlamına gelir. Bir veriyi hiç kimse okumuyorsa toplanması sorgulanır; çok kişi okuyorsa görünüm ve erişim kuralları gerekir.
Matristeki bir varlık için birden çok sahip olabilir mi?
Olabilir ama riskli bir durumdur. Birden çok rol aynı kaydı güncelliyorsa çakışma ve tutarsızlık olasılığı artar. Çoğu zaman tek bir veri sahibi belirlenir, diğer roller okur ya da değişiklik ister.