Visualización dinámica mediante técnicas inmersivas para la optimización del proceso de aprendizaje de la programación de computadores.
Resumen
En la actualidad, la programación de computadores goza de un presente y futuro brillante,
siendo uno de los estandartes que marca las líneas de progreso. De hecho, esta disciplina
actualmente llega incluso a considerarse como la lengua del siglo XXI. Por un lado, cada
año incrementa en Europa el número de puestos de trabajo que requieren habilidades de
programación. Por otra parte, ésta se postula como una herramienta transversal que potencia
el pensamiento computacional.
No obstante, uno de los mayores desafíos a los que se enfrenta la Ingeniería Informática
es la enseñanza de la programación. Una de las principales causas de este problema es la
abstracción que requiere esta disciplina y las serias dificultades que plantea a los estudiantes.
Esta problemática puede abordarse mediante la utilización de representaciones gráficas
que capturen y mantengan la atención y la motivación del estudiante, asociando elementos
del mundo real con términos específicos de programación. Además, el empleo de tecnologías
inmersivas, como la Realidad Aumentada, puede mejorar el proceso de aprendizaje al
introducir nuevos mecanismos innovadores de interacción y visualización.
Este nuevo modo de visualización puede permitir al estudiante estudiar códigos complejos
con mayor grado de libertad, e incluso comprender mejor el flujo de ejecución en sistemas
con alto grado de concurrencia donde existen diversos procesos e hilos actuando de forma
simultánea.
El presente Trabajo Fin de Máster tiene como objetivo abordar el problema del aprendizaje
de la programación mediante el uso de un sistema inmersivo basado en Realidad Aumentada.
Para ello se propone una metáfora que soporta la visualización dinámica de programas,
una arquitectura que añade el soporte computacional con el que se genera estas visualizaciones,
y una evaluación correspondiente con estudiantes para demostrar la consecución de los
objetivos. In today’s society, computer programming enjoys a great present and future, being one
of the standards that marks the lines of progress. In fact, this discipline now even comes
to be considered as the language of the 21st century. On the one hand, the number of jobs
that require programming skills is growing rapidly each year in Europe. On the other hand,
programming is postulated as a transversal tool that helps to boost the computational thinking.
Nonetheless, one of the biggest challenges faced by Computer Science is the teaching of
programming. One of the main factors of it is the abstraction that programming requires and
the serious difficulties it causes for students.
This issue may be addressed through the use of graphic representations that capture and
maintain the student’s attention and motivation, associating real-world elements with specific
programming terms. In addition, the use of immersive technologies, as Augmented Reality
may improve the learning process, by introducing new innovative interaction and visualization
mechanisms.
This new visualization mode may allow the student to study complex source code with a
greater degree of freedom, and even better understand the flow of execution in systems with
a high degree of concurrency where there are several processes and threads acting simultaneously.
This Master’s Degree Final Project has the objective to address the programming learning
problem through the use of immersive system based on Augmented Reality. To achieve this
goal, this project proposes a metaphor that supports dynamic visualizations of programs,
a new architecture that adds a computational support with which these visualizations are
generated, and a corresponding evaluation with students to demonstrate the achievement of
the objectives.