DSL Engineering

DSL Engineering
mit dem Kurs
01888
Domänenspezifische Sprachen
Durchführung: in jedem Wintersemester, auch SS 2016
Arbeitsaufwand:
300 Stunden
ECTS-Punkte:
10
Häufigkeit:
in jedem Wintersemester
Dauer Modul:
ein Semster
SWS: 4+2
Detaillierter studentischer Arbeitsaufwand:
Inhalt:
Bearbeitung der Kurseinheiten: 150 Stunden
Bearbeitung der Übungsaufgaben: 80 Stunden
Nachbereitung und Prüfungsvorbereitung, sowie Prüfung: 70 Stunden
Domänenspezifische Sprachen sind formale Sprachen, die speziell für ein
bestimmtes Anwendungsgebiet, die „Domäne“, entworfen wurden. Sie
übernehmen häufig in der Domäne gebräuchliche Notationen und grenzen sich so
von Allzwecksprachen wie beispielsweise Java oder UML ab. Damit soll es
Domänenexpertinnen leichter gemacht werden, sich in einer für ihre Zwecke
nützlichen Sprache auszutauschen.
Damit domänenspezifische Sprachen wirklich nützlich sind, bedürfen sie
umfassender Werkzeugunterstützung, wie man sie von allgemeinen Programmierund Modellierungssprachen her gewohnt ist. Da der Nutzerkreis
domänenspezifischer Sprachen im allgemeinen aber kleiner ist, ist es für deren
Erfolg wichtig, dass sich diese Werkzeuge mit wenig Aufwand herstellen lassen.
Sog. Language workbenches, mit denen integrierte Entwicklungsumgebungen für
formale Sprachen relativ leicht entwickelt werden können, gehören daher zur
Entwicklung domänenspezifischer Sprachen fest dazu.
Dieser leittextgestützte Kurs befasst sich mit dem relativ jungen Thema des
Entwurfs und der Werkzeugunterstützung domänenspezifischer Sprachen. Er
basiert auf dem Buch DSL Engineering von Markus Voelter. Das Buch ist in
verschiedenen Formen über http://dslbook.squarespace.com/ erhältlich und kann
vor Belegung des Kurses zur Ansicht heruntergeladen werden (zu empfehlen!).
Lernergebnisse / Kompetenzen:
Die Studierenden sollen eine Vorstellung von Zweck und Nutzen
domänenspezifischer Sprachen entwickeln. Sie sollen sich Kenntnisse vom
technischen Aufwand der Implementierung solcher Sprachen und ihrer Werkzeuge
erarbeiten und sollen abzuschätzen lernen, wann sich die Entwicklung einer
domänenspezifischen Sprache lohnt.
Literatur: Basistext: M. Voelter: DSL Engineering - Designing, Implementing and Using
Domain-Specific Languages, dslbook.org, 2013
oder http://dslbook.squarespace.com
ergänzend: Martin Fowler, Domain Specific Languages, Addison-Wesley 2010
Inhaltliche Voraussetzungen:
Fundierte Programmierkenntnisse, beispielsweise erworben durch Bearbeitung der
Kurse 01618 oder 01814, sind unabdingbar. Außerdem sind gute
Engischkenntnisse unverzichtbar, da der Basistext in englischer Sprache verfasst ist.
Anmerkung:
Master of Science in Informatik
01.12.2015
Der Basistext muss vor Semesterbeginn beschafft werden.
Vergabe von Leistungspunkten (Modulabschluss):
Prüfung:
bestandene benotete mündliche Modulprüfung
Stellenwert Note:
1/9
Voraussetzung Anmeldung Prüfung: keine
oder
Leistungsnachweis (LN):
bestandene Kursabschlussklausur oder bestandenes
Klausurersatzgespräch
Voraussetzung Anmeldung LN: keine
Modulverantwortliche/r: Friedrich Steimann
Lehrende:
Friedrich Steimann
Master of Science in Informatik
01.12.2015