Framework zur Visualisierung von Algorithmen+Datenstrukturen

Trentini, Murièle and Wieland, Michael (2018) Framework zur Visualisierung von Algorithmen+Datenstrukturen. Bachelor thesis, HSR Hochschule für Technik Rapperswil.

[img]
Preview
Text
FS 2018-BA-EP-Wieland-Trentini-Framework zur Visualisierung von Algorithmen+Datenstrukturen.pdf - Supplemental Material

Download (5MB) | Preview

Abstract

An der Hochschule für Technik Rapperswil (HSR) werden in den Modulen Algorithmen und Datenstrukturen 1 & 2 diverse Algorithmen unterrichtet, deren Funktionsweise schwierig nachzuvollziehen ist. Infolgedessen bekunden viele Studenten Schwierigkeiten beim Erlernen dieser abstrakten Konzepte. Abhilfe schafft der Graphs-Visualization-Service (GVS), welcher die Datenstrukturen Graph und Tree sowie ausgewählte darauf anwendbare Algorithmen visualisiert. Es hat sich gezeigt, dass die Visualisierung der Konzepte den Lernerfolg der Studenten positiv beeinflusst. Der GVS ist in seinem Funktionsumfang auf die genannten Datenstrukturen limitiert. Zudem wurde dessen Architektur nie für grössere Erweiterungen konzipiert. Ziel dieser Bachelorarbeit ist es, einen erweiterbaren Nachfolger zu entwickeln, der den GVS in Zukunft vollständig ablösen kann und weitere Datenstrukturen, wie beispielsweise eine Linked-List, in Form von Modulen unterstützt. Unter Berücksichtigung des Funktionsumfangs des GVS wurden die Anforderungen an den neuen Algorithm & Data Structure Visualizer (ADV) spezifiziert. Zusätzlich lieferte eine Benutzerumfrage wertvolle Inputs, welche insbesondere auf die Benutzeroberfläche und das Feature-Set Einfluss hatten. Bei der Planung der Architektur lag der Fokus auf der Erweiterbarkeit der Software sowie einer intuitiven Benutzeroberfläche. Damit die Umsetzbarkeit der Designentscheide überprüft werden konnte, wurden diese bereits früh mit Prototypen verifiziert. Der ADV wurde in zwei Teilkomponenten aufgeteilt. Beim Benutzer wird eine Library eingebunden, welche Klassen zur Visualisierung von Datenstrukturen zur Verfügung stellt. Zudem wurde eine JavaFX Applikation entwickelt, welche sich um die Visualisierung kümmert. Zentraler Baustein der Visualisierungs-Komponente ist ein modulares Framework, das wiederverwendbare Widgets, wie Knoten oder Pfeile, zur Verwendung in den Modulen bereitstellt. Zur Unterstützung künftiger Erweiterungen der Software wurde ein umfassender Buildprozess spezifiziert, der die hohen Qualitätsstandards der Software auch in Zukunft verlässlich überprüfen soll. Als Resultat dieser Bachelorarbeit entstand eine produktiv nutzbare Software, die komplexe Algorithmen anhand von schrittweise nachvollziehbaren Schnappschüssen einer Datenstruktur visualisiert. Das Framework ist für zukünftige Entwickler unter anderem durch den Einsatz des Strategy Pattern flexibel erweiterbar und dank einer durchgehend modularen Architektur klar gekapselt. Der Endanwender des ADV profitiert von einer intuitiven Benutzeroberfläche und kann sich so vollumfänglich auf die Lerninhalte fokussieren.

Item Type: Thesis (Bachelor)
Subjects: Topics > Internet Technologies and Applications > Visualization
Area of Application > Academic and Education
Area of Application > E-Learning
Technologies > Programming Languages > Java
Technologies > Frameworks and Libraries
Creators:
CreatorsEmail
Trentini, MurièleUNSPECIFIED
Wieland, MichaelUNSPECIFIED
Contributors:
ContributionNameEmail
Thesis advisorLetsch, ThomasUNSPECIFIED
Depositing User: HSR Deposit User
Date Deposited: 31 Jan 2019 11:47
Last Modified: 31 Jan 2019 11:47
URI: http://eprints.hsr.ch/id/eprint/679

Actions (login required)

View Item View Item