Download - MDSD Potentiale modellgetriebener Softwareentwicklung

Transcript
Page 1: MDSD Potentiale modellgetriebener Softwareentwicklung

Seite 2 / 23

Model Driven Software Development

Potentiale modellgetriebener

Softwareentwicklung

Referent:

Hartwig Tödter

Page 2: MDSD Potentiale modellgetriebener Softwareentwicklung

Seite 3 / 23

Inhaltsverzeichnis

1. Grundideen modellgetriebener Softwareentwicklung

2. Vorteile von MDSD-Ansätzen

– Verwendung einer fachlichen Modellierungssprache

– Trennung von Verantwortlichkeiten

– Automatisierung und Wiederverwendung

3. Aufwandsvergleiche

4. Zusammenfassung

Page 3: MDSD Potentiale modellgetriebener Softwareentwicklung

Seite 4 / 23

1. Grundideen modellgetriebener

Softwareentwicklung

Page 4: MDSD Potentiale modellgetriebener Softwareentwicklung

Seite 5 / 23

Grundidee modellgetriebener Softwareentwicklung

Anwendung

dom.-

spezif.

Platt-

formSchematischer

Code

Individu-

eller Code

Trennung

Anwendungs-

modellGenerator

extrahieren

DSL

TemplatesTemplates

Templates

[SV2005]

erzeugt

basiert aufbasiert auf

Page 5: MDSD Potentiale modellgetriebener Softwareentwicklung

Seite 6 / 23

Domänenarchitektur

DSL

TemplatesTemplates

Templates

Generator

domänenspezifische

Plattform

technische Plattformfachliche Plattform

Referenzimplementierung

extrahiert aus

Page 6: MDSD Potentiale modellgetriebener Softwareentwicklung

Steigerung von

Entwicklungseffizienz

Softwarequalität

Wiederverwendbarkeit

Architekturzentrierte MDSD

Seite 7 / 23

ganzheitliche automatisierte Erstellung von

Infrastrukturcode

Minimierung der manuellen Erstellung von redundanten,

technischen Code

Page 7: MDSD Potentiale modellgetriebener Softwareentwicklung

Seite 8 / 23

Architekturzentrierte MDSD

Architektur-

plattformInfrastruktur

Code

Anwen-

dungslogik

AC

Design-Modell

GeneratorTemplates

TemplatesTemplates

Generative Architektur

Referenz-

implementierung

UML-Profil

Page 8: MDSD Potentiale modellgetriebener Softwareentwicklung

Seite 9 / 23

2. Vorteile von MDSD-Ansätzen

Page 9: MDSD Potentiale modellgetriebener Softwareentwicklung

Seite 10 / 23

Verwendung einer fachlichen Modellierungssprache

Das Modell ist zentraler Bestandteil der Entwicklung

Die Qualität der Anwendung wir deutlich höher

Technische Details werden in den Modellen vermieden

Die Modelle werden einfacher und aussagekräftiger

Modellelemente orientieren sich an fachlichen Konzepten und

Begriffen

Das Modell kann von Fachabteilungen verstanden werden

Das Modell wird zusammen mit der Fachabteilung erstellt

Deutlich verbesserte Kommunikation zwischen Fachabteilung

und IT

Page 10: MDSD Potentiale modellgetriebener Softwareentwicklung

Seite 11 / 23

Trennung von Verantwortlichkeiten

Technische Experten

Aufbau der Architektur und der technischen Plattform

Generator-Konfiguration

Referenzimplementierung und Templates

Domänen Experten (der IT-Abteilung)

Kommunikation mit Fachabteilungen

Aufbau der DSL und der fachlichen Plattform

Anwendungsentwicklung: Anwendungsmodellierung und

Implementierung der Fachlogik

Page 11: MDSD Potentiale modellgetriebener Softwareentwicklung

V1.0.2

Seite 12 / 23

Getrennte Entwicklungsstränge

DomänenarchitekturAnwendung A Anwendung B

V1.1.0

V2.0.0

V0.1.0

V2.3.1

V2.4.0

beeinflusstbeeinflusst

Page 12: MDSD Potentiale modellgetriebener Softwareentwicklung

Seite 13 / 23

Automatisierung und Wiederverwendung

Automatisierung wiederholter Abläufe durch Generierung

Steigende Qualität der generierten Teile

Verkürzung von Entwicklungszeiten

Wiederverwendung der domänenspezifischen Plattform

Stabile, einheitliche Softwarearchitektur

Zentralgesteuerter Technologiewandel

Page 13: MDSD Potentiale modellgetriebener Softwareentwicklung

Seite 14 / 23

3. Aufwandsvergleiche

Page 14: MDSD Potentiale modellgetriebener Softwareentwicklung

Seite 15 / 23

Aufwand bei weitgehend manueller Entwicklung

[SV2005]

fach

liche

r In

form

atio

nsge

halt

technischer

Detaillierungs-

grad

Page 15: MDSD Potentiale modellgetriebener Softwareentwicklung

Seite 16 / 23

Aufwand bei MDSD mit teilw. manueller Entwicklung

[SV2005]

fach

liche

r In

form

atio

nsge

halt

technischer

Detaillierungs-

grad

Page 16: MDSD Potentiale modellgetriebener Softwareentwicklung

manuelle Entwicklung MDSD

Referenzimplementierung (kB) 1000

manuell geschriebener Code (kB) 18800 2200

Modelle (kB) 3400

Transformationen (kB) 200

Summe 18800 6800

In % zur manuellen Entwicklung 100% 36%

Vergleich: manuelle Entwicklung / MDSD

Seite 17 / 23

[SV2005]

Page 17: MDSD Potentiale modellgetriebener Softwareentwicklung

manuelle Entwicklung MDSD

Manuell codiert (LOC) 126 20

Generierter Code (LOC) 0 106

Summe LOC 126 126

Statische Modelle (AME) 0 21

Dynamische Modelle (AME) 0 20

Summe AME 0 41

Summe man. LOC und AME 126 62

In % zur man. Entwicklung 100% 49%

Vergleich: manuelle Entwicklung / MDSD

Seite 18 / 23

[B2003]

Page 18: MDSD Potentiale modellgetriebener Softwareentwicklung

Seite 19 / 23

4. Zusammenfassung

Page 19: MDSD Potentiale modellgetriebener Softwareentwicklung

Seite 20 / 23

Vorteil der MDSD: Entwicklungseffizienz

höhere Effizienz

Generierungweniger

manuelle Codierung

Wieder-verwendung

stabile Domänen-architektur

Page 20: MDSD Potentiale modellgetriebener Softwareentwicklung

Seite 21 / 23

Vorteil der MDSD: Softwarequalität

höhere Software-qualität

fachliche Modellierung

Generierung

einheitliche Domänen-architektur

Wieder-verwendung

getrennte Verantwort-lichkeiten

Besserer Kontakt zur

Fachabteilung

Page 21: MDSD Potentiale modellgetriebener Softwareentwicklung

Seite 22 / 23

Literaturverzeichnis

[SV2005] - Stahl, Thomas; Völter, Markus: Modellgetriebene

Softwareentwicklung: Techniken, Engineering, Management. 2005

[PT2007] - Pietrek, Georg; Trompeter, Jens (Hrsg.): Modellgetriebene

Softwareentwicklung. 2007

[B2003] - Bettin, Jorn: Model-Driven Architecture – Implementation & Metrics

V1.1. 2003

Page 22: MDSD Potentiale modellgetriebener Softwareentwicklung

Seite 23 / 23

www.iks-gmbh.com