Hide last authors
Maximilian Kasperowski 17.3 1 The KIELER framework provides a VS Code extension that supports interactive diagrams for a variety of languages. Technologically this is realized using a language server that has been extended to support diagram generation and interaction. Diagrams can become rather large and at that point the server-client communication becomes a bottleneck for the responsiveness of updating diagrams. In [1] an initial prototype was developed to support incrementally sending a diagram in chunks from the server to the client, prioritized by the current location of the viewport. This drastically increases the speed of individual transmissions, but due to the additional overhead and extra request messages the total time to send a diagram can actually increase, which is not desired.
Maximilian Kasperowski 14.1 2
Maximilian Kasperowski 17.3 3 The current communication protocol is a very simple request-response pattern and the goal of this thesis would be to implement a better protocol (e.g. by utilizing pipelining) and evaluate the speeds that can be achieved using different approaches. The hierarchical structure of the graphs being sent and the viewport location provide ordering constraints that make this an interesting problem to solve.
Maximilian Kasperowski 14.1 4
Maximilian Kasperowski 17.3 5 This thesis involves three main components:
Maximilian Kasperowski 14.1 6
Maximilian Kasperowski 17.3 7 1. On the klighd-vscode client, diagram pieces must be requested, received and patched into the local graph model
8 1. The communication protocol may need to be updated with new messages and options and the protocol concept itself must be developed.
9 1. On the server-side in KLighD, requests must be handled appropriately and the diagram generation may need to be adapted.
Soeren Domroes 15.1 10
Maximilian Kasperowski 17.3 11 Because this topics builds upon previous work, the general infrastructure for all this is already in place and the goal is to really improve and evaluate the protocols and algorithms that are used.
Soeren Domroes 15.1 12
Alexander Schulz-Rosengarten 6.1 13 = Goals =
14
Maximilian Kasperowski 17.3 15 * Development and implementation of an improved incremental diagram generation utilizing concepts commonly used in other network protocols.
16 * Evaluating and comparing the diagram generation time of the classical approach (sending whole  diagram at once), the existing naive implementation, and any new approaches developed during the thesis.
Alexander Schulz-Rosengarten 6.1 17
Maximilian Kasperowski 5.1 18 = Scope =
19
Maximilian Kasperowski 17.3 20 Bachelor's Thesis
Maximilian Kasperowski 5.1 21
Maximilian Kasperowski 1.1 22 = Related Work/Literature =
23
Maximilian Kasperowski 17.3 24 [1] Maximilian Kasperowski, //A Top-Down Approach on Automatic Graph Visualization//, October 2021 ([[pdf>>url:https://rtsys.informatik.uni-kiel.de/~~biblio/downloads/theses/mka-mt.pdf]])
Maximilian Kasperowski 1.1 25
Alexander Schulz-Rosengarten 6.1 26 = Involved Languages/Technologies =
27
Maximilian Kasperowski 17.3 28 * Java / Xtend in KLighD
Maximilian Kasperowski 13.9 29 * Typescript in klighd-vscode
Soeren Domroes 15.1 30 * Sprotty
Alexander Schulz-Rosengarten 6.1 31
Maximilian Kasperowski 4.1 32 = Supervised by =
Maximilian Kasperowski 3.1 33
Maximilian Kasperowski 17.3 34 Maximilian Kasperowski
Alexander Schulz-Rosengarten 6.1 35
Maximilian Kasperowski 17.3 36 mka@informatik.uni-kiel.de