Yazılım Mühendisliği Bölüm - 7 Yazılım Doğrulama ve Geçerleme

Slides:



Advertisements
Benzer bir sunumlar
Uygun Hipotezin Kurulması, Tip I Hata ve Tip II Hata
Advertisements

Proje Döngüsü ve Proje Yönetimi
Stratejik planlama sürecinde dikkat edilecek hususlar
YAZILIM GELİŞTİRME SÜRECİ
Yazılım Mühendisliği Bölüm - 4 Sistem Analizi
Sistem Analizi ve Planlama
Ahmet DABANLI.
NESNEYE YÖNELİK PROGRAMLAMA SINIFLAR
Problemi Çözme Adımları
PROJE YÖNETİMİ VE RİSK ANALİZİ
Simülasyon Teknikleri
Copyright © The OWASP Foundation Permission is granted to copy, distribute and/or modify this document under the terms of the Creative Commons Attribution-ShareAlike.
Yazılım Mühendisliği Bölüm - 5 Tasarım
Yazılım Mühendisliği Bölüm - 6 Gerçekleştirim
ABANT İZZET BAYSAL ÜNİVERSİTESİ İÇ KONTROL SİSTEMİ
Karar ifadeleri ve Döngüler
PROGRAMLAMA DİLLERİNE GİRİŞ Ders 3: Döngüler
Yazılım Test Süreci. Yazılım test süreci Test Hazırlık Adımında Neler Yapılmalıdır? Test edilecek yazılıma ait analiz ve teknik tasarım aşamaları ile.
Prof. Dr. M. Erdal GÜZELDEMİR
Sistem Geliştirme Sistemin tanımı. Sistemin Temel özellikleri
Bölüm 14 Stratejik Değerleme ve Kontrol
YZM Yazılım Doğrulama ve Geçerlileme
Yazılım Mühendisliği Bölüm - 2 Yazılım Geliştirme Yaşam Döngüsü
TEST – 1.
NESNEYE DAYALI PROGRAMLAMA
Yazılım Mühendisliği Yrd. Doç. Dr. Altan MESUT.
©Ian Sommerville 2000Software Engineering, 6th edition. Chapter 19Slide 1 Doğrulama ve Geçerlilik- Verification and Validation l Yazılım Sisteminin kullanıcı.
T.C. MİLLÎ EĞİTİM BAKANLIĞI PROJELER KOORDİNASYON MERKEZİ BAŞKANLIĞI
Yazılım Mühendisliği.
SİSTEM ANALİZİ VE TASARIMI
BİYOİNFORMATİK NEDİR? BİYOİNFORMATİKTE KULLANILAN SINIFLAMA YÖNTEMLERİ
DÖNGÜLER.
YZM Yazılım Doğrulama ve Geçerlileme
Doç. Dr. Arif ALTUN Arş. Gör. Meryem YILMAZ-SOYLU
Ders İçeriği Liste Soyut veri yapısı (ADT)
Kalite Yönetim Prensipleri (Devam)
DENEME.
DÖNGÜLER(Loop) while, for döngüleri Break ve continue işlevleri
Bil 102 Bölüm 3 Java’da Program Akış Denetimi Bil 1021.
T.C. MİLLÎ EĞİTİM BAKANLIĞI PROJELER KOORDİNASYON MERKEZİ BAŞKANLIĞI T.C. MİLLİ EĞİTİM BAKANLIĞI Projeler Koordinasyon Merkezi Başkanlığı.
Ders 2- Veri türleri, Karar ve Döngü Yapıları, Görsel Kontröller
DÖNGÜ DEYİMLERİ Programın belirli bir kesiminin birden fazla tekrarlanması işlemine DÖNGÜ denir. Bir değişken belirli bir değerden başlayıp, son değeri.
Doç. Dr. Cemil Öz SAÜ Bilgisayar Mühendisliği Dr. Cemil Öz.
IMGK 207-Bilimsel araştırma yöntemleri
Proje Yönetim Döngüsü: -Aşamaları -Rol ve Sorumluluklar
SİSTEM VE YAZILIM Bilgisayar sistemleri donanım, yazılım ve bunları işletmek üzere gerekli işlemlerden oluşur. Yazılım, bilgisayar sistemlerinin bir bileşeni.
Doç. Dr. Cemil Öz SAÜ Bilgisayar Mühendisliği Dr. Cemil Öz.
Proje Oluşturma ve Yönetimi
Sistem Yaklaşımı.
EĞİTİM BİR KÜLTÜRLEME ARACIDIR Kasıtlılık: Planlı olma.
 Projeler üç nedenle sona erdirilirler. 1. Proje amaçlarına ulaşılmış ve başarılı olarak tamamlanmıştır. 2. Projenin durdurulması gerekmektedir. 3. Proje.
URUN GELıSTıRME KALıTE GUVENCESı VE STANDARDLARı SUMEYRA CELıK ZıRVE UNıVERSıTESı DıSTıCARET BOLUMU 1 NıSAN 2016.
DENEYSEL YAKLAŞIM (Kullanıcı Testleri)
Yazılım Müh.[YYurtaY 7.hft]1. 2 Bir yazılım ürünün testi ; ürünü son kullanıcıya teslim edilmeden önce yazılımın tüm yönleriyle kontrol edilmesidir. 
YONT 409 PROJE YÖNETİMİ.
 Bir projeyi yönetmek üzere görevlendirilen ve projeyi, mümkün olan en yüksek üretkenlik, en düşük belirsizlik ve risk ile yürütmekten sorumlu kişidir.
Bilgisayar Mühendisliğindeki Yeri
Yazılım Mühendisliği YYurtaY. Ekip çalışması
Nesne Tabanlı Yazılım Geliştirme Bora Güngören Portakal Teknoloji EMO Ankara Şubesi
Doğrulama ve Geçerleme
SİSTEM ANALİZİ VE TASARIMI
SİSTEM ANALİZİ VE TASARIMI
Yazılım Geliştirme Yaşam Döngüsü
Bölüm 14 Stratejik Değerleme ve Kontrol
Yazılım Geliştirme Yaşam Döngüsü
Yazılım Mühendisliği Temel Süreçler - Sistem Analizi
Ders 7: Yazılım Doğrulama ve Geçerleme
Yazılım Mühendisliği Temel Süreçler – PLANLAMA II
Sunum transkripti:

Yazılım Mühendisliği Bölüm - 7 Yazılım Doğrulama ve Geçerleme Yrd.Doç.Dr. Güray YILMAZ Mayıs 2007 Yazılım Mühendisliği Yönetimi

Giriş Geliştirilecek bilgi sistemi yazılımın doğrulanması ve geçerlenmesi işlemi üretim süreci boyunca süren etkinliklerden oluşur. Bu etkinlikler; Her bir etkinlik sonunda alınan çıktıların tamam, doğru, açık ve tutarlı olduğunun doğrulanması. Her etkinlikte ürünün teknik yeterliliğinin değerlendirilmesi ve uygun çözüm elde edilene kadar aktivitelerin tekrarlanması. Geliştirilen belirtimlerin önceki belirtimlerle karşılaştırılması. Yazılım ürünlerinin tüm uygulanabilir gereklerinin sağlandığının gerçeklenmesi için sınamaların hazırlanıp yürütülmesi. Yazılım Mühendisliği Yönetimi Güray YILMAZ

Doğrulama vs Geçerleme Doğrulama: Doğru ürünü mü üretiyoruz? Geçerleme: Ürünü doğru mu üretiyoruz? Doğrulama ürünü kullanacak kişilerin isteklerinin karşılanıp karşılanmadığını test eden etkinliklerden, Geçerleme ise ürünün içsel niteliğine ilişkin izleme ve denetim etkinliklerinden oluşur. Yazılım Mühendisliği Yönetimi Güray YILMAZ

Sınama Kavramları Sınama ve Bütünleştirme işlemlerinin bir strateji içinde gerçekleştirilmesi, planlanması ve tekniklerinin seçilmesi gerekmektedir. Sınama işlemleri dört ana sınıfta incelenebilir: Birim sınama Alt-sistem sınama Sistem sınama Kabul sınaması Yazılım Mühendisliği Yönetimi Güray YILMAZ

Birim Sınama Bağlı oldukları diğer sistem unsurlarından tümüyle soyutlanmış olarak birimlerin doğru çalışmalarının belirlenmesi amacıyla yapılır. Yazılım Mühendisliği Yönetimi Güray YILMAZ

Alt-sistem Sınama Alt-sistemler modüllerin bütünleştirilmeleri ile ortaya çıkarlar. Yine bağımsız olarak sınamaları yapılmalıdır. Bu aşamada en çok hata arayüzlerde bulunmaktadır. Bu yüzden arayüz hatalarına doğru yoğunlaşılmalıdır. Yazılım Mühendisliği Yönetimi Güray YILMAZ

Sistem Sınaması Üst düzeyde, bileşenlerin sistem ile olan etkileşiminde çıkacak hatalar aranmaktadır. Ayrıca, belirtilen ihtiyaçların doğru yorumlandıkları da sınanmalıdır. Yazılım Mühendisliği Yönetimi Güray YILMAZ

Kabul Sınaması Çalıştırılmadan önce sistemin son sınamasıdır. Artık, yapay veriler yerine gerçek veriler kullanılır. Bu sınama türü alfa sınaması veya beta sınaması olarak ta bilinir. Yazılım Mühendisliği Yönetimi Güray YILMAZ

Alfa vs Beta Sınaması Alfa Sınamada; sistemin geliştirildiği yerde kullanıcıların gelerek katkıda bulunması sistemi test etmesi amaçlanmaktadır. Beta Sınamasında; kullanıcı, geliştirilen sistemi kendi yerleşkesinde, bir gözetmen eşliğinde yapar. Yazılım Mühendisliği Yönetimi Güray YILMAZ

Sınama (Devam) Sınamalar, hatalardan kurtulmanın bir güvencesi değildir. Hatalardan bütünüyle arınıldığı gibi bir kanı elde edilmemelidir. Ne kadar hata sıklığına erişildiğinde sınama işlemlerinin durdurulacağına, maliyet ve kalite arasında yapılacak bir en iyileme çalışması ile ulaşılır. Yazılımın kritiklik düzeyine göre sınamaya ayrılan süre ve çaba artar. Yazılım Mühendisliği Yönetimi Güray YILMAZ

Doğrulama ve Geçerleme Yaşam Döngüsü Gerçekleştirim aşamasına kadar olan süreçlerde doğrulama ve geçerleme işlemlerinin planlaması yapılır. Planlama genellikle; alt-sistem, bütünleştirme, sistem ve kabul sınamalarının tasarımlarını içerir. Gerçekleştirim aşamasının sonunda ise söz konusu plan uygulanır. Yazılım Mühendisliği Yönetimi Güray YILMAZ

Sınama Yöntemleri Her yazılım Mühendisliği ürünü iki yoldan sınanır: Kara kutu testi (Black-Box testing ): Sistemin tümüne yönelik işlevlerin doğru yürütüldüğünün testidir. Sistem şartnamesinin gerekleri incelenir. Beyaz Kutu Testi (White Box testing ): İç işlemlerin belirtimlere uygun olarak yürütüldüğünün bileşenler tabanında sınanmasıdır. Yazılım Mühendisliği Yönetimi Güray YILMAZ

Kara Kutu Testi Yazılım Mühendisliği Yönetimi Güray YILMAZ

Beyaz Kutu Testi Bütün bağımsız yolların en az bir kez sınanması gerekir. Bütün mantıksal karar noktalarında iki değişik karar için sınamalar yapılır. Bütün döngülerin sınır değerlerinde sınanması İç veri yapılarının denenmesi Yazılım Mühendisliği Yönetimi Güray YILMAZ

Beyaz Kutu Testi (2) Yazılım Mühendisliği Yönetimi Güray YILMAZ

Beyaz Kutu Testi (3) class BinSearch { public static void search ( int key, int [] elemArray, Result r ) { int bottom = 0 ; int top = elemArray.length - 1 ; int mid ; r.found = false ; r.index = -1 ; while ( bottom <= top ) { mid = (top + bottom) / 2 ; if (elemArray [mid] == key) { r.index = mid ; r.found = true ; return ; } // if part else { if (elemArray [mid] < key) bottom = mid + 1 ; else top = mid - 1 ; } } //while loop } // search } //BinSearch Yazılım Mühendisliği Yönetimi Güray YILMAZ

Beyaz Kutu Testi (4) Yazılım Mühendisliği Yönetimi Güray YILMAZ

Beyaz Kutu Testi (5) 1, 2, 3, 8, 9 1, 2, 3, 4, 6, 7, 2 1, 2, 3, 4, 5, 7, 2 1, 2, 3, 4, 6, 7, 2, 8, 9 Test değerleri bütün bu farklı path’lerin test edilmesini sağlayacak şekilde seçilmelidir. Yazılım Mühendisliği Yönetimi Güray YILMAZ

Beyaz Kutu Testi (5) Yazılım Mühendisliği Yönetimi Güray YILMAZ

Sınama ve Bütünleştirme Stratejileri Genellikle Sınama Stratejisi, bütünleştirme stratejisi ile birlikte değerlendirilir. Ancak bazı sınama stratejileri bütünleştirme dışındaki hataları hedefleyebilir. Örneğin, yukarıdan-aşağı ve aşağıdan-yukarıya stratejileri bütünleştirme yöntemine bağlıdır. Yazılım Mühendisliği Yönetimi Güray YILMAZ

Yukarıdan Aşağıya Bütünleştirme Yukarıdan-aşağıya bütünleştirmede önce sistemin üst düzeylerinin sınanması ve sonra aşağıya doğru olan düzeylere ilgili modülleri takılarak sınanması söz konusudur. En üst noktadaki bileşen sınandıktan sonra alt düzeye geçilmelidir. Alt bileşenler henüz hazırlanmamışlardır. Bu sebeple Koçanlar kullanılır. Koçan: Bir alt bileşenin, üst bileşen ile arayüzünü temin eden, fakat işlevsel olarak hiçbir şey yapmayan çerçeve programlardır. Yazılım Mühendisliği Yönetimi Güray YILMAZ

Yukarıdan Aşağıya Bütünleştirme (2) İki temel Yaklaşım vardır: Düzey Öncelikli Bütünleştirme: En üst düzeyden başlanır ve aynı düzeydeki birimler bütünleştirilir. Derinlik Öncelikli Bütünleştirme: En üst düzeyden başlanır ve her dal soldan sağa olmak üzere ele alınır. Örnek Şekil 7.6 Yazılım Mühendisliği Yönetimi Güray YILMAZ

Yukarıdan Aşağıya Bütünleştirme (3) Yazılım Mühendisliği Yönetimi Güray YILMAZ

Aşağıdan Yukarıya Bütünleştirme Önceki yöntemin tersine uygulama yapılır. Önce en alt düzeydeki işçi birimler sınanır ve bir üst düzey ile sınanması gerektiğinde bu düzey bir sürücü ile temsil edilir. Bu kez kodlama, bütünleştirme ve sınama, aşağı düzeylerden yukarı düzeylere doğru gelişir. Örnek Şekil 7.7 Yazılım Mühendisliği Yönetimi Güray YILMAZ

Aşağıdan Yukarıya Bütünleştirme (2) Yazılım Mühendisliği Yönetimi Güray YILMAZ

Yaşam Döngüsü Boyunca Sınama Modül Sınama Planı Sınama Belirtimleri Sınama Eğitim Klavuzu Modül Sınama Bütünleştirici Sınama Sınayıcı Eğitim Altsistem Sınama planları Kullanıcı Sınaması Sınama Raporları Sistem Sınama Planı P Ç T G K P: Planlama Ç: Çözümleme T: Tasarım G: Gerçekleştirim K:Kurulum Yazılım Mühendisliği Yönetimi Güray YILMAZ

Örnek Uygulama İncelemesi Konu 7.9 Yazılım Mühendisliği Yönetimi Güray YILMAZ