• Software Architect, Consultant,
Coach at itemis
• Several years of experience
in the modeling world
Jan Köhnlein
• Software Architect, Consultant,
Coach at itemis
• Several years of experience
in the modeling world
• Committer to several open-
source projects
Jan Köhnlein
itemis short facts
Spezialist für modellbasierte Entwicklungsverfahren
Gründung im Jahr 2003
Niederlassungen in Deutschland, Frankreich,
Schweiz und Kanada
140 Mitarbeiter
Strategisches Mitglied der Eclipse Foundation
Intensive Verzahnung im Bereich der Forschung
Mitglied von ARTEMISIA
Embedded Software Development
Enterprise Application Development
1
A domain-specific language (DSL)
is a formal, processable language
targeting at a specific viewpoint or aspect
of a system.
A domain-specific language (DSL)
is a formal, processable language
targeting at a specific viewpoint or aspect
of a system.
Its semantics, flexibility and notation is designed
in order to support working with that viewpoint
as good as possible.
Integration with EMF
eclipse
Any EMF-based modeling
Code Generator GMF Editor P R O J E C T
Component
Integration with EMF
eclipse
Any EMF-based modeling
Code Generator GMF Editor P R O J E C T
Component
<<abstract>>
XMIResource
Resource
Integration with EMF
eclipse
Any EMF-based modeling
Code Generator GMF Editor P R O J E C T
Component
<<abstract>>
XMIResource
Resource
Integration with EMF
eclipse
Any EMF-based modeling
Code Generator GMF Editor P R O J E C T
Component
<<abstract>> XMI
XMIResource
Resource
Integration with EMF
eclipse
Any EMF-based modeling
Code Generator GMF Editor P R O J E C T
Component
<<abstract>> XMI
XMIResource
Resource
Integration with EMF
eclipse
Any EMF-based modeling
Code Generator GMF Editor P R O J E C T
Component
<<abstract>> XMI
XMIResource
Resource
XtextResource
Integration with EMF
eclipse
Any EMF-based modeling
Code Generator GMF Editor P R O J E C T
Component
<<abstract>> XMI
XMIResource
Resource
XtextResource
Integration with EMF
eclipse
Any EMF-based modeling
Code Generator GMF Editor P R O J E C T
Component
<<abstract>> XMI
XMIResource
Resource
XtextResource Text
Integration with EMF
eclipse
Any EMF-based modeling
Code Generator GMF Editor P R O J E C T
Component
<<abstract>> XMI
XMIResource
Resource
XtextResource Text
Parser Linker Serializer
ValueConverter ScopeProvider Formatter
Aktuelle Veranstaltungen
LOP und DSLs - Köln, 15:00
25. August 2009: Deutsches Zentrum für Luft- und Raumfahrt - Falko Riemenschneider,
NRWConf. 2009
27-28. August 2009: Wolkenburg 100, 42119 Wuppertal
Domänenspezifische Sprachen - Lars Corneliussen
12.15 Uhr - 12.45 Uhr
Die 10 Gebote der Architektur - Georg Pietrek
15.20 Uhr - 16.20 Uhr
Scrum: Vom Businessneed zum hochwertigen Produktbacklog, Bonn, 18:30
31.August 2009 - Konferenzhotel Bonn - Sebastian Neus / Dr. Martin Wrangel
Tagung: Mensch und Computer 2009, Berlin, 09:00
07. September 2009 - Leichtgewichtigkeit als Prinzip –
Gestaltung der Webanwendung myPIM durch UCD, FDD und Xtext – Torsten Krohn
Praktische Anwendung von EMF Compare, Dortmund 18:30
14. September 2009 - Harenberg City Center - Dr. Lothar Wendehals
Alle aktuellen Veranstaltungen und weiterführende Informationen auf: http://www.itemis.de/veranstaltungen
kryptisch ist relativ!
Bezug auf Konzepte der Dom&#xE4;ne, formal
Business-DSL: nicht technisch, f&#xFC;r nicht Techiker geeignet
Java schlecht im Abstrahieren von Struktur, Redundanz
Code-Generierung definiert Platform-Mapping (Architekt)
Referenz aus anderen DSLs, Wartbarkeit
Java schlecht im Abstrahieren von Struktur, Redundanz
Code-Generierung definiert Platform-Mapping (Architekt)
Referenz aus anderen DSLs, Wartbarkeit
AST: Abstrakter Syntaxbaum
Java schlecht im Darstellen von B&#xE4;umen
lohnt schon bei wenigen Tests, Test schreiben macht Spa&#xDF;
Interpreter
Java schlecht im Darstellen von B&#xE4;umen
lohnt schon bei wenigen Tests, Test schreiben macht Spa&#xDF;
Interpreter
Java schlecht im Darstellen von B&#xE4;umen
lohnt schon bei wenigen Tests, Test schreiben macht Spa&#xDF;
Interpreter
Raise level of abstraction, Avoids redundancy
Separation of concerns, Reuse of domain concepts
Higher expressiveness, Ubiquitous language
GPLs k&#xF6;nnen alles
Spezielle Aufgaben erfordern spezielle Tools
Vorsicht vor wiederverwendbaren von DSLs (Beispiel Feins&#xE4;ge)
GPLs k&#xF6;nnen alles
Spezielle Aufgaben erfordern spezielle Tools
Vorsicht vor wiederverwendbaren von DSLs (Beispiel Feins&#xE4;ge)
Die DSL f&#xFC;r DSLs, Eclipse-basiert
Define textual DSLs easily, Ready-to-use tool-chain, Easy but flexible customizing and tweaking,
Durable foundation with Java Eclipse EMF, Strong community