MDSD Einführung und Überblick
-
Upload
iks-gesellschaft-fuer-informations-und-kommunikationssysteme-mbh -
Category
Technology
-
view
797 -
download
5
description
Transcript of MDSD Einführung und Überblick
Seite 2 / 33
MDSD Einführung und Überblick
Referent:
Carsten Schädel
Model Driven Software Development
Seite 3 / 33
Ziele
Grundgedanke
Glossar der wichtigsten Begriffe
Seite 4 / 33
Glossar
Domäne
Seite 5 / 33
Domäne
mögliche Definitionen:
– „A domain is a bounded area of knowledge or interest“(nach Völter)
– „abgrenzbares Problemfeld des täglichen Lebens in
Softwaresystemen“(Wiktionary)
je abgegrenzter, desto besser bzw. einfacher hand zu haben.
Seite 6 / 33
Glossar
Domäne abgegrenzter Problemraum
Seite 7 / 33
Problemfelder/ Problemräume sind …
architektur-zentriert domänen-zentriert
• Abbildung in die gewählte
Technologie
• architektur-zentrierte MDSD
• wird durch die konkrete Fachlichkeit
vorgegeben
• fachlich-zentrierte MDSD
(Architektur/Technik motiviert) (fachlich motiviert)
Seite 8 / 33
Grundgedanke
Seite 9 / 33
Grundgedanke
Modell
unabhängig von der Technologie
Generat
Zielplattform
Generator
ausführen auf
Seite 10 / 33
Glossar
Domäne abgegrenzter Problemraum
Seite 11 / 33
Glossar
Domäne abgegrenzter Problemraum
Modell
– formalisiertes Wissen der Domäne bzw. fachliche Beschreibung
eines Problemraumes
– unabhängig von der einzusetzenden Technologie
Seite 12 / 33
Glossar
Domäne abgegrenzter Problemraum
Modell formalisiertes Wissen der Domäne
Generator
Transformator
Seite 13 / 33
Generator - Transformator
Gemeinsamkeiten
– interpretieren eines Modells
– enthalten möglichst viel Wissen um den Problemraum
– setzen ein Regelwerk zur Generierung/Transformation um
– setzen allgemeine Muster für Architektur und Code um
Seite 14 / 33
Generator - Transformator
Generatoren M2T (model to text)
– beschreiben Generierung von Artefakten(HTML-Seiten, XML-Dateien, Quellcode …)
Transformatoren M2M (model to model)
– beschreiben Modell-zu-Modell-Transformationen
– tiefergehende Informationen: Artikel im Java - Magazin
Generatoren/Transformatoren können in beliebig vielen
Schritten gekoppelt sein
Seite 15 / 33
Glossar
Domäne abgegrenzter Problemraum
Modell formalisiertes Wissen der Domäne
Generator (M2T) Generierung von Artefakten
Transformator (M2M) Modell – zu – Modell
Seite 16 / 33
Glossar
Domäne abgegrenzter Problemraum
Modell formalisiertes Wissen der Domäne
Generator (M2T) Generierung von Artefakten
Transformator (M2M) Modell – zu – Modell
Generat
– Ergebnis der Generierung
– wird auf Zielplattform ausgeführt
Seite 17 / 33
Glossar
Domäne abgegrenzter Problemraum
Modell formalisiertes Wissen der Domäne
Generator (M2T) Generierung von Artefakten
Transformator (M2M) Modell – zu – Modell
Generat Ergebnis der Generierung
Zielplattform
Seite 18 / 33
Zielplattform
Laufzeitumgebung zur Ausführung der Generate
wird durch Frameworks und Komponenten zur
„domänenspezifischen Plattform“
Seite 19 / 33
Glossar
Domäne abgegrenzter Problemraum
Modell formalisiertes Wissen der Domäne
Generator (M2T) Generierung von Artefakten
Transformator (M2M) Modell – zu – Modell
Generat Ergebnis der Generierung
Zielplattform Laufzeitumgebung
domänenspezifische Plattform
Seite 20 / 33
Domänenspezifische Plattform
bringt die Zielplattform durch Frameworks und Komponenten
der Domäne ‚näher‘
je spezifischer die Plattform, desto einfacher der Generator
für alle Anwendungen einer Domäne gleich
Seite 21 / 33
Glossar
Domäne abgegrenzter Problemraum
Modell formalisiertes Wissen der Domäne
Generator (M2T) Generierung von Artefakten
Transformator (M2M) Modell – zu – Modell
Generat Ergebnis der Generierung
Zielplattform Laufzeitumgebung
domänenspezifische Plattform erweiterte Zielplattform
Seite 22 / 33
Glossar
Domäne abgegrenzter Problemraum
Modell formalisiertes Wissen der Domäne
Generator (M2T) Generierung von Artefakten
Transformator (M2M) Modell – zu – Modell
Generat Ergebnis der Generierung
Zielplattform Laufzeitumgebung
domänenspezifische Plattform erweiterte Zielplattform
DSL
Seite 23 / 33
Domänenspezifische Sprache
Sprache zur Formulierung von Modellen in einem Problemraum
– DSL (domain specific language)
besitzt eine formale Spezifikation in Form eines Metamodells
kann in unterschiedlichen Formen dargestellt/realisiert werden
– UML, EMF, textuell
– konkrete Syntax
beschreibt einen speziellen Problemraum
Seite 24 / 33
DSL in MDSD
Mehrwert von MDSD steigt,
– je abgegrenzter der Problemraum und
– je spezieller die DSL dieses Problemraumes ist
► Finde abgegrenzten Problemraum und entsprechende DSL
► In Projekten existieren u.U. mehrere DSLs nebeneinander
Seite 25 / 33
Glossar
Domäne abgegrenzter Problemraum
Modell formalisiertes Wissen der Domäne
Generator (M2T) Generierung von Artefakten
Transformator (M2M) Modell – zu – Modell
Generat Ergebnis der Generierung
Zielplattform Laufzeitumgebung
domänenspezifische Plattform erweiterte Zielplattform
DSL Modellierungssprache im Problemraum
Metamodell
Seite 26 / 33
Metamodell
abstrakte Syntax
formalisiert die Strukturen einer Domäne
Beschreibung der Sprachkonstrukte einer DSL
definiert die Verwendung der Sprachkonstrukte
Modelle werden durch ein Metamodell maschinell überprüfbar
Seite 27 / 33
Glossar
Domäne abgegrenzter Problemraum
Modell formalisiertes Wissen der Domäne
Generator (M2T) Generierung von Artefakten
Transformator (M2M) Modell – zu – Modell
Generat Ergebnis der Generierung
Zielplattform Laufzeitumgebung
domänenspezifische Plattform erweiterte Zielplattform
DSL Modellierungssprache im Problemraum
Metamodell Sprachkonstrukte einer DSL
Seite 28 / 33
Glossar
Domäne abgegrenzter Problemraum
Modell formalisiertes Wissen der Domäne
Generator (M2T) Generierung von Artefakten
Transformator (M2M) Modell – zu – Modell
Generat Ergebnis der Generierung
Zielplattform Laufzeitumgebung
domänenspezifische Plattform erweiterte Zielplattform
DSL Modellierungssprache im Problemraum
Metamodell Sprachkonstrukte einer DSL
Domänen-Architektur
Seite 29 / 33
Domänen-Architektur (domain architecture)
beschreibt die Umgebung vom Modell zum Softwareprodukt
beinhaltet
– DSL/ Metamodell
– Modelltransformation
– Zielplattform
Seite 30 / 33
Glossar
Domäne abgegrenzter Problemraum
Modell formalisiertes Wissen der Domäne
Generator (M2T) Generierung von Artefakten
Transformator (M2M) Modell – zu – Modell
Generat Ergebnis der Generierung
Zielplattform Laufzeitumgebung
domänenspezifische Plattform erweiterte Zielplattform
DSL Modellierungssprache im Problemraum
Metamodell Sprachkonstrukte einer DSL
Domänen-Architektur Umgebung Modell zu Softwareprodukt
Software Systemfamilie
Seite 31 / 33
Software Systemfamilie
Programmgruppe mit gemeinsamen Eigenschaften
hier: gemeinsame Domänen-Architektur
Seite 32 / 33
Glossar
Domäne abgegrenzter Problemraum
Modell formalisiertes Wissen der Domäne
Generator (M2T) Generierung von Artefakten
Transformator (M2M) Modell – zu – Modell
Generat Ergebnis der Generierung
Zielplattform Laufzeitumgebung
domänenspezifische Plattform erweiterte Zielplattform
DSL Modellierungssprache im Problemraum
Metamodell Sprachkonstrukte einer DSL
Domänen-Architektur Umgebung Modell zu Softwareprodukt
Software Systemfamilie gemeinsame Domänen-Architektur
Seite 33 / 33
Fragen ?