Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
Model-güdülü Yazılım Geliştirme
(MDSD)
Orçun Dayıbaş
Ocak, 2013

Tasnif Dışı

Aselsan SST-MD-YMM / DSYS / O.Dayıbaş

1
İçerik
• Giriş
• Model-güdülü Mimari (MDA)
• Model-güdülü Yazılım Geliştirme (MDSD)
– Modelleme
– Dönüşümler (M2M, M2T)

•...
Model-güdülü Mimari (MDA)
• Sistemler arası ortaklanamayan alanlar;
–
–
–
–

Donanım
İşletim Sistemi
Programlama Dili
Ağ P...
Model-güdülü Mimari (MDA)
• OMG (Object Management Group)’nin önerdiği dört
katmanlı yapıyı temel alır.
MOF
(sınıf, öznite...
Model-güdülü Mimari (MDA)
• MDA, CIM (Computation Independent Model), PIM
(Platform Independent Model), PSM (Platform Spec...
Model-güdülü Mimari (MDA)
• MDA yaklaşımı, uygulamada;
– Geliştirilen yazılımın, karmaşıklık ve maliyetini
azaltır.
– Yazı...
Model-güdülü Yazılım Geliştirme
• Yol haritası:
1.Hazır iş mantığı modelini al.
2.Gerekli alt kümeyi oluştur.
3.Hazır gerç...
Model-güdülü Yazılım Geliştirme
• MDA kullanımı, mutlak başarı anlamına
gelmemelidir (“gümüş kurşun” yok).
• Tasarımın baş...
Model-güdülü Yazılım Geliştirme
• Mimari yansılarda kalmamalı.

Tasnif Dışı

Aselsan SST-MD-YMM / DSYS / O.Dayıbaş

9
Durum Çalışması
• Eclipse Modeling Project

Tasnif Dışı

Aselsan SST-MD-YMM / DSYS / O.Dayıbaş

10
Durum Çalışması
• DDS haberleşmesini izlemek için bir test GKA
uygulaması.

Tasnif Dışı

Aselsan SST-MD-YMM / DSYS / O.Day...
Durum Çalışması
• GkaTest-ML için dil bilgisi (Xtext)

Tasnif Dışı

Aselsan SST-MD-YMM / DSYS / O.Dayıbaş

12
Durum Çalışması
• GkaTest-ML dilinde bir belirtim

Tasnif Dışı

Aselsan SST-MD-YMM / DSYS / O.Dayıbaş

13
Durum Çalışması
• GkaTest Uygulaması

Tasnif Dışı

Aselsan SST-MD-YMM / DSYS / O.Dayıbaş

14
Durum Çalışması
• GkaUretec

• GkaTestKulac
• GkaGen

Tasnif Dışı

Aselsan SST-MD-YMM / DSYS / O.Dayıbaş

15
Soru?
• Bir geliştiricinin, beceri/deneyim seviyesinden
bağımsız olarak, nihai ürüne yaptığı kod katkısı
~10 satır/gün (bk...
Teşekkürler…
• Sorularınız?

Tasnif Dışı

Aselsan SST-MD-YMM / DSYS / O.Dayıbaş

17
Upcoming SlideShare
Loading in …5
×

Model-güdülü Yazılım Geliştirme

660 views

Published on

Model-güdülü Yazılım Geliştirme
- Giriş
- Model-güdülü Mimari (MDA)
- Model-güdülü Yazılım Geliştirme (MDSD)
- Modelleme
- Dönüşümler (M2M, M2T)
- Durum Çalışması
- Sonuç

Published in: Technology
  • Be the first to comment

  • Be the first to like this

Model-güdülü Yazılım Geliştirme

  1. 1. Model-güdülü Yazılım Geliştirme (MDSD) Orçun Dayıbaş Ocak, 2013 Tasnif Dışı Aselsan SST-MD-YMM / DSYS / O.Dayıbaş 1
  2. 2. İçerik • Giriş • Model-güdülü Mimari (MDA) • Model-güdülü Yazılım Geliştirme (MDSD) – Modelleme – Dönüşümler (M2M, M2T) • Durum Çalışması • Sonuç …-oriented  …-yönelimli …-driven  …-güdülü …-based  …-tabanlı Tasnif Dışı Aselsan SST-MD-YMM / DSYS / O.Dayıbaş 2
  3. 3. Model-güdülü Mimari (MDA) • Sistemler arası ortaklanamayan alanlar; – – – – Donanım İşletim Sistemi Programlama Dili Ağ Protokolleri • Ortaklama için çözüm(!); Ara katman yazılımları. • MDA, ortak bir dilde anlaşma hedefini daha üst düzeyde (model) gerçekleştirerek çözüm sunar. • Temel amaç; platform bağımlı kaygıların ayrımı. Model: Bir sisteme ait işlev, yapı ve davranışların biçimsel belirtimi. Tasnif Dışı Aselsan SST-MD-YMM / DSYS / O.Dayıbaş 3
  4. 4. Model-güdülü Mimari (MDA) • OMG (Object Management Group)’nin önerdiği dört katmanlı yapıyı temel alır. MOF (sınıf, öznitelik, ilişki) UML, CWM (sınıf, öznitelik, durum, ...) Uygulama (sınıf, Veri t. tablosu, ...) Uygulama Verisi (olgu, Veri t. satırı, ...) M3 M2 M1 M0 • En üst seviye olan dördüncü seviye (M3 / meta3 veri), ifade yeteneği olarak kendi kendini tanımlayabilir güçtedir. “Tüm yazılım mühendisliği tarihi, soyutlama seviyelerinin artırılması ile ilgilidir.” Grady Booch Tasnif Dışı Aselsan SST-MD-YMM / DSYS / O.Dayıbaş 4
  5. 5. Model-güdülü Mimari (MDA) • MDA, CIM (Computation Independent Model), PIM (Platform Independent Model), PSM (Platform Specific Model) modelleri ve bunların arasındaki geçişleri tanımlar. Gereksinim İzdüşümü CIM Soyut Yazılım Geliştirme İzdüşümü PIM eşleme eşleme eşleme Platform İzdüşümü OpenDDS Modeli Gerçekleştirim İzdüşümü Milsoft DDS Modeli … Diğer Model OpenDDS Gerçk. Milsoft DDS Gerçk. … Diğer Gerçk. PSM Kod Somut Tasnif Dışı Aselsan SST-MD-YMM / DSYS / O.Dayıbaş 5
  6. 6. Model-güdülü Mimari (MDA) • MDA yaklaşımı, uygulamada; – Geliştirilen yazılımın, karmaşıklık ve maliyetini azaltır. – Yazılımın kalitesinin artırır. Model seviyesinde sınama yapmaya olanak tanır. – İş modellerinin yeniden kullanımını sağlar. – Yeni teknolojiler, var olan sistemlere hızlıca uygulanabilir. Tasnif Dışı Aselsan SST-MD-YMM / DSYS / O.Dayıbaş 6
  7. 7. Model-güdülü Yazılım Geliştirme • Yol haritası: 1.Hazır iş mantığı modelini al. 2.Gerekli alt kümeyi oluştur. 3.Hazır gerçekleştirim teknolojisi modelini al. 4.Modeller arası bağlantıları (geçişleri) tanımla. 5.Sistemi türet. • Hazır modelleme araçları: ArcStyler, iUML, OptimalJ, Enterprise Architect, … • Eclipse Modeling Project (OAW - OpenArcitectureWare) Tasnif Dışı Aselsan SST-MD-YMM / DSYS / O.Dayıbaş 7
  8. 8. Model-güdülü Yazılım Geliştirme • MDA kullanımı, mutlak başarı anlamına gelmemelidir (“gümüş kurşun” yok). • Tasarımın başarısı tasarım kararlarının etkin alınmasına doğrudan bağlıdır. “... UML çizgeleri oluşturmanın da bir maliyeti vardır daha da önemlisi UML modelleri, müşteriler için anlamsızdır.” Martin Fowler Tasnif Dışı Aselsan SST-MD-YMM / DSYS / O.Dayıbaş 8
  9. 9. Model-güdülü Yazılım Geliştirme • Mimari yansılarda kalmamalı. Tasnif Dışı Aselsan SST-MD-YMM / DSYS / O.Dayıbaş 9
  10. 10. Durum Çalışması • Eclipse Modeling Project Tasnif Dışı Aselsan SST-MD-YMM / DSYS / O.Dayıbaş 10
  11. 11. Durum Çalışması • DDS haberleşmesini izlemek için bir test GKA uygulaması. Tasnif Dışı Aselsan SST-MD-YMM / DSYS / O.Dayıbaş 11
  12. 12. Durum Çalışması • GkaTest-ML için dil bilgisi (Xtext) Tasnif Dışı Aselsan SST-MD-YMM / DSYS / O.Dayıbaş 12
  13. 13. Durum Çalışması • GkaTest-ML dilinde bir belirtim Tasnif Dışı Aselsan SST-MD-YMM / DSYS / O.Dayıbaş 13
  14. 14. Durum Çalışması • GkaTest Uygulaması Tasnif Dışı Aselsan SST-MD-YMM / DSYS / O.Dayıbaş 14
  15. 15. Durum Çalışması • GkaUretec • GkaTestKulac • GkaGen Tasnif Dışı Aselsan SST-MD-YMM / DSYS / O.Dayıbaş 15
  16. 16. Soru? • Bir geliştiricinin, beceri/deneyim seviyesinden bağımsız olarak, nihai ürüne yaptığı kod katkısı ~10 satır/gün (bkz. Mythical Man Month). “İyi bir tornacı, ortalama bir tornacıdan bir kaç kat fazla maaş alabilir ancak iyi bir kod geliştirici, ortalama bir geliştiricinin 10,000 katına değer” Bill Gates • Peki iyi geliştirici neden/nasıl iyi? Tasnif Dışı Aselsan SST-MD-YMM / DSYS / O.Dayıbaş 16
  17. 17. Teşekkürler… • Sorularınız? Tasnif Dışı Aselsan SST-MD-YMM / DSYS / O.Dayıbaş 17

×