Ders Adı | Kodu | Yarıyıl | T+U Saat | Kredi | AKTS |
---|---|---|---|---|---|
Secure Software Development | SWE 516 | 0 | 3 + 0 | 3 | 6 |
Ön Koşul Dersleri | |
Önerilen Seçmeli Dersler | |
Dersin Dili | İngilizce |
Dersin Seviyesi | YUKSEK_LISANS |
Dersin Türü | Seçmeli |
Dersin Koordinatörü | Doç.Dr. ÜNAL ÇAVUŞOĞLU |
Dersi Verenler | |
Dersin Yardımcıları | |
Dersin Kategorisi | Diğer |
Dersin Amacı | Güvenli yazılım geliştirme ile ilgili temel kavramlarını öğrenmek, güvenli yazılım geliştirme süreç ve araçları hakkında bilgi sahibi olmak. |
Dersin İçeriği | Yazılımların Güvenliği temel kavramları, Yazılım Geliştirme Yaşam Döngüsü, Yazılımların derlenmesi ve şifrelenmesi, Web Tabanlı Uygulama Mimarisi, Açık kaynak kodlu yazılımlarda güvenlik, Mobil uygulamalara yönelik güvenlik önlemleri, SOLID İlkeleri, Web Servisleri, Tehdit Modelleme ve Risk ve kod Analizleri, Web Uygulamaların Güvenliği; Yazılımlara yönelik siber saldırı araçları, kötü amaçlı yazılımlar, Güvenlik Denetimleri, OWASP TOP 10 Listesi , Web Tabanlı Uygulamaların Güvenli Hale Getirilmesi, Proje Çalışması |
# | Ders Öğrenme Çıktıları | Öğretim Yöntemleri | Ölçme Yöntemleri |
---|---|---|---|
1 | Güvenli yazılım geliştirmeye ilişkin temel kavramları, yazılım geliştirme sürecini ve ortamlarını öğrenmek. | Anlatım, Mikro Öğretim, | |
2 | Güvenli yazılım hazırlama, kullanma ve güvenlik araçlarını kullanma hakkında bilgi sahibi olmak. | Anlatım, | |
3 | Tehdit Modelleme, Risk ve kod Analizleri hakkında bilgi sahibi olmak | ||
4 | Web ve mobil tabanlı uygulamalarda güvenli yazılım geliştirme süreçlerini öğrenmek. | ||
5 | Siber saldırılar, kötü yazılımlar ve virüsler hakkında bilgi sahibi olmak. |
Hafta | Ders Konuları | Ön Hazırlık |
---|---|---|
1 | Yazılımların Güvenliği temel kavramları | |
2 | Yazılım Geliştirme Yaşam Döngüsü | |
3 | Yazılımların derlenmesi ve şifrelenmesi, Web Tabanlı Uygulama Mimarisi | |
4 | Açık kaynak kodlu yazılımlarda güvenlik | |
5 | Mobil uygulamalara yönelik güvenlik önlemleri | |
6 | SOLID İlkeleri, Web Servisleri | |
7 | Tehdit Modelleme | |
8 | Risk ve kod Analizleri | |
9 | Vize | |
10 | Web Uygulamaların Güvenliği | |
11 | Yazılımlara yönelik siber saldırı araçları, kötü amaçlı yazılımlar | |
12 | Güvenlik Denetimleri, | |
13 | OWASP TOP 10 | |
14 | Web Tabanlı Uygulamaların Güvenli Hale Getirilmesi |
Kaynaklar | |
---|---|
Ders Notu | OWASP, https://www.owasp.org/index.php/Main_Page Software Security: Building Security In by Gary McGraw. Addison-Wesley Demir, B. (2016). Yazılım Güvenliği, 2. Baskı, Nobel Yayınları |
Ders Kaynakları |
Sıra | Program Çıktıları | Katkı Düzeyi | |||||
---|---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | |||
1 | Yaşadığı toplumun bilgi toplumu olmasına katkıda bulunmak, toplumsal, bilimsel, kültürel ve etik sorunlara çözüm sunmak amaçlarıyla alanındaki bilimsel, teknolojik, sosyal veya kültürel ilerlemeleri ulusal ve uluslararası bilimsel ortamlarda (toplantılarda) tanıtır. | ||||||
2 | Alanında bilimsel araştırma yaparak bilgiye genişlemesine ve derinlemesine ulaşır, alanında güncel teknik ve yöntemler ile bunların kısıtları hakkında kapsamlı bilgiye sahip olup ve elde ettiği bilgiyi değerlendirir, yorumlar ve uygular. | ||||||
3 | Alanı ile ilgili problemleri tanımlar ve formüle eder, yeni ve/veya özgün fikir ve yöntemler geliştirir; karmaşık sistem veya süreçleri tasarlar ve tasarımlarında yenilikçi/alternatif çözümler ile gelişmekte olan yenilikçi yöntemleri kullanır. | ||||||
4 | Kuramsal, deneysel ve modelleme esaslı araştırmaları tasarlar ve uygular, belirsiz, sınırlı ya da eksik verileri bilimsel yöntemlerle tamamlar; verilerin toplanması, yorumlanması, duyurulması aşamalarında ve mesleki tüm etkinliklerde toplumsal, bilimsel ve etik değerleri gözetir. | ||||||
5 | Alanındaki uygulamaların sosyal, çevresel, sağlık, güvenlik, hukuki boyutlarını ve iş hayatı uygulamalarını bilir ve bunların getirdiği kısıtların farkındadır. Disiplin içi ve çok disiplinli takımlarda etkin bir biçimde birlikte ve ya bağımsız çalışabilir ve sorumluluk alır. | ||||||
6 | Her ölçekte yazılım sistemi için proje planlaması; zaman, kaynak, bütçe ve risk yönetimi yapar, alternatif çözüm yolları belirler. |
# | Ders Öğrenme Çıktılarının Program Çıktılarına Katkısı | PÇ 1 | PÇ 2 | PÇ 3 | PÇ 4 | PÇ 5 | PÇ 6 |
---|---|---|---|---|---|---|---|
1 | Güvenli yazılım geliştirmeye ilişkin temel kavramları, yazılım geliştirme sürecini ve ortamlarını öğrenmek. | ||||||
2 | Güvenli yazılım hazırlama, kullanma ve güvenlik araçlarını kullanma hakkında bilgi sahibi olmak. | ||||||
3 | Tehdit Modelleme, Risk ve kod Analizleri hakkında bilgi sahibi olmak | ||||||
4 | Web ve mobil tabanlı uygulamalarda güvenli yazılım geliştirme süreçlerini öğrenmek. | ||||||
5 | Siber saldırılar, kötü yazılımlar ve virüsler hakkında bilgi sahibi olmak. |
Değerlendirme Sistemi | |
---|---|
Yarıyıl Çalışmaları | Katkı Oranı |
1. Ara Sınav | 50 |
1. Ödev | 10 |
1. Proje / Tasarım | 20 |
2. Proje / Tasarım | 20 |
Toplam | 100 |
1. Yıl İçinin Başarıya | 50 |
1. Final | 50 |
Toplam | 100 |
AKTS - İş Yükü Etkinlik | Sayı | Süre (Saat) | Toplam İş Yükü (Saat) |
---|---|---|---|
Ders Süresi (Sınav haftası dahildir: 16x toplam ders saati) | 16 | 3 | 48 |
Ödev | 1 | 10 | 10 |
Proje / Tasarım | 2 | 25 | 50 |
Final | 1 | 40 | 40 |
Toplam İş Yükü | 148 | ||
Toplam İş Yükü / 25 (Saat) | 5,92 | ||
Dersin AKTS Kredisi | 6 |