BBS652 - YAZILIM MİMARİLERİ
Dersin Adı | Kodu | Yarıyılı | Teori (saat/hafta) |
Uygulama (saat/hafta) |
Yerel Kredi | AKTS |
---|---|---|---|---|---|---|
YAZILIM MİMARİLERİ | BBS652 | Herhangi Yarıyıl/Yıl | 3 | 0 | 3 | 6 |
Önkoşul(lar)-var ise | Yok | |||||
Dersin Dili | Türkçe | |||||
Dersin Türü | Seçmeli | |||||
Dersin verilme şekli | Yüz yüze | |||||
Dersin öğrenme ve öğretme teknikleri | Anlatım Tartışma Rapor Hazırlama ve/veya Sunma | |||||
Dersin sorumlusu(ları) | Ayça Tarhan | |||||
Dersin amacı | Yazılım mimarisinin temel kavramlarına giriş yapmak; mimariyi geliştirme ve belgeleme yöntemlerini tanıtmak. | |||||
Dersin öğrenme çıktıları |
| |||||
Dersin içeriği | Yazılım mimarilerin temel kavramları. Yazılım mimari kavramları ve paydaşlar, yazılım mimarisi geliştirme süreci, mimari gereksinim analizi, yazılım mimari tasarımının modellenmesi. Mimari görünümler ve perspektifler. İşlevsel, bilgi, geliştirme, uyumluluk, yerleşme ve işletim görünümleri. Evrim, güvenilirlik, performans ve ölçeklenebilirlik, erişilebilirlik ve esneklik perspektifleri. Mimari stiller ve örüntüler. Mimari tasarım yöntemlerinin karşılaştırılması ve değerlendirilmesi. Yazılım ürün hattı mimarileri, alan modelleme ve alan mühendisliği. | |||||
Kaynaklar | ? Rozanski N. & Woods E., Software Systems Architecture: Working with Stakeholders Using Viewpoints and Perspectives, Addison-Wesley Professional, 2005. ? Bass L., Clements P. & Kazman R., Software Architecture in Practice (2nd ed.), Addison-Wesley, 2003. |
Haftalara Göre İşlenecek Konular
Haftalar | Konular |
---|---|
1. Hafta | Yazılım Mimarilerine Giriş |
2. Hafta | Mimari Kavramlar ve Paydaşlar |
3. Hafta | Yazılım Mimarisi Geliştirme Süreci |
4. Hafta | Mimari Gereksinim Analizi |
5. Hafta | Mimari Modelleme |
6. Hafta | Arasınav |
7. Hafta | Mimari Görünümler |
8. Hafta | Mimari Görünümler |
9. Hafta | Mimari Perspektifler |
10. Hafta | Mimari Perspektifler |
11. Hafta | Arasınav |
12. Hafta | Mimari Stil ve Örüntüler |
13. Hafta | Yazılım Ürün Hattı Mimarileri |
14. Hafta | Alan Mühendisliği |
15. Hafta | Genel sınava hazırlık |
16. Hafta | Genel sınav |
Değerlendirme Sistemi
Yarıyıl içi çalışmaları | Sayısı | Katkı Payı % |
---|---|---|
Devam (a) | 0 | 0 |
Laboratuar | 0 | 0 |
Uygulama | 0 | 0 |
Alan Çalışması | 0 | 0 |
Derse Özgü Staj (Varsa) | 0 | 0 |
Ödevler | 5 | 10 |
Sunum | 0 | 0 |
Projeler | 0 | 0 |
Seminer | 0 | 0 |
Ara Sınavlar | 2 | 40 |
Genel sınav | 1 | 50 |
Toplam | 100 | |
Yarıyıl İçi Çalışmalarının Başarı Notuna Katkısı | 0 | 50 |
Yarıyıl Sonu Sınavının Başarı Notuna Katkısı | 0 | 50 |
Toplam | 100 |
AKTS (Öğrenci İş Yükü) Tablosu
Etkinlikler | Sayısı | Süresi | Toplam İş Yükü |
---|---|---|---|
Ders Süresi | 14 | 3 | 42 |
Laboratuvar | 0 | 0 | 0 |
Uygulama | 0 | 0 | 0 |
Derse özgü staj (varsa) | 0 | 0 | 0 |
Alan Çalışması | 0 | 0 | 0 |
Sınıf Dışı Ders Çalışma Süresi (Ön Çalışma, pekiştirme, vb) | 14 | 3 | 42 |
Sunum / Seminer Hazırlama | 0 | 0 | 0 |
Proje | 0 | 0 | 0 |
Ödevler | 5 | 8 | 40 |
Ara sınavlara hazırlanma süresi | 2 | 16 | 32 |
Genel sınava hazırlanma süresi | 1 | 16 | 16 |
Toplam İş Yükü | 36 | 46 | 172 |
Dersin Öğrenme Çıktılarının Program Yeterlilikleri İle İlişkilendirilmesi
D.9. Program Yeterlilikleri | Katkı Düzeyi* | ||||
---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | |
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