220 likes | 394 Vues
YZM 320 - Yazılım Doğrulama ve Geçerlileme. Hazırlayan:Emin BORANDAĞ. Yazılımda hatanın meydana gelmesi neye bağlıdır?. Yanlış gereksinimleri belirle( İletişim eksikliği) Yanlış tararım. Yanlış kodlama Yanlış ve/veya yetersiz test Yanlış yada yetersiz destek….
E N D
YZM 320 - Yazılım Doğrulama ve Geçerlileme Hazırlayan:Emin BORANDAĞ
Yazılımda hatanın meydana gelmesi neye bağlıdır? • Yanlış gereksinimleri belirle( İletişim eksikliği) • Yanlış tararım. • Yanlış kodlama • Yanlış ve/veya yetersiz test • Yanlış yada yetersiz destek….
Yazılımda hata hangi safhalarda daha çok meydana gelir? • Tanımlama (~= 55?%) • Design (~= 25?%) • Code (~= 15%) • Other (~= 5%)
Hatanın bulunduğu noktaya göre maliyeti • İsterler 1$ • Tasarım 10$ • Kodlama 100$ • Kullanım 1000$
Hatasız Yazılımlar • Yazılımların sahip oldukları özelliklerin artması. İsterlerin farklılaşması hatasız yazılımların üretilmesini neredeyse imkansız hale getirmiştir!!!
Tartışma-Hatasız Yazılım Üretilebilir mi? • Teknik bariyerleri kaldıracak imkan olsa • Zaman sorununu giderebilecek imkan olsa
Yazılımı Test Eden Kişinin Amacı • Hataları bulmak. • Yazılımın gelişimine mümkün olan en büyük katkıyı sağlamak. • Hatanın giderildiğinden emin olmak.
Yazılım Test Uzmanı • Onlar kaşifler mı? • Onlar sorun gidericileri mı? • Onlar acımasız mı? • Yaratıcı mı? • Onlar mükemmelliyetçi mı? • Onlar iyi birer yargıç mı? • Onlar düşünceli ve diplomatik mi? • Onlar ikna edici mi?
Şu ana kadar neler öğrendik… • Yazılımların temel amacı nedir? • Yazılımda test neden önemlidir?(Tarihteki yazılım hataları) • Yazılımda kaç hata var? • Hata nedir?(Hataların diğer isimleri) • İsterler ve hatalar arasındaki ilişki? • Hataların bulunma yerlerine göre maliyeti nedir? • Yazılım test mühendisinin görevleri? • Yazılımtest mühendisinin özellikleri nelerdir?
Yazılım Oluştur? • Gereksinimleri belirle ve şartnameyi oluştur. • Tasarım dokmanlarını oluştur. • Kaynak kodu • Yazılım testlerini ve test planları • Donanım ve yazılıma ait çalışma ortamı için arayüzoluştur. • Şirket içi ve dışı eğitimleri ver. • Çalıştırılabilir programları müşteriye ulaştır. • Bakım anlaşmasını hazırla.
Yazılım işi için harcanması gereken efor • ŞartnameÜrün incelemeleriTasarımGörevlendirmeTest planlamaKullanılabilirlik veri toplamaGörünüm ve özellikleri neler • Yazılım mimarisiProgramlama...
Tartışma. • Testin bu yazılım yaşam çevrimi içerisindeki yeri nedir? • eminb@maltepe.edu.tr
Müşteri İhtiyaçları • Yazılım geliştirme ekibi müşterinin ihtiyaçlarını belirlemeli. • Nasıl??? • Elde edilen bilgi sizin için bir harita niteliği taşıyacaktır! Sanırım böyle olmalı (tahmin)?Anket ile bilgi toplayalım? Yazılımının bir önceki sürüme bakalım?Benzer yazılımları inceleyelim?Başka yollar?
Şartname • “If you don't know where you're going any road will take you there” • Müşteriden alınan bilgiler, yapılan toplantıdan çıkarılan sonuçlara göre toparlanır. • Bu aşama sonucunda • Yazılım özellikleri neler olacak? • Formal mi yoksa informal mi olmalı???
Şartname??? • Tanımlı istekler belirlenmeli. • Kayıt,Güncelleme,Raporlama,vb • Tanımlı olmayan istekler belirlenmeli. • Güzenlik,Sağlamlık,Kolay bir arayüz
Görevler • Zamanlama hedefleri şunlardır: • Hangi işin öncelikli tamamlanması gerekmektedir? • Kaç adet ana ve kaç adet ara süreç tamamlanacak? • İş nezaman bitmiş olacak? • Yazılımdakimler görev alacak ve hangi işlerde görev alacak?
Gantt graf • Bir projeye ait zamanlama çizelgesini gösterençubuk graf
Tasarım • Kodlama öncesi, • yazılım projeleri • Üzerinde önce,tasarım • dokümanları bir dizi • Hazırlık planları oluşturulur. • Yazılım Mimarisi • Veri akış diyagramı • Durum geçiş diyagramı • Akış şeması
Yazılım Kodu en sonunda…. ‘Code is king’ felsefesi.
Ödevler • Altın Problemi • Hatalı tek altın! • Hatalı altın sayısı bilinmiyor! • Romalı asker problemi
Word Çıktıları Index 1)Altın Problemi .…….…….1 1.1Amaç……………….….……….1 1.2Girdiler…………….…..……..1 1.3Mantığı…………….……….…1 1.4ProgramKodu………..……2 1.5Ekran Çıktısı……….………2