• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
Programmieren ohne Programmierer
 

Programmieren ohne Programmierer

on

  • 358 views

Die Folien meines Vortrags von der FrOSCon 2009.

Die Folien meines Vortrags von der FrOSCon 2009.

Statistics

Views

Total Views
358
Views on SlideShare
357
Embed Views
1

Actions

Likes
0
Downloads
0
Comments
0

1 Embed 1

http://www.linkedin.com 1

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

CC Attribution-NonCommercial-ShareAlike LicenseCC Attribution-NonCommercial-ShareAlike LicenseCC Attribution-NonCommercial-ShareAlike License

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    Programmieren ohne Programmierer Programmieren ohne Programmierer Presentation Transcript

    • Programmieren ohne ProgrammiererModellgetriebene Softwareentwicklung mit GeneSEZ in 10 Minuten Gerrit Beine gerrit.beine@sqqd.de
    • Model Driven Software Development23.08.2009 © SQQD GmbH - www.sqdd.de - info@sqdd.de 2
    • Nein...23.08.2009 © SQQD GmbH - www.sqdd.de - info@sqdd.de 3
    • Grundidee ● Software grafisch Modellieren ● Vom Abstrakten zum Konkreten ● Kluges Generieren statt Stupides Coden ● Computer machen weniger Fehler ● Modell-zu-Modell-Transformationen ● Modell-zu-Text-Transformationen23.08.2009 © SQQD GmbH - www.sqdd.de - info@sqdd.de 4
    • Modelltransformationen Volere Shell UML UML Java, C, PHP, ... Datenbankstruktur Designmodell Anforderungen Analysemodell Programmcode Testmodell Manuelle Analyse Testabläufe und -daten Transformation und manuelle Anreicherung Transformation und manuelle Anreicherung23.08.2009 © SQQD GmbH - www.sqdd.de - info@sqdd.de 5
    • Metamodelle beschreibt Instanz von Element MOF, Ecore M3: Meta-Metamodell (Attribute: Element) beschreibt Instanz von Element UML, GeneSEZ M2: Metamodell (Attribute: (Name: String, Variable: (String, String) ) ) beschreibt Instanz von Klasse Klassendiagramm, Aktivitätsdiagramm M1: Modell (Name: Auto, Variablen: (Farbe: String, Türen: Integer) ) beschreibt Instanz von Auto Objekte M0: Instanzen (Farbe: rot, Türen: 5)23.08.2009 © SQQD GmbH - www.sqdd.de - info@sqdd.de 6
    • Die Idee von GeneSEZ23.08.2009 © SQQD GmbH - www.sqdd.de - info@sqdd.de 7
    • Projekthistorie ● Start 2006 an der FH Zwickau ● Ziel: MDSD in 10 Minuten ● Perspektive: Programmierer als Anwender ● Unterstützung agiler Software-Entwicklung ● Keine 1:1 Umsetzung des Modells im Code ● Modelle sind abstrakter als Code23.08.2009 © SQQD GmbH - www.sqdd.de - info@sqdd.de 8
    • Basistechnologien ● Eclipse Modeling Framework ● EMF UML2 ● openArchitectureWare ● Warum GeneSEZ notwendig ist: – Hoher Investition in Infrastrukur (Zeit) – Hoher Lernaufwand (UML 2 Metamodell) – Auwändige Wartung eines Generators23.08.2009 © SQQD GmbH - www.sqdd.de - info@sqdd.de 9
    • GeneSEZ Ansatz ● Definition eines eigenen Metamodells – Optimiert für Codegenerierung – Entwickler als Anwender im Fokus ● Anbieten fertiger Generator-Plattformen23.08.2009 © SQQD GmbH - www.sqdd.de - info@sqdd.de 10
    • GeneSEZ Metamodell ● In UML entwickelt ● Steht als Ecore (EMF) Modell zu Verfügung ● Kennt AOP, OOP, Profile ● Einfache Transformation aus UML und DSLs23.08.2009 © SQQD GmbH - www.sqdd.de - info@sqdd.de 11
    • GeneSEZ Plattformen ● Workflow-Komponenten für Transformationen ● Naming Conventions ● Package Importe / Namespaces ● Type Mapping ● Code-Templates für Metamodellelemente ● Scripten zur Modell-Interpretation und -Anreicherung23.08.2009 © SQQD GmbH - www.sqdd.de - info@sqdd.de 12
    • Workflow ab Release 1.7 UML/DSL GeneSEZ TestingAnforderungen M2M M2M M2M M2T Tests Modell Modell Modell Source M2T Code QF-Test, Selenium Reports23.08.2009 © SQQD GmbH - www.sqdd.de - info@sqdd.de 13
    • Workflow23.08.2009 © SQQD GmbH - www.sqdd.de - info@sqdd.de 14
    • Type-Mapping23.08.2009 © SQQD GmbH - www.sqdd.de - info@sqdd.de 15
    • Templates23.08.2009 © SQQD GmbH - www.sqdd.de - info@sqdd.de 16
    • Scripten23.08.2009 © SQQD GmbH - www.sqdd.de - info@sqdd.de 17
    • Beispielcode23.08.2009 © SQQD GmbH - www.sqdd.de - info@sqdd.de 18
    • Statistiken...23.08.2009 © SQQD GmbH - www.sqdd.de - info@sqdd.de 19
    • Individualisierungen ● Anpassung von Templates und Funktionen – Beeinflussen mit Aspekten ● Ändern von Datentypen – Lokal im Projekt überschreiben ● Generator und Plattform bleiben unverändert ● Wiederverwendung: Eigene Plattform ableiten23.08.2009 © SQQD GmbH - www.sqdd.de - info@sqdd.de 20
    • Individualisierungen: Templates23.08.2009 © SQQD GmbH - www.sqdd.de - info@sqdd.de 21
    • Individualisierungen: Scripten23.08.2009 © SQQD GmbH - www.sqdd.de - info@sqdd.de 22
    • Individualisierungen: Workflow23.08.2009 © SQQD GmbH - www.sqdd.de - info@sqdd.de 23
    • Zukünftiges ● 31.08.2009 – Release 1.6.3 ● Im Herbst – Release 1.7 mit – Zustandsautomaten – Aktivitäten – Testgenerierung – Mehr Plattformen :-)23.08.2009 © SQQD GmbH - www.sqdd.de - info@sqdd.de 24
    • Ausprobieren? ● Informieren – http://www.genesez.de/ ● Herunterladen – http://www.genesez.de/download – http://updatesite.genesez.de/site.xml ● Handbuch – http://manual.genesez.de/ ● info@genesez.de23.08.2009 © SQQD GmbH - www.sqdd.de - info@sqdd.de 25
    • Gibt es Fragen? Dann jetzt! Oder gleich an unserem Stand :-)23.08.2009 © SQQD GmbH - www.sqdd.de - info@sqdd.de 26
    • Aspekte Danke und viel Spaß noch.23.08.2009 © SQQD GmbH - www.sqdd.de - info@sqdd.de 27