Modulhandbuch MaTIN2012_Compilerbau und Domänenspezifische Sprachen


Verantwortlich: Prof. Dr. Wörzberger

Modul

Anerkennbare Lehrveranstaltung (LV)

Organisation

Bezeichnung
Lang MaTIN2012_Compilerbau und Domänenspezifische Sprachen
MID MaTIN2012_CBDSL
MPID
Zuordnung
Studiengang MaTIN2012
Studienrichtung G
Wissensgebiete WPTI, WPP
Einordnung ins Curriculum
Fachsemester 1-2
Pflicht
Wahl G
Version
erstellt 2018-04-24
VID 1
gültig ab WS 2012/13
gültig bis

Zeugnistext

de
Compilerbau und Domänenspezifische Sprachen
en
Compiler Construction and Domain-Specific Languages

Unterrichtssprache

Deutsch, 0…100%Englisch, 0…100%

Modulprüfung

Form der Modulprüfung
sMP Regelfall (bei großer Prüfungszahl: sK)

Beiträge ECTS-CP aus Wissensgebieten
WPTI, WPP 5
Summe 5

Aufwand [h]: 150


Prüfungselemente

Vorlesung / Übung

Form Kompetenznachweis
bÜA Präsenzübung und Selbstlernaufgaben

Beitrag zum Modulergebnis
bÜA unbenotet

Spezifische Lernziele

Kenntnisse
  • Theoretische Grundlagen (PFK.2)
    • relevante Sprachklassen
    • Turing-Vollständigkeit von Sprachen
  • Compilerbau (PFK.2, PFK.3)
    • Analysephase
      • Lexikalische Analyse
      • Syntaktische Analyse
      • Semantische Analyse
    • Synthesephase
      • Zwischencodeerzeugung
      • Programmoptimierung
      • Codegenerierung
    • Programmanalyse und Korrektheit
  • Domänenspezifische Sprachen (PFK.2, PFK.3, PFK.4)
    • Modellgetriebene Softwareentwicklung
    • interne/eingebettete DSL
    • externe DSL
    • Sprachentwurf
    • Entwurfsmuster für die Implementation
Fertigkeiten
  • Die Studierenden können Theorie und Methoden aus dem Bereich des Übersetzerbaus wiedergeben und z.B. Grammatiken zu einer informell vorgegebenen Sprache definieren.(PFK.2, PFK.3, PFK.4, PFK.5).
  • Domänenspezifische Sprachen dienen als formale Kommunikationsschnittstelle zwischen IT- und Domänenexperten. Die Studierenden können auf Basis vorhandener Anforderungen neue domänenspezifische Sprachen definieren oder bestehende Sprachen analysieren und erweitern (PFK.2, PFK.3, PFK.4, PSK.1)
  • Sie wenden bei der Sprachdefinition Modellierungs-Kenntnisse des Software-Engineerings an und treffen damit wichtige Designentscheidungen für neue domänenspezifische Sprachen (PFK.3, PFK.4, PFK.5, PSK.1).
  • Die Studierenden verstehen, wie aus definierten domänenspezifischen Sprachen zugehörige Werkzeuge (z.B. Parser und Editoren) generiert werden (PFK.2, PFK.3).
  • Sie verstehen, wie Ausdrücke einer domänenspezifschen Sprache weiterverarbeitet werden können (PFK.2, PFK.3, PFK.4).

Exemplarische inhaltliche Operationalisierung

Die Studierenden erwerben Wissen zum Design und zur Implementation domänenspezifischer Sprachen. Sie werden z.B. befähigt mit dem Framework Xtext kleinere domänenspezifische Sprachen zu definieren und daraus Workbenches zu erstellen, die Domänenexperten dazu in die Lage versetzen, konfigurative Änderungen an IT-Systemen vorzunehmen zu können (PFK.1, PFK.2, PFK.3, PFK.4, PFK.5).

Praktikum

Form Kompetenznachweis
bPA Entwicklung von (wiederverwendbaren) Softwarefragmenten
sMB Ergebnispräsentationen zu bPA; Voraussetzung für die Teilnahme an sMP

Beitrag zum Modulergebnis
bPA Testat oder benotet, 0…50%
sMB zu bPA

Spezifische Lernziele

Fertigkeiten
  • Kennenlernen wichtiger Grundwerkzeuge aus dem Bereich der Compileranwendung (PFK.2, PFK.3)
  • Einsetzen von Scanner- und Parsergeneratoren auf gegebene Problemstellungen (PFK.4)
  • umfangreichere DSLs entwerfen, implementieren und prüfen (PFK.2, PFK.3, PFK.4, PFK.5, PFK.6)
  • Kurzvortrag über ein aktuelles wissenschaftliches Paper im Kontext der Lehrveranstaltung (PFK.7, PSK.1, PSK.3)
Handlungskompetenz demonstrieren
  • (PFK.4, PFK.5, PSK.1, PSK.2)
    • Ableitung von Modellen aus natürlichsprachigen Aufgaben
    • Auswahl geeigneter Lösungsverfahren
    • Bewertung von Lösungen

Exemplarische inhaltliche Operationalisierung

Die Studierenden erheben zu einer gegebenen Anwendungsdomäne Anforderungen an eine domänenspezifische Sprache, die sie im Anschluss (ggf. arbeitsteilig in Teams) formal definieren und umsetzen (PFK.3, PFK.4, PFK.5, PFK.6, PFK.7, PSK.1, PSK.2).

Diese Seite läuft auf FoswikiDas Urheberrecht © liegt bei den mitwirkenden Autoren. Alle Inhalte dieser Kollaborations-Plattform sind Eigentum der Autoren.
Ideen, Anfragen oder Probleme bezüglich Foswiki? Feedback senden