Changes for page Available Topics
Last modified by Niklas Rentz on 2025/03/13 09:21
Summary
-
Page properties (2 modified, 0 added, 0 removed)
-
Objects (1 modified, 0 added, 0 removed)
Details
- Page properties
-
- Author
-
... ... @@ -1,1 +1,1 @@ 1 -XWiki. uru1 +XWiki.ssm - Content
-
... ... @@ -30,11 +30,13 @@ 30 30 * **{{jira columns="key,summary,type,created,updated,due,assignee,reporter,priority,status,resolution" id="KIELER JIRA" serverId="2851bd34-0bf1-3f02-ab12-7d77ccab0fae" key="KIPRA-1031"}}KIPRA-1031{{/jira}}Layering Algorithms** (Bachelor, Master) 31 31 Implement an alternative algorithm for the layer assignment problem used in the layer-based approach to graph layout. The focus of the algorithm could the consideration of the number of edge crossings, a given aspect ratio, or overall compactness. 32 32 * **Combining Forces and Layers** (Master)** 33 -**Design and implement a layout algorithm that combines the force-based and the layer-based approaches. The first three phases of the layer-based approach shall be replaced by a node distribution computed with a force-based approach. \\33 +**Design and implement a layout algorithm that combines the force-based and the layer-based approaches. The first three phases of the layer-based approach shall be replaced by a node distribution computed with a force-based approach. 34 34 * **Node Placement With a Focus on Compactness** (Master) 35 35 Node placement algorithms often try to draw as many edges as straight lines as possible. However, that usually results in less compact diagrams. The focus of this topic would be to devise or adapt a node placement algorithm that tries to strike a balance between straightness and compactness. 36 36 * **Force Based Drawing with Port Constraints** (Master) 37 37 Develop methods for integrating port constraints in force-based drawing approaches. The resulting node placement shall be evaluated using an edge router such as [[libavoid>>url:http://www.adaptagrams.org/||shape="rect"]] on the model library of [[Ptolemy>>url:http://ptolemy.eecs.berkeley.edu/||shape="rect"]]. 38 +* **Interactive constraint creation and application in automatic layout **(Bachelor/Master) 39 +Evaluate options how to create constraints on the layout like "Node x should be placed at position y" and how to implement this in the current layout algorithms. 38 38 \\ 39 39 * **Compound Graph Layout** (Master) 40 40 Design and implement new concepts for computing layer-based layouts of compound graphs. The main focus shall be on //maintainability//: ensuring that the implementation can be kept working over the years. The main area to be considered here is the crossing minimization phase. ... ... @@ -42,8 +42,9 @@ 42 42 Implement and evaluate strategies for orthogonal edge bundling within our layer-based layout algorithm. 43 43 \\ 44 44 * **Integrate KIML with JGraph** (Bachelor) 45 -Provide automatic layout through KIML for the JGraph diagram library and develop a simple JGraph-based graph editor to test the integration with. 46 -{{jira showSummary="true" columns="key,summary,type,created,updated,due,assignee,reporter,priority,status,resolution" id="KIELER JIRA" serverId="2851bd34-0bf1-3f02-ab12-7d77ccab0fae" key="KIPRA-1214"}}KIPRA-1214{{/jira}} 47 +Provide automatic layout through KIML for the JGraph diagram library and develop a simple JGraph-based graph editor to test the integration with.\\ 48 +* **{{jira showSummary="true" columns="key,summary,type,created,updated,due,assignee,reporter,priority,status,resolution" id="KIELER JIRA" serverId="2851bd34-0bf1-3f02-ab12-7d77ccab0fae" key="KIPRA-1214"}}KIPRA-1214{{/jira}}Improve and Assess KLay Layered's JUnit Test Environment** 49 +We maintain a variety of JUnit tests to assure our layout algorithm works properly. The environment to execute these tests grew over time and requires a face-lift. The task is to evaluate existing testing frameworks of other projects, find a clean and efficient way to specify and maintain our tests, and update the current implementation. 47 47 \\ 48 48 49 49 = Modeling Pragmatics = ... ... @@ -55,36 +55,26 @@ 55 55 * **Compound Graph Exploration** (Bachelor, Master) 56 56 A new graph exploration approach should be examined which is uses different zoom levels for different compound nodes. This tries to map the "Google Maps approach" of only showing the information of interest at any given zoom level to the field of graph exploration. 57 57 58 -= Semantics andSynchronous Languages =61 += Semantics, Synchronous Languages and Model-based Design = 59 59 60 60 **Advisors:** Christian Motika, Steven Smyth, Reinhard v. Hanxleden 61 61 62 - DieProgrammierspracheEsterelbesitztein synchronesAusführungsmodell. Dies bedeutet, dassderStatus gesendeterSignalekonzeptionell sofortin anderen nebenläufigenProgrammteilen wirksam wird. Um nun nichtim KontrollflussInkonstistenzen zuerzeugen ist dieReihenfolge der Signal-Sendungund-Auswertungchtig: Esmüssen immerrstpotentielle Signal-Sendungen ausgeführtwerden,bevorder Signal-Status ausgewertetwerdenkann. Die CompilationvonEsterel Programmen mussalso Signal-Abhängigkeiten berücksichtigen. LässtsichausrukturellenGründenin einem Programm einesolcheAusführungs-Reihenfolge nicht herstellen, so muss das Programm als ungültig abgelehntwerden.Führen zyklischeAbhängigkeitendazu, dassdieReihenfolgen von Signal-Aussendungenund -Auswertungennichtstatischbei der Compilation,sondernerstdynamischzurLaufzeit aufgelöstwerdenkönnen,so führtdiesi.A.ebenfallszueinerAblehnungdes Programmes, da dies einaufwendigesineffizientes Laufzeitsystem erfordern würde.65 +Heute haben sich eine ganze Reihe von Modellierungssprachen durchgesetzt, die grafische Modelle verwenden. Dazu zählen beispielsweise die [[Unified Modeling Language (UML) >>url:http://de.wikipedia.org/wiki/UML||shape="rect" class="external-link"]]oder die Werkzeugketten [[Simulink/Stateflow von Mathworks >>url:http://de.wikipedia.org/wiki/Simulink||shape="rect" class="external-link"]]und [[SCADE von Esterel-Technologies>>url:http://en.wikipedia.org/wiki/SCADE||shape="rect" class="external-link"]]. Letztere werden insbesondere auch im Entwurf eingebetteter und sicherheitskritischer Systeme (z.B. in Fahr- und Flugzeugen) eingesetzt. 63 63 64 -Am Lehrstuhl ist nun ein Verfahren entwickelt worden, um solche zyklischen Abhängigkeiten in Esterel-Programmen aufzulösen. Hierzu wird die Struktur des Programmes in Teilen transformiert, die Funktion des Programmes bleibt jedoch erhalten. 67 +(% class="external-link" %) 68 +Wer bereits mit diesen Werkzeugen gearbeitet hat, kennt aber auch die Schwächen dieses Prozesses: Während die grafische Visualisierung hilfreich bei der Analyse des Systems sein kann, ist die Erstellung eines grafischen Modells meist sehr Zeitaufwändig. In den bisher meist vorherrschenden [[WYSIWYG >>url:http://de.wikipedia.org/wiki/WYSIWYG||shape="rect" class="external-link"]]Editoren müssen sich die Entwickler selbst um niedrige Tätigkeiten verdient machen, die mit dem eigentlichen System nichts zu tun haben: Zeichnen, Positionieren und Navigieren in einem grafischen Modell sind häufig die zeitraubendsten Schritte bei diesem Prozess. Das KIEL Projekt hat bereits für SyncCharts Modelle eindrucksvoll bewiesen, dass automatisches Layout von grafischen Modellen eine Vielzahl von neuen Möglichkeiten im modellbasierten Prozess ermöglicht. 65 65 66 -I ndiesemKontext sindThemenstellungen fürBachelor-/Master-/Diplom-undStudienarbeitenbeispielhaftannt:70 +Im KIELER Projekt wird dieser Ansatz verallgemeinert und auch für andere Sprachen umgesetzt. Das Projekt wird mit innovativen state-of-the-art Techniken des Software-Entwurfs entwickelt und bietet daher den Entwicklern Einblick in einen hoffentlich interessanten Entwicklungsprozess. Dies beinhaltet vor allem die Plug-in Entwicklung für die [[Eclipse >>url:http://de.wikipedia.org/wiki/Eclipse_%28IDE%29||shape="rect" class="external-link"]]Plattform und die Arbeit im Team, zu deren Unterstützung Projektmanagement-Werkzeuge wie dieses Conflunce Wiki eingesetzt werden. 67 67 68 -* **Optimierung der Transformation:** 69 -Bei Nachweis gewisser Eigenschaften eines Esterel-Programmes lassen sich vereinfachte Transformationsregeln anstelle der allgemeinen Lösung anwenden. Dies ermöglicht dann eine effizientere Transformation. Aufgabe ist es nun, solche Vereinfachungen zu erstellen und zu definieren, welche Eigenschaften Esterel-Programme haben müssen, damit diese Vereinfachungen zulässig sind. Die Überprüfung dieser Eigenschaften sollte dann in den Transformationsalgorithmus integriert werden. 70 -* **Optimierung von Esterel-Programmen nach der Transformation:** 71 -Die Transformation produziert in der jetzigen Form viel redundanten Code. Dies umfasst beispielsweise neu eingeführte Signale, die emittiert aber nie ausgewertet werden, Signal-Ausdrücke die ein konstantes Ergebnis haben oder Code der nicht erreichbar ist. Ziel dieser Aufgabe ist es nun, solche Redundanzen in einem Esterel-Programm zu erkennen und zu entfernen. Dies muss dabei nicht zwangläufig auf von der Transformation produzierte Programme beschränkt sein. 72 -* **Erweiterung des Esterel-Compilers zur Sichtbarmachung des Programmzustandes:** 73 -Bei der Ausführung eines compilierten Esterel-Programmes wird der Zustand der Ausführung in Variablen (bzw. Registern) gehalten. Diese Variablen sind aber aus dem Esterel-Programm heraus nicht verfügbar. Der Ausführungszustand des Programmes wird aber bei der Auflösung zyklischer Abhängigkeiten benötigt. Anstatt nun wie bisher zusätzliche Zustandssignale einzuführen, könnten auch die internen Zustandsvariablen sichtbar gemacht werden. Hierzu ist eine Erweiterung des Esterel-Compilers nötig. 74 -* **Erweiterung der Transformation um non-Kernel Statements, valued Signals:** 75 -Die Transformation zyklischer Abhängigkeiten in Esterel-Programmen ist in der bisherigen Lösung auf die Kernel-Befehle von Esterel beschränkt. Befehle die im Kernel nicht enthalten sind, müssen erst in Kernel-Befehle expandiert werden. Eine Erweiterung auf den erweiterten Befehlssatz würde die Effizienz der Transformation verbessern. Weiterhin ist die Transformation bisher nur auf pure-Signals beschränkt. Es fehlt noch eine Berücksichtigung von valued-Signals. 76 -* **Anwendung auf Lustre:** 77 -Die Datenfluss-Sprache Lustre basiert ebenfalls wie Esterel auf einem synchronen Ausführungsmodell. Daher sind auch Lustre-Programme anfällig für zyklische Abhängigkeiten. Idee ist nun, die Prinzipien der Transformation konstruktiver zyklischer Esterel-Programme auf zyklische Lustre-Programme anzuwenden 78 -\\ 72 +Im Rahmen dieses Projektes gibt es Raum für zahlreiche Arbeiten mit übersichtlichem Umfang, die einen schönen (aber in sich abgeschlossenen) Beitrag zur Verbesserung der Handhabbarkeit vom modellbasierten Entwurf leisten können. 73 + 74 +In diesem Kontext sind Themenstellungen für Bachelor-/Master-/Diplom- und Studienarbeiten beispielhaft genannt. Bei Fragen oder sprechen Sie einen Betreuer bitte direkt an: 75 + 79 79 * **Automatic documentation generation for model-based languages **(Bachelor) 80 80 Develop an automatic SCCharts documentation & comment system 81 81 * **On the usability of the KIELER SCCharts compiler** (Bachelor) 82 82 Evaluate the actual implementation of the KIELER SCCharts compiler and provide suggestions for improvements, i.e. the usability as standalone (commandline) compiler 83 -\\ 84 -* **Validation Manager for Models **(Bachelor/Master) 85 -Develop an integrated, flexible and generic syntactic validation framework for models (e.g. Esterel or SyncCharts). 86 -* **SCCharts compiler validation with Esterel **(Bachelor/Master) 87 -Automate the validation of the SCCharts compiler using the Esterel simulation. 80 +\\\\ 88 88 * **Transformation from SCCharts to Esterel** (Bachelor/Master) 89 89 Develop a transformation in Xtend2 to generate Esterel code for SCCharts. 90 90 * **Hardware Synthesis from SCCharts to FPGA **(Bachelor/Master) ... ... @@ -93,11 +93,11 @@ 93 93 Profile the actual SCCharts compiler and apply optimizations; also evaluate the possibility to use multiple cores for compilation 94 94 * **Optimization of the SCCharts transformations** (Bachelor/Master) 95 95 Profile the actual SCCharts transformations and apply optimizations 96 -* **On the pragmatics of model ling large models in SCCharts** (Bachelor/Master)89 +* **On the pragmatics of modeling large models in SCCharts** (Bachelor/Master) 97 97 Evaluate the possibilities to create and maintain large models in model-based languages (i.e. SCCharts) and provide suggestions for improvements 98 98 * **Extend the SC MoC to handle priority-based variable accesses** (Bachelor/Master) 99 99 Add priorities to variable accesses to extend the SC MoC and therefore the number of valid sequentially constructive synchronous programs. 100 -\\ 93 +\\\\ 101 101 * **Detecting tick boundaries in SCCharts **(Master/Bachelor) 102 102 Implement an algorithm that detects tick boundaries (in concurrent) threads and therefore improves the scheduling 103 103 * **Efficient data dependency analyses in SCCharts** (Master/Bachelor) ... ... @@ -106,7 +106,7 @@ 106 106 Develop a reliable evaluation environment to compare common synchronous languages (i.e. Esterel/SyncCharts & SCCharts) 107 107 * **Raceyard evaluation** (Master/Bachelor) 108 108 Evaluate the possibility for the use of SCCharts in the Raceyard context and pave the way for future experiments 109 -\\ 102 +\\\\ 110 110 * **Quartz **(Master) 111 111 Integrate the synchronous Quartz language into KIELER for validation purposes and teaching. 112 112 * **Implementation of a priority-based compilation approach **(Master) ... ... @@ -113,6 +113,8 @@ 113 113 Implement the SyncCharts priority-based compilation approach into the SCCharts compiler chain. 114 114 * **Curing Schizophrenia in SCCharts **(Master) 115 115 Develop new synchronizer to handle schizophrenia properly (e.g. depth join). 109 +* **Hybrid Models for Legacy Code Extraction** 110 +Extract legacy code (e.g. legacy C code) to (SCCharts) Hybrid Models. 116 116 117 117 = PRETSY / PRETSY2 = 118 118 ... ... @@ -127,19 +127,6 @@ 127 127 * **Real-time extensions for SCCharts** (Bachelor/Master) 128 128 Make the timing instructions //delay_until// und //exception_on_expire// of the [[FlexPRET>>url:http://rtsys.informatik.uni-kiel.de/confluence/Multithreaded/Multicore execution of SCCharts Evaluate possibilities to preserve parallelism in SCCharts, implement mapping for (fine grained) multithreading and multicore based on the FlexPRET||shape="rect"]] processor available in SCCharts. 129 129 130 -= Model-based Design = 131 - 132 -**Betreuung**: Christian Motika 133 - 134 -Heute haben sich eine ganze Reihe von Modellierungssprachen durchgesetzt, die grafische Modelle verwenden. Dazu zählen beispielsweise die [[Unified Modeling Language (UML) >>url:http://de.wikipedia.org/wiki/UML||shape="rect" class="external-link"]]oder die Werkzeugketten [[Simulink/Stateflow von Mathworks >>url:http://de.wikipedia.org/wiki/Simulink||shape="rect" class="external-link"]]und [[SCADE von Esterel-Technologies>>url:http://en.wikipedia.org/wiki/SCADE||shape="rect" class="external-link"]]. Letztere werden insbesondere auch im Entwurf eingebetteter und sicherheitskritischer Systeme (z.B. in Fahr- und Flugzeugen) eingesetzt. 135 - 136 -(% class="external-link" %) 137 -Wer bereits mit diesen Werkzeugen gearbeitet hat, kennt aber auch die Schwächen dieses Prozesses: Während die grafische Visualisierung hilfreich bei der Analyse des Systems sein kann, ist die Erstellung eines grafischen Modells meist sehr Zeitaufwändig. In den bisher meist vorherrschenden [[WYSIWYG >>url:http://de.wikipedia.org/wiki/WYSIWYG||shape="rect" class="external-link"]]Editoren müssen sich die Entwickler selbst um niedrige Tätigkeiten verdient machen, die mit dem eigentlichen System nichts zu tun haben: Zeichnen, Positionieren und Navigieren in einem grafischen Modell sind häufig die zeitraubendsten Schritte bei diesem Prozess. Das KIEL Projekt hat bereits für SyncCharts Modelle eindrucksvoll bewiesen, dass automatisches Layout von grafischen Modellen eine Vielzahl von neuen Möglichkeiten im modellbasierten Prozess ermöglicht. 138 - 139 -Im KIELER Projekt wird dieser Ansatz verallgemeinert und auch für andere Sprachen umgesetzt. Das Projekt wird mit innovativen state-of-the-art Techniken des Software-Entwurfs entwickelt und bietet daher den Entwicklern Einblick in einen hoffentlich interessanten Entwicklungsprozess. Dies beinhaltet vor allem die Plug-in Entwicklung für die [[Eclipse >>url:http://de.wikipedia.org/wiki/Eclipse_%28IDE%29||shape="rect" class="external-link"]]Plattform und die Arbeit im Team, zu deren Unterstützung Projektmanagement-Werkzeuge wie dieses Conflunce Wiki eingesetzt werden. 140 - 141 -Im Rahmen dieses Projektes gibt es Raum für zahlreiche Arbeiten mit übersichtlichem Umfang, die einen schönen (aber in sich abgeschlossenen) Beitrag zur Verbesserung der Handhabbarkeit vom modellbasierten Entwurf leisten können. Für konkrete Themen schauen Sie in das KIELER Wiki oder sprechen Sie einen der Betreuer bitte direkt an. 142 - 143 143 = (% style="color: rgb(0,0,0);" %)Miscellaneous Topics(%%) = 144 144 145 145 **Advisors:** to be determined.
- Confluence.Code.ConfluencePageClass[0]
-
- Id
-
... ... @@ -1,1 +1,1 @@ 1 -10 7520071 +13009004 - URL
-
... ... @@ -1,1 +1,1 @@ 1 -https://rtsys.informatik.uni-kiel.de/confluence//wiki/spaces/RTSYS/pages/10 752007/Topics for Student Theses1 +https://rtsys.informatik.uni-kiel.de/confluence//wiki/spaces/RTSYS/pages/13009004/Topics for Student Theses