Sunum yükleniyor. Lütfen bekleyiniz

Sunum yükleniyor. Lütfen bekleyiniz

Yazılım Projelerinde Test Süreci

Benzer bir sunumlar


... konulu sunumlar: "Yazılım Projelerinde Test Süreci"— Sunum transkripti:

1 Yazılım Projelerinde Test Süreci
Necdet Terkeş (QA / ISTQB) necdett.com twitter.com/necdet tr.linkedin.com/in/nterkes

2 Gündem Son 5 senede sektör… Test nedir? Test niçin yapılır?
Testin ilkeleri Tester, Testçi, Test Uzmanı… Test Süreci Risk Analizi (FMEA) Test Seviyeleri Test Çeşitleri Test Sertifikaları Gelecek…

3 Son 5 senede sektör… Bilişim dünyasındaki (yazılım ve donanım) gelişmeler rekabeti arttırdı, İş odaklılığından müşteri odaklı bir sisteme geçildi, Rekabette öne geçmek isteyenler hizmet kalitesinde fark yaratmaya çalıştılar, Ürünlerin daha az hata ile müşterilere sunulması için teste verilen önem arttı, Test danışmanlığı ve dış kaynak kullanımı başladı, Şirketlerin test süreçleri oturmaya başladı ve test ekipleri kurulmaya başladı…

4 Test Nedir? Ürünün beklenilen seviyede olduğunu belirlemek, değilse de istenilen ölçüye gelmesini sağlamak için kullanılan bir süreç

5 Test Niçin Yapılır? Müşteriye sunulmadan önce ürün kalitesinden emin olmak, Yeniden çalışma (düzeltme) ve geliştirme masraflarını azaltmak, Geliştirme işleminin erken aşamalarında yanlışları saptayarak ileri aşamalara yayılmasını önlemek, böylece zaman ve maliyetten tasarruf sağlamak, Müşteri memnuniyetini arttırmak ve izleyen siparişler için zemin hazırlamak.

6 Test Niçin Yapılır?

7 Testin İlkeleri İlke 1: Test defectlerin varlığını gösterir; Test defectin varlığını gösterir ama defect olmadığını kanıtlayamaz. Test, yazılımdaki keşfedilmemiş defectlerin olasılığını azaltır, hiç defect bulunamamış olması yazılımın doğruluğunun kanıtı değildir. Kaynak:

8 Testin İlkeleri İlke 2: Exhaustive (her şeyi kapsayan) test mümkün değildir; Her şeyi test etmek yapılabilir değildir. Her şeyin test edilmesi yerine, test çabalarının odaklanmasında risk analizi ve öncelikler kullanılmalıdır. Kaynak:

9 Testin İlkeleri İlke 3: Erken test; Test faaliyetleri yazılım ve sistem geliştirme yaşam döngüsünde mümkün olduğunca erken başlamalı ve tanımlı hedeflere odaklanmalıdır. Kaynak:

10 Testin İlkeleri İlke 4: Defect Kümelenmesi (Clustering); Az sayıdaki modül, sürüm öncesi testleri sırasında tespit edilen defectlerin büyük bölümünü içerir ya da operasyonel başarısızlıkların büyük bölümünden sorumludur. Kaynak:

11 Testin İlkeleri İlke 5: Pesticide (tarım ilacı) paradoksu; Aynı testler üst üste tekrarlandığında, aynı test durumlarından oluşan testler artık yeni defect bulamazlar. Bu paradoksu aşmak için, test durumları düzenli olarak gözden geçirilmeli, düzeltilmeli, yazılımın ve sistemin farklı bölümlerindeki potansiyel defectler için yeni testler yazılmalıdır. Kaynak:

12 Testin İlkeleri İlke 6: Test içerik bağımlıdır; Farklı bağlamlarda farklı test yapılmalıdır. Örneğin, güvenliği kritik bir yazılımın testi bir e-ticaret sitesinin testinden farklı gerçekleştirilmelidir. Kaynak:

13 Testin İlkeleri İlke 7: Hata yokluğu yanılgısı (Absence of error fallacy); Sistem buildi kullanılabilir değilse, kullanıcının ihtiyaçlarını ve beklentilerini karşılamıyorsa, defect bulmanın ve defecti düzeltmenin bir yararı olmaz. Kaynak:

14 Tester, testçi, test uzmanı...
Google Images’a göre

15 Tester, testçi, test uzmanı...

16 Tester, testçi, test uzmanı...

17 Tester, testçi, test uzmanı...

18 Tester, testçi, test uzmanı...

19 Tester, testçi, test uzmanı...

20 Tester, testçi, test uzmanı...
Süreci iyi bilmeli, Metodolojisi olmalı, Planlı olmalı, Her iki profili de kapsamalı, Net olmalı, Araçları olmalı, Test ortamı olmalı, Şüpheci olmalı...

21 Tester, testçi, test uzmanı...
Hatayı bul, Erken bul, Çözüldüğünden emin ol. Hatayı çöz, İyi niyetle test et, Gereksinimler olmadan test et, Çok belirgin hataları raporlama, Hataları yüzünden başkaları ile alay et,

22 Test Süreci Yazılım Süreci Test Süreci Analiz Teknik Analiz
Development Test UAT Production Yazılım Süreci Test Süreci

23 Test Süreci Analiz Teknik Analiz Geliştirilecek olan ürünü tanımak, müşteri isteğini anlamak, Eğer kullanılan ürün ise mevcut durumu saptamak, Risk analizi yapmak, Test zamanlarını belirlemek, Test planını oluşturmak, Use case ve senaryoları belirlemek.

24 Test Süreci Senaryoları risk durumlarına göre sınıflandırmak,
Development Senaryoları risk durumlarına göre sınıflandırmak, Senaryoları test case leri ile detaylandırmak, Birim (unit) testleri yapmak, Analiz’deki değişiklikleri takip etmek.

25 Test Süreci Smoke testleri yapmak,
Test senaryolarını çalıştırmak (riskli olanlar öncelikli), Hataları raporlamak, Çözülen hataları tekrar test etmek (regression), Riskli olan senaryoları tekrar test etmek.

26 Test Süreci Uygulamadaki tüm fonksiyonaliteyi müşteriye test ettirmek,
UAT Uygulamadaki tüm fonksiyonaliteyi müşteriye test ettirmek, Çıkan hataları raporlamak, Çözülen hataları test edip, müşteriden onay almak, Test raporu yayınlamak

27 Risk Analizi (FMEA) Testi planlamaya başlamadan önce risklerin belirlenmesi gerekir. Bu alanda FMEA (Failure Mode Effect Analysis) yöntemi kullanılır. FMEA risk analizi 3 adımdan oluşur; 1- Risklerin kategorize edilmesi 2- Risklerin ölçeklendirilmesi 3- Risklerin RPN (risk priority number) değerinin belirlenmesi

28 Risk Analizi (FMEA) Risk kategorileri;
Fonksiyonelite: Sistemin işlevselliğini tam olarak yerine getirememesine neden olabilecek risklerdir, Yük & Kapasite: Maksimum sayıda kullanıcıyı sistemin destekleyebilmesini engelleyebilecek risklerdir, Güveninirlik: Sistemin çökmesine sebep olabilecek risklerdir, Sürdürülebilirlik: Operasyonların devamlılığını kesintiye uğratabilecek risklerdir.

29 Risk Analizi (FMEA) Veri kalitesi: Verilerin düzgün bir şekilde işlenmesi, saklanması ve çekilmesini engelleyebilecek risklerdir, Performans: Normal şartlar altında işlemlerin belirlenen sürede yapılmasını engelleyebilecek risklerdir, Dökümantasyon: Şirket personeli için hazırlana kullanım klavuzu riskleridir, Arayüz: Sistemin arayüzlerinde ortaya çıkabilecek risklerdir, Entegrasyon: Sistemin diğer sistemlerle olan etkileşimi sırasında ortaya çıkabilecek risklerdir.

30 Risk Analizi (FMEA) Risklerin ölçeklendirilmesi;
A) Sistem Açısından Önemine Göre ( Severity) 1. Veri Kaybı 2. İşlevsellik Kaybı 3. Giderilebilir İşlevsellik Kaybı 4. Kısmi İşlevsellik Kaybı 5. Kozmetik Riskler

31 Risk Analizi (FMEA) Risklerin ölçeklendirilmesi;
B) Müşteri Açısından Önemine Göre ( Priority) 1. Acil 2. Zorunlu 3. Önemli 4. Düzeltilmesi İyi Olacak 5. İsteğe Bağlı

32 Risk Analizi (FMEA) Risklerin ölçeklendirilmesi;
C) Gerçekleşme Olasılığına Göre ( Likelihood) 1. Muhtemel 2. Mümkün 3. İhtimal Dahilinde Olmayan

33 Risk Analizi (FMEA) RPN hesaplama;
RPN hesaplanırken risklerimiz için belirlediğimiz severity, priority ve likelihood ölçeklerinin katsayıları ile çarparız; Örneğin severity (1), priority (2), likelihood(2) olan bir riskin RPN değeri 4 tür. RPN değeri ne kadar az olursa riskin önemi o kadar artar.

34 Test Seviyeleri Test 4 temel aşamadan oluşur; Birim (unit) seviyesi
Modül seviyesi Sistem seviyesi Kabul seviyesi

35 Test Seviyeleri Birim (unit) seviyesi
Sistemi oluşturan ufak parçaların kendi içerindeki testlerdir. Kod testi olarak da bilinir. Genelde bu level daki testleri developer veya yazılım skilleri olan testçiler yapar.

36 Test Seviyeleri Modül seviyesi
Ayrık parçaların birbirleri ile olan etkileşimlerinin testi.

37 Test Seviyeleri Sistem seviyesi
Parçalar birleştikten sonra bütün yazılımın gereksinimlere uyumluluk testidir. Fonksiyonel ve görsel test olarak bilinir.

38 Test Seviyeleri Kabul seviyesi
Üretilen yazılımın müşteri tarafından test edilmesidir.

39 Test Çeşitleri • Black box testing • White box testing • unit testing • integration testing • functional testing • end-to-end testing • sanity testing or smoke testing • regression testing • acceptance testing • load testing • stress testing • performance testing

40 Test Çeşitleri • usability testing • install/uninstall testing • security testing • compatability testing • exploratory testing • user acceptance testing • comparison testing • alpha testing • beta testing

41 Test Sertifikaları Uluslararası düzeydeki eğitim programları ve sertifikasyonlarını veren kurumlar; ISQTB - CSTE -   CSTP -    CTM -    CSQA -  CSPM -   CSPE -

42 Gelecek… Mobilitenin yayılması ile beraber platform bağımsız sistemler, Cloud computing Cloud testing (SOASTA, Gomez…)

43 Sorularınız... Necdet Terkeş necdet.terkes@gmail.com necdett.com
(QA / ISTQB) necdett.com twitter.com/necdet tr.linkedin.com/in/nterkes


"Yazılım Projelerinde Test Süreci" indir ppt

Benzer bir sunumlar


Google Reklamları