mdsd einführung und Überblick

Post on 29-Nov-2014

797 Views

Category:

Technology

5 Downloads

Preview:

Click to see full reader

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

TRANSCRIPT

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 ?

top related