• Sonuç bulunamadı

Farklılaştırılmış Risk Odaklı Test Yaklaşımı Tanımlamak

6. PRISMA(PRACTICAL RISK BASED TESTING) SÜRECİ

6.9 Farklılaştırılmış Risk Odaklı Test Yaklaşımı Tanımlamak

Farklılaştırılmış risk odaklı test yaklaşımı tanımlamanın amacı;

 Üzerinde anlaşmaya varılan ürün risk matrisine uygun bir test yaklaşımı tanımlamak.

 Hem etkili(en önemli ürün riskleri üzerine odaklanarak) hem etkin(az önemi olanların düşünüldüğü ürün risklerini detaylı olarak test ederek eforu boşa harcamayarak) bir test yaklaşımı kurmak.

118

 Tüm test yapanların test aktivitelerini ürün risklerine göre uyguladığından emin olmak.

Test yaklaşımı, belirli bir proje için test stratejisinin hayata geçirilmesidir. Projenin amacına ve risk değerlendirmesine,uygulanması gereken test tasarım tekniklerine,yapılması gereken test tiplerine dayalı kararları içerir.

Sonuç olarak test yaklaşımını tanımlamak PRISMA uygulamasını yapmanın ana nedenlerinden biridir. PRISMA yaklaşımı test yöneticisine sınırlı sayıdaki test kaynaklarının olabildiğince etkili kullanımının sağlanması konusunda rehberlik eder. Pratikte birçok test yöneticisi farklılaştırılmış test yaklaşımını tanımlarken risk seviyeleriyle eşit şekilde ilgilenmede zorluk yaşarlar. Prensip olarak dört çeyrek bölgedeki ürün risk maddeleri farklı şekilde test edilmeli ve bu yüzden en azından dört belirgin test yaklaşımı test planı içinde dokümante edilmelidir.Bir maddenin test edilmesinden kimin sorumlu olduğu, nasıl ve ne zaman hangi maddenin test edilmesi gerektiği ve ürün risk değerlendirme sonuçlarıyla örtüşüp örtüşmediği dokümante edilmelidir.

Test yaklaşımı etkili ve etkin test etmeyi sağlamakta önemli bir aşamadır. Test yaklaşımının iki ana özelliği vardır: uygulanacak testin yoğunluğu (test senaryolarının sayısı) ve testin planlama ve yerine getirilmesinde uygulanan önceliklerdir. Farklılaştırılmış risk odaklı test yaklaşımı tanımlama aşaması aşağıdaki görevleri içerir:

 Önceliklendirmelerin yapılması,

 Test tasarım tekniklerinin belirlenmesi,  Geliştirme yaklaşımının belirlenmesi.

6.9.1 Önceliklendirmenin yapılması

Ürün risk matrisindeki her bir risk maddesinin lokasyonuna bağlı olarak, risk maddeleri önceliklendirilir.Test için sıraya konan tüm risk maddelerinin sonucunda;en önemli olan madde en riskli olan madde demektir ve o maddenin önce test edilmesi gerekir.Bu en ideal durumdur .Geliştirme gerçekleştirilirken, risk odaklı yazılım mimarisi yapmak mümkün olmayabilir. Diğer taraftan test öncelikleri ile ilgili bilgi zamanında verilirse, test yöneticisi ve proje yöneticisi bunu analiz

119

edebilir ve geliştirme,entegrasyon ve hizmet takviminin önceliklerini belirlemek için bu bilgiyi kullanabilir.

6.9.2 Test tasarım tekniklerinin belirlenmesi

Test etme yoğunluğu farklı test tasarım teknikleri kullanılarak

çeşitlendirilebilir.Örneğin yüksek riskli test maddelerinde karar ağacı tekniği kullanılarak ve daha düşük seviyeli risk maddeleri için eşdeğer aralık tekniği kullanılarak çeşitlendirme yapılabilir.Risk, (hem risk seviyesi ve risk tipi) test tasarım tekniğini seçmedeki tek yaklaşım ya da bir test tasarım tekniğinin içinde bir değişken olmalıdır.

Risk en önemlisi olsa da kullanılacak test tasarım tekniklerini seçmede tek faktör değildir. Karar,iç ve dış faktör sayılarına göre verilebilir.

İç faktörler ;

 Kullanılan modeller

 Testçilerin bilgi ve deneyimleri  Beklenen hata tipleri

 Yapılan dokümantasyon

 Yaşam döngüsü modeli

 Yaşam döngüsü aşaması(yeni geliştirme ya da bakım) Dış faktörler ;

 Müşteri/sözleşme gereksinimleri  Sistem Tipi

 Gereksinimlerin düzenlenmesi  Zaman ve bütçe

Yukarıda test tasarım tekniklerinin sonucu olarak, farklılaştırılmış bir risk odaklı test tanımlamada diğer opsiyonları araştırmak önemlidir. Pratikte ürün risk matrisine dayalı farklılaştırılmış yaklaşımı tanımlamanın birçok başka yolu olduğunu belirttik Diğer risk azaltma aksiyonları önceliklendirme ve test tasarım tekniklerine ek olarak aşağıda açıklandığı gibi farklılaştırılmış test yaklaşımı tanımlanırken kullanılabilir.

120 a) Gözden geçirme ve kontroller

Tanımlanan ve analiz edilmiş ürün risklerine dayanarak birisi daha fazla gözden geçirme ya da daha kökten gözden geçirmeler yapmaya karar verebilir. Teknik (olasılık) ürün risklerinde,daha tekniksel gözden geçirmeler yararlı olurken,daha işe yönelik (etki) ürün riskleri için,kullanıcı temsilcileri ile izlenecek yolları belirlemek yararlı olabilir.

b) Test tasarım toplantıları

Yeni bir test tasarımına başlandığı zaman pratik gelişim içinde alınan derslerden kısa bir toplantı organize edilir.Toplantı son kullanıcı,uzman, testçi, yazılım geliştirici ve paydaşları içerir.Toplantı sırasında test maddesi için test düşünceleri ve kritik konular genellikle beyin fırtınası kullanılarak tanımlanır.Bu test yapana, daha iyi bir test tasarımına ulaşmasında yardımcı olur.

c) Test tasarımlarını gözden geçirme

Önemli ürün riskleriyle test tasarımları paydaşlarla ya da diğer test yapanlarla gözden geçirilebilir.Risk seviyesi ile ilişkili olarak yaklaşım şöyle olabilir:

 Kritik risk: Hem iş hem geliştirmeyle ilgili paydaşlarla test tasarımının formal olarak gözden geçirmesi.

 Büyük risk: Test ekibiyle test tasarımının formal olarak gözden geçirilmesi.  Orta risk: Başka bir test yapan tarafından test tasarımının gözden

geçirilmesi.

 Düşük risk: Test tasarımının gözden geçirmesi yok.

d) Test senaryolarının detay seviyesi

Ne kadar dokümantasyonun yeterli olduğuna karar vermek zor olabilir.Gereken dokümantasyon seviyesine test tasarımı için gerekli olan dokümantasyon seviyesine bakılarak ya da risk seviyesindeki test senaryoları ilişkilendirilerek karar verilebilir. Kritik risk maddeleri için test senaryolarının gözden geçirmelerini kolaylaştırmak için daha fazla dokümantasyon gerekebilir.

e) Bağımsızlık seviyesi

Test tasarımını yapmak için test senaryoları ve test prosedürlerini tanımlamayı içeren bir testçiye sahip olmak ve daha sonra test prosedürünü uygulayan

121

başka bir testçiye sahip olmak mümkündür. Testi bağımsız koşturan kişi test senaryolarına karşı daha eleştirici olma eğilimindedir ve sonuç olarak daha çok hata bulmak olasıdır.

f) Deneyimli Kişi

Daha deneyimli testçileri sistemin daha kritik alanlarında görevlendirmek iyi bir önlemdir. Genellikle bu iyi bir fikir olmasına rağmen kişi böcek paradoksundan

(pesticide paradox) haberdar olmalıdır. Eğer deneyimli testçiler hep aynı

yaklaşımı uygularlarsa yeni hataları göremeyeceklerdir.

g) Regresyon testi

Ürün risk değerlendirmesinin sonucu, regresyon test kümesinin içeriğine de yüksek risk alanlarının iyi korunmasını sağlayarak rehberlik etmelidir. Bu yaklaşım otomatikleşen test olaylarını seçerken de kullanılabilir. Sadece düşük riskli test maddeleriyle ilgilenen otomatik test kümesine sahip olmak çok elverişli değildir.

6.9.3 Yenilenen geliştirme yaklaşımı

Ürün risk değerlendirmesinin sonucu geliştirme yaklaşımını ve süreci etkilemek için de kullanılabilir. Örneğin dış kaynaklı olarak geliştirilen maddeler tanımlanan risk seviyesi, yüksek ürün riskleriyle ilişkilendirilen bileşenler sonucunda daha sonra içerden bir yazılımcı tarafından geliştirilebilir. Geliştirme yaklaşımı ve sürecte yapılan değişiklikler oturmuş ürün risklerinin üzerinde, özellikle hataların benzerliğinde sonradan etkili olacaktır.

Bu aşamanın sonucunda ürün riskleri (ürün risk değerlendirmesi sırasında tanımlanmış ve analiz edilmiş) sıraya konarak kabul edilmiş ve tanımlanmış bir test yaklaşımı ortaya çıkar.

Önceden belirtildiği gibi bir çok test uzmanı, farklılaştırılmış bir risk odaklı test yaklaşımını tanımlamada zorluk çekerler.Bu yüzden test stratejisinin bir parçası olabilen bazı ana düşüncelerin, böyle bir test yaklaşımında dokümante edilerek ana hatlarını oluşturmak büyük oranda tavsiye edilir.

Belirli bir test seviyesindeki test teknikleri tanımlanırken hedeflenen hataları, sınırlamaları ve teknikleri anlamak önemlidir. Test teknikleri tipik olarak güçlere ve

122

zayıflıklara sahiptir ve genellikle hata çeşitlerinden bir veya bir kaçını tanımlamaya odaklanır.

6.10 PRISMA Sürecinin Avantajları, Dezavantajları ve Dikkat Edilmesi