| Ders Adı | Kodu | Dili | Türü | Yarıyıl | T+U Saat | Kredi | AKTS |
|---|---|---|---|---|---|---|---|
| Nesneye Dayalı Analiz ve Tasarım | BM208 | Türkçe | Zorunlu | 4. Yarıyıl | 3 + 0 | 3,0 | 4,0 |
| Ön Koşul Dersleri | |
| Dersin Seviyesi | Lisans |
| Dersin Verilişi | Klasik anlatım, sunum, program |
| Dersin Koordinatörü | Doç. Dr. Arafat ŞENTÜRK |
| Dersi Veren(ler) | |
| 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ş. |
| # | Öğrenme Kazanımı |
| 1 | Nesneye yönelik teorinin prensipleri ve buna uygun yaklaşımların anlaşılması. |
| 2 | 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ı. |
| 3 | Çö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. |
| 4 | Use Case'lerin kullanılması |
| 5 | Aktivite Diyagramlarının anlaşılması |
| 6 | Sınıf ve Nesne Diyagramlarının anlaşılması |
| 7 | Durum Diyagramlarının anlaşılması |
| 8 | Sekans Diyagramları tanımlanması |
| 9 | Component ve Deployment Diyagramları anlaşılması |
| Hafta | Konular/Uygulamalar | Yöntem |
|---|---|---|
| 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ı |
| No | Program Yeterlilikleri | Katkı Düzeyi | |||||
|---|---|---|---|---|---|---|---|
| 1 | 2 | 3 | 4 | 5 | |||
| 1 | Matematik, fen bilimleri ve ilgili mühendislik disiplinine özgü konularda yeterli bilgi birikimi; bu alanlardaki kuramsal ve uygulamalı bilgileri, karmaşık mühendislik problemlerinde kullanabilme becerisi | ✔ | |||||
| 2 | Karmaşık mühendislik problemlerini saptama, tanımlama, formüle etme ve çözme becerisi; bu amaçla uygun analiz ve modelleme yöntemlerini seçme ve uygulama becerisi | ✔ | |||||
| 3 | Bilişim Teknolojilerinin yönetim, denetim, gelişim ve güvenliği/güvenilirliği hakkında bilgi sahibi olma ve farkındalık | ✔ | |||||
| 4 | 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 tasarlama becerisi; bu amaçla modern tasarım yöntemlerini uygulama becerisi | ✔ | |||||
| 5 | Yaşam boyu öğrenmenin gerekliliği bilinci; bilgiye erişebilme, bilim ve teknolojideki gelişmeleri izleme ve kendini sürekli yenileme becerisi | ✔ | |||||
| 6 | Karmaşık mühendislik problemlerinin veya disipline özgü araştırma konularının incelenmesi için deney tasarlama, deney yapma, veri toplama, sonuçları analiz etme ve yorumlama becerisi | ✔ | |||||
| 7 | Disiplin içi ve çok disiplinli takımlarda etkin biçimde çalışabilme becerisi; bireysel çalışma becerisi | ✔ | |||||
| 8 | Mühendislik uygulamalarında karşılaşılan karmaşık problemlerin analizi ve çözümü için gerekli olan modern teknik ve araçları geliştirme, seçme ve kullanma becerisi; bilişim teknolojilerini etkin bir şekilde kullanma becerisi | ✔ | |||||
| 9 | Mühendislik 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 bilgi; mühendislik çözümlerinin hukuksal sonuçları konusunda farkındalık | ✔ | |||||
| 10 | Türkçe sözlü ve yazılı etkin iletişim kurma becerisi; en az bir yabancı dil bilgisi; etkin rapor yazma ve yazılı raporları anlama, tasarım ve üretim raporları hazırlayabilme, etkin sunum yapabilme, açık ve anlaşılır talimat verme ve alma becerisi | ✔ | |||||
| 11 | Etik ilkelerine uygun davranma, mesleki ve etik sorumluluk bilinci; mühendislik uygulamalarında kullanılan standartlar hakkında bilgi | ✔ | |||||
| 12 | Proje yönetimi, risk yönetimi ve değişiklik yönetimi gibi, iş hayatındaki uygulamalar hakkında bilgi; girişimcilik, yenilikçilik hakkında farkındalık; sürdürülebilir kalkınma hakkında bilgi | ✔ | |||||
| Program Yeterlilik | DK1 | DK2 | DK3 | DK4 | DK5 | DK6 | DK7 | DK8 | DK9 |
|---|---|---|---|---|---|---|---|---|---|
| PY1 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 |
| PY2 | 4 | 4 | 4 | 4 | 4 | 4 | 4 | 4 | 4 |
| PY3 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 |
| PY4 | 4 | 4 | 4 | 4 | 4 | 4 | 4 | 4 | 4 |
| PY5 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 |
| PY6 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 |
| PY7 | 5 | 5 | 5 | 5 | 5 | 5 | 5 | 5 | 5 |
| PY8 | 5 | 5 | 5 | 5 | 5 | 5 | 5 | 5 | 5 |
| PY9 | 3 | 3 | 3 | 3 | 3 | 3 | 3 | 3 | 3 |
| PY10 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 |
| PY11 | 5 | 5 | 5 | 5 | 5 | 5 | 5 | 5 | 5 |
| PY12 | 5 | 5 | 5 | 5 | 5 | 5 | 5 | 5 | 5 |
| Ders Kitabı veya Notu | Ders Kitabı veya Ders Notu bulunmamaktadır. |
|---|---|
| Diğer Kaynaklar |
|
| AKTS / İş Yükü Tablosu | Sayısı | Süresi (Saat) | Toplam İş Yükü (Saat) | |
|---|---|---|---|---|
|
Ders İçi |
Ders Saati (14 Hafta) | 14 | 3 | 42 |
|
Sınavlar |
Ara Sınav 1 | 1 | 20 | 20 |
| Ödev 1 | 1 | 14 | 14 | |
| Final | 1 | 26 | 26 | |
| Toplam İş Yükü | 102 | |||
| *AKTS = (Toplam İş Yükü) / 25,5 | Dersin AKTS Kredisi | 4,0 | ||