Yazılım Mühendisliği (BLGM312)
Bu kurs, yazılım mühendisliği ilkelerine kapsamlı bir giriş sunarak yazılım geliştirme sürecinin temel aşamalarını, proje planlaması, fizibilite çalışmaları, gereksinim analizi, tanımlama, tasarım, uygulama, test, kalite güvencesi, dokümantasyon ve bakım gibi konuları vurgular. Öğrenciler, Waterfall, V-Model, Spiral, RAD ve Agile gibi çeşitli yazılım geliştirme metodolojilerini inceleyerek gereksinim mühendisliğinde gereksinimlerin belirlenmesi, tanımlanması, doğrulanması ve evrim süreçleri gibi teorik ve pratik beceriler kazanacaklardır. Müfredat, Yazılım Gereksinimleri Spesifikasyonu (SRS) ve Yazılım Tasarım Spesifikasyonu (SDS) gibi kritik teknik belgelerin hazırlanmasına yönelik konuların yanı sıra yazılım mimarisi modelleri ve modüler sistem tasarımı gibi konuları da içerir. Doğrulama ve geçerlilik bölümünde, öğrenciler birim testi, entegrasyon testi, sistem testi ve kullanıcı kabul testi (UAT) gibi test teknikleri ile ilgili uygulamalı çalışmalara katılacak, test planlaması, kalite güvence stratejileri ve hata ayıklama teknikleri üzerine doğrulama çalışmaları yürüteceklerdir. Kurs ayrıca proje yönetimi konularında proje kapsamı, zaman ve maliyet tahmin süreçleri, risk analizi ve kalite yönetimi gibi temel unsurları kapsayarak, öğrencilerin COCOMO gibi tahmin yöntemlerini uygulamaları ve Gantt analizi, Program Değerlendirme İnceleme Tekniği (PERT) ve Kritik Yol Yöntemi (CPM) gibi proje zaman yönetimi araçlarını kullanmaları için gerekli bilgi ve becerileri kazanmalarını sağlamaktadır. İletişim becerilerini geliştirmek amacıyla öğrenciler yapılandırılmış yazılı raporlar hazırlayacak ve sözlü sunumlar gerçekleştirecek, dönem uygulama projeleri aracılığıyla yazılım çözümleri geliştirme ve yazılım mühendisliğinin toplumsal ve küresel etkilerini anlama konusunda pratik deneyim kazanacaklardır. Sonuç olarak, bu kurs teorik bilgiyi pratik uygulamalarla birleştirerek, öğrencileri yazılım geliştirme projelerini etkili bir şekilde yönetmeye hazırlayacak ve başarılı proje