Ejercitación Colaborativa y Programación Estructurada
Carlos A. Cobos, Martha E. Mendoza, César A. Collazos
Departamento de Sistemas, Universidad del Cauca
{ccobos, Mendoza, ccollazo }@unicauca.edu.co
Luis C. Gómez
Escuela de Ingeniería de Sistemas, Universidad Industrial de Santander
[email protected]
Resumen
Los conceptos y las habilidades relacionadas con las
construcciones fundamentales de programación son un
componente clave en la formación de los futuros
ingenieros de sistemas. Teniendo en cuenta que en
muchas Universidades de Colombia, los resultados
obtenidos en las asignaturas que manejan estos conceptos
no son los adecuados, se estableció un proceso de
aprendizaje basado en la ejercitación, con el fin de
aumentar el nivel académico de los estudiantes, disminuir
la deserción, fomentar la colaboración y afianzar mejor
los conocimientos y las habilidades mencionadas, entre
otras cosas. Este artículo presenta un método de
ejercitación
colaborativa,
una
herramienta
computacional que lo soporta y una experimentación, con
resultados favorables.
1. Introducción
En el desarrollo de las actividades de docencia durante
los últimos años, se ha observado que el proceso de
aprendizaje de los conceptos de programación
estructurada1 en los estudiantes de las asignaturas básicas
de Informática, son los que más dificultad les presenta,
convirtiéndose en la principal causa para que en estas
asignaturas el índice de mortalidad académica sea muy
elevado, ya que en promedio un 60% de la población que
inicia el curso, no lo aprueba o se retira del mismo [1].
Aunque no se ha realizado un estudio sistematizado
para definir las causas de esta situación, de la experiencia
docente se han identificado algunas de ellas que se
pueden clasificar como exógenos al contexto propio del
curso y que ameritan una estrategia de solución que debe
ser abordada por las coordinaciones de los programas, la
1
Corresponde a las construcciones fundamentales de programación
(ACM 2001), ellas son: Variables, tipos, expresiones, asignación,
entrada y salida simple y las estructuras de control condicionales y de
iteración.
unidad de admisiones y otros entes universitarios.
Algunas de ellas son:
• Una inadecuada presentación de los contenidos, y la
necesidad de contar con ellos a través de Internet en
forma organizada.
• La falta de tiempo para el desarrollo de prácticas,
tutorías y ejercitación dirigida.
• El miedo a participar en la clase por temor a ser
señalado o cuestionado.
• En los grupos, los estudiantes que más comprenden
el tema tratan de imponer su ritmo de aprendizaje,
haciendo énfasis en el aprendizaje competitivo e
individual y la poca colaboración entre compañeros.
• En los ejercicios de clase la mayoría de las veces
participan los que más comprenden el tema, y en la
medida en que los estudiantes se van rezagando de
los compañeros, se desmotivan a participar, máxime
cuando se debe tener en cuenta que es imposible
comprender un tema avanzado o complejo sin haber
comprendido los conceptos previos.
Teniendo en cuenta que en la práctica se ha
observado, que la ejercitación y el trabajo en grupo
presentan una tendencia a ser más efectivos el proceso de
aprendizaje de estos conceptos en nuestro medio
educativo, y que a través de trabajos desarrollados por
teóricos del aprendizaje colaborativo (AC) se ha
demostrado que el desempeño académico y el desarrollo
de habilidades sociales de los estudiantes se mejoran, si se
realizan actividades de AC en lugar de (o en forma
complementaria a las) actividades de enseñanza en el
modelo tradicional [2], el presente artículo considera que
el uso de un método de ejercitación colaborativo
especifico para la solución de problemas computacionales
usando los conceptos de programación estructurada y de
un ambiente computacional que lo soporte (a modo de
instrumento), permiten obtener una mayor efectividad en
el proceso de aprendizaje de estos temas.
En la sección 2 se presentan algunos trabajos
relacionados, la sección 3 describe el método de
ejercitación propuesto, la sección 4 describe la
herramienta computacional, la sección 5 presenta la
experimentación realizada y finalmente en las secciones 6
y 7 se presentan algunas conclusiones y el trabajo futuro.
2. Trabajos Relacionados
Aunque en el ámbito internacional no se conoció otra
iniciativa idéntica o muy similar a la que se desarrolló en
este proyecto, si se encontraron investigaciones y/o
publicaciones de AC soportado por computador para otras
áreas, como la física, la matemática, la química entre
otros (por ejemplo el proyecto ASTER2 en Inglaterra). Se
consideró fundamental que el método de ejercitación y el
ambiente computacional apropiara las experiencias de los
teóricos del AC, en especial los métodos ya desarrollados
para la solución de problemas en diferentes áreas, las
investigaciones desarrolladas en la Universidad de Chile,
relacionadas con la evaluación del proceso de
colaboración cuando se utiliza el computador [3] y las
investigaciones desarrollados en la Universidad de
Pittsburgh, relacionados con la promoción efectiva de la
interacción.
El AC y el uso de métodos, técnicas o estructuras
específicas de AC han sido ampliamente investigadas y
utilizadas en el salón de clases [2].
En el AC se contemplan ciertas características [5] que
lo convierten en una estrategia muy útil en el aprendizaje
de los conceptos y las habilidades relacionados con la
solución de problemas computacionales.
Algunos métodos, técnicas o estructuras conocidas en
el AC son: lluvia e ideas, edición entre pares, solución
estructurada de problemas, método de descubrimiento,
enviar un problema, pensar-formar parejas-compartir,
pensar-formar parejas-compartir al grupo, par expositorrevisor, pares pensando en voz alta la solución de un
problema, aprendiendo juntos, investigación en grupos,
rompecabezas.
Para el presente trabajo, fueron de especial interés las
investigaciones desarrolladas en la Universidad de
Michigan [8] las cuales han demostrado que la lluvia de
ideas en forma secuencial (rountable/rounrobin), nominal
(en paralelo y compartiendo las ideas con un cierto orden)
y totalmente en paralelo, muestran excelentes resultados
en la generación de ideas.
La siguiente sección describe el mecanismo utilizado
para llevar a cabo los objetivos antes planteados.
3. Algoritmos Colaborativos (ALGOCOL)
ALGOCOL es un método de AC que NO es libre de
contenido, en particular, se utiliza para realizar
2
Assisting Small-group
psy.york.ac.uk/aster/
teaching
and
C&IT
en
http://cti-
actividades de ejercitación colaborativa, donde los
estudiantes diseñan algoritmos que dan solución a un
problema computacional que requiere los conceptos de la
programación estructurada. El objetivo final en el aspecto
académico consiste en que entre todos los estudiantes de
un grupo solucionen un conjunto de ejercicios, entiendan
la estrategia que se uso para diseñar el algoritmo y
apliquen los conceptos vistos en clases previas; además
de cultivar las habilidades sociales y comunicativas
necesarias para el trabajo en equipo.
En este método los estudiantes se dividen en grupos
de dos a cuatro miembros. El docente entrega a todos los
estudiantes uno o más ejercicios para que los lean y se
den una idea inicial del trabajo. Luego los estudiantes se
reúnen en sus grupos y en forma colaborativa dan aportes,
escuchan los aportes de sus compañeros, discuten y
solucionan uno a uno los ejercicios. La interacción entre
los miembros del grupo puede realizarse secuencialmente
o en paralelo; cuando es en paralelo, se puede definir un
tiempo mínimo de espera para realizar aportes concretos
en el diseño del algoritmo, tiempo que se debe dedicar a
la explicación, la formulación de preguntas, entre otras.
Después, el docente da un tiempo a los grupos para que
analicen el procesamiento del grupo y finalmente, todos
los estudiantes presentan una evaluación individual del
tema.
Para el docente se definen cuatro fases principales.
Una primera fase de planeación previa a la actividad, en
la que formula los ejercicios, los tiempos, entre otro. Una
segunda fase de programación en la que organiza de
forma tentativa los grupos de ejercitación, al azar, por
genero, o por otro criterio. Una tercera fase en donde
realiza la reorganización y el monitoreo de los grupos,
iniciando con la reorganización de los grupos si esto se
requiere, entregando los materiales y dando tiempo a los
estudiantes para que lean los ejercicios, luego monitorea
los grupos observando los aportes de los estudiantes, el
estado de solución del problema, reorienta a los grupos
que se encuentren desenfocados entre otros. Finalmente,
realiza un análisis general de la actividad con el objeto de
mejorar el desarrollo de futuras actividades y dar
recomendaciones a los estudiantes sobre situaciones
observadas que fueron acertadas o que no deber ser
mejoradas, entre otras (ver Figura 1). Este método
contempla el proceso esencial planteado por Collazos et
al [7]
Existen tres fases principales que desarrolla el
estudiante cuando aplica este método. Una primera fase
de preparación previa en la que estudia, repasa y se
ejercita individualmente sobre los temas vistos en clase.
Una segunda fase de ejecución de la actividad en si
misma, donde realiza la solución de los ejercicios (el
diseño de los algoritmos) con sus compañeros de grupo.
Finalmente, una fase donde realiza la evaluación del
procesamiento del grupo y de sus propios conocimientos
con un examen individual (ver Figura 1).
Figura 1 Fases principales de ALGOCOL
A continuación se presenta la descripción del
ambiente computacional de ejercitación colaborativa
desarrollado para la solución de problemas a través de los
conceptos de la programación estructurada, denominado
ACEP-PE y que se fundamenta en ALGOCOL.
Figura 2 Ventana para coordinar una actividad
4. Ambiente computacional para ALGOCOL
ACEC-PE es una aplicación software sincrónica
distribuida. Esta herramienta incluye dos roles de usuario
principales, ellos son: el docente y el estudiante. A
continuación se describe el ambiente del docente y luego
se describe el del estudiante.
El docente tiene la posibilidad de planear actividades,
programar actividades, iniciar actividades (reorganizando
los grupos), monitorear la actividad y analizar actividades
ya terminadas, como en ALGOCOL. Además se cuenta
con otras funciones que son: Entrar al sistema,
comunicarse con la clase o con un grupo específico a
través de un chat, cambiar el perfil, cambiar la clave de
acceso, explorar un contenido específico de la asignatura
y gestionar los estudiantes del curso.
La Figura 2 y 3 ilustra el mecanismo utilizado por el
docente para coordinar una actividad y reorganizar los
grupos.
Figura 3 Ventana para reorganizar los grupos
Adicionalmente el docente puede monitorear la
actividad donde puede enviar un mensaje a todos los
grupos, o seleccionar un grupo y enviar un mensaje sólo a
ese grupo, o por último seleccionar a un estudiante y
enviar un mensaje privado a ese estudiante como lo
muestra la figura 4.
puede realizar la edición colaborativa del algoritmo con
sus compañeros.
Figura 4 Ventana para el monitoreo de la actividad
El estudiante tiene la posibilidad de ejecutar una
actividad y de analizar una actividad previamente
terminada (histórica), como en ALGOCOL. Además
cuenta con otras funciones que son: Entrar al sistema,
comunicarse con la clase, con el grupo de trabajo o con el
docente a través de un chat, cambiar el perfil, cambiar la
clave de acceso y explorar un contenido específico de la
asignatura (prepararse).
La Figura 5, ilustra el mecanismo realizado por el
estudiante para ingresar a una actividad.
Figura 6 Ventana para edición colaborativa
Es preciso destacar que la ventana de comunicación
nunca se deshabilita y el estudiante siempre puede
comunicarse con sus compañeros. De hecho, cualquier
operación que realice sobre el algoritmo (aportes de
trabajo) aparecen registradas en la ventana de
comunicación de todos los miembros del grupo.
Los dos ambientes (el del docente y del estudiante)
cuentan con un visor Web que por defecto apunta a u
curso de informática que les sirve a los estudiantes para
repasar los conceptos de la asignatura [9]. Este contenido
se puede ver en la figura 7.
Figura 5 Ventana para ingresar a una actividad
Cuando el docente reorganiza los grupos e inicia
formalmente la actividad, al estudiante se le activa
automáticamente la ventana de la Figura 6, en la que
Figura 7 Ventana para navegar en contenido
A continuación se describen los experimentos
realizados con ACEC-PE.
5. Experimentación
ACEC-PE ha sido experimentado por estudiantes del
programa de Ingeniería de Sistemas de la Universidad del
Cauca, Popayán, Colombia, específicamente por
estudiantes de los cursos A y B de la asignatura
denominada “Introducción a la Informática”.
Previamente al desarrollo de la experimentación fue
preciso desarrollar una prueba piloto. Esta prueba se
desarrolló, con un conjunto de estudiantes de la asignatura
de Bases de Datos 1 (asignatura de cuarto semestre) y de
Proyecto 1 (asignatura de noveno semestre). El resultado
de la prueba fue satisfactorio y se obtuvieron algunos
requerimientos de usuario final que sirvieron para mejorar
el ambiente, previo a su experimentación por parte del
público objetivo.
La utilización de ACEC-PE se realizó mediante dos
experimentos, el primero para el curso A de la asignatura,
en el cual se usó un experimento de cuatro grupos
propuesto por Solomon [10] y el segundo para el curso B,
en el cual se realizó un experimento tradicional, con un
grupo de control y uno de experimentación.
Antes de iniciar la experimentación, ya se habían
registrado en ACEC-PE los usuarios, la descripción de la
actividad, los ejercicios de la actividad, los tiempos de
cada ejercicio y los estudiantes de cada grupo. Como era
de esperarse, al inicio de la actividad se debió reorganizar
los grupos, debido a que no todos los estudiantes
asistieron, por diferentes razones que no son relevantes
para el estudio.
Al iniciar la experimentación, los estudiantes
recibieron la capacitación correspondiente en el uso de
ACEC-PE. En general el ambiente es muy intuitivo y
fácil de aprender, pero se hizo la capacitación, pensando
en que el público objetivo son estudiantes de primer
semestre de bajos recursos económicos que en su mayoría
no han tenido mayor contacto con el computador. A
pesar, de lo anterior la capacitación, o mejor llamada
inducción al ambiente no supero los diez (10) minutos.
El objetivo de la actividad se centro en realizar una
ejercitación de las distintas formas que se puede usar la
instrucción DESDE (PARA/FOR), a través de dos (2)
ejercicios, con una duración de treinta (30) minutos cada
uno y en grupos de tres (3) personas. Antes de iniciar la
actividad se realizo un pre-prueba a unos grupos y
después del experimento se le aplico una post-prueba a
todos los estudiantes. El nivel de dificultad de esta última
fue mayor, esto se realizó a propósito, buscando
equilibrar (o anular) el posible efecto positivo que pudiese
generar la pre-prueba en los estudiantes. Además se
solicito a los estudiantes, contestar una encuesta sobre el
análisis del procesamiento del grupo a los estudiante que
realizaron aprendizaje colaborativo y otra encuesta sobre
las apreciaciones individuales de los estudiantes con
respecto a la actividad colaborativa.
Es necesario comentar, que las conclusiones
presentadas en cada experimento no son generales, sino
especificas a la población objetivo, en este caso los
estudiantes que actualmente cursan la asignatura de
Introducción a la Informática. Para poder llegar a
conclusiones más universales, sería necesario aplicar un
método de series cronológicas con distintas poblaciones
en distintas ciudades y marcos socio-económicos y
culturales. Es por esto, que las conclusiones de la
experiencia se limitan a dar una orientación de los pasos a
seguir para desarrollar nuevos trabajos, reorientar los
realizados o abandonar esta línea de investigación.
6. Conclusiones y trabajo futuro
ALGOCOL es un método que esta diseñado para
realizar ejercitación presencial en el aula, pero ACEC-PE,
extiende las capacidades de ALGOCOL llevándolo a los
escenarios de la educación a distancia soportada por
computadores en red, en la actualmente denominada
Educación en Línea.
El desarrollo de ambientes computacionales
colaborativos exige un fuerte soporte conceptual,
metodológico e instrumental relacionado con el desarrollo
de aplicaciones y sistemas distribuidos, debido a que en
general, para estos sistemas se necesita construir una
aplicación de comunicaciones y una aplicación de lógica
que se encuentre en un equipo servidor y un conjunto de
aplicaciones cliente que se comuniquen en forma
asincrónica y por medio de diferentes hilos de ejecución
con esas aplicaciones servidores.
ALGOCOL se caracteriza por ser un método de
aprendizaje colaborativo más que cooperativo, ya que esta
diseñado para que todos los miembros del grupo tengan
un compromiso mutuo y realicen esfuerzos continuos y
coordinados para realizar la actividad en conjunto[6].
En ALGOCOL el aporte de un individuo en la
solución de un ejercicio esta fuertemente relacionado con
lo que piensen y hagan los demás compañeros, para tener
éxito en una actividad que usa ALGOCOL es necesario
que los miembros del grupo tengan una visión compartida
del problema y de la estrategia que van a utilizar para su
solución [6].
Desde la perspectiva de la cohesión social,
ALGOCOL genera un alto grado de interdependencia
social ya que los individuos comparten objetivos comunes
y el éxito de cada persona es afectado directamente por
las acciones de los otros [4].
Basado en la perspectiva del desarrollo cognitivo,
ALGOCOL es un método de AC que estimula la
presencia del conflicto socio-cognitivo. Ya que el trabajo
gira alrededor de la solución de problemas, en un área en
la que un problema tiene muchas formas de ser resuelto
acertadamente. Es así como ALGOCOL propicia
esfuerzos colaborativos para aprender, entender y resolver
problemas [4].
Desde la perspectiva de la elaboración cognitiva, se
puede decir que ALGOCOL, propicia la labor de
explicación en cada una de las actividades que desarrolla
el estudiante, esto permite que los niveles de retención y
apropiación de los conceptos de la programación
estructurada sean mejores [7].
Referencias
[1] Cortes, A. (2002). Informes semestrales sobre el
rendimiento académico en las asignaturas del programa de
ingeniería de sistemas. Universidad del Cauca.
[2] Johnson, Roger T. and David W. Johnson. "An
Overview of Cooperative Learning." Creativity and
Collaborative Learning Eds. Jacqueline Thousand, R. Villa
and A. Nevin. Baltimore, Paul H Brookes Publishing. 1994.
[3] Collazos, C., Guerrero, L., Pino, J., and Ochoa, S.
“Evaluating Collaborative Learning Processes”. Proceedings
of the 8th International Workshop on Groupware
(CRIWG’2002), Springer Verlag LNCS, 2440, Heidelberg,
Germany, September, 2002.
[4] Johnson, Roger T., Johnson, David W. Handbook of
Research for Educational Communications and Technology.
Edited by David H. Jonassen. 1997.
[5] Ted Panitz. Collaborative versus Cooperative
Learning- A comparison of the two concepts which will help
us understand the underlying nature of interctive leraning.
Cooperative Learning and College Teaching, V8, No. 2,
Winter 1997. Ver Ted's Cooperative Learning e-book en
http://home.capecod.net/~tpanitz/ebook/contents.html.
[6] Roschelle, J. & Teasley, S. (in press) The construction
of shared knowledge in collaborative problem solving. In
C.E. O'Malley (Ed) Computer- supported collaborative
learning. Heidelberg: Springer-Verlag.
[7] Slavin, R.E. Research For The Future: Research on
Cooperative Learning and Achievement: What We Know,
What We Need To Know. Contemporary Educational
Psychology, 21 (1), 43-69. Center for Research on the
Education of Students Placed at Risk Johns Hopkins
University. October 1995.
[8] McLaughlin, C. y Olson, G. (1992). Unblocking
brainstorming through the use of a simple group editor.
Cognitive Science and Machine Intelligence Laboratory.
University of Michigan. ACM 0-89791-543-7.
[9] Cobos, C., Díaz, R., Garzón, M. (2002). Sitio web del
proyecto de grado titulado: Diseño y Desarrollo de un curso
en línea de Introducción a la Informática utilizando las
Tecnologías
de
la
Información.
http://www.uv.unicauca.edu.co.
[10] Hernández, Roberto. Fernández, Carlos. Baptista, Pilar
(Junio 1999). Metodología de la Investigación. Segunda
Edición. McGraw Hill.
[11] Collazos, C.,Guerrero, L., Pino, J., Stahl, G., and
Ochoa S., Using Games to Model and Evaluate
Collaborative Learning. ICLS, International Conference of
the Learning Sciences, Santa Monica, CA - June 22-26,
2004