Ders Planı /

Ders Bilgileri

Dersin Kredisi
Dersin AKTS Kredisi
Dersin Öğretim Dili İngilizce
Dersin Düzeyi Lisans , TYYÇ: 6. Düzey , EQF-LLL: 6. Düzey , QF-EHEA: 1. Düzey
Dersin Türü
Dersin Veriliş Şekli Yüz-Yüze Eğitim
Ders zorunlu veya opsiyonel iş deneyimi gerektiriyor mu ?
Dersin Koordinatörü Dr. Öğr. Üyesi HASAN ÇİFCİ
Dersi Veren(ler)
Dersin Yardımcıları

Amaç ve İçerik

Dersin Amacı Yazılım geliştirme sürecinde gereksinim mühendisliğinin ilkelerini ve önemini kapsamlı bir şekilde anlamak. Yazılım gereksinimlerini ortaya çıkarma, analiz etme ve belgeleme konusunda yeterlilik geliştirmek. Yazılım gereksinimlerinin kalitesini, doğrulanmasını ve etkili yönetimini sağlamayı öğrenmek. Çeşitli gereksinim mühendisliği araçları, çerçeveleri ve en iyi uygulamalar hakkında bilgi edinmek. Çevik ve geleneksel metodolojiler de dâhil olmak üzere çeşitli proje ortamlarında gereksinim mühendisliği tekniklerinin uygulanmasını anlamak.
Dersin İçeriği Bu ders, yazılım geliştirme yaşam döngüsündeki önemli bir aşamayı kavramak ve yazılım gereksinimlerini etkili bir şekilde ele almak için gerekli olan bilgi ve becerileri aktarmaya odaklanmak için çok önemlidir. Temel kavramları, çeşitli gereksinimleri (işlevsel, işlevsel olmayan, alana özgü) ve bunların yazılım geliştirme ve kalite üzerindeki etkilerini kapsar. Öğrenciler, çelişkili veya belirsiz bilgileri analiz etme ve çözme stratejileriyle birlikte mülakat, anket ve gözlemler yoluyla gereksinimleri ortaya çıkarmaya yönelik pratik teknikleri öğrenirler. Ayrıca ders, gereksinimlerin belgelenmesi konusunda ayrıntılı rehberlik sağlar, açıklık ve bütünlüğü vurgular ve bu gereksinimlerin hem uygulanabilir olmasını hem de doğrulama ve kalite güvence uygulamaları yoluyla paydaş ihtiyaçlarını karşılamasını sağlayacak yöntemleri araştırır. Aynı zamanda proje değişikliklerine uyum sağlamak için hayati önem taşıyan sürüm kontrolü ve değişiklik yönetimi süreçlerini kapsayan gereksinimlerin yönetimini de ele alır. Ders, teorik bilgiye ek olarak, gereksinim mühendisliğindeki en son araç ve teknolojileri sergileyen pratik uygulamaları da öğretmeyi amaçlamaktadır. Derste, endüstrinin en iyi uygulamaları, çerçeveleri ve IEEE standartları gibi standartları ele alınır. Çevik ve geleneksel şelale proje yönetimi çerçevelerindeki gereksinim mühendisliği yaklaşımları karşılaştırılır. Vaka çalışmaları, grup projeleri ve tartışmalar yoluyla öğrenciler uygulamalı deneyim kazanır ve onları yazılım geliştirme ve proje yönetimi konularında gerçek dünyadaki zorluklara hazırlar.

Haftalık Ders Konuları

1Gereksinim Mühendisliğinin Temelleri
2Gereksinimlerin Ortaya Çıkarılması
3Gereksinimlerin Analizi
4Gereksinim Belirtimi: Gereksinim Dokümanının Yazılması
5Gereksinimlerin Doğrulanması
6Gereksinim Yönetimi
7Gereksinim Mühendisliği için İyi Uygulamalar
8Gereksinim Mühendisliği Çerçeveleri, Şablon ve Standartları
9Gereksinim Mühendisliği için Araçlar ve Teknikler
10Gereksinim Mühendisliğinde Kalite Güvencesi
11Gereksinim Değişikliği Yönetimi
12Gereksinimlerin Takibi, Takibi ve Raporlanması
13Çevik Projelerde Gereksinim Mühendisliği
14Dönem Ödevi (SRS) Sunumları

Kaynaklar

1. ISO/IEC/IEEE 29148-2018. Systems and software engineering - Life cycle processes - Requirements engineering.
2. Claus Pohl, Chris Rupp, “Requirements Engineering Fundamentals”, RockyNook, 2nd Edition.
3. Philip A. Laplante, “Requirements Engineering for Software and Systems”, CRC Press, 3rd Edition.
4. Karl Wiegers, Joy Beatty, “Software Requirements”, Microsoft Press, 3rd Edition.
5. Murali Chemuturi, “Requirements Engineering and Management for Software Development Projects”, Springer.
6. Other selected readings and research papers.