Model Güdümlü Geliştirme (MDD) hem akademik yazılım mühendisliği araştırmalarında hem de endüstriyel uygulamalarda ortaya çıkan bir araştırma konusudur. Yazılım geliştirmenin odak noktasını kod yazma yerine örneğin modellerden otomatik olarak üretmeye ve modell oluşturmaya kaydırır. MDD'nin temel varsayımı, birçok farklı alanın anlambilimini yakalamak için yeterince genel olan, ancak nihai olarak koda dönüşümü destekleyecek kadar hassas olan uygun bir modelin varlığıdır. Bu ders MDB'ye genel bir bakış sunmaktadır. Öğrencilerin MDD'nin temelini oluşturan kesin modeller oluşturma, bunları doğrulama ve MDD'deki ve ilgili alanlardaki son gelişmeleri keşfederek bunları uygulamalara dönüştürme konusunda deneyim kazanmaları beklenmektedir.
• Model Güdümlü Mimari (MDA)
• Birleşik Modelleme Dili (UML)
• Obje Kısıt Dili (OCL)
• Model özellikleri, doğrulama ve dönüşüm
• MDD için tasarım teknikleri (taraım kalıpları gibi)
• MDD Kullanarak uygulama geliştirme
Ön Koşullar
-
Eş Koşullar
-
Özel Koşullar
-
Öğretim Üyeleri
Instructor Mehmet Demir
Asistanlar
- UML Diagram, Object Oriented Modelling
Ders Gün,Saat ve Yeri
Bu ders bu dönem açılmamıştır.
Görüşme Saatleri ve Yeri
Bu ders bu dönem açılmamıştır.
Öğretim Yöntem ve Teknikleri
The therotical elements of the course are covered by a programme of lectures, computer based activities and an essential course text. The practical study includes the successive laboratory studies on MDD and MDA.
Temel Kaynaklar
"Model-Driven Software Engineering in Practice" Marco Brambilla, Jordi Cabot, Manuel Wimmer; Morgan & Claypool Publishers 2012
Diğer Kaynaklar
Jos Warmer and Anneke Kleppe. "The Object Constraint Language", second edition, Addison-Wesley, 2003.
Grady Booch, James Rumbaugh, and Ivar Jacobson. "The Unified Modeling Language User Guide", second edition, Addison-Wesley, 2005
Haftalık Ders Programı
Hafta
Dersin İçeriği
Öğretim Yöntem ve Teknikleri
1. Hafta
Giriş
Sözlü anlatım
2. Hafta
MDSE İlkeleri
Sözlü anlatım ve laboratuvar
3. Hafta
MDSE Kullanım Durumları
Sözlü anlatım ve laboratuvar
4. Hafta
Model Güdümlü Mimari (MDA)
Sözlü anlatım ve laboratuvar
5. Hafta
Geliştirme Sürecine MDSE'nin Entegrasyonu
Sözlü anlatım ve laboratuvar
6. Hafta
Bir Bakışta Dil Modellemesi
Sözlü anlatım ve laboratuvar
7. Hafta
Kendi Modelleme Dilinizi Geliştirme
Sözlü anlatım ve laboratuvar
8. Hafta
Kendi Modelleme Dilinizi Geliştirme
Sözlü anlatım ve laboratuvar
9. Hafta
Model-Model Dönüşümleri
Sözlü anlatım ve laboratuvar
10. Hafta
Model-Metin Dönüşümleri
Sözlü anlatım ve laboratuvar
11. Hafta
Modelleri Yönetme
Sözlü anlatım ve laboratuvar
12. Hafta
Proje Sunumları
Sözlü anlatım ve laboratuvar
13. Hafta
14. Hafta
15. Hafta
16. Hafta
17. Hafta
Değerlendirme Ölçütleri
Ölçüt Tipleri
Adet
Yüzdesi(%)
Ara sınav(lar)
1
10
Ödevler / Dönem Ödevi / Sunum
1
20
Projeler
1
60
Final
1
10
ÖÇ-1
MDD ve MDA kavramlarını, ilkelerini ve teorilerini anlama
ÖÇ-2
UML ve OCL bilgileri ile orta boyuttaki sistemleri tam olarak modellemek becerisi
ÖÇ-3
Orta ölçekli sistemlerin tasarımlarını tanımlamak için çeşitli UML modellerini ve diğer tasarım tekniklerini kullanabilme
ÖÇ-4
Farklı model dönüşümlerini kavrayabilme ve bunları orta ölçekli sistemlere uygulayabilme
ÖÇ-5
MDD'yi kullanarak orta ölçekli uygulamaları belirleyebilir, tasarlayabilir ve uygulayabilir olma
Program Çıktıları
PÇ-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.
PÇ-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.
PÇ-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 tasarlama becerisi; bu amaçla modern tasarım yöntemlerini uygulama becerisi.
PÇ-4
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.
PÇ-5
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 veyorumlama becerisi.
PÇ-6
Disiplin içi ve çok disiplinli takımlarda etkin biçimde çalışabilme becerisi; bireysel çalışma becerisi.
PÇ-7
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.
PÇ-8
Yaşam boyu öğrenmenin gerekliliği bilinci; bilgiye erişebilme, bilim ve teknolojideki
gelişmeleri izleme ve kendini sürekli yenileme becerisi.
PÇ-9
Etik ilkelerine uygun davranma, mesleki ve etik sorumluluk bilinci; mühendislik uygulamalarında kullanılan standartlar hakkında bilgi.
PÇ-10
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.
PÇ-11
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.