AKTS - Yazılım Örüntüleri

Yazılım Örüntüleri (SE461) Ders Detayları

Ders Adı Ders Kodu Dönemi Saati Uygulama Saati Laboratuar Hours Kredi AKTS
Yazılım Örüntüleri SE461 Alan Seçmeli 3 0 0 3 5
Ön Koşul Ders(ler)i
N/A
Dersin Dili İngilizce
Dersin Türü Seçmeli Dersler
Dersin Seviyesi Lisans
Ders Verilme Şekli Yüz Yüze
Dersin Öğrenme ve Öğretme Teknikleri Anlatım.
Dersin Koordinatörü
Dersin Öğretmen(ler)i
Dersin Asistan(lar)ı
Dersin Amacı Bu dersin amacı, yüksek kalitede yazılım geliştirmeye yönelik tasarım örüntülerinin tanıtımı ve bu örüntüleri uygulama metotlarının anlatımıdır. Bu ders kapsamında ayrıca var olan bir yazılım yeniden yapılandırılması kavram ve metotları da anlatılmaktadır.
Dersin Eğitim Çıktıları Bu dersi başarıyla tamamlayabilen öğrenciler;
  • Belli başlı tasarım örüntüleri tanımlama ve tanıma
  • Tasarım problemeri için uygun tasarım örüntülerini belirleme
  • Tasarım örüntülerini kullanarak, kötü tasarlanmış bir yazılımı tekrar yapılandırma
  • Tasarım örüntülerini uygulama
  • Tasarım örüntülerini karşılaştırma ve hangi durumda hangi tasarım örüntüsünün kullanılması gerektiğini örnekleriyle anlatma
Dersin İçeriği Tasarım örüntülerine giriş, yapısal örüntüler, davranışsal örüntüler, analiz örüntüleri, mimari örüntüler, test hazırlama, yeniden yapılandırma.

Haftalık Konular ve İlgili Ön Hazırlık Çalışmaları

Hafta Konular Ön Hazırlık
1 Nesneye yönelik tasarıma genel bakış Ders Notları
2 UML’e genel bakış Ders Notları
3 Tasarım Örüntülerine Girilş Bölüm 1
4 Gözcü Örüntüsü Bölüm 2
5 Dekoratör Örüntüsü Bölüm 3
6 Fabrika Metot ve Soyut Fabrika Metod Örüntüsü Bölüm 4
7 Teklik Örüntüsü Bölüm 5
8 Komut Örüntüsü Bölüm 6
9 Adaptör and Cephe Örüntüsü Bölüm 7
10 Şablon Metod Örüntüsü Bölüm 8
11 İlerletici Örüntüsü ve Karma Örüntüsü Bölüm 9
12 Durum Örüntüsü Bölüm 10
13 Vekil Örüntüsü Bölüm 11
14 Bileşik Örüntüsü ve MVC Bölüm 12
15 Anti-örüntüler Ders Notları
16 Yeniden Yapılandırma Ders Notları
17 Genel Sınav

Kaynaklar

Ders Kitabı 1. Head First Design Patterns, O’Reilly, Eric Freeman, Elisabeth Freeman, Kathy Sierra, Bert Bates, First Edition October 2004
Diğer Kaynaklar 2. Design Patterns: Elements of Reusable Object Oriented Software, E. Gamma, R. Helm, R. Johnson, and J. Vlissides, Addison -Wesley Professional, 1995
3. Analysis Patterns: Reusable Object Models, Martin Fowler, (1996-11-27). Addison-Wesley
4. Pattern-Oriented Software Architecture: A System of Patterns, Buschmann F., Meunier R., Rohnert H. & Sommerlad P. & Stal M. (1996), John Wiley & Sons
5. Applying UML and Patterns : An Introduction to Object-Oriented Analysis and Design and Iterative Development, Craig Larman, 3rd Edition, Prentice Hall, 2005
6. Joshua Kerievsky, Refactoring to Patterns, Addison-Weslay Professional, 2004.

Değerlendirme System

Çalışmalar Sayı Katkı Payı
Devam/Katılım - -
Laboratuar - -
Uygulama - -
Alan Çalışması - -
Derse Özgü Staj - -
Küçük Sınavlar/Stüdyo Kritiği - -
Ödevler 4 30
Sunum - -
Projeler - -
Rapor - -
Seminer - -
Ara Sınavlar/Ara Juri 1 30
Genel Sınav/Final Juri 1 40
Toplam 6 100
Yarıyıl İçi Çalışmalarının Başarı Notu Katkısı 60
Yarıyıl Sonu Çalışmalarının Başarı Notuna Katkısı 40
Toplam 100

Kurs Kategorisi

Temel Meslek Dersleri X
Uzmanlık/Alan Dersleri
Destek Dersleri
İletişim ve Yönetim Becerileri Dersleri
Aktarılabilir Beceri Dersleri

Dersin Öğrenim Çıktılarının Program Yeterlilikleri ile İlişkisi

# Program Yeterlilikleri / Çıktıları Katkı Düzeyi
1 2 3 4 5
1 Matematik, fen bilimleri ve bilgisayar mühendisliği disiplinine özgü konularda yeterli bilgi birikimine sahip olur; bu alanlardaki kuramsal ve uygulamalı bilgileri, karmaşık mühendislik problemlerinde kullanır. X
2 Karmaşık mühendislik problemlerini saptar, tanımlar, formüle eder ve çözer; bu amaçla uygun analiz ve modelleme yöntemlerini seçer ve uygular. X
3 Karmaşık bir sistemi, süreci, cihazı veya ürünü gerçekçi kısıtlar ve koşullar altında, belirli gereksinimleri karşılayacak şekilde tasarlar; bu amaçla modern tasarım yöntemlerini uygular. X
4 Bilgisayar mühendisliği uygulamalarında karşılaşılan karmaşık problemlerin analizi ve çözümü için gerekli olan modern teknik ve araçları geliştirir, seçer ve kullanır; bilişim teknolojilerini etkin bir şekilde kullanır. X
5 Karmaşık mühendislik problemlerinin veya bilgisayar mühendisliği disiplinine özgü araştırma konularının incelenmesi için deney tasarlar, deney yapar, veri toplar, sonuçları analiz eder ve yorumlar. X
6 Disiplin içi ve çok disiplinli takımlarda etkin biçimde çalışır; bireysel çalışma becerisini kazanır. X
7 Türkçe sözlü ve yazılı etkin iletişim kurar; etkin rapor yazar ve yazılı raporları anlar, tasarım ve üretim raporları hazırlar, etkin sunum yapar, açık ve anlaşılır talimat verir ve alır.
8 En az bir yabancı dil bilir; etkin rapor yazar ve yazılı raporları anlar, tasarım ve üretim raporları hazırlar, etkin sunum yapar, açık ve anlaşılır talimat verir ve alır.
9 Yaşam boyu öğrenmenin gerekliliği bilincine sahip olur; bilgiye erişir, bilim ve teknolojideki gelişmeleri izler ve kendini sürekli yeniler. X
10 Etik ilkelerine uygun davranır, mesleki ve etik sorumluluk bilincine sahip olur. X
11 Bilgisayar mühendisliği uygulamalarında kullanılan standartlar hakkında bilgiye sahip olur.
12 Proje yönetimi, risk yönetimi ve değişiklik yönetimi gibi, iş hayatındaki uygulamalar hakkında bilgiye sahip olur. X
13 Girişimcilik, yenilikçilik hakkında farkındalık kazanır.
14 Sürdürülebilir kalkınma hakkında bilgiye sahip olur.
15 Bilgisayar mühendisliği uygulamalarının evrensel ve toplumsal boyutlarda sağlık, çevre ve güvenlik üzerindeki etkileri ve çağın mühendislik alanına yansıyan sorunlar hakkında bilgiye sahip olur. X
16 Mühendislik çözümlerinin hukuksal sonuçları konusunda farkındalık kazanır.
17 Sayısal hesaplama ve sayısal gösterim sistemlerini analiz eder, tasarlar ve ifade eder. X
18 Hesaplama problemlerinin çözülmesinde programlama dillerini ve uygun bilgisayar mühendisliği kavramlarını kullanır. X

ECTS/İş Yükü Tablosu

Aktiviteler Sayı Süresi (Saat) Toplam İş Yükü
Ders saati (Sınav haftası dahildir: 16 x toplam ders saati) 16 3 48
Laboratuar
Uygulama
Derse Özgü Staj
Alan Çalışması
Sınıf Dışı Ders Çalışma Süresi 16 2 32
Sunum/Seminer Hazırlama
Projeler
Raporlar
Ödevler 4 4 16
Küçük Sınavlar/Stüdyo Kritiği
Ara Sınavlara/Ara Juriye Hazırlanma Süresi
Genel Sınava/Genel Juriye Hazırlanma Süresi 1 15 15
Toplam İş Yükü 111