BYZ660 - GEREKSİNİM MÜHENDİSLİĞİ

Dersin Adı Kodu Yarıyılı Teori
(saat/hafta)
Uygulama
(saat/hafta)
Yerel Kredi AKTS
GEREKSİNİM MÜHENDİSLİĞİ BYZ660 Herhangi Yarıyıl/Yıl 3 0 3 6
Önkoşul(lar)-var iseYok
Dersin DiliTürkçe
Dersin TürüSeçmeli 
Dersin verilme şekliYüz yüze 
Dersin öğrenme ve öğretme teknikleriAnlatım
Tartışma
Rapor Hazırlama ve/veya Sunma
 
Dersin sorumlusu(ları)Ayça Tarhan 
Dersin amacıYazılım içeren sistemlerin geliştirilmesinde kullanılan gereksinim mühendisliği kavramlarını, sürecini, modellerini tanıtmak ve gereksinim türleri, çıkarma ve analiz teknikleri, onaylama ve belgeleme esasları hakkında bilgi vermek 
Dersin öğrenme çıktıları
  1. Öğrenci;
  2. Gereksinim mühendisliği kavramlarını ve bunların geliştirmedeki rolünü öğrenir.
  3. Gereksinim mühendisliği sürecini ve bu sürecin adımlarını öğrenir.
  4. Gereksinim tanımını, türlerini ve paydaşlarını öğrenir.
  5. Gereksinim çıkarma ve analiz tekniklerini öğrenir.
  6. Gereksinim modellerini öğrenir.
  7. Gereksinim belgeleme ve onaylama esaslarını öğrenir.
Dersin içeriğiGereksinim mühendisliğine giriş. Gereksinim mühendisliği süreci ve paydaşları. Gereksinim tanımı ve türleri. İşlevsel gereksinimler ve kalite gereksinimleri. Alan analizi, gereksinim çıkarma ve teknikleri. Gereksinim modelleme ve tanımlama. Gereksinim belgeleme ve onaylama. Gereksinim yönetimi.  
Kaynaklar? A. van Lamsweerde, Requirements Engineering: From System Goals to UML Models to Software Specifications, Wiley, 2009.
? Ian Sommerville ve Pete Sawyer, Requirements Engineering: A Good Practice Guide, Wiley, 1997.
? Dean Leffingwell ve Don Widrig, Managing Software Requirements: A Use Case Approach, Addison-Wesley, 2003.
 

Haftalara Göre İşlenecek Konular

HaftalarKonular
1. HaftaGereksinim Mühendisliğine Giriş
2. HaftaGereksinim Mühendisliğine Giriş
3. HaftaGereksinim Mühendisliği Süreci ve Paydaşları
4. HaftaGereksinim Tanımı ve Türleri
5. Haftaİşlevsel Gereksinimler ve Kalite Gereksinimleri
6. HaftaAlan Analizi
7. HaftaGereksinim Çıkarma
8. HaftaGereksinim Çıkarma Teknikleri
9. HaftaArasınav
10. HaftaGereksinim Analizi ve Modelleme
11. HaftaGereksinim Analizi ve Modelleme
12. HaftaGereksinim Belgeleme
13. HaftaGereksinim Onaylama
14. HaftaGereksinim Yönetimi
15. HaftaGenel sınava hazırlık
16. HaftaGenel sınav

Değerlendirme Sistemi

Yarıyıl içi çalışmalarıSayısıKatkı Payı %
Devam (a)00
Laboratuar00
Uygulama00
Alan Çalışması00
Derse Özgü Staj (Varsa) 00
Ödevler515
Sunum00
Projeler00
Seminer00
Ara Sınavlar245
Genel sınav140
Toplam100
Yarıyıl İçi Çalışmalarının Başarı Notuna Katkısı760
Yarıyıl Sonu Sınavının Başarı Notuna Katkısı140
Toplam100

AKTS (Öğrenci İş Yükü) Tablosu

Etkinlikler Sayısı Süresi Toplam İş Yükü
Ders Süresi 14 3 42
Laboratuvar 0 0 0
Uygulama000
Derse özgü staj (varsa)000
Alan Çalışması000
Sınıf Dışı Ders Çalışma Süresi (Ön Çalışma, pekiştirme, vb)14342
Sunum / Seminer Hazırlama000
Proje000
Ödevler5735
Ara sınavlara hazırlanma süresi21530
Genel sınava hazırlanma süresi12525
Toplam İş Yükü3653174

Dersin Öğrenme Çıktılarının Program Yeterlilikleri İle İlişkilendirilmesi

D.9. Program YeterlilikleriKatkı Düzeyi*
12345
1. Yazılım Mühendisliği temel alanları hakkında detaylı bilgi sahibidir.  X  
2. Yazılım mühendisliğine yönelik gereksinimlerin anlaşılması, süreçlerin planlanması, çıktıların belirlenmesi, kaynak planlamalarının yapılması, risk yönetimi ve kalite planlaması konularında bilgi sahibi olmak.   X 
3. Teori ve pratiğin birbirini hangi şekillerde etkilediğini ve birbirleri arasındaki bağları anlar.    X
4. Gerçek hayata ilişkin yazılım proje, süreç ve ürününe ait işlevsel ve işlevsel olmayan özellikleri tanımlar.  X  
5. Herhangi bir teknik veya bilimsel yazılım mühendisliği problemini kendi başına çözümler ve olası en uygun çözümü sunar; çözümün bütünlüğünü açıklayabilecek, yaptığı varsayımları açıkça anlatabilecek kadar iyi iletişim becerilerine sahiptir.   X 
6. Takım içinde verimli çalışabilme için gerekli olan becerileri edinmek adına sıradan bir ders projesine oranla daha büyük ölçekli bir projeyi tamamlar.  X  
7. Yazılım mühendisliği süreçlerini tanımlayabilme, uygulayabilme, değerlendirebilme, ölçme, yönetme, değiştirme ve geliştirme konularında bilgi sahibi olmak.   X 
8. Yazılım Mühendisliği uygulamalarına dair sosyal, yasal, etik ve kültürel hususların farkındadır ve bütün mesleki etkinlikleri etik ve sorumlu bir şekilde yürütür. X   
9. Hem İngilizce hem de Türkçedeki teknik terimlere vakıftır ve teknik/bilimsel problemler ve onların çözümleri konusunda çeşitli dinleyici kitlelerine yüz yüze, yazılı ya da elektronik olarak özlü sunumlar yapabilir.  X  
10. Araştırma problemleri tanımlayabilir ve bilimsel problemleri çözmek için bilimsel yöntemler kullanarak bu araştırmaları yürütür.     X

*1 En düşük, 2 Düşük, 3 Orta, 4 Yüksek, 5 Çok yüksek