Der Sinn dieses Seminars ist es, sich mit einem Themengebiet aus dem Bereich der synchronen Sprachen und angrenzenden Themen intensiv und selbständig wissenschaftlich auseinanderzusetzen. Das Thema ist in einem mündlichen Vortrag und einer schriftlichen Ausarbeitung zusammenzufassen. Ein weiterer Sinn dieses Seminars ist es, das Arbeiten in strukturierten zeitlichen Abläufen zu praktizieren, wie es z.B. für Workshops/Tagungen üblich ist. Beide Aspekte sind erfahrungsgemäß eine gute Vorbereitung auf die Anfertigung einer Abschlussarbeit.

Dieses Seminar wird in zwei Varianten angeboten, als Bachelor-Modul und als Master-Modul. Im Vergleich zum Bachelorseminar erwartet das Masterseminar eine größere Einbeziehung von verwandten Arbeiten, und dementsprechend eine umfangreichere Ausarbeitung und Präsentation (siehe unten).

Voraussetzungen

Das Seminar baut auf Inhalten aus der Vorlesung "Synchrone Sprachen" auf. Seminarteilnehmern, welche diese Vorlesung noch nicht gehört haben, wird als Einstieg folgendes Überblickspapier empfohlen, zumindest hiervon die Abschnitte I und II:

Benveniste, A.; Caspi, P.; Edwards, S.A.; Halbwachs, N.; Le Guernic, P.; de Simone, R., "The synchronous languages 12 years later," Proceedings of the IEEE , vol.91, no.1, pp.64,83, Jan 2003 (pdf).


Wir empfehlen zudem den Besuch der Blockveranstaltung Wissenschaftliches Arbeiten für Seminar und Abschlussarbeiten von Frau Peters.

Dozenten

Reinhard von Hanxleden (rvh@informatik.uni-kiel.de) 
Alexander Schulz-Rosengarten (als@informatik.uni-kiel.de)

Themen

Zur Verfügung stehen die folgenden Paper. Sie sind grob in Master- und Bachelor-Themen eingeteilt, anhand von Umfang, Komplexität und benötigtem Vorwissen. Dies soll aber nicht davon abhalten bei überwältigendem Interesse auch als Bachelor ein Master-Thema zu bearbeiten.

Die aktuelle Auswahl ist vorläufig! Die Themen können bereits gewählt werden, aber bis zum Beginn des Semesters wird die Liste ggf. noch erweitert.
Die Paper werden first-come-first-serve vergeben. Ist ein Paper schon an jemanden vergeben vermerken wir das hier.

Viele der Links werden nur aus dem Netz der Uni Kiel heraus funktionieren. Bei Problemen einfach Bescheid sagen.

Bachelor Empfehlung

D. Li, Z. Zhai, Z. Pang, V. Vyatkin and C. Liu, Synchronous-reactive Semantic Modelling and Verification for Function Block Networks, in IEEE Transactions on Industrial Informatics

Friedrich Gretz, Franz-Josef Grosch, Blech, Imperative Synchronous Programming!, 2018 Forum on Specification & Design Languages (FDL 2018)

Jean-Louis Colaço, Bruno Pagano, Cédric Pasteur, Marc Pouzet, Scade 6: From a Kahn Semantics to a Kahn Implementation for Multicore, 2018 Forum on Specification & Design Languages (FDL 2018)

Alexander Schulz-Rosengarten, Reinhard von Hanxleden, Frédéric Mallet, Robert de Simone, Julien DeAntoni, Time in SCCharts, 2018 Forum on Specification & Design Languages (FDL 2018)

Francisco Sant' Anna, Roberto Ierusalimschy, and Noemi Rodriguez. 2015. Structured synchronous reactive programming with Céu. In Proceedings of the 14th International Conference on Modularity (MODULARITY 2015).

A. Graillat, M. Moy, P. Raymond and B. D. de Dinechin, Parallel code generation of synchronous programs for a many-core architecture, 2018 Design, Automation & Test in Europe Conference & Exhibition (DATE)

Colin Vidal, Gérard Berry, Manuel Serrano. Hiphop.js: a language to orchestrate web applica-tions. SAC: Symposium on Applied Computing, Apr 2018

Martin Leucker, César Sánchez, Torben Scheffel, Malte Schmitz, and Alexander Schramm. 2018. TeSSLa: runtime verification of non-synchronized real-time streams. In Proceedings of the 33rd Annual ACM Symposium on Applied Computing (SAC '18)

Heinzcmann, C., & Lange, R. vTSL-A Formally Verifiable DSL for Specifying Robot Tasks. In 2018 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS)

Master Empfehlung

Srinivas Pinisetty, Partha S. Roop, Steven Smyth, Stavros Tripakis and Reinhard von Hanxleden. Runtime enforcement of reactive systems using synchronous enforcers. In CoRR, vol. abs/1612.05030, 2016.

Bourke T., Colaço JL., Pagano B., Pasteur C., Pouzet M. (2015) A Synchronous-Based Code Generator for Explicit Hybrid Systems Languages. In: Franke B. (eds) Compiler Construction. CC 2015. Lecture Notes in Computer Science, vol 9031. Springer, Berlin, Heidelberg

Guillaume Baudart, Timothy Bourke, and Marc Pouzet. Soundness of the Quasi-Synchronous Abstraction. In International Conference on Formal Methods in Computer-Aided Design (FMCAD), Mountain View, California, USA, October, 3-6 2016

Brandt, J.; Schneider, K.; Passive code in synchronous programs, ACM Transactions on Embedded Computing Systems (TECS), Special Section, vol. 13 issue 2s, Jan2014, article No. 67.

Gamatié, A.; Gonnord, L., Static analysis of synchronous programs in signal for efficient design of multi-clocked embedded systems, Conference on Languages, Compilers and Tools for Embedded Systems (ACM SIGPLAN/SIGBED), LCTES 2011:71-80.

Partha S. Roop, Hammond A. Pearce, Keyan Monadjem, Synchronous neural networks for cyber-physical systems, 2018 16th ACM/IEEE International Conference on Formal Methods and Models for System Design (MEMOCODE)

Joaquín Aguado, Michael Mendler, Marc Pouzet, Partha S. Roop, Reinhard von Hanxleden, Deterministic Concurrency: A Clock-Synchronised Shared Memory Approach, Programming Languages and Systems - 27th European Symposium on Programming, ESOP 2018

Claire Pagetti, Julien Forget, Heiko Falk, Dominic Oehlert, and Arno Luppold. 2018. Automated generation of time-predictable executables on multicore. In Proceedings of the 26th International Conference on Real-Time Networks and Systems (RTNS '18)

Talpin, J.-P; Brandt, J.; Gemünde, M.; Schneider, M.; Shukla, S., Constructive Polychronous Systems, Logical Foundations of Computer Science. vol. 7734, 2013.

Spencer P. Florence, Shu-Hung You, Jesse A. Tov, and Robert Bruce Findler. 2019. A Calculus for Esterel: “If can, can. If no can, no can.” —Hawaiian pidgin proverb. Proc. ACM Program. Lang.3, POPL,Article 61 (January 2019),


Termine (Vorläufig)

DatumMeilenstein
Mi, 10.04.Ende der Frist für die Themenauswahl (per Email an Alexander)
Mi, 10.04., 9:45 UhrVorbesprechung/Kick-Off, Latex/EasyChair Kurzeinführung, CAP 4, R. 1115
Di, 30.04., 8:00 UhrAbgabe Ausarbeitungsgerüst in EasyChair. Dies umfasst einen ersten Abstract und eine Einleitung, sowie eine Gliederung mit Stichworten zum Inhalt der Kapitel. Weiterhin auch eine Bibliographie Liste zur Übersicht über verwandte Arbeiten.
anschließendIndividualtermine, CAP 4, R. 1113
Di, 21.05., 8:00 UhrAbgabe der Erstversion der vollständigen Ausarbeitung (Submission-Update in EasyChair)
anschließendIndividualtermine, CAP 4, R. 1113
Di, 04.06., 8:00 UhrAbgabe der Review-Version der Ausarbeitung (Submission-Update in EasyChair)
anschließendZuordnung Ausarbeitungen/Reviewer (per Email)
Di, 11.06., 8:00 UhrAbgabe der Reviews (in EasyChair)
tbaevtl. Vortrag zur Gestaltung einer guten Präsentation
Di, 25.06., 8:00 UhrAbgabe der Vortragsfolien und Handoutfolien (siehe Hinweise unten)
anschließendIndividualtermine, CAP 4, R. 1113
tbaAbgabe der Endversionen der Vortragsfolien, Handouts und Ausarbeitungen, Anschließend Druck der Proceedings (inkl. Ausarbeitungen und Handoutfolien)
tbaGanztägiges Blockseminar mit Vorträgen

Agenda des Blockseminars

Die Vorstellung des jeweils bearbeiteten Themas wird im Rahmen eines Blockseminars stattfinden. Die Teilnahme an beiden Seminartagen ist Pflicht.

ZeitTagesordnungspunkt
tbatba

Ausarbeitung, Vortrag, Review

Das Seminar umfasst die Erstellung einer Ausarbeitung, eines Vortrags, und zweier Reviews.

Ausarbeitung

Die Ausarbeitung soll eine Übersicht über das behandelte Themengebiet darstellen. Sie sollte so verfasst sein, dass sie von einer fortgeschrittenen Bachelor-Informatik-Person gut verstanden werden kann. Die Ausarbeitung soll 6 (Master) bzw. 4 (Bachelor) Seiten umfassen, nicht mehr und nicht weniger, und den ACM LaTeX-Style verwenden (dazu mehr Details weiter unten). Für mögliche Vorlagen zu den Ausarbeitungen siehe die Proceedings der früheren Seminare, die Sie bei uns am Lehrstuhl einsehen können. Auch empfehlenswert ist ein Blick in die Hinweise für die Anfertigung einer Abschlussarbeit.

Vortrag

Der Vortrag soll 40 Minuten (Master) bzw. 25 Minuten (Bachelor) lang sein, woran sich 5 Minuten Zeit für Fragen anschließen. Zu dem Vortrag sollen Folien erstellt werden. Die Vortragsfolien sollten Seitennummern enthalten. Sollte das Thema auch eine konkrete Implementierung behandeln, ist eine entsprechende kurze Tool-Demo im Rahmen des Vortrages großartig. Die Arbeitsgruppe bietet jeder vortragenden Person an, eine Videoaufnahme des Vortrags zu erstellen und zur Verfügung zu stellen.

Review

Ein Review einer Ausarbeitung besteht aus folgenden zwei Komponenten:

  1. Generelle Anmerkungen (was gefällt Ihnen / gefällt Ihnen nicht zu Inhalt, Gliederung und Lesbarkeit) sowie generelle Verbesserungsvorschläge
  2. Detailliertere Korrekturen

Die Zuordnung von Papern zu Reviewenden geschieht kurzfristig nach dem Abgabetermin für die Review-Versionen der Ausarbeitungen, basierend auf den dann abgegebenen Ausarbeitungen.

Jede teilnehmende Person erhält die Proceedings des laufenden Seminars.

Benotung

Das Seminar ist benotet. Die Endnote basiert auf den einzelnen Meilensteinen (Versionen der Ausarbeitung, Reviews, Folien, Vortrag). Es werden jeweils die Qualität sowie die Rechtzeitigkeit (siehe Terminplanung) bewertet. Das Nicht-Einhalten von Terminen kann zum Nicht-Bestehen des Seminars führen.


Technische Details

LaTeX

Ihre Ausarbeitungen sind mit Hilfe von LaTeX zu verfassen und müssen den Stil der ACM benutzen. In dieser ZIP-Datei finden Sie alle benötigten Dateien dafür, inklusive eines Beispiel-Dokuments, welches hilfreiche LaTeX-Tips für den Anfang enthält. Kopieren Sie die Dateien in ein beliebiges Verzeichnis und fangen Sie an, Ihre Ausarbeitung zu schreiben.

Für die Bibliographie (enthält wissenschaftliche Publikationen, die referenziert werden, um Quellen zu belegen) bietet LaTeX ebenfalls Lösungen. Im Beispiel finden Sie eine Datei namens myrefs.bib, in welche Referenzen ausgelagert wurden. Die ACM bietet eine kurze Übersicht mit Beispielen zum Schreiben von Bibliographie-Einträgen.

Beachten Sie beim Verfassen Ihrer Ausarbeitung insbesondere folgende Punkte:

EasyChair Tutorial

Unser Seminar findet ihr im EasyChair-System hier.



Weiterführende Hinweise / Links

Generell ist es empfehlenswert, aus dem Uni-Netz heraus nach verwandten Publikationen zu suchen, da man hier Zugriff auf einige Online-Blbliotheken bekommt. Zur Suche empfehlen sich folgende Suchmaschinen und Seiten:


555
610
410
547
983
150
329