YAZILIM TEST YAŞAM DÖNGÜSÜ
VE
PROJE BAŞARISINA ETKİSİ
Aynur AKKOL ÖZKAN
Test Analisti
Nisan 2016
Yazılım firması/proje sahibi olarak
Başarılı işlere imza atmış,
Prestijli bir imaj sahip,
Rekabet ortamında aranan bir isim….
Yazılım firması/proje sahibi olarak
Başarılı işlere imza atmış,
Prestijli bir imaj sahip,
Rekabet ortamında aranan bir isim….
Amacımız ?...
KAPSAM
o Test Nedir?
o Yazılım Test Yaşam Döngüsü (STLC) Nedir?
o Test Süreçlerinin Proje Başarısına Etkisi Nedir?
Test Nedir?
« A human using her intelligence and
experience to critique and explore a
system under test.»
Kristian Karl
Spotify Test Manager
Yazılım Test Yaşam Döngüsü (STLC)
PLANLAMA
VE
KONTROL
ANALİZ
VE
TASARIM
UYARLAMA
VE
YÜRÜTME
DEĞERLENDİRME
VE
RAPORLAMA
KAPANIŞ
AKTİVİTELERİ
TEST
Test, hataları gösterir (Testing shows the presence of defects)
Bir yazılımı %100 test etmek imkansızdır! (Exhaustive testing is impossible!)
Teste yazılım geliştirme sürecinin başından başlamak gerekir (early testing)
Antibiyotik direnci (TNT Paradoksu/Pesticide paradox)
Hatalar yazılımın belirli alanlarında yoğunlaşır (Defect clustering)
Test yaklaşımı proje özelliklerine göre çeşitlilik gösterebilir. (Testing is context dependent)
Yeni hata bulunmaması başarılı bir yazılım elde edildiğini göstermez!( Absence-of-error fallacy)
71
2
3
4
5
6
7
Test, hataları gösterir (Testing shows the presence of defects)
Bir yazılımı %100 test etmek imkansızdır! (Exhaustive testing is impossible!)
Teste yazılım geliştirme sürecinin başından başlamak gerekir (early testing)
Antibiyotik direnci (TNT Paradoksu/Pesticide paradox)
Hatalar yazılımın belirli alanlarında yoğunlaşır (Defect clustering)
Test yaklaşımı proje özelliklerine göre çeşitlilik gösterebilir. (Testing is context dependent)
Yeni hata bulunmaması başarılı bir yazılım elde edildiğini göstermez!( Absence-of-error fallacy)
71
2
3
4
5
6
7
Test, hataları gösterir (Testing shows the presence of defects)
Bir yazılımı %100 test etmek imkansızdır! (Exhaustive testing is impossible!)
Teste yazılım geliştirme sürecinin başından başlamak gerekir (early testing)
Antibiyotik direnci (TNT Paradoksu/Pesticide paradox)
Hatalar yazılımın belirli alanlarında yoğunlaşır (Defect clustering)
Test yaklaşımı proje özelliklerine göre çeşitlilik gösterebilir. (Testing is context dependent)
Yeni hata bulunmaması başarılı bir yazılım elde edildiğini göstermez!( Absence-of-error fallacy)
71
2
3
4
5
6
7
Test, hataları gösterir (Testing shows the presence of defects)
Bir yazılımı %100 test etmek imkansızdır! (Exhaustive testing is impossible!)
Teste yazılım geliştirme sürecinin başından başlamak gerekir (early testing)
Antibiyotik direnci (TNT Paradoksu/Pesticide paradox)
Hatalar yazılımın belirli alanlarında yoğunlaşır (Defect clustering)
Test yaklaşımı proje özelliklerine göre çeşitlilik gösterebilir. (Testing is context dependent)
Yeni hata bulunmaması başarılı bir yazılım elde edildiğini göstermez!( Absence-of-error fallacy)
71
2
3
4
5
6
7
Test, hataları gösterir (Testing shows the presence of defects)
Bir yazılımı %100 test etmek imkansızdır! (Exhaustive testing is impossible!)
Teste yazılım geliştirme sürecinin başından başlamak gerekir (early testing)
Antibiyotik direnci (TNT Paradoksu/Pesticide paradox)
Hatalar yazılımın belirli alanlarında yoğunlaşır (Defect clustering)
Test yaklaşımı proje özelliklerine göre çeşitlilik gösterebilir. (Testing is context dependent)
Yeni hata bulunmaması başarılı bir yazılım elde edildiğini göstermez!( Absence-of-error fallacy)
71
2
3
4
5
6
7
Test, hataları gösterir (Testing shows the presence of defects)
Bir yazılımı %100 test etmek imkansızdır! (Exhaustive testing is impossible!)
Teste yazılım geliştirme sürecinin başından başlamak gerekir (early testing)
Antibiyotik direnci (TNT Paradoksu/Pesticide paradox)
Hatalar yazılımın belirli alanlarında yoğunlaşır (Defect clustering)
Test yaklaşımı proje özelliklerine göre çeşitlilik gösterebilir. (Testing is context dependent)
Yeni hata bulunmaması başarılı bir yazılım elde edildiğini göstermez!( Absence-of-error fallacy)
71
2
3
4
5
6
7
Test, hataları gösterir (Testing shows the presence of defects)
Bir yazılımı %100 test etmek imkansızdır! (Exhaustive testing is impossible!)
Teste yazılım geliştirme sürecinin başından başlamak gerekir (early testing)
Antibiyotik direnci (TNT Paradoksu/Pesticide paradox)
Hatalar yazılımın belirli alanlarında yoğunlaşır (Defect clustering)
Test yaklaşımı proje özelliklerine göre çeşitlilik gösterebilir. (Testing is context dependent)
Yeni hata bulunmaması başarılı bir yazılım elde edildiğini göstermez!( Absence-of-error fallacy)
71
2
3
4
5
6
7
Test, hataları gösterir (Testing shows the presence of defects)
Bir yazılımı %100 test etmek imkansızdır! (Exhaustive testing is impossible!)
Teste yazılım geliştirme sürecinin başından başlamak gerekir (early testing)
Antibiyotik direnci (TNT Paradoksu/Pesticide paradox)
Hatalar yazılımın belirli alanlarında yoğunlaşır (Defect clustering)
Test yaklaşımı proje özelliklerine göre çeşitlilik gösterebilir. (Testing is context dependent)
Yeni hata bulunmaması başarılı bir yazılım elde edildiğini göstermez!( Absence-of-error fallacy)
71
2
3
4
5
6
7
PLANLAMA
VE
KONTROL
ANALİZ
VE
TASARIM
UYARLAMA
VE
YÜRÜTME
DEĞERLENDİRME
VE
RAPORLAMA
KAPANIŞ
AKTİVİTELERİ
TEST
Test Ne Zaman Başlar?
Yazılım gereksinimlerinin belirlenmesi sürecinde başlar.
• Uygulamanın doğrulanması
• Test fazının kapatılması,
• Müşteri kabul testleri,
• Proje kabulünün alınması
• Tasarımın doğrulanması
• Gereksinimlerin doğrulanması
Gereksinimlerin Belirlenmesi
Tasarım
Uygulama Geliştirme
Proje Tamamlanması
Test Süreçleri Nasıl Tasarlanmalıdır?
Hangi yazılım yaşam döngüsü kullanılıyor?
Projenin hedefi nedir?
Projenin kapsamı nedir?
Projeye verilen süre nedir?
Test sürecinden beklentiler nelerdir?
Test Süreçleri Neden Gereklidir?
• Uygulamanın doğrulanması
• Test fazının kapatılması,
• Müşteri kabul testleri,
• Proje kabulünün alınması
• Tasarımın doğrulanması
• Gereksinimlerin doğrulanması
Gereksinimlerin Belirlenmesi
Tasarım
Uygulama Geliştirme
Proje Tamanlanması
Zero Bug Phase
UI
Entegrasyon
Unit Test
Yüksek
Orta
Düşük
Düşük
Orta
Yüksek
Yüksek
Orta
Düşük
Test OtomasyonTürleri
Mantıksal İş Kapsamı
Kod Kapsama
Zaman/Maliyet
Test Otomasyonu
Soru ve Cevap
REFERANSLARISTQB Foundation Level Syllabus
ISTQB Yazılım Testi Terimler Sözlüğü
The Software Test Engineer’s Handbook, Graham Bath, Judy McKay, 2012
Yazılım Testi-İş Analizi-Kullanılabilirlik, Lütfi Koray Yitmen, Ekim 2014
Yazılım Test Mühendisliği, Ali Gürbüz, 2010
Lessons Learned in Software Testing, Cem Kaner
Testing Computer Software, Cem Kaner
www.testistanbul.org
www.turkishtestingboard.org
www.istqb.org
www.keytorc.com
Testİstanbul2016, Kristian Karl Keynote Spoke
Top Related