Librería de visualización de estructuras de datos
Author
Professor Advisor
Abstract
Las estructuras de datos son uno de los temas más importantes en las Ciencias de la Computación. Por el mismo motivo son parte de los contenidos básicos que se enseñan en esta disciplina. Frecuentemente en la docencia se utilizan diagramas de las estructuras de datos como un apoyo al aprendizaje, pero estos diagramas son estáticos y no capturan la naturaleza dinámica de las estructuras de datos. Si bien, si existen visualizaciones animadas de estructuras de datos, estas son poco flexibles y están separadas del ambiente donde se implementan las estructuras de datos.
En particular, para el curso Algoritmos y Estructuras de Datos del Departamento de Ciencias de la Computación de la Universidad de Chile se desarrolló previamente una herramienta que genera diagramas estáticos y existe la necesidad de una herramienta similar, pero que permita generar visualizaciones animadas.
Por lo anterior, sería útil contar con una herramienta que permita generar visualizaciones animadas de estructuras de datos que esté incorporada en el mismo ambiente de desarrollo. De esta manera, el usuario puede visualizar la estructura de datos al mismo tiempo que la implementa, incluso permitiéndole ver cuando su implementación tiene errores.
Para satisfacer esta necesidad se creó dsvisualizer, una herramienta para generar visualizaciones animadas de estructuras de datos implementadas en Python. En su versión actual solo permite visualizar listas enlazadas, pero está diseñada para permitir generar visualizaciones de más estructuras de datos en el futuro. Le permite al usuario generar una animación de su propia implementación, minimizando la intervención que debe realizarle a su código.
Para lograr esto, dsvisualizer tiene un back-end y un front-end. El back-end, implementado en Python, captura las operaciones sobre la estructura a visualizar y genera un modelo de estas que se lo envía al front-end. Este, implementado en TypeScript, recibe el modelo desde el back-end y a partir de este genera la visualización animada, utilizando la librería de animación D3js.
Para evaluar la herramienta se hicieron pruebas con usuarios 12 estudiantes de la Facultad de Ciencias Físicas y Matemáticas , donde se les pidió utilizar la herramienta y luego contestar un cuestionario. La primera parte de este corresponde a la escala de usabilidad SUS, en la cual la herramienta obtuvo un puntaje promedio de 90 de 100 puntos. La segunda parte consiste en preguntas abiertas, donde se preguntó por: comentarios positivos, comentarios negativos y oportunidades de mejora. El resultado de la evaluación fue muy positivo, pero de todas maneras se identificaron varias oportunidades de mejora y nuevas funcionalidades que contribuirían a hacer la herramienta aún más útil.
xmlui.dri2xhtml.METS-1.0.item-notadetesis.item
Memoria para optar al título de Ingeniero Civil en Computación
Identifier
URI: https://repositorio.uchile.cl/handle/2250/189174
Collections
The following license files are associated with this item: