SEDS 561
Yazılım Mühendisliğinin Temelleri
Bu ders öğrencilere yazılım mühendisliği tekniklerini ve yaklaşımlarını tanıtmayı, değerlendirme yeteneği kazandırmayı, yazılım mühendisliği uygulamalarının vardığı son durumu ortaya koymayı ve tarihsel süreçte yaşananları aktararak, belli bir proje için doğru yaklaşımların seçiminde profesyonel karar alma becerisini kazandırmayı hedeflemektedir. Bu ders yazılım mühendisliği kavramını ortaya koyarak başlayacaktır. Ardından yazılım geliştirme paradigma, yöntem ve anahtar modelleme notasyonları tartışılacaktır. Yazılım gereksinimleri, yazılım tasarımı, proje yönetimi, ölçüm ve kişisel iletişim, gelişim teknikler kapsanacaktır.
Dersin Amacı
Bilgisayar güvenliğinin temel bileşenlerini öğretmek. Bilgisayar güvenliğinin temel bileşenlerini kullanarak, problem analiz, alternatif çözümler tanımlama, doğru çözümü belirleme ve uygulama yöntemlerinin öğretilmesi. Bilgisayar bilimlerinin, güvenlikle ilişkili konularını ve güncel araştırma problemlerini öğretmek.
Kaynakça
Aleph One – Smashing the Stack for Fun and Profit: http://www.phrack.org/issues.html?issue=49&id=14#article ,US Security Awareness (.org): http://www.ussecurityawareness.org/highres/index.html ,NSU InfoSec web site (of course): http://infosec.nova.edu/ ,Bruce Schneier – Crypto-gram Newsletter: http://www.schneier.com/crypto-gram.html ,Microsoft Security Guidance Center: http://www.microsoft.com/security/guidance/default.mspx ,B. Matt, Introduction to Computer Security ,Addison-Wesley, Pearson Education, 2005 ,SNORT.ORG: http://www.snort.org/
Öğrenim Çıktıları
1. Temel yazılım mühendisliği kavramlarına hakim
2. Sıkça rastlanan yazılım mühendisliği hatalarından ders almış
3. Yazılım mühendisliği problemlerini tartışabilir
4. Profesyonel karar alma becerisine sahip
| Week | Topics |
|---|---|
| 1 | Problem ve çözüm alanları |
| 2 | Yazılım nedir? |
| 3 | Yazılım mühendisliği paradigmaları |
| 4 | Yazılım mühendisliğinde modelleme |
| 5 | Yazılım geliştirme yöntemleri |
| 6-7 | Gereksinim mühendisliği |
| 8-9 | Yazılım mimarisi ve tasarımı |
| 10 | Yazılım testleri |
| 11-12 | Yazılım yönetimi |
| 13 | Takım organizasyonu ve insan yönetimi |
| 14 | Ampirik yazılım mühendisliği |
Notlandırma
Vize %25
Araştırma Sunumu %40
Final %35
