Upload
iks-gesellschaft-fuer-informations-und-kommunikationssysteme-mbh
View
797
Download
5
Embed Size (px)
DESCRIPTION
Am 8. April 2008 fand in den Räumlichkeiten des Kosaido International Golfclubs in Düsseldorf die zweite Veranstaltung zum Thema modellgetriebene Softwareentwicklung (MDSD) statt. Unter dem Titel "MDSD - Chance und Herausforderung für IT-Organisationen" lag der Schwerpunkt der Vorträge dieses Mal auf den Organisatorischen Rahmenbedingungen, in denen MDSD erfolgreich betreiben
Citation preview
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 ?