Software Language Engineering (Sommersemester 2020)
Dozent:
Prof. Dr. Holger Giese
(Systemanalyse und Modellierung)
,
Matthias Barkowsky
(Systemanalyse und Modellierung)
Allgemeine Information
- Semesterwochenstunden: 4
- ECTS: 6
- Benotet:
Ja
- Einschreibefrist: 06.04.2020 - 22.04.2020
- Lehrform: Vorlesung / Projekt
- Belegungsart: Wahlpflichtmodul
- Lehrsprache: Deutsch
Studiengänge, Modulgruppen & Module
- SAMT: Software Architecture & Modeling Technology
- SAMT: Software Architecture & Modeling Technology
Beschreibung
Die Entwicklung der Informatik ist geprägt durch die Entwicklung von Sprachen für die Beschreibung von Software. Dies spiegelt sich heutzutage in Programmiersprachen, domänenspezifischen Sprachen wie z.B. SQL oder auch Modellierungssprachen wie z.B. UML wider. Alle diese Ansätze erlauben es, die Lösung auf einem höheren Abstraktionsniveau zu beschreiben. Viele der dadurch notwendigen Konkretisierungsschritte bei der Softwareentwicklung können automatisiert werden. Dies ermöglicht häufig eine Reduktion der Entwicklungszeit, eine Kostensenkung durch die generative Erzeugung von weiten Teilen der Anwendung sowie vereinfachte Wiederverwendung. Außerdem kann die resultierende Software-Qualität erhöht werden.
Diese Vorlesung betrachtet den Stand der Technik für Software Sprachen bzgl. der Definition der Sprachen, Verarbeitung der Sprache für automatisierte Schritte und die Ausführung der Sprachen durch Compilierung und/oder Interpretation. Neben dem Bau von Compilern und Interpretern werden dabei auch domänenspezifische Sprachen (domain-specific languages (DSL)) und die modellgetriebene Softwareentwicklung (model-driven software engineering (MDSE)) betrachtet. Dabei werden die den verschiedenen Ansätzen zugrundeliegenden Konzepten und Techniken eingeführt und in einem Projekt praktisch erprobt.
Voraussetzungen
Grundlagenwissen zu Programmiersprachen, wie durch die Lehrveranstaltungen Einführung in die Programmiertechnik I und II vermittelt, und Modellierung von Software, wie durch die Lehrveranstaltungen Modellierung I und II oder Modellierungssprachen und Formalismen vermittelt, wird vorausgesetzt.
Literatur
Die Folien zur Vorlesung wie auch eine Literaturliste werden im internen Bereich zur Verfügung gestellt.
Lern- und Lehrformen
Die Vorlesung wird begleitet von einem Projekt, das die Bearbeitung von einführenden Übungsaufgaben beinhaltet.
Ankündigung bzgl. COVID-19
Wegen der COVID-19 Pandemie werden wir alle Termine anfangs als Online-Termine gestalten und später auf Präsenztermine umstellen, wenn dies die Umstände erlauben und dies Konsens bei allen Beteiligten ist.
Leistungserfassung
Die Leistungserfassung erfolgt durch ein Projekt, das während des Semesters zu bearbeiten ist, sowie eine mündliche Prüfung am Ende des Semesters. Die Endnote ergibt sich aus dem gewichteten Durchschnitt beider Teile. Die Projektnote wird dabei zu 1/3, die Prüfungsnote zu 2/3 gewichtet. Das Bearbeiten des Projekts ist Zulassungsvoraussetzung zur mündlichen Prüfung. Das Projekt beinhaltet eine Einführungsphase, in der zunächst einige Übungsaufgaben bearbeitet werden.
Termine
Vorlesungstermine:
- Montag, 13:30 - 15:00
- Dienstag, 11:00 - 12:30
Die erste Vorlesung findet am Mo. den 27.4 um 13:30 Uhr statt und wird per Zoom abgehalten. Bei Interesse bitte entsprechend über das Studeinreferat registrieren und eine Email an "Barkowsky, Matthias" <Matthias.Barkowsky@hpi.de> schicken.
Zurück