Aprendizaje activo en informática educativa, el caso de la construcción de animaciones de programas

AutorJaime Urquiza Fuentes
Cargo del AutorDepartamento de Lenguajes y Sistemas Informáticos I, Universidad Rey Juan Carlos
Páginas55-77

Page 55

1 Introducción

Las animaciones de software se usan en la enseñanza de la informática desde principios de los 80 [1,2]. Estas animaciones se pueden usar en múltiples escenarios [3]: clases, laboratorios, estudio fuera de clase, etc. Sin embargo, a pesar del potencial educativo que poseen, su uso no se ha incorporado al día a día de la enseñanza de la informática.

Una de las posibles definiciones de visualización es: "representación visual que ayuda a la formación de modelos mentales sobre conceptos abstractos". Las animaciones son visualizaciones dinámicas, por lo tanto, las animaciones de programas deberían ayudar a la formación de modelos mentales sobre el funcionamiento de los programas, ya que los conceptos involucrados en el funcionamiento de los programas son abstractos; así que parece lógico intentar utilizar las visualizaciones para enseñar programación.

Aunque sea poco riguroso, en principio, para cualquier estudiante es más atractivo poder ver el funcionamiento de un programa, que atender a una explicación de un profesor. Por otro lado, no estamos hablando de sustituir al profesor, sino de proporcionar nuevos medios que ayuden a los alumnos en el aprendizaje de las materias. Podríamos mencionar diferentes ventajas del uso de la Visualización del Software en la enseñanza de programación, tanto desde el punto de vista del alumno, como del profesor:

  1. Los conceptos abstractos visualizados se asimilan más fácilmente. La visualización aumenta la motivación.

  2. El profesor puede elegir qué aspectos de la materia hay que mostrar en la visualización resaltando aquellos más importantes para el objetivo final.

    Page 56

  3. Ayuda a la explicación del comportamiento dinámico de programas y algoritmos, permitiendo entre otros la detección de problemas y errores.

  4. El ritmo de la visualización se puede adaptar al ritmo de aprendizaje de los alumnos.

  5. Se pueden ofrecer distintas vistas del funcionamiento de un algoritmo, los alumnos pueden descubrir ellos mismos características del algoritmo.

    Pero no debemos confiar en que estas ventajas son intrínsecas a las visualizaciones, tomando como dogma de fe cuando no lo es, la frase "una imagen vale más que mil palabras". La mayoría de los autores que han trabajado con Visualización del Software en la enseñanza, véase [1,2,4,5,6,7,8,9], concluyen que la eficacia de su uso depende del cumplimiento de ciertas condiciones como:

    · Explicaciones añadidas a la visualización. El hecho de ver una visualización no implica la comprensión de la misma, hay que explicar cómo funciona la visualización, qué muestra, cuál es su objetivo y cómo lo conseguirá.

    · Capacidad de abstracción. La visualización debe resaltar la información que atañe a su objetivo, ocultando aquellos detalles que puedan confundir.

    · Diseño gráfico apropiado. El diseño gráfico debe ser atractivo y claro, si los estudiantes no conocen las convenciones visuales, estas se deben explicar con anterioridad. La idea es minimizar el tiempo invertido en entender la visualización frente al tiempo invertido en comprender el algoritmo.

    · Complejidad variable. La complejidad de lo que se muestra debería poder variar. Las visualizaciones para la primera vez que se explica un algoritmo no son las mismas que aquellas que muestran posibles optimizaciones o casos particulares de funcionamiento.

    · Temporización y vuelta atrás. Tratándose de animaciones (visualizaciones dinámicas), la temporización es fundamental, la velocidad de la visualización al principio será mucho menor que al final. Al principio cuesta entender el algoritmo, pero al final, una vez comprendido puede resultar incluso aburrido. También es importante ofrecer la posibilidad de cambiar el sentido de ejecución del programa o algoritmo, pudiendo volver a ver la visualización de un momento anterior de la ejecución.

    · Multiplicidad de vistas. Es conveniente poder ofrecer al usuario de la visualización varias vistas, de forma que pueda elegir cuál le interesa más. Por ejemplo, en un algoritmo de ordenación, podría interesar tanto la línea del algoritmo que se está ejecutando en ese momento, como el estado del conjunto que hay que ordenar.

    · Integración con el entorno de programación. La generación de una visualización podría ser una acción más de las posibles, como ejecutar, compilar o depurar un programa, permitiendo al alumno experimentar con el sistema creando sus propias visualizaciones.

    Como se puede observar, algunas de estas condiciones no están relacionadas directamente con la visión pasiva de animaciones. Desde el punto de vista del estudiante, las tres últimas condiciones le obligan a interactuar más con las animaciones. En este capítulo estudiamos el impacto pedagógico de diferentes formas de interactuar con las animaciones de programas funcionales.

    El resto del capítulo se estructura como sigue. En la siguiente sección revisamos los distintos modos de interacción entre las animaciones y el alumno, también conocidos como niveles de implicación. A continuación describimos las animaciones de programas funcionales utilizadas para este estudio. Después detallamos el diseño y los resultados de la evaluación. Finalmente, exponemos nuestras conclusiones, así como los trabajos futuros.

    Page 57

2 Niveles implicación con las animaciones

Como se ha explicado en la introducción, la eficacia pedagógica de las animaciones no se obtiene directamente con la visión de las mismas, sino que es posible que se necesite una forma diferente de interactuar con ellas. Desde el punto de vista del constructivismo, la visión pasiva de una animación no aporta mucho, sin embargo una implicación mayor mejoraría el aprendizaje. Por lo tanto parece interesante analizar formas diferentes de interactuar con las animaciones.

2. 1 Taxonomía de niveles de implicación

La interacción con las animaciones se ha interpretado como la implicación del alumno en su uso. Así, Naps et al [10] crearon una taxonomía para diferenciar los distintos niveles de implicación de los alumnos con las visualizaciones, cada nivel de implicación supone una forma diferente de interactuar con ellas. A continuación describimos brevemente cada uno de estos niveles:

· Sin visión, que caracteriza a aquellos entornos donde no se usa ninguna tecnología relacionada con la visualización.

· Visión, es el nivel más básico, donde el alumno ve la animación. Existen dos clases de visión: la pasiva donde el alumno no hace nada más, y la activa donde el alumno es capaz de controlar propiedades básicas como el sentido, la velocidad o seleccionar diferentes vistas.

· Respuesta, implica que el alumno, además de ver la animación, debe contestar a ciertas preguntas planteadas durante la misma.

· Cambio, permite al alumno aportar datos de entrada para el algoritmo, de forma que controla la ejecución del mismo.

· Construcción, requiere que el alumno genere la animación, ello implica que el alumno podría seleccionar qué partes de la animación se muestran y cuáles no. Esto se puede hacer de dos formas: usando la codificación del algoritmo (propia o ajena), aportando los datos de entrada y obteniendo los resultados en imágenes o animaciones; o utilizando una herramienta de dibujo que le permita generar dichas animaciones, incluso un generador de presentaciones valdría. Nótese por tanto, que en este nivel no se requiere la codificación del algoritmo.

· Presentación, requiere que se exponga una animación a una audiencia, para después obtener opiniones sobre ella o celebrar debates.

2. 2 Eficacia pedagógica de los niveles de implicación con las animaciones

La idea subyacente a esta taxonomía es: cuanta más implicación con la animación, mejor es el aprendizaje. Sin embargo, no hay estudios que respalden esta afirmación en toda su amplitud. Sí existen experiencias alentadoras, que muestran beneficios de las animaciones en situaciones concretas, p.e. uso de las animaciones en conjunción con otras características como evaluación automática, o con cierto tipo de estudiantes; o mejoras sólo en ciertos niveles de aprendizaje, p.e. niveles en la taxonomía de Bloom [11].

Grissom et al [12] estudian el nivel respuesta con animaciones de algoritmos, detectando mejoras en los dos primeros niveles de la taxonomía de Bloom.

Page 58

Moskal et al [13] muestran resultados positivos con el nivel de cambio, pero sólo en estudiantes con poca experiencia en programación o pocos conocimientos matemáticos, y alta probabilidad de abandonar el estudio de la materia. Ben-Bassat et al [14] también analizan el nivel de cambio, obteniendo resultados positivos en los estudiantes medios, según ellos, los estudiantes buenos no necesitaban de las visualizaciones, y los malos las encontraban demasiado complejas para ellos.

Laakso et al [15] estudian el nivel de construcción, junto con herramientas de simulación y evaluación automática; los resultados muestran mejoras en el porcentaje de aprobados/suspensos.

A nivel general, Hundhausen et al [16] hicieron un meta-estudio sobre la eficacia pedagógica de las animaciones de algoritmos, concluyendo que el uso de las animaciones desde el punto de vista constructivista permitía...

Para continuar leyendo

Solicita tu prueba

VLEX utiliza cookies de inicio de sesión para aportarte una mejor experiencia de navegación. Si haces click en 'Aceptar' o continúas navegando por esta web consideramos que aceptas nuestra política de cookies. ACEPTAR