SlideShare ist ein Scribd-Unternehmen logo
1 von 22
Downloaden Sie, um offline zu lesen
Model Driven Software Development



               Potentiale modellgetriebener
                  Softwareentwicklung

                            Referent:
                          Hartwig Tödter




Seite 2 / 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 3 / 23
1. Grundideen modellgetriebener
                     Softwareentwicklung




Seite 4 / 23
Grundidee modellgetriebener Softwareentwicklung

                                                          Individu-
                                                         eller Code    dom.-
     Anwendung                                                         spezif.
                                     Trennung
                                                                        Platt-
                                                Schematischer           form
                                                    Code

         extrahieren                                     erzeugt



     Anwendungs-                                                   Templates
                                                  Generator         Templates
        modell                                                       Templates
                       basiert auf
                                                  basiert auf
                                       DSL
                                                                        [SV2005]
Seite 5 / 23
Domänenarchitektur
                                             Templates
                                              Templates
                                               Templates
               DSL          Generator
                                                 extrahiert aus



                     domänenspezifische
                                                Referenzimplementierung
                         Plattform




      fachliche Plattform        technische Plattform


Seite 6 / 23
Architekturzentrierte MDSD

Steigerung von

       Entwicklungseffizienz
       Softwarequalität
       Wiederverwendbarkeit

       ganzheitliche automatisierte Erstellung von
       Infrastrukturcode
       Minimierung der manuellen Erstellung von redundanten,
       technischen Code



Seite 7 / 23
Architekturzentrierte MDSD

                       Anwen-         Generative Architektur
                      dungslogik

                                                    Architektur-
                Infrastruktur                        plattform
                    Code

                                   Templates        Referenz-
                                    Templates
                Generator            Templates   implementierung


                                                  UML-Profil
                    AC
               Design-Modell

Seite 8 / 23
2. Vorteile von MDSD-Ansätzen




Seite 9 / 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 10 / 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

Seite 11 / 23
Getrennte Entwicklungsstränge


Anwendung A              Domänenarchitektur         Anwendung B

                                 V1.0.2                 V2.3.1


                                 V1.1.0
                                                        V2.4.0
          V0.1.0                          beeinflusst
                   beeinflusst
                                 V2.0.0


Seite 12 / 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 13 / 23
3. Aufwandsvergleiche




Seite 14 / 23
Aufwand bei weitgehend manueller Entwicklung
          fachlicher Informationsgehalt




                                          technischer
                                          Detaillierungs-
                                          grad




                                                     [SV2005]
Seite 15 / 23
Aufwand bei MDSD mit teilw. manueller Entwicklung
                fachlicher Informationsgehalt




                                                technischer
                                                Detaillierungs-
                                                grad




                                                          [SV2005]
Seite 16 / 23
Vergleich: manuelle Entwicklung / MDSD

                                  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%




                                                          [SV2005]
Seite 17 / 23
Vergleich: manuelle Entwicklung / MDSD
                            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%

                                                         [B2003]
Seite 18 / 23
4. Zusammenfassung




Seite 19 / 23
Vorteil der MDSD: Entwicklungseffizienz


                                            weniger
                 Generierung               manuelle
                                           Codierung




             stabile           höhere            Wieder-
           Domänen-            Effizienz       verwendung
           architektur

Seite 20 / 23
Vorteil der MDSD: Softwarequalität

                              einheitliche
                                               Wieder-
                              Domänen-
                                             verwendung
                              architektur


                                                           getrennte
                Generierung                               Verantwort-
                                                           lichkeiten




                                       höhere                   Besserer
           fachliche
          Modellierung                Software-                Kontakt zur
                                                              Fachabteilung
                                       qualität


Seite 21 / 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 22 / 23
www.iks-gmbh.com




Seite 23 / 23

Weitere ähnliche Inhalte

Andere mochten auch

Andere mochten auch (20)

Juegos olímpicos 2012
Juegos olímpicos 2012 Juegos olímpicos 2012
Juegos olímpicos 2012
 
Unadelasultimasdeteoriayescueladecomunicacion
UnadelasultimasdeteoriayescueladecomunicacionUnadelasultimasdeteoriayescueladecomunicacion
Unadelasultimasdeteoriayescueladecomunicacion
 
El delito informático
El delito informáticoEl delito informático
El delito informático
 
Unadelasultimasdeteoriayescueladecomunicacion
UnadelasultimasdeteoriayescueladecomunicacionUnadelasultimasdeteoriayescueladecomunicacion
Unadelasultimasdeteoriayescueladecomunicacion
 
Fotos de Perú
Fotos de PerúFotos de Perú
Fotos de Perú
 
EXPERIENCE: Social Media Analytics @ Bundeswehr
EXPERIENCE: Social Media Analytics @ BundeswehrEXPERIENCE: Social Media Analytics @ Bundeswehr
EXPERIENCE: Social Media Analytics @ Bundeswehr
 
Los animales
Los animalesLos animales
Los animales
 
Las flores de colombia
Las flores de colombiaLas flores de colombia
Las flores de colombia
 
Tribuna Celíaca nº 19
Tribuna Celíaca nº 19Tribuna Celíaca nº 19
Tribuna Celíaca nº 19
 
Odontologia bionergetica
Odontologia bionergeticaOdontologia bionergetica
Odontologia bionergetica
 
Presentación cádiz en qr
Presentación cádiz en qrPresentación cádiz en qr
Presentación cádiz en qr
 
Trabajo practico 5
Trabajo practico 5Trabajo practico 5
Trabajo practico 5
 
Metodología Innovar en los límites
Metodología Innovar en los límites Metodología Innovar en los límites
Metodología Innovar en los límites
 
Gane Dinero desde el primer dia
Gane Dinero desde el primer diaGane Dinero desde el primer dia
Gane Dinero desde el primer dia
 
SLIDESHARE
SLIDESHARESLIDESHARE
SLIDESHARE
 
D'generaciones 01
D'generaciones 01D'generaciones 01
D'generaciones 01
 
Fase de planificacion andrea garcia villarreal
Fase de planificacion andrea garcia villarrealFase de planificacion andrea garcia villarreal
Fase de planificacion andrea garcia villarreal
 
Schonbrunn
SchonbrunnSchonbrunn
Schonbrunn
 
Promoción de la Salud
Promoción de la SaludPromoción de la Salud
Promoción de la Salud
 
Examen enlace2008 s3
Examen enlace2008 s3Examen enlace2008 s3
Examen enlace2008 s3
 

Ähnlich wie MDSD Potentiale modellgetriebener Softwareentwicklung

AndroMDA - Einführung in eine Open Source Model Driven Architecture Lösung
AndroMDA - Einführung in eine Open Source Model Driven Architecture LösungAndroMDA - Einführung in eine Open Source Model Driven Architecture Lösung
AndroMDA - Einführung in eine Open Source Model Driven Architecture LösungEduard Hildebrandt
 
Low-Code- und No-Code-Apps im PLM: Einordnung, Nutzen, Risiken, Chancen
Low-Code- und No-Code-Apps im PLM: Einordnung, Nutzen, Risiken, ChancenLow-Code- und No-Code-Apps im PLM: Einordnung, Nutzen, Risiken, Chancen
Low-Code- und No-Code-Apps im PLM: Einordnung, Nutzen, Risiken, ChancenIntelliact AG
 
MDA mit AndroMDA
MDA mit AndroMDAMDA mit AndroMDA
MDA mit AndroMDAjugsaxony
 
Architekturen für .NET Core-Anwendungen
Architekturen für .NET Core-AnwendungenArchitekturen für .NET Core-Anwendungen
Architekturen für .NET Core-AnwendungenRobin Sedlaczek
 
ESE Conference: iOS, Android, WP7... Alle nativ auf einen Streich! streich
ESE Conference: iOS, Android, WP7...Alle nativ auf einen Streich! streichESE Conference: iOS, Android, WP7...Alle nativ auf einen Streich! streich
ESE Conference: iOS, Android, WP7... Alle nativ auf einen Streich! streichRomano Roth
 
BASTA Spring 2018: User Interface, quo vadis? Überlebensstrategien eines Soft...
BASTA Spring 2018: User Interface, quo vadis? Überlebensstrategien eines Soft...BASTA Spring 2018: User Interface, quo vadis? Überlebensstrategien eines Soft...
BASTA Spring 2018: User Interface, quo vadis? Überlebensstrategien eines Soft...Rainer Stropek
 
Java für eingebettete Systeme
Java für eingebettete SystemeJava für eingebettete Systeme
Java für eingebettete Systemerdmeyer
 
Using openArchitectureWare 4.0 in domain "registration"
Using openArchitectureWare 4.0 in domain "registration"Using openArchitectureWare 4.0 in domain "registration"
Using openArchitectureWare 4.0 in domain "registration"joergreichert
 
Programmieren ohne Programmierer
Programmieren ohne ProgrammiererProgrammieren ohne Programmierer
Programmieren ohne ProgrammiererGerrit Beine
 
.NET Core Architecture (UI)
.NET Core Architecture (UI).NET Core Architecture (UI)
.NET Core Architecture (UI)Robin Sedlaczek
 
Industy-forum 2011 PARTsolutions ELWEMA
Industy-forum 2011 PARTsolutions ELWEMAIndusty-forum 2011 PARTsolutions ELWEMA
Industy-forum 2011 PARTsolutions ELWEMACADENAS
 
Langlebige Softwarearchitekturen - Der Umgang mit technischen Schulden
Langlebige Softwarearchitekturen - Der Umgang mit technischen SchuldenLanglebige Softwarearchitekturen - Der Umgang mit technischen Schulden
Langlebige Softwarearchitekturen - Der Umgang mit technischen SchuldenCarola Lilienthal
 
20150923 ausführbare spezifikation_automotiveforum
20150923 ausführbare spezifikation_automotiveforum20150923 ausführbare spezifikation_automotiveforum
20150923 ausführbare spezifikation_automotiveforumElmar Selbach
 
PLM Open Hours - Softwareentwicklung im Innovationsprozess
PLM Open Hours - Softwareentwicklung im InnovationsprozessPLM Open Hours - Softwareentwicklung im Innovationsprozess
PLM Open Hours - Softwareentwicklung im InnovationsprozessIntelliact AG
 
GO mobile! Der Wandel in der Technischen Kommunikation (TechComm)
GO mobile! Der Wandel in der Technischen Kommunikation (TechComm)GO mobile! Der Wandel in der Technischen Kommunikation (TechComm)
GO mobile! Der Wandel in der Technischen Kommunikation (TechComm)Georg Eck
 

Ähnlich wie MDSD Potentiale modellgetriebener Softwareentwicklung (20)

AndroMDA - Einführung in eine Open Source Model Driven Architecture Lösung
AndroMDA - Einführung in eine Open Source Model Driven Architecture LösungAndroMDA - Einführung in eine Open Source Model Driven Architecture Lösung
AndroMDA - Einführung in eine Open Source Model Driven Architecture Lösung
 
MDSD Projektbericht Modellgetriebene Softwareentwicklung bei der Rentenzahlung
MDSD Projektbericht Modellgetriebene Softwareentwicklung bei der RentenzahlungMDSD Projektbericht Modellgetriebene Softwareentwicklung bei der Rentenzahlung
MDSD Projektbericht Modellgetriebene Softwareentwicklung bei der Rentenzahlung
 
MDSD Herausforderung: Entwicklungsmethodik und technisches Umfeld
MDSD Herausforderung: Entwicklungsmethodik und technisches UmfeldMDSD Herausforderung: Entwicklungsmethodik und technisches Umfeld
MDSD Herausforderung: Entwicklungsmethodik und technisches Umfeld
 
Low-Code- und No-Code-Apps im PLM: Einordnung, Nutzen, Risiken, Chancen
Low-Code- und No-Code-Apps im PLM: Einordnung, Nutzen, Risiken, ChancenLow-Code- und No-Code-Apps im PLM: Einordnung, Nutzen, Risiken, Chancen
Low-Code- und No-Code-Apps im PLM: Einordnung, Nutzen, Risiken, Chancen
 
MDA mit AndroMDA
MDA mit AndroMDAMDA mit AndroMDA
MDA mit AndroMDA
 
Architekturen für .NET Core-Anwendungen
Architekturen für .NET Core-AnwendungenArchitekturen für .NET Core-Anwendungen
Architekturen für .NET Core-Anwendungen
 
Team Foundation Server
Team Foundation ServerTeam Foundation Server
Team Foundation Server
 
CodeFluent Entities and AppSofa
CodeFluent Entities and AppSofaCodeFluent Entities and AppSofa
CodeFluent Entities and AppSofa
 
ESE Conference: iOS, Android, WP7... Alle nativ auf einen Streich! streich
ESE Conference: iOS, Android, WP7...Alle nativ auf einen Streich! streichESE Conference: iOS, Android, WP7...Alle nativ auf einen Streich! streich
ESE Conference: iOS, Android, WP7... Alle nativ auf einen Streich! streich
 
BASTA Spring 2018: User Interface, quo vadis? Überlebensstrategien eines Soft...
BASTA Spring 2018: User Interface, quo vadis? Überlebensstrategien eines Soft...BASTA Spring 2018: User Interface, quo vadis? Überlebensstrategien eines Soft...
BASTA Spring 2018: User Interface, quo vadis? Überlebensstrategien eines Soft...
 
Java für eingebettete Systeme
Java für eingebettete SystemeJava für eingebettete Systeme
Java für eingebettete Systeme
 
Using openArchitectureWare 4.0 in domain "registration"
Using openArchitectureWare 4.0 in domain "registration"Using openArchitectureWare 4.0 in domain "registration"
Using openArchitectureWare 4.0 in domain "registration"
 
Programmieren ohne Programmierer
Programmieren ohne ProgrammiererProgrammieren ohne Programmierer
Programmieren ohne Programmierer
 
.NET Core Architecture (UI)
.NET Core Architecture (UI).NET Core Architecture (UI)
.NET Core Architecture (UI)
 
Digital (3D-) Master
Digital  (3D-) MasterDigital  (3D-) Master
Digital (3D-) Master
 
Industy-forum 2011 PARTsolutions ELWEMA
Industy-forum 2011 PARTsolutions ELWEMAIndusty-forum 2011 PARTsolutions ELWEMA
Industy-forum 2011 PARTsolutions ELWEMA
 
Langlebige Softwarearchitekturen - Der Umgang mit technischen Schulden
Langlebige Softwarearchitekturen - Der Umgang mit technischen SchuldenLanglebige Softwarearchitekturen - Der Umgang mit technischen Schulden
Langlebige Softwarearchitekturen - Der Umgang mit technischen Schulden
 
20150923 ausführbare spezifikation_automotiveforum
20150923 ausführbare spezifikation_automotiveforum20150923 ausführbare spezifikation_automotiveforum
20150923 ausführbare spezifikation_automotiveforum
 
PLM Open Hours - Softwareentwicklung im Innovationsprozess
PLM Open Hours - Softwareentwicklung im InnovationsprozessPLM Open Hours - Softwareentwicklung im Innovationsprozess
PLM Open Hours - Softwareentwicklung im Innovationsprozess
 
GO mobile! Der Wandel in der Technischen Kommunikation (TechComm)
GO mobile! Der Wandel in der Technischen Kommunikation (TechComm)GO mobile! Der Wandel in der Technischen Kommunikation (TechComm)
GO mobile! Der Wandel in der Technischen Kommunikation (TechComm)
 

Mehr von IKS Gesellschaft für Informations- und Kommunikationssysteme mbH

Mehr von IKS Gesellschaft für Informations- und Kommunikationssysteme mbH (20)

Es wird Zeit KI zu nutzen - Wie es mit Azure KI Services und .NET MAUI gelingt
Es wird Zeit KI zu nutzen - Wie es mit Azure KI Services und .NET MAUI gelingtEs wird Zeit KI zu nutzen - Wie es mit Azure KI Services und .NET MAUI gelingt
Es wird Zeit KI zu nutzen - Wie es mit Azure KI Services und .NET MAUI gelingt
 
Thementag 2023 06 Dieses Mal machen wir alles richtig - 9 Hacks für wandelbar...
Thementag 2023 06 Dieses Mal machen wir alles richtig - 9 Hacks für wandelbar...Thementag 2023 06 Dieses Mal machen wir alles richtig - 9 Hacks für wandelbar...
Thementag 2023 06 Dieses Mal machen wir alles richtig - 9 Hacks für wandelbar...
 
Thementag 2023 04 Lindern, heilen oder gar fit machen.pdf
Thementag 2023 04 Lindern, heilen oder gar fit machen.pdfThementag 2023 04 Lindern, heilen oder gar fit machen.pdf
Thementag 2023 04 Lindern, heilen oder gar fit machen.pdf
 
Thementag 2023 05 Wer zu spät kommt, den bestraft das Leben - Modernisierung ...
Thementag 2023 05 Wer zu spät kommt, den bestraft das Leben - Modernisierung ...Thementag 2023 05 Wer zu spät kommt, den bestraft das Leben - Modernisierung ...
Thementag 2023 05 Wer zu spät kommt, den bestraft das Leben - Modernisierung ...
 
Thementag 2023 01 Mut zur Modernisierung - ein Praxisbeispiel.pdf
Thementag 2023 01 Mut zur Modernisierung - ein Praxisbeispiel.pdfThementag 2023 01 Mut zur Modernisierung - ein Praxisbeispiel.pdf
Thementag 2023 01 Mut zur Modernisierung - ein Praxisbeispiel.pdf
 
Thementag 2023 03 Einführung in die Softwaremodernisierung.pdf
Thementag 2023 03 Einführung in die Softwaremodernisierung.pdfThementag 2023 03 Einführung in die Softwaremodernisierung.pdf
Thementag 2023 03 Einführung in die Softwaremodernisierung.pdf
 
Thementag 2022 01 Verpassen Sie nicht den Anschluss.pdf
Thementag 2022 01 Verpassen Sie nicht den Anschluss.pdfThementag 2022 01 Verpassen Sie nicht den Anschluss.pdf
Thementag 2022 01 Verpassen Sie nicht den Anschluss.pdf
 
Thementag 2022 04 ML auf die Schiene gebracht.pdf
Thementag 2022 04 ML auf die Schiene gebracht.pdfThementag 2022 04 ML auf die Schiene gebracht.pdf
Thementag 2022 04 ML auf die Schiene gebracht.pdf
 
Thementag 2022 03 Ein Modell ist trainiert - und jetzt.pdf
Thementag 2022 03 Ein Modell ist trainiert - und jetzt.pdfThementag 2022 03 Ein Modell ist trainiert - und jetzt.pdf
Thementag 2022 03 Ein Modell ist trainiert - und jetzt.pdf
 
Thementag 2022 02 Der Deutschen Bahn in die Karten geschaut.pdf
Thementag 2022 02 Der Deutschen Bahn in die Karten geschaut.pdfThementag 2022 02 Der Deutschen Bahn in die Karten geschaut.pdf
Thementag 2022 02 Der Deutschen Bahn in die Karten geschaut.pdf
 
Daten / Information / Wissen - Möglichkeiten und Grenzen des Machine Learning
Daten / Information / Wissen - Möglichkeiten und Grenzen des Machine LearningDaten / Information / Wissen - Möglichkeiten und Grenzen des Machine Learning
Daten / Information / Wissen - Möglichkeiten und Grenzen des Machine Learning
 
Erste Schritte in die neue Welt-So gelingt der Einstieg in Big Data und Machi...
Erste Schritte in die neue Welt-So gelingt der Einstieg in Big Data und Machi...Erste Schritte in die neue Welt-So gelingt der Einstieg in Big Data und Machi...
Erste Schritte in die neue Welt-So gelingt der Einstieg in Big Data und Machi...
 
Darf es ein bisschen mehr sein - Konzepte und Strategien zur Bewältigung groß...
Darf es ein bisschen mehr sein - Konzepte und Strategien zur Bewältigung groß...Darf es ein bisschen mehr sein - Konzepte und Strategien zur Bewältigung groß...
Darf es ein bisschen mehr sein - Konzepte und Strategien zur Bewältigung groß...
 
Big Data und Machine Learning - Wer braucht das schon!?
Big Data und Machine Learning - Wer braucht das schon!?Big Data und Machine Learning - Wer braucht das schon!?
Big Data und Machine Learning - Wer braucht das schon!?
 
Erste Schritte in die neue Welt - So gelingt der Einstieg in Big Data und Mac...
Erste Schritte in die neue Welt - So gelingt der Einstieg in Big Data und Mac...Erste Schritte in die neue Welt - So gelingt der Einstieg in Big Data und Mac...
Erste Schritte in die neue Welt - So gelingt der Einstieg in Big Data und Mac...
 
Darf es ein bisschen mehr sein - Konzepte Strategien zur Bewältigung großer u...
Darf es ein bisschen mehr sein - Konzepte Strategien zur Bewältigung großer u...Darf es ein bisschen mehr sein - Konzepte Strategien zur Bewältigung großer u...
Darf es ein bisschen mehr sein - Konzepte Strategien zur Bewältigung großer u...
 
Daten / Information / Wissen - Möglichkeiten und Grenzen des Machine Learning
Daten / Information / Wissen - Möglichkeiten und Grenzen des Machine LearningDaten / Information / Wissen - Möglichkeiten und Grenzen des Machine Learning
Daten / Information / Wissen - Möglichkeiten und Grenzen des Machine Learning
 
Big Data und Machine Learning - Wer braucht das schon!?
Big Data und Machine Learning - Wer braucht das schon!?Big Data und Machine Learning - Wer braucht das schon!?
Big Data und Machine Learning - Wer braucht das schon!?
 
Daten / Information / Wissen - Möglichkeiten und Grenzen des Machine Learning
Daten / Information / Wissen - Möglichkeiten und Grenzen des Machine LearningDaten / Information / Wissen - Möglichkeiten und Grenzen des Machine Learning
Daten / Information / Wissen - Möglichkeiten und Grenzen des Machine Learning
 
Darf es ein bisschen mehr sein - Konzepte und Strategien zur Bewältigung groß...
Darf es ein bisschen mehr sein - Konzepte und Strategien zur Bewältigung groß...Darf es ein bisschen mehr sein - Konzepte und Strategien zur Bewältigung groß...
Darf es ein bisschen mehr sein - Konzepte und Strategien zur Bewältigung groß...
 

MDSD Potentiale modellgetriebener Softwareentwicklung

  • 1. Model Driven Software Development Potentiale modellgetriebener Softwareentwicklung Referent: Hartwig Tödter Seite 2 / 23
  • 2. 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 3 / 23
  • 3. 1. Grundideen modellgetriebener Softwareentwicklung Seite 4 / 23
  • 4. Grundidee modellgetriebener Softwareentwicklung Individu- eller Code dom.- Anwendung spezif. Trennung Platt- Schematischer form Code extrahieren erzeugt Anwendungs- Templates Generator Templates modell Templates basiert auf basiert auf DSL [SV2005] Seite 5 / 23
  • 5. Domänenarchitektur Templates Templates Templates DSL Generator extrahiert aus domänenspezifische Referenzimplementierung Plattform fachliche Plattform technische Plattform Seite 6 / 23
  • 6. Architekturzentrierte MDSD Steigerung von Entwicklungseffizienz Softwarequalität Wiederverwendbarkeit ganzheitliche automatisierte Erstellung von Infrastrukturcode Minimierung der manuellen Erstellung von redundanten, technischen Code Seite 7 / 23
  • 7. Architekturzentrierte MDSD Anwen- Generative Architektur dungslogik Architektur- Infrastruktur plattform Code Templates Referenz- Templates Generator Templates implementierung UML-Profil AC Design-Modell Seite 8 / 23
  • 8. 2. Vorteile von MDSD-Ansätzen Seite 9 / 23
  • 9. 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 10 / 23
  • 10. 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 Seite 11 / 23
  • 11. Getrennte Entwicklungsstränge Anwendung A Domänenarchitektur Anwendung B V1.0.2 V2.3.1 V1.1.0 V2.4.0 V0.1.0 beeinflusst beeinflusst V2.0.0 Seite 12 / 23
  • 12. 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 13 / 23
  • 14. Aufwand bei weitgehend manueller Entwicklung fachlicher Informationsgehalt technischer Detaillierungs- grad [SV2005] Seite 15 / 23
  • 15. Aufwand bei MDSD mit teilw. manueller Entwicklung fachlicher Informationsgehalt technischer Detaillierungs- grad [SV2005] Seite 16 / 23
  • 16. Vergleich: manuelle Entwicklung / MDSD 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% [SV2005] Seite 17 / 23
  • 17. Vergleich: manuelle Entwicklung / MDSD 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% [B2003] Seite 18 / 23
  • 19. Vorteil der MDSD: Entwicklungseffizienz weniger Generierung manuelle Codierung stabile höhere Wieder- Domänen- Effizienz verwendung architektur Seite 20 / 23
  • 20. Vorteil der MDSD: Softwarequalität einheitliche Wieder- Domänen- verwendung architektur getrennte Generierung Verantwort- lichkeiten höhere Besserer fachliche Modellierung Software- Kontakt zur Fachabteilung qualität Seite 21 / 23
  • 21. 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 22 / 23