Programación por pares mediante el entorno Eclipse, una visión educativa
1. Programación por pares mediante el entorno Eclipse,
una visión educativa
Manuel Ortega Cantero
Escuela Superior de Informática. Universidad de Castilla – La Mancha
Paseo Universidad, 4. 13005 Ciudda Real (España)
Manuel.Ortega@uclm.es
Resumen
La enseñanza de la programación es una de las labores más difíciles de los estudios de Informática.
Presentamos aquí una serie de herramientas desarrolladas en el grupo CHICO para la enseñanza de la
programación y en particular COALA y COLE-Programming.
Palabras Claves: Programación por pares, CSCW, CSCL.
Abstract
Learning to program is a hard work in Computer Science studies. We are presenting in this paper different
tools developed by CHICO to programming learning, in particular COALA and COLE-Programming tools.
Key words: Peer Programming, CSCW, CSCL.
2. 1. Introducción educativos proporciona interesantes beneficios que
mejoran el aprendizaje.
Esta conferencia presentará un entorno desarrollado Nuestro objetivo es el de dar soporte a métodos
para la enseñanza de la programación. En la docencia educativos que apliquen la técnica de la Programación
de las asignaturas asociadas a las competencias de la por Pares en un IDE de uso profesional. En particular,
Programación, suele emplearse un modelo de en esta conferencia presentaremos un sistema para el
enseñanza/aprendizaje basado en la resolución aprendizaje de la Programación ya existente y sin
problemas, que en ocasiones implica la aplicación de soporte para la realización de tareas colaborativas, el
técnicas como la Programación por Pares. Además, en cual está basado en un IDE ampliamente extendido
la realización de estas tareas es habitual el empleo de como es Eclipse, dotándole de herramientas
entornos de desarrollo integrado de uso profesional. colaborativas que se integran en dicho entorno.
Así, puede resultar interesante integrar herramientas
en estos entornos para que puedan dar soporte al 2. El entorno de herramientas de COALA
proceso de aprendizaje/enseñanza. En esta conferencia
se expone cómo se ha adaptado un sistema COALA es un entorno complejo formado por
preexistente para el aprendizaje de la Programación diversas herramientas desarrolladas en CHICO. Entre
basado en Eclipse, de modo que tenga soporte para otras podemos citar COLE-programming, Edunet y
realizar tareas colaborativas. Estas han sido Classketching.
especialmente diseñadas para la resolución de Existe una wiki de apoyo al uso de estas herramientas
problemas de Programación, e integradas dentro del en el servidor de CHICO (Figura 2).
entorno de aprendizaje.
En la figura 1 se muestra la forma en la que se ha
integrado COALA para permitir la colaboración de
los alumnos y la evaluación automática de las
propuestas de estos. Tanto el profesor como los
alumnos reciben indicaciones sobre la bondad de la
solución propuesta por los alumnos [1,2,3,4], lo que
redunda en la calidad de dicha propuesta.
Figura 2. El entorno completo en http://chico.inf-
cr.uclm.es/coala
En la figura 3 podemos observar las herramientas
colaborativas desarrolladas específicamente para el
Figura 1. El entorno de programación COALA. entorno. CHICO ha desarrollado un gran número de
estas aplicaciones colaborativas por lo que esta
experiencia ha servido para la creación de este
En el aprendizaje colaborativo aplicado a la entorno.
Programación, habitualmente se emplea la técnica de En la figura 4 se observa como los participantes del
la Programación por Pares (del inglés Pair- sistema pueden compartir sus experiencias de
Programming). En ella, dos programadores trabajan programación, siendo herramientas que se han
de forma conjunta en un mismo diseño, algoritmo, valorado de forma muy positiva por los estudiantes.
código o prueba, de modo que, mientras que uno de
ellos ejecuta acciones sobre el entorno, el otro analiza
los pasos de su compañero para tratar de detectar
errores e informarle de ellos. Aunque se trata de una
técnica típicamente empleada en el campo de la
Ingeniería del Software, su aplicación en contextos
3. 6. Conclusiones
En la conferencia se intentará mostrar cómo dotar de
Pestañas'de'la'vista'
para'el'chat' Pestañas'de'la'vista'
soporte para la realización de tareas colaborativas, a
para'el'foro'
un sistema para el aprendizaje de la Programación
carente en principio de las mismas. Se verán cómo
hemos encajado en su arquitectura los requisitos
Pestañas'de'la'vista'
necesarios para proporcionar soporte a la colaboración
para'el'pool'de'votaciones'
así cómo la forma en que ha quedado implementada
la funcionalidad a modo de un plug-in para Eclipse al
que se ha convenido en llamar COLE-Programming.
Figura 3. Herramientas colaborativas de COLE-
Programming en el entorno COALA.
Los resultados de los primeros experimentos de uso
como se verá en la conferencia son muy satisfactorios.
7. Referencias
Código'fuente,'mensaje'
de'error,'etc.'
Mensaje'de'descripción' [1] Jurado, F.; Molina, A. I.; Redondo, M. A.;
Tipo'de'mensaje' Ortega, M.; Giemza, A.; Bollen, L. & Hoppe, H.
(código,'error,'warning,'etc.)'
U. (2009), 'Learning to Program with COALA, a
Id'del'mensaje'
compar<do' Distributed Computer Assisted Environment',
Journal of Universal Computer Science 15(7),
1472-1485.
[2] Jurado, F.; Redondo, M. A. & Ortega, M. (2009),
Providing Instructional Guidance with IMS-LD in
COALA, an ITS for Computer Programming
Learning, in 'Proceedings of the Eclipse/Jazz
Technologies for E-Learning, Special Session in
Figura 4. Forma en la que se comparte código, Distance Education Technology (DET 2009)
alertas y mensajes de error. International Workshop, The 15th International
Conference on Distributed Multimedia Systems
(DMS'09)', pp. 211-215.
En la figura 5 observamos la forma en la que el [3] Jurado, F.; Molina, A. I.; Redondo, M. A. &
profesor, en este caso, pero cualquier alumno también Ortega (2011), Un Enfoque Distribuido Basado
puede hacer anotaciones a mano alzada sobre el en Estándares para la Integración de Servicios y
programa a realizar, reforzando el uso de la Agentes en Sistemas de eLearning, in Sierra, J.L.
programación por pares. & Sarasa, A. eds., Avances en Ingeniería del
Software Aplicada al E-learning, Universidad
Complutense de Madrid - Área de Ciencias
Exactas y de la Naturaleza, pp. 87-102.
[4] Jurado, F.; Redondo, M. A. & Ortega, M. (2012),
Blackboard Architecture to Integrate Components
and Agents in Heterogeneous Distributed
eLearning Systems: An Application to Learning
to Program, Journal of Systems and Software.
vol. 85, Issue 7, pp. 1621–1636.
Figura 5. Escritura a mano alzada en COLE-
Programming.