| Yazılım Mühendisliği (İngilizce) | |||||
| Lisans | TYYÇ: 6. Düzey | QF-EHEA: 1. Düzey | EQF-LLL: 6. Düzey | ||
| Ders Kodu: | SWE314 | ||||||||
| Ders İsmi: | Software Validation and Testing | ||||||||
| Ders Yarıyılı: | Güz | ||||||||
| Ders Kredileri: |
|
||||||||
| Öğretim Dili: | EN | ||||||||
| Ders Koşulu: | |||||||||
| Ders İş Deneyimini Gerektiriyor mu?: | Hayır | ||||||||
| Dersin Türü: | Zorunlu Ders | ||||||||
| Dersin Seviyesi: |
|
||||||||
| Dersin Veriliş Şekli: | Yüz yüze | ||||||||
| Dersin Koordinatörü: | Prof. Dr. SEMİH BİLGEN | ||||||||
| Dersi Veren(ler): |
Prof. Dr. SEMİH BİLGEN |
||||||||
| Dersin Yardımcıları: |
| Dersin Amacı: | Bu dersin amacı, Yazılım Mühendisliği lisans öğrencilerine yazılım geçerleme ve test süreçlerinin teorik ve pratik yönleri hakkında farkındalık kazandırmaktır. |
| Dersin İçeriği: | Doğrulama ve geçerlemeye giriş ve motivasyon; yazılım testine genel bakış, test sürecinin temelleri, testin genel ilkeleri, tanımlar ve kavramlar, yazılım geliştirme yaşam döngüsünde test, test türleri, test seviyeleri, test metrikleri; yazılım incelemesi (inspection) ve kod gözden geçirmeleri (code reviews), teknik gözden geçirmeler, eşli programlama; belirtim tabanlı test, girdiye dayalı bölümleme, eşdeğerlik sınıfı bölümlemesi, sınır değer analizi, durum geçiş testi, karar tablosu tekniği, kullanım durumu (use case) testi; yapısal test, çizge (graph) kapsama, mantık kapsama, sözdizimi tabanlı test, deyim (statement) kapsama, dal (branch) kapsama, koşul kapsama, yol (path) kapsama, enstrümantasyon ve araç desteği; sistem, kabul ve regresyon testleri; model tabanlı test; çalışma zamanı doğrulaması; model denetimi, sonlu durum doğrulamasında zamansal mantık, hesaplamalı ağaç mantığı (CTL); güvenlik (safety) analizi ve yazılım güvenilirlik (reliability) mühendisliği. |
Bu dersi başarıyla tamamlayabilen öğrenciler;
|
||||||||||||||||||||||||||||||||||||
| Hafta | Konu | Ön Hazırlık |
| 1) | Kurs Organizasyonu | Yok |
| 2) | Yazılım Doğrulama ve Doğrulama için Motivasyon | Read Chapter 1,2,3,4 |
| 3) | Yazılım Kalitesi Modelleri; Yazılım Güvenilirliği | Read Chapter 1,2,3,4 |
| 4) | Sonlu modeller, bağımlılık ve veri akışı modelleri | Read Chapter 6,7 |
| 5) | Yazılım Test Seviyeleri | Yok |
| 6) | Test Otomasyon Çerçevesi (JUnit); Test Durumu Seçimi ve Yeterliliği | Read Chapter 9 |
| 7) | Fonksiyonel test | Read Chapter 10 |
| 8) | Vize Sınavı | Yok |
| 9) | Kombinatoryal Testler | Read Chapter 11 |
| 10) | Sonlu Modeller | Read Chapter 5, 6 |
| 11) | Bağımlılık ve veri akışı modelleri; Yapısal Testler - Kapsama Metrikleri | Read Chapter 12, 13, 14 |
| 12) | Yapısal Testler - Veri Akışı Testleri | Yok |
| 13) | Süreç; Test Odaklı Geliştirme | Read Chapter 20,21 |
| 14) | Model Denetimi; Özet; | Read Chapter 8,14 |
| 15) | Final Sınavı | Yok |
| Ders Notları / Kitaplar: | Software Testing and Analysis: Process, Principles and Techniques, Wiley, ISBN 0471455938., Mauro Pezzè, Michal Young, 2008, Wiley |
| Diğer Kaynaklar: | None |
| Ders Öğrenme Kazanımları | 1 |
2 |
3 |
4 |
5 |
|||||
|---|---|---|---|---|---|---|---|---|---|---|
| Program Kazanımları | ||||||||||
| 1) Proje yönetimi ile risk yönetimi ve değişiklik yönetimi gibi iş hayatındaki uygulamalar hakkında bilgi; girişimcilik, yenilikçilik ve sürdürebilir kalkınma hakkında farkındalık. | ||||||||||
| 2) Matematik, fen bilimleri ve kendi dalları ile ilgili mühendislik konularında yeterli bilgi birikimi; bu alanlardaki kuramsal ve uygulamalı bilgileri mühendislik problemlerini modelleme ve çözme için uygulayabilme becerisi. | ||||||||||
| 3) Karmaşık mühendislik problemlerini saptama, tanımlama, formüle etme ve çözme becerisi; bu amaçla uygun analiz ve modelleme yöntemlerini seçme ve uygulama becerisi. | ||||||||||
| 4) Karmaşık bir sistemi, süreci, cihazı veya ürünü gerçekçi kısıtlar ve koşullar altında, belirli gereksinimleri karşılayacak şekilde tasarlama becerisi; bu amaçla modern tasarım yöntemlerini uygulama becerisi. (Gerçekçi kısıtlar ve koşullar tasarımın niteliğine göre, ekonomi, çevre sorunları, sürdürülebilirlik, üretilebilirlik, etik, sağlık, güvenlik, sosyal ve politik sorunlar gibi ögeleri içerirler.) | ||||||||||
| 5) Mühendislik uygulamaları için gerekli olan modern teknik ve araçları geliştirme, seçme ve kullanma becerisi; bilişim teknolojilerini etkin bir şekilde kullanma becerisi. | ||||||||||
| 6) Mühendislik problemlerinin incelenmesi için deney tasarlama, deney yapma, veri toplama, sonuçları analiz etme ve yorumlama becerisi. | ||||||||||
| 7) Türkçe sözlü ve yazılı etkin iletişim kurma becerisi; en az bir yabancı dil bilgisi. | ||||||||||
| 8) Yaşam boyu öğrenmenin gerekliliği bilinci; bilgiye erişebilme, bilim ve teknolojideki gelişmeleri izleme ve kendini sürekli yenileme becerisi. | ||||||||||
| 9) Mesleki ve etik sorumluluk bilinci. | ||||||||||
| 10) Mühendislik uygulamalarının evrensel ve toplumsal boyutlarda sağlık, çevre ve güvenlik üzerindeki etkileri ile çağın sorunları hakkında bilgi; mühendislik çözümlerinin hukuksal sonuçları konusunda farkındalık. | ||||||||||
| 11) Disiplin içi ve çok disiplinli takımlarda etkin biçimde çalışabilme becerisi; bireysel çalışma becerisi. | ||||||||||
| Etkisi Yok | 1 En Düşük | 2 Düşük | 3 Orta | 4 Yüksek | 5 En Yüksek |
| Dersin Program Kazanımlarına Etkisi | Katkı Payı | |
| 1) | Proje yönetimi ile risk yönetimi ve değişiklik yönetimi gibi iş hayatındaki uygulamalar hakkında bilgi; girişimcilik, yenilikçilik ve sürdürebilir kalkınma hakkında farkındalık. | |
| 2) | Matematik, fen bilimleri ve kendi dalları ile ilgili mühendislik konularında yeterli bilgi birikimi; bu alanlardaki kuramsal ve uygulamalı bilgileri mühendislik problemlerini modelleme ve çözme için uygulayabilme becerisi. | 1 |
| 3) | Karmaşık mühendislik problemlerini saptama, tanımlama, formüle etme ve çözme becerisi; bu amaçla uygun analiz ve modelleme yöntemlerini seçme ve uygulama becerisi. | 4 |
| 4) | Karmaşık bir sistemi, süreci, cihazı veya ürünü gerçekçi kısıtlar ve koşullar altında, belirli gereksinimleri karşılayacak şekilde tasarlama becerisi; bu amaçla modern tasarım yöntemlerini uygulama becerisi. (Gerçekçi kısıtlar ve koşullar tasarımın niteliğine göre, ekonomi, çevre sorunları, sürdürülebilirlik, üretilebilirlik, etik, sağlık, güvenlik, sosyal ve politik sorunlar gibi ögeleri içerirler.) | 2 |
| 5) | Mühendislik uygulamaları için gerekli olan modern teknik ve araçları geliştirme, seçme ve kullanma becerisi; bilişim teknolojilerini etkin bir şekilde kullanma becerisi. | |
| 6) | Mühendislik problemlerinin incelenmesi için deney tasarlama, deney yapma, veri toplama, sonuçları analiz etme ve yorumlama becerisi. | 5 |
| 7) | Türkçe sözlü ve yazılı etkin iletişim kurma becerisi; en az bir yabancı dil bilgisi. | |
| 8) | Yaşam boyu öğrenmenin gerekliliği bilinci; bilgiye erişebilme, bilim ve teknolojideki gelişmeleri izleme ve kendini sürekli yenileme becerisi. | |
| 9) | Mesleki ve etik sorumluluk bilinci. | |
| 10) | Mühendislik uygulamalarının evrensel ve toplumsal boyutlarda sağlık, çevre ve güvenlik üzerindeki etkileri ile çağın sorunları hakkında bilgi; mühendislik çözümlerinin hukuksal sonuçları konusunda farkındalık. | 3 |
| 11) | Disiplin içi ve çok disiplinli takımlarda etkin biçimde çalışabilme becerisi; bireysel çalışma becerisi. |
| Anlatım | |
| Beyin fırtınası /Altı şapka | |
| Grup çalışması ve ödevi | |
| Okuma | |
| Proje Hazırlama | |
| Rapor Yazma |
| Yazılı Sınav (Açık uçlu sorular, çoktan seçmeli, doğru yanlış, eşleştirme, boşluk doldurma, sıralama) | |
| Grup Projesi | |
| Raporlama |
| Yarıyıl İçi Çalışmaları | Aktivite Sayısı | Katkı Payı |
| Projeler | 1 | % 20 |
| Ara Sınavlar | 1 | % 20 |
| Final | 1 | % 40 |
| Rapor Teslimi | 1 | % 20 |
| Toplam | % 100 | |
| YARIYIL İÇİ ÇALIŞMALARININ BAŞARI NOTU KATKISI | % 60 | |
| YARIYIL SONU ÇALIŞMALARININ BAŞARI NOTUNA KATKISI | % 40 | |
| Toplam | % 100 | |
| Aktiviteler | Aktivite Sayısı | Süre (Saat) | İş Yükü |
| Ders Saati | 14 | 3 | 42 |
| Proje | 1 | 30 | 30 |
| Ara Sınavlar | 1 | 20 | 20 |
| Rapor Teslimi | 1 | 20 | 20 |
| Final | 1 | 40 | 40 |
| Toplam İş Yükü | 152 | ||