Seite 2 / 23
Model Driven Software Development
Potentiale modellgetriebener
Softwareentwicklung
Referent:
Hartwig Tödter
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
Seite 4 / 23
1. Grundideen 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
Seite 6 / 23
Domänenarchitektur
DSL
TemplatesTemplates
Templates
Generator
domänenspezifische
Plattform
technische Plattformfachliche Plattform
Referenzimplementierung
extrahiert aus
Steigerung von
Entwicklungseffizienz
Softwarequalität
Wiederverwendbarkeit
Architekturzentrierte MDSD
Seite 7 / 23
ganzheitliche automatisierte Erstellung von
Infrastrukturcode
Minimierung der manuellen Erstellung von redundanten,
technischen Code
Seite 8 / 23
Architekturzentrierte MDSD
Architektur-
plattformInfrastruktur
Code
Anwen-
dungslogik
AC
Design-Modell
GeneratorTemplates
TemplatesTemplates
Generative Architektur
Referenz-
implementierung
UML-Profil
Seite 9 / 23
2. Vorteile von MDSD-Ansätzen
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
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
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
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
Seite 14 / 23
3. Aufwandsvergleiche
Seite 15 / 23
Aufwand bei weitgehend manueller Entwicklung
[SV2005]
fach
liche
r In
form
atio
nsge
halt
technischer
Detaillierungs-
grad
Seite 16 / 23
Aufwand bei MDSD mit teilw. manueller Entwicklung
[SV2005]
fach
liche
r In
form
atio
nsge
halt
technischer
Detaillierungs-
grad
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]
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]
Seite 19 / 23
4. Zusammenfassung
Seite 20 / 23
Vorteil der MDSD: Entwicklungseffizienz
höhere Effizienz
Generierungweniger
manuelle Codierung
Wieder-verwendung
stabile Domänen-architektur
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
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
Seite 23 / 23
www.iks-gmbh.com