Bu ders, öğrencilere Yazılım Mühendisliği alanındaki ileri düzey konulara genel bir bakış sunmak üzere tasarlanmıştır. Bu ders, öğrencilerin başarılı gereksinim mühendisliği, tasarım, test, bakım ve evrim, proje ve kalite yönetimi yoluyla yazılım yoğun sistemlerin tekniklerini geliştirmelerini sağlamayı amaçlamaktadır. Ders, yazılım süreci, gereksinim mühendisliği, model güdümlü mühendislik, tasarım stratejileri, tasarım kalıpları, mimari kalıplar, hizmet odaklı mimariler, mikro hizmetler, güvenlik, test teknikleri, siber güvenlik, otonom sistemler alanlarındaki en son gelişmeleri, teknolojiyi ve araştırmaları kapsamaktadır. Bu derste öğrenciler modern yazılım mühendisliği uygulamalarını öğrenecek ve yazılım mühendisliği alanındaki en son araştırmaları tartışacaklardır.
Dersin İçeriği
Bu ders; Yazılım Süreci,Gereksinim Mühendisliği,Model odaklı mühendislik,Tasarım stratejileri,Tasarım Kalıpları,Mimari Desenler,Sınav Haftası tekrarı,Servis Odaklı Mimariler ,Mikro Hizmetler,Risk yönetimi, Bakım ve yeniden yapılandırma,Güvenlik,Test teknikleri,Otonom Sistemler,Proje/Araştırma Sunumları; konularını içermektedir.
Dersin Öğrenme Kazanımları
Öğretim Yöntemleri
Ölçme Yöntemleri
1 - Kalite güvence teknikleri, gereksinim yönetimi teknikleri, yazılım proje planlaması, kalite mühendisliği teknikleri hakkındaki güncel terimleri hatırlar
9
A, F
2 - Uygulamaların tam yaşam döngüsü tasarımını, uygulamasını ve testini anlayarak farklı test, kod inceleme, kod analizi ve kod yeniden düzenleme yaklaşımlarını uygular
9
A, F
3 - Yazılım mühendisliğinde endüstriyel uygulama yöntemlerini, güncel ve yeni teknolojileri, metodolojileri tartışır
9
A, F
4 - Bir konu üzerinde proje/araştırma yaparak/geliştirerek onu sunar.
9
A, F
Öğretim Yöntemleri:
9: Anlatım Yöntemi
Ölçme Yöntemleri:
A: Klasik Yazılı Sınav, F: Proje Görevi
Ders Akışı
Sıra
Konular
Ön Hazırlık
1
Yazılım Süreci
2
Gereksinim Mühendisliği
3
Model odaklı mühendislik
4
Tasarım stratejileri
5
Tasarım Kalıpları
6
Mimari Desenler
7
Sınav Haftası tekrarı
8
Servis Odaklı Mimariler
9
Mikro Hizmetler
10
Risk yönetimi, Bakım ve yeniden yapılandırma
11
Güvenlik
12
Test teknikleri
13
Otonom Sistemler
14
Proje/Araştırma Sunumları
Kaynak
- Software Engineering: A Practitioner’s Approach. Roger Pressman, Publisher: McGraw Hill
- Software Engineering by Ian Sommerville. Publisher: Pearson.
- Bernd Bruegge and Allen Dutoit, Object-Oriented Software Engineering: Using UML, Patterns, and Java, Third Edition, Prentice-Hall.
- Several papers (ACM Digital Library / IEEE Xplore)
Dersin Program Yeterliliklerine Katkısı
Dersin Program Yeterliliklerine Katkısı
No
Program Yeterliliği
Katkı Düzeyi
1
2
3
4
5
1
Temel bilimleri, matematik ve mühendislik bilimlerini üst düzeyde anlar ve uygular, alanında en son gelişmeler dahil olmak üzere genişlemesine ve derinlemesine bilgi sahibidir.
X
2
Mühendisliğin ilişkili olduğu disiplinler arası etkileşimi kavrar, yeni ve karmaşık fikirleri analiz, sentez ve değerlendirmede uzmanlık gerektiren bilgileri kullanarak özgün sonuçlara ulaşır.
X
3
Bir alanda en yeni bilgilere ulaşır ve bunları kavrayarak araştırma yapabilmek için gerekli yöntem ve becerilerde üst düzeyde yeterliğe sahiptir.
X
4
Bilime veya teknolojiye yenilik getiren, yeni bir bilimsel yöntem veya teknolojik ürün/süreç geliştiren ya da bilinen bir yöntemi yeni bir alana uygulayan kapsamlı bir çalışma yapar.
X
5
Akademik çalışmalarının çıktılarını saygın akademik ortamlarda yayınlayarak bilim ve teknoloji literatürüne katkıda bulunur.
6
Bilimsel, teknolojik, sosyal ve kültürel gelişmeleri değerlendirerek bilimsel tarafsızlık ve etik sorumluluk bilinciyle topluma aktarır.
7
Özgün bir araştırma sürecini bağımsız olarak algılar, tasarlar, uygular ve sonuçlandırır; bu süreci yönetir.
X
8
Bilimsel bilgi birikimini yazılı ve sözlü olarak etkin bir şekilde ifade eder, en az bir yabancı dilde Avrupa Dil Portföyü C1 Genel Düzeyinde iletişim kurar ve iletişim teknolojilerini ileri düzeyde kullanır
X
9
Uzmanlık alanındaki fikirlerin ve gelişmelerin eleştirel analizini, sentezini ve değerlendirmesini yapar.
X
10
Mühendislik alanındaki bilimsel, teknolojik, sosyal veya kültürel ilerlemeleri tanıtır, yaşadığı toplumun bilgi toplumu olma ve bunu sürdürebilme sürecine katkıda bulunur ve toplumsal, bilimsel, kültürel ve etik değerlerin gelişimini destekler.
Değerlendirme Sistemi
Katkı Düzeyi
Mutlak Değerlendirme
Ara Sınavın Başarıya Oranı
50
Genel Sınavın Başarıya Oranı
50
Toplam
100
AKTS / İşyükü Tablosu
Etkinlik
Sayı
Süresi (Saat)
Toplam İş Yükü (Saat)
Ders Saati
14
3
42
Ders Saati
0
0
0
Ders Saati
0
0
0
Rehberli Problem Çözme
0
0
0
Rehberli Problem Çözme
0
0
0
Rehberli Problem Çözme
0
0
0
Problem Çözümü / Ödev / Proje / Rapor Tanzimi
1
45
45
Problem Çözümü / Ödev / Proje / Rapor Tanzimi
0
0
0
Problem Çözümü / Ödev / Proje / Rapor Tanzimi
0
0
0
Okul Dışı Diğer Faaliyetler
0
0
0
Okul Dışı Diğer Faaliyetler
0
0
0
Okul Dışı Diğer Faaliyetler
14
3
42
Proje Sunumu / Seminer
4
15
60
Proje Sunumu / Seminer
0
0
0
Proje Sunumu / Seminer
0
0
0
Kısa Sınav (QUİZ) ve Hazırlığı
0
0
0
Kısa Sınav (QUİZ) ve Hazırlığı
0
0
0
Kısa Sınav (QUİZ) ve Hazırlığı
0
0
0
Ara Sınav ve Hazırlığı
0
0
0
Ara Sınav ve Hazırlığı
0
0
0
Ara Sınav ve Hazırlığı
1
15
15
Genel Sınav ve Hazırlığı
1
40
40
Genel Sınav ve Hazırlığı
0
0
0
Genel Sınav ve Hazırlığı
0
0
0
Performans Görevi, Bakım Planı
0
0
0
Performans Görevi, Bakım Planı
0
0
0
Performans Görevi, Bakım Planı
0
0
0
Toplam İş Yükü (Saat)
244
Dersin AKTS Kredisi = Toplam İş Yükü (Saat)/30*=(244/30)
8
Dersin AKTS Kredisi: *30 saatlik çalışma 1 AKTS kredisi sayılmaktadır.
Dersin Detaylı Bilgileri
Ders Tanımı
Ders
Kodu
Yarıyıl
T+U Saat
Kredi
AKTS
İLERİ YAZILIM MÜHENDİSLİĞİ
-
Güz Dönemi
3+0
3
8
Ders Programı
Ön Koşul Dersleri
Önerilen Seçmeli Dersler
Dersin Dili
İngilizce
Dersin Seviyesi
Doktora
Dersin Türü
Programa Bağlı Seçmeli
Dersin Koordinatörü
Prof.Dr. Selim AKYOKUŞ
Dersi Verenler
Prof.Dr. Selim AKYOKUŞ
Dersin Yardımcıları
Dersin asistanı.
Dersin Amacı
Bu ders, öğrencilere Yazılım Mühendisliği alanındaki ileri düzey konulara genel bir bakış sunmak üzere tasarlanmıştır. Bu ders, öğrencilerin başarılı gereksinim mühendisliği, tasarım, test, bakım ve evrim, proje ve kalite yönetimi yoluyla yazılım yoğun sistemlerin tekniklerini geliştirmelerini sağlamayı amaçlamaktadır. Ders, yazılım süreci, gereksinim mühendisliği, model güdümlü mühendislik, tasarım stratejileri, tasarım kalıpları, mimari kalıplar, hizmet odaklı mimariler, mikro hizmetler, güvenlik, test teknikleri, siber güvenlik, otonom sistemler alanlarındaki en son gelişmeleri, teknolojiyi ve araştırmaları kapsamaktadır. Bu derste öğrenciler modern yazılım mühendisliği uygulamalarını öğrenecek ve yazılım mühendisliği alanındaki en son araştırmaları tartışacaklardır.
Dersin İçeriği
Bu ders; Yazılım Süreci,Gereksinim Mühendisliği,Model odaklı mühendislik,Tasarım stratejileri,Tasarım Kalıpları,Mimari Desenler,Sınav Haftası tekrarı,Servis Odaklı Mimariler ,Mikro Hizmetler,Risk yönetimi, Bakım ve yeniden yapılandırma,Güvenlik,Test teknikleri,Otonom Sistemler,Proje/Araştırma Sunumları; konularını içermektedir.
Dersin Öğrenme Kazanımları
Öğretim Yöntemleri
Ölçme Yöntemleri
1 - Kalite güvence teknikleri, gereksinim yönetimi teknikleri, yazılım proje planlaması, kalite mühendisliği teknikleri hakkındaki güncel terimleri hatırlar
9
A, F
2 - Uygulamaların tam yaşam döngüsü tasarımını, uygulamasını ve testini anlayarak farklı test, kod inceleme, kod analizi ve kod yeniden düzenleme yaklaşımlarını uygular
9
A, F
3 - Yazılım mühendisliğinde endüstriyel uygulama yöntemlerini, güncel ve yeni teknolojileri, metodolojileri tartışır
9
A, F
4 - Bir konu üzerinde proje/araştırma yaparak/geliştirerek onu sunar.
9
A, F
Öğretim Yöntemleri:
9: Anlatım Yöntemi
Ölçme Yöntemleri:
A: Klasik Yazılı Sınav, F: Proje Görevi
Ders Akışı
Sıra
Konular
Ön Hazırlık
1
Yazılım Süreci
2
Gereksinim Mühendisliği
3
Model odaklı mühendislik
4
Tasarım stratejileri
5
Tasarım Kalıpları
6
Mimari Desenler
7
Sınav Haftası tekrarı
8
Servis Odaklı Mimariler
9
Mikro Hizmetler
10
Risk yönetimi, Bakım ve yeniden yapılandırma
11
Güvenlik
12
Test teknikleri
13
Otonom Sistemler
14
Proje/Araştırma Sunumları
Kaynak
- Software Engineering: A Practitioner’s Approach. Roger Pressman, Publisher: McGraw Hill
- Software Engineering by Ian Sommerville. Publisher: Pearson.
- Bernd Bruegge and Allen Dutoit, Object-Oriented Software Engineering: Using UML, Patterns, and Java, Third Edition, Prentice-Hall.
- Several papers (ACM Digital Library / IEEE Xplore)
Dersin Program Yeterliliklerine Katkısı
Dersin Program Yeterliliklerine Katkısı
No
Program Yeterliliği
Katkı Düzeyi
1
2
3
4
5
1
Temel bilimleri, matematik ve mühendislik bilimlerini üst düzeyde anlar ve uygular, alanında en son gelişmeler dahil olmak üzere genişlemesine ve derinlemesine bilgi sahibidir.
X
2
Mühendisliğin ilişkili olduğu disiplinler arası etkileşimi kavrar, yeni ve karmaşık fikirleri analiz, sentez ve değerlendirmede uzmanlık gerektiren bilgileri kullanarak özgün sonuçlara ulaşır.
X
3
Bir alanda en yeni bilgilere ulaşır ve bunları kavrayarak araştırma yapabilmek için gerekli yöntem ve becerilerde üst düzeyde yeterliğe sahiptir.
X
4
Bilime veya teknolojiye yenilik getiren, yeni bir bilimsel yöntem veya teknolojik ürün/süreç geliştiren ya da bilinen bir yöntemi yeni bir alana uygulayan kapsamlı bir çalışma yapar.
X
5
Akademik çalışmalarının çıktılarını saygın akademik ortamlarda yayınlayarak bilim ve teknoloji literatürüne katkıda bulunur.
6
Bilimsel, teknolojik, sosyal ve kültürel gelişmeleri değerlendirerek bilimsel tarafsızlık ve etik sorumluluk bilinciyle topluma aktarır.
7
Özgün bir araştırma sürecini bağımsız olarak algılar, tasarlar, uygular ve sonuçlandırır; bu süreci yönetir.
X
8
Bilimsel bilgi birikimini yazılı ve sözlü olarak etkin bir şekilde ifade eder, en az bir yabancı dilde Avrupa Dil Portföyü C1 Genel Düzeyinde iletişim kurar ve iletişim teknolojilerini ileri düzeyde kullanır
X
9
Uzmanlık alanındaki fikirlerin ve gelişmelerin eleştirel analizini, sentezini ve değerlendirmesini yapar.
X
10
Mühendislik alanındaki bilimsel, teknolojik, sosyal veya kültürel ilerlemeleri tanıtır, yaşadığı toplumun bilgi toplumu olma ve bunu sürdürebilme sürecine katkıda bulunur ve toplumsal, bilimsel, kültürel ve etik değerlerin gelişimini destekler.