Ders Adı | Kodu | Yarıyıl | T+U Saat | Kredi | AKTS |
---|---|---|---|---|---|
Nesneye Dayalı Analiz ve Tasarım | BM208 | 4. Yarıyıl | 3 + 0 | 3,0 | 4,0 |
Ön Koşullar | Yok |
Dersin Dili | Türkçe |
Dersin Seviyesi | Lisans |
Dersin Türü | Ders |
Dersin Verilişi | Klasik anlatım, sunum, program |
Dersin Koordinatörü |
Doç. Dr. Arafat ŞENTÜRK |
Dersi Verenler |
Doç. Dr. Arafat ŞENTÜRK |
Dersin Yardımcıları | |
Dersin Amacı | Öğrencilerin nesneye yönelik yaklaşımlar, nesneye yönelik araçlar, yöntemler ve teknikler hakkında bilgilendirilmesi. Öğrencilere nesneye yönelik modeller yaratabilme becerisinin kazandırılması. UML'in Bileşik Süreç (Unified Process) çözümleme ve tasarım süreçlerine nasıl uygulandığının açıklanması. UML kullanarak nesneye yönelik yaklaşımlar ile yazılım geliştirmenin nasıl yapılabildiğinin açıklanması. Gereksinim belirleme ve use case modelleme çalışmalarının gösterilmesi. Sınıf ve nesen kavramı ile çözümleme ve tasarım aşamalarına ait sınıfların nasıl bulunacağının öğrenilmesi. İlişki kavramının UML tarafından nasıl kullanıldığının açıklanması. Kalıtım ve çokbiçimlilik (polymorhism) kavramlarının öğrenilmesi. Use case'lerin nasıl gerçeklenebileceklerinin anlatılması. Aktivite ve durum (state) şemaları çizmeyi öğrenmek. Tasarım sürecinin anlaşılması, tasarım kavramı ve prensiplerini kavramak. Nesneye yönelik tasarım metodlarının anlaşılmasını sağlamak. Alt-sistem, bileşen, arayüz, ve tasarım kalıplarının öğrenilmesi. Nesneye yönelik yazılım mimarisi tasarımı ve katmanlı mimarinin anlaşılması. Arayüz tanımlarının tasarım sürecindeki kullanımının öğrenilmesi. Dosya ve veritabanı tasarımlarının incelenmesi. Çözümleme ve tasarım çalışmalarının nasıl belgelendirileceğinin anlaşılması. Öğrencinin genel olarak çözümleme ve tasarım süreçleri, yöntemleri, araç ve uygulamaları hakkında bilgi sahibi olmasının sağlanması. |
Dersin İçeriği | Nesneye Dayalı Yazılım Geliştirme Yaşam Döngüsü. Kullanım-Durumları ile Yazılım Gereksinimlerinin Modellenmesi. Fonksiyonel Olmayan İsterlerin Belirlenmesi. Alan Modelinin Tanımlanması ve Belgelendirilmesi. Sistem Sekans Diyagramları. Gereksinimlerden Tasarıma Geçiş. UML Etkileşim Diyagramları. Tasarım Nesnelerinin ve Sorumluluklarının Belirlenmesi. Tasarımdan Koda geçiş. |
Ders Öğrenme Kazanımları |
- Nesneye yönelik teorinin prensipleri ve buna uygun yaklaşımların anlaşılması. - Grup çalışmasına aktif katılım ve yaratıcı eleştiri ile öğrencilerin gerçek hayat projelerinde kullanılan veriyi tanımlaması, anlaması ve yapılandırılmasını yapabilme becerisinin kazanılması. - Çözümleme ve tasarım süreçlerinde kullanılan ve sistemin değişik yönlerinin görselleştirilmesi için kullanılan UML modelleme araç ve tekniklerinin öğrenilmesi. - Use Case'lerin kullanılması - Aktivite Diyagramlarının anlaşılması - Sınıf ve Nesne Diyagramlarının anlaşılması - Durum Diyagramlarının anlaşılması - Sekans Diyagramları tanımlanması - Component ve Deployment Diyagramları anlaşılması |
Hafta | Konular | Öğretim Yöntemleri |
---|---|---|
1. Hafta | Giriş | |
2. Hafta | UML nedir? | |
3. Hafta | Problemin Tanımlanması ve Fizibilite Raporları | |
4. Hafta | Use case modelleme | |
5. Hafta | Use case gerçekleştirme ve etkşleşim şemaları | |
6. Hafta | Aktivite Diyagramları | |
7. Hafta | Sınıf ve Nesne Diyagramları | |
8. Hafta | Ara Sınav | |
8. Hafta | Durum Diyagramları | |
10. Hafta | Sekans Diyagramları | |
12. Hafta | Bileşen Diyagramları | |
13. Hafta | Arayüzler ve alt sistemler | |
14. Hafta | Tasarım kalıpları |
“UML and The Unified Process, Practical Object-Oriented Analysis and Design”, Second Edition; Jim Arlow & Ila Neustadt; Pearson Education, 2005. |
“Object-Oriented Analysis and Design: Understanding System Development with UML 2.0”, Mike O'Docherty, John Wiley & Sons, Ltd., 2005. |
“Head First Object-Oriented Analysis and Design”; Brett D. McLaughlin, Gary Pollice, David West; O’Reilly, 2007. |
Program Yeterlilik | Katkı Düzeyi | DK1 | DK2 | DK3 | DK4 | DK5 | DK6 | DK7 | DK8 | DK9 | Ölçme Yöntemi |
---|---|---|---|---|---|---|---|---|---|---|---|
PY1 | 2 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | - |
PY2 | 4 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | - |
PY3 | 2 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | - |
PY4 | 4 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | - |
PY5 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | - |
PY6 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | - |
PY7 | 5 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | - |
PY8 | 5 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | - |
PY9 | 3 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | - |
PY10 | 2 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | - |
PY11 | 5 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | - |
PY12 | 5 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | - |
0 | 1 | 2 | 3 | 4 | 5 | |
---|---|---|---|---|---|---|
Ders Katkı Düzeyi | Yok | Çok Düşük | Düşük | Orta | Yüksek | Çok Yüksek |
Ölçme Yöntemi | Yazılı sınav | Sözlü sınav | Ödev/Proje | Laboratuvar Çalışması | Sunum /Seminer |
Etkinlik | Sayısı | Süresi (Saat) | Toplam İş Yükü (Saat) |
---|---|---|---|
Ders Saati | 14 | 3 | 42 |
Ara Sınav 1 | 1 | 20 | 20 |
Ödev 1 | 1 | 14 | 14 |
Final | 1 | 26 | 26 |
Toplam İş Yükü | 102 | ||
Dersin AKTS Kredisi | 4,0 |