Núcleo Pedagógico
Noviembre de 2009
Andamiaje para el aprendizaje con la programación
Primera edición
Noviembre de 2009
Elaborado por: Andrés Rodríguez Boza y Melania Brenes Monge, bajo la conducción de
Magaly Zúñiga Céspedes. Núcleo Pedagógico PRONIE MEP–FOD.
|Página 2
Contenido
Introducción .............................................................................................................................. 4
Marco de referencia .............................................................................................................. 5
Andamiaje con la programación....................................................................................... 5
Formular y comprender el problema u objetivo. ....................................................... 6
1. Conocer, identificar o plantear el problema u objetivo .............................. 6
2. Dividir el problema u objetivo en partes ........................................................... 6
3. Representar gráficamente el conjunto de las partes ................................... 7
Crear puentes entre el objetivo deseado y el lenguaje de programación. ..... 8
1. Definir una secuencia lógica de cada una de las partes. ......................... 8
2. Identificar los tipos y estructuras de datos contenidos en el producto. .. 9
Utilizar un lenguaje de programación que permita alcanzar el objetivo ......... 10
deseado y la solución al problema. ............................................................................ 10
Interpretación del gráfico del andamiaje ..................................................................... 11
Recomendaciones ................................................................................................................ 12
Conclusiones ........................................................................................................................... 13
|Página 3
Introducción
Este trabajo ofrece a los educadores de Informática Educativa diversas claves para enseñar a
programar, similares a un andamiaje. Estas buscan favorecer en los estudiantes la adquisición
de competencias de programación, de manera que sean capaces de plantear y resolver
problemas, así como trasladar lo aprendido a otros contextos, problemas o situaciones que
enfrenten. Se habla de andamiaje como una analogía con la forma en que se usan los
andamios en una construcción. Constituye un soporte, pero la pretensión es ir retirando el apoyo
de modo que el edificio permanezca de pie solo, sin la intervención de este recurso.
Cada una de estas fases se compone de objetivos didácticos, de los cuales se desprenden
actividades específicas. Estas actividades deben ser planeadas previamente por el educador
de Informática Educativa.
La propuesta se desarrolla de manera flexible, pues una vez que el educador y los estudiantes
han pasado por cada momento, pueden devolverse a otro para refinar la solución al problema
u objetivo. La práctica misma así lo permite.
La idea central fue generar un concepto de programación útil para las necesidades de la
práctica educativa dentro del campo de acción del PRONIE, incluyendo el trabajo con el
enfoque de aprendizaje por proyectos (EAP) orientados por estándares de desempeño.
|Página 4
Marco de referencia
Como se ha mencionado antes, se proponen tres fases para enseñar a los estudiantes
a programar computadoras.
Estas fases, según Pirir (2001), son propias del proceso natural de la programación. Se
puedan aplicar al contexto de trabajo efectuado en los laboratorios de Informática
Educativa (LIE). Se deben combinar con el enfoque de aprendizaje por proyectos,
para lograr una propuesta adaptada a las necesidades y al contexto educativo del
PRONIE. En este sentido, se busca una fusión entre las diferentes fases de
programación, el planteamiento de una pregunta orientadora y el desarrollo de un
producto digital dentro de un proyecto guiado por el andamiaje de la programación.
Andamiaje de la programación
1
Luis Enrique Pirir Aguilar, Introducción a la programación, 2001.
|Página 5
Formular y comprender el problema u objetivo
Planear con el fin en mente es un procedimiento muy útil para los educadores, pues el
proceso de enseñanza–aprendizaje se orienta desde un inicio por actividades
didácticas, métodos y una evaluación dirigidos a alcanzar las metas de aprendizaje
planteadas por ellos para sus estudiantes.
La idea para alcanzar este objetivo es que los educadores desarrollen actividades que
den a los estudiantes la oportunidad de entender claramente qué problema deben
resolver o qué objetivo deben alcanzar. De no ser así, se corre el riesgo de que los
estudiantes no comprendan por qué deben efectuar las tareas propuestas por el
educador y pierdan el interés.
La idea es que los estudiantes sepan fragmentar los problemas en partes más simples,
con lo cual pueden ir resolviéndolos de mejor manera. De nuevo, aquí se espera que
cada vez sea más fácil para ellos efectuar la división de las partes de un problema
conforme avanzan en los ciclos y suman experiencia en la programación.
|Página 6
3. Representar gráficamente el conjunto de las partes
Morini y Señas2 (2005) en su artículo Estrategias para la enseñanza de la programación,
señalan la importancia de conducir a los estudiantes a través de técnicas que les
faciliten comprender la programación. Según estas investigadoras, los programas
actuales de desarrollo de software son muy complejos. Por ello proponen un diseño
previo de lo que se desea programar, como un recurso esquemático donde el
estudiante pueda plasmar gráficamente la solución de su problema.
Gráficamente, esta primera fase y sus correspondientes objetivos didácticos se ven así:
2
JEITICS (2005) Primeras Jornadas de Educación en Informática y TICS en Argentina.
|Página 7
Crear puentes entre el objetivo deseado y el lenguaje de programación
En esta fase se inicia un ciclo determinado por dos objetivos didácticos, los cuales
orientan el desarrollo de actividades con los estudiantes:
Los educadores deben procurar que sus estudiantes puedan definir con claridad por
qué consideran que tal elemento debe ir primero y tal otro después. Este proceso
deberá ir depurándose hasta encontrar la mejor solución a su problema o el mejor
camino para conseguir su objetivo.
|Página 8
2. Identificar los tipos y estructuras de datos contenidos en el producto
Este objetivo se requiere alcanzar dependiendo de si la solución planteada contiene
estructuras de datos. Posiblemente algunos procesos hacia la solución los requieran y
otros no. En caso de que sea necesario alcanzar este objetivo didáctico, es importante
identificar cómo está compuesta la información que se debe procesar, el tipo de
variable o constante por utilizar, el contenido que se almacenará y cómo se
implementará dentro de la solución.
|Página 9
Utilizar un lenguaje de programación que permita alcanzar el objetivo
deseado y la solución al problema
En esta fase, también será necesario diseñar actividades para que los estudiantes
conozcan y dominen la herramienta o lenguaje con que programarán, su entorno,
cómo se crean las estructuras de datos (variables y constantes) y las de control, tales
como condicionales, ciclos y recursividad, pero sin dejar a un lado el proceso de
depuración.
Llegados a este punto, los estudiantes pueden ir y venir por las diferentes fases, para
que el proceso sea integrador e interactivo. Se puede graficar una parte del problema
e implementar su solución en la computadora, con lo cual se genera un ciclo entre la
comprensión del problema y la solución codificada.
| P á g i n a 10
Interpretación del gráfico del andamiaje
Para ver la interactividad entre las fases y sus objetivos didácticos, se han trazado dos
flechas. La primera flecha empieza en el primer objetivo (conocer/identificar/plantear
el problema u objetivo) y sube atravesando los dos siguientes hasta llegar al cuarto
objetivo (definir una secuencia lógica de pasos de cada una de las partes). A partir de
este se desprenden dos caminos: uno que nos lleva directamente a la codificación; y
otro que, antes de llegar a codificar la solución, nos propone identificar las estructuras
de datos y de control.
Una segunda flecha discontinua sale del último objetivo didáctico (codificar en un
lenguaje de programación) y nos permite devolvernos hacia los objetivos inferiores,
dependiendo de la necesidad del proceso de enseñanza-aprendizaje.
| P á g i n a 11
Recomendaciones
Definir cuál producto final se busca desarrollar y darlo a conocer a los estudiantes desde
el inicio del proceso, les permite tener una mayor claridad de qué se espera de ellos y
qué deben lograr en el proyecto de aprendizaje.
Es muy relevante que los estudiantes comprendan que todos los productos desarrollados
a través de este proceso, contribuyen a la obtención del producto final por desarrollar.
Cada vez que sea posible, es importante preguntar a los estudiantes cuáles algoritmos
se pueden extraer de una determinada situación. Las demostraciones son una buena
oportunidad para hacerlo.
Es importante evidenciar a los estudiantes que la máquina no piensa por sí misma: “El
papel de los programas de computadoras es esencial; sin una lista de instrucciones a
seguir, la computadora es virtualmente inútil. Los lenguajes de programación nos
permite escribir esos programas y por consiguiente comunicarnos con las
computadoras” (Pirir, 2001: 2).
Es preciso orientar a los estudiantes para que realicen siempre un diseño previo de la
solución, de una forma concreta, con bosquejos, esquemas, diagramas, secuencia de
pasos, con el objetivo de comprender mejor la solución del problema.
Cuando los estudiantes son capaces de brincarse uno de las pasos propuestos e
implementar directamente la solución en un determinado lenguaje de programación,
se puede implementar la estrategia de análisis de código. Esto quiere decir que se les
puede dar un programa para que analicen el código empleado y lo puedan trasladar
a una determina situación. Esto los ayudará a interpretar estructuras más complejas,
donde se aplique un pensamiento más abstracto.
| P á g i n a 12
Conclusiones
Planificar un proyecto de aprendizaje iniciando con el fin en mente, favorece
significativamente el proceso de enseñanza–aprendizaje. Es necesario incluir qué
aprenderán los estudiantes, cómo lo aprenderán, qué conocimiento previo requieren
para su comprensión y con cuáles indicadores se evaluará la adquisición del
conocimiento según se avanza en el proyecto.
Los estudiantes podrían usar técnicas poco adecuadas cuando comienzan a resolver el
problema; pero, una vez modificadas las condiciones de resolución de este, se verán
obligados a transformar sus técnicas para hacerlas más efectivas. En este cambio de las
técnicas promovidas por el educador, se juega la posibilidad del aprendizaje.
| P á g i n a 13