Page 50 - revista 2019
P. 50
Revista de la Facultad de Ingeniería, Año 6, Número 1
hasta que se alcanza un caso especial de terminación, se formaliza mediante
instrucciones recursivas o iterativas.
En términos de la ley general de la cognición, eso significa que el pensamiento se
encuentra inicialmente en P (periferia). Los sujetos saben resolver las situaciones
cotidianas en el plano de la acción, pero aún no son capaces de describir
formalmente cómo lo hacen. Para inducir el tránsito del pensamiento hacia los
centros C y C’, se les hacen preguntas orientadas a obtener descripciones precisas de
lo que hacen y por qué funciona. Además, se orienta a los estudiantes a obtener una
solución general para el problema (separada de los casos concretos) por medio de
instrucciones escritas para enseñar a otra persona o a un robot imaginario
(interpretado por el docente, o por ellos mismos) a realizar la tarea.
Este mecanismo posibilita que los estudiantes reflexionen sobre cómo resuelven el
problema y puedan pasar de casos particulares a un algoritmo general, inicialmente
escrito en pseudocódigo (lenguaje informal). Los docentes han encontrado que la
introducción de la automatización (la ejecución de la descripción del estudiante por
una persona que actúa como robot) es de gran ayuda porque evidencia que las
instrucciones ambiguas o carentes de rigor llevan a comportamientos inesperados y
no deseados por parte del robot. Se da un conjunto de operaciones primitivas y los
estudiantes tienen que diseñar una secuencia de instrucciones para que el robot, o
quien sea que las ejecute, haga la tarea. Posteriormente, se repite el mismo proceso
partiendo del algoritmo escrito en pseudocódigo y guiando a los estudiantes a la
escritura de una versión formalizada del mismo, utilizando un lenguaje de
programación.
En la siguiente sección se describe la investigación concreta realizada con estudiantes
del curso 2019 de Programación I. Dicha investigación estudia la construcción de
conocimiento sobre el algoritmo de búsqueda lineal en un arreglo, que es el primer
algoritmo de búsqueda que los estudiantes ven en la carrera. Se describen las
actividades realizadas en el marco de la investigación y se muestran algunas de las
respuestas dadas por estudiantes participantes de la misma.
Investigación realizada sobre pasaje de lenguaje informal a lenguaje
formal.
El experimento comienza por plantearle al estudiante la siguiente situación: se desea
encontrar a una persona en una calle que tiene una cierta cantidad de casas. Para
simplificar el problema, se sabe que en cada casa vive una sola persona y que se
conoce el número de cédula de identidad de la persona buscada. Como parte del
experimento, se utiliza una hilera de tarjetas de cartulina que simulan ser números
de cédula y se colocan alineados en una hilera, como si fuesen las casas de la calle.
Cada número está tapado por otra tarjeta en blanco, que simula ser la puerta detrás
de la cual se encuentra la persona que vive en la casa.
Este problema cotidiano representa una instancia del problema de programación de
búsqueda lineal de un valor dentro de un arreglo y el algoritmo que lo resuelve suele
ser complejo de comprender por los estudiantes. El propósito del experimento es
investigar cómo los estudiantes construyen conocimiento sobre dicho algoritmo y
cómo hacen para escribirlo primero en lenguaje informal (donde expresan la solución
en términos de cédulas y puertas) y cómo hacen luego para formalizarlo en un
lenguaje de programación (donde expresan la solución en términos de valores y
celdas de un arreglo). El experimento se planteó en el momento en que los
estudiantes estaban comenzando a estudiar la sintaxis para trabajar con arreglos en
Programación I, pero aún no habían trabajado en el curso con el algoritmo de
búsqueda lineal. El lenguaje de programación utilizado en el curso es C++.
49