El objetivo de esta investigación fue comparar la programación individual, por
pares y colectiva a través de las percepciones de 24 estudiantes del curso
universitario Programación intermedia con Visual Basic.Net. Los participantes
fueron expuestos a las tres modalidades de trabajo en el desarrollo de proyectos
de
El desarrollo de
En los cursos universitarios de programación es habitual trabajar de manera
individual para llevar a cabo ejercicios y prácticas de clase (
Aunque el término
Si en los cursos universitarios de programación se puede trabajar de manera individual, por pares o en modalidad Mob, surgen las siguientes preguntas: ¿cuál de estos enfoques es el más apropiado?, ¿cuál es la percepción de los alumnos respecto a estas tres formas de trabajo?, ¿cuáles son las diferencias entre estas modalidades? En este artículo presentamos nuestra experiencia al aplicar los tres enfoques en un grupo de estudiantes universitarios con el objetivo de comparar sus percepciones y brindar respuestas a estas preguntas. Planteamos la hipótesis de que existen diferencias entre las percepciones de los alumnos acerca de las tres modalidades, y que los enfoques colaborativos (par y Mob) se privilegiarán sobre la programación individual.
El trabajo está organizado en cuatro secciones: la primera contiene los antecedentes que han sido reportados previamente en la bibliografía, la segunda describe la metodología que condujo nuestra investigación, la tercera comparte los resultados y su discusión, y la cuarta expone las conclusiones, las recomendaciones y los trabajos futuros.
La programación por pares o por parejas fue propuesta como parte del enfoque ágil
denominado "programación extrema" a finales de la década de los
noventa; desde entonces, su popularidad ha crecido y su estudio se ha realizado
desde diferentes ángulos de interés.
A lo anterior,
Otro aspecto poco estudiado de la programación por pares es el uso de entornos
integrados de desarrollo (IDE).
De acuerdo con
Para
La programación Mob, también llamada
Actualmente, quienes han empleado la programación Mob en entornos de negocios expresan que, aunque pasaron por etapas de adaptación, han obtenido beneficios al trabajar en equipos de más de tres personas; sin embargo, todavía no queda claro cuáles son estos, en qué medida se obtienen y cómo se alcanzan, pues los aportes provienen, principalmente, de relatos vivenciales que son difíciles de cuantificar.
Por otra parte,
Fuente: elaboración propia.
Programación por pares
Programación Mob
•La programación por pares en cursos introductorios ayuda a
que los alumnos obtengan calificaciones más altas en cursos
avanzados (
•Hacen falta experimentos científicos orientados a conocer
más sobre la programación Mob (
•La programación por pares es una herramienta útil que
mejora la comunicación entre los estudiantes, la comprensión
de los temas y, además, desencadena nuevas ideas (
•La programación Mob reduce los trámites administrativos y
las juntas extensas; promueve el aprendizaje continuo, la
satisfacción en los integrantes del equipo y la calidad del
Nuestra investigación tuvo como objetivo comparar las percepciones de los estudiantes acerca de los enfoques de programación individual, por pares y Mob, con el propósito de contar con elementos validados empíricamente que permitan valorar la factibilidad de la implementación de alguno de estos tres enfoques. De esta manera, será posible establecer en el futuro acciones y estrategias que faciliten su adopción en cursos universitarios. Esto es importante porque en la actualidad las mediciones para determinar comparaciones son escasas en este contexto, en especial en el caso de la programación Mob.
Las preguntas orientadoras del estudio fueron: ¿cuál de estos tres enfoques (individual, por pares, Mob) es el más apropiado en el contexto de la docencia universitaria?, ¿cuál es la percepción de los alumnos respecto a estos?, y ¿cuáles son las diferencias que existen entre estas modalidades?
Para esta investigación, utilizamos un diseño explicativo secuencial (
Aplicamos también un cuestionario y un análisis estadístico de datos para el enfoque cuantitativo, además de entrevistas en profundidad para el enfoque cualitativo.
Participaron 24 estudiantes que cursaban la materia de Programación intermedia en el tercer semestre de la Licenciatura de Tecnologias de la Información. Su edad oscilaba entre 19 y 25 años, con una media de 20.70 y desviación estándar de 2.01. De estos, 20 correspondían al género masculino y cuatro, al femenino. Durante el desarrollo de este trabajo, los alumnos asistieron a sesiones regulares de clase y no sabían que esta investigación se estaba efectuando; por ello, no les ofrecimos algún incentivo o remuneración por sus respuestas. Todos los participantes habían cursado y aprobado previamente los cursos universitarios Fundamentos de la informática y metodología de la programación y Programación básica. El primero se concentró en la lógica necesaria para realizar algoritmos computacionales y el segundo, en la solución de problemas con estructuras básicas de pro gramación en el lenguaje Visual Basic.Net.
Este trabajo se realizó en el laboratorio de cómputo al que los estudiantes
asisten con regularidad a sus clases de programación. En este lugar tienen
acceso a 30 computadoras con procesador Intel i5, monitores de 21 pulgadas y
disco duro de 1 tb. Estos equipos tienen instalado el sistema operativo Windows
8 y el entorno integrado de desarrollo Visual Studio con el lenguaje Visual
Todos los participantes tenían experiencia de trabajo individual, pues esa era la manera habitual de realizar sus prácticas hasta ese momento; sin embargo, desconocían los enfoques de programación por pares y Mob. Para fines de esta investigación, primero, en una sesión de clase, les solicitamos a los participantes programar de manera individual. En otra sesión diferente, les pedimos trabajar en parejas y, en una tercera sesión, con programación Mob. Finalmente, los invitamos a responder el cuestionario basándose solo en la experiencia de estos tres momentos de trabajo.
Cada sesión duró dos horas. El tiempo se distribuyó de esta forma: durante los primeros quince minutos esperamos a que todos los alumnos llegaran al laboratorio; después, pasamos lista y explicamos las reglas del trabajo de cada metodología empleada; en seguida, les presentamos el programa que debían realizar y asignamos, de manera aleatoria, los alumnos a las computadoras del laboratorio. En el caso de las modalidades por parejas y Mob, los equipos fueron creados también de modo aleatorio. Todas estas actividades se ejecutaron en veinte minutos. Los alumnos tuvieron 85 minutos para desarrollar el programa planteado. Durante la investigación, ningún alumno podía contactar a personas externas a su equipo. Tampoco les permitimos copiar el trabajo de alguien más; sin embargo, sí podían consultar información a través de internet.
En la modalidad individual, cada alumno fue asignado a una computadora. El
programa que se solicito utilizo una arquitectura de
Cada pareja de alumnos utilizó una sola computadora, donde cada participante tuvo
que usar el teclado durante cinco minutos y luego cederlo a su compañero. Los
investigadores cronometraron el tiempo y avisaron cuando era momento de cambiar
el teclado. El programa solicitado utilizó una arquitectura de
Los estudiantes fueron asignados aleatoriamente a cuatro equipos de seis personas
que se ubicaron en espacios de trabajo distintos, pero dentro de la misma área
del laboratorio de prácticas al que ellos asisten a clase. A cada equipo se le
asignó una sola computadora con las características descritas en el apartado
"escenario" de este artículo. Además, dispusieron de seis sillas, un
proyector, una superficie para proyectar, y un espacio de trabajo. Cada equipo
se autoorganizó para trabajar. Ellos tuvieron esta libertad, siempre y cuando el
equipo actuara de manera unida, respetuosa y afín a los principios de la
programación Mob. El programa solicitado fue una interfaz gráfica para realizar
diversas consultas de registros almacenados en una base de datos y utilizó una
arquitectura de
Diseñamos un cuestionario con las preguntas que se muestran en la
Fuente: elaboración propia.
Pregunta
Aspecto a evaluar
1
Calificación global de la metodología
2
Facilidad de entender la metodología
3
Facilidad de implementar la metodología
4
Facilidad de adaptar la metodología
5
Facilidad para trabajar con la metodología
6
Experiencia al trabajar con la metodología
7
Detección de errores en el programa
8
Rapidez para finalizar el programa
9
Calidad del proceso de desarrollo
10
Facilidad para comunicarse
11
Motivación para trabajar en el proyecto
12
Organización para trabajar
13
Nivel de confianza en el éxito del proyecto
14
Nivel de satisfacción con el trabajo realizado
Todas las respuestas fueron capturadas en el paquete SPSS, en el cual se realizó
un proceso de revisión y limpieza de datos. No encontramos valores perdidos o
atípicos. Posteriormente, las respuestas se transformaron como se indica en la
Fuente: elaboración propia.
Valores antiguos
(respuesta s proporcionadas
por los estudiantes)
Valores nuevos
(nuevos valores
transformados)
1,2
1
3,4
2
5,6
3
7,8
4
9,10
5
Después se realizó un análisis factorial considerando de la pregunta 2 a la 14. Encontramos tres dimensiones que identificamos con nombres representativos. Luego, calculamos el alfa de Cronbach para cada una de estas. En este proceso obtuvimos también la participación de cada pregunta en su respectiva dimensión. En seguida, calculamos un valor ponderado para cada dimensión; para ello, multiplicamos cada respuesta categorizada de los estudiantes por el porcentaje correspondiente a la participación de esta pregunta en esa dimensión.
Finalmente, realizamos pruebas de Friedman para distinguir diferencias
estadísticas significativas entre los valores de cada una de las dimensiones
para los tres enfoques metodológicos estudiados. También con la prueba de
Friedman buscamos diferencias entre la calificación global que los estudiantes
asignaron a cada uno de los tres enfoques metodológicos. La
Para el componente cualitativo de esta investigación tomamos como referencia los resultados cuantitativos obtenidos: la programación por pares obtuvo las más altas puntuaciones, mientras que la programación Mob y la modalidad individual recibieron las más bajas. Por esta razón, realizamos entrevistas con preguntas abiertas orientadas a conocer más sobre las razones de estos hallazgos. Formulamos las siguientes preguntas: ¿cuáles son las ventajas que percibes de la programación por pares sobre la programación Mob y la programación individual?, ¿cuáles son los principales problemas que encontraste al trabajar con la programación Mob?, ¿cuáles son los principales problemas que encontraste al trabajar con la programación individual?, ¿qué opinas sobre la posibilidad de implementar la programación por pares o la programación Mob como práctica cotidiana en los cursos universitarios?
De los 24 estudiantes que intervinieron en la fase cuantitativa, cinco estuvieron disponibles y dispuestos a participar en las entrevistas de la fase cualitativa. Aunque solo dos brindaron entrevistas extensas y ricas en contenido, mientras que los otros tres aportaron ideas en frases cortas que estaban contenidas en las respuestas de los dos estudiantes que se presentan en este artículo.
En ese sentido,
Para encontrar las tres dimensiones que mostramos en la
Fuente: elaboración propia.
Dimensión
Pregunta
Aspecto a evaluar
Aspectos de gestión del proceso y del equipo
2
Facilidad de entender la metodología
4
Facilidad de adaptar la metodología
9
Calidad del proceso de desarrollo
10
Facilidad para comunicarse
12
Organización para trabajar
13
Nivel de confianza en el éxito del proyecto
Aspectos de implementación
3
Facilidad de implementar la metodología
5
Facilidad para trabajar con la metodología
6
Experiencia al trabajar con la metodología
11
Motivación para trabajar en el proyecto
14
Nivel de satisfacción con el trabajo realizado
Aspectos de depuración
7
Detección de errores en el programa
8
Rapidez para finalizar el programa
Fuente: elaboración propia.
Id
Aspecto a evaluar
Correlación tota l de
elementos corregida
Participación de cada pregunta
en esa dimensión
2
Facilidad de entender la metodología
0.846
0.170
4
Facilidad de adaptar la metodología
0.866
0.174
9
Calidad del proceso de desarrollo
0.795
0.160
10
Facilidad para comunicarse
0.872
0.175
12
Organización para trabajar
0.850
0.171
13
Nivel de confianza en el éxito del proyecto
0.732
0.147
Fuente: elaboración propia.
Id
Aspecto a evaluar
Correlación tota l de
elementos corregida
Participación de cada pregunta
en esa dimensión
3
Facilidad de implementar la metodología
0.799
0.199
5
Facilidad para trabajar con la metodología
0.792
0.197
6
Experiencia al trabajar con la metodología
0.831
0.207
11
Motivación para trabajar en el proyecto
0.775
0.193
14
Nivel de satisfacción con el trabajo realizado
0.823
0.205
Fuente: elaboración propia.
Id
Aspecto a evaluar
Correlación tota l de elementos
corregida
Participación de cada pregunta
en esa dimensión
7
Detección de errores en el programa
0.889
0.500
8
Rapidez para finalizar el programa
0.889
0.500
La prueba de Friedman aplicada para establecer diferencias en la primera dimensión (aspectos de gestión del proceso y del equipo) resultó significativa (PValue = 0.005, Jí cuadrado = 10.564, n = 24, gl = 2); las puntuaciones más altas fueron para la programación por pares (rango promedio = 2.46) y las más bajas, para la programación Mob (rango promedio = 1.63). Aunque no encontramos diferencias estadísticas significativas en la prueba de Friedman, en la segunda dimensión (aspectos de implementación) (PValue = .108, Jí cuadrado = 4.447, n = 24, gl = 2), observamos tendencias aritméticas de la programación por pares para obtener las puntuaciones más altas (rango promedio = 2.31) y de la programación Mob para las puntuaciones más bajas (rango promedio = 1.83).
En la tercera dimensión (aspectos de depuración) sí reconocimos diferencias significativas con la prueba de Friedman (PValue = .031, Jí cuadrado = 6.969, n=24, gl=2); las puntuaciones más altas fueron para la programación por pares (rango promedio = 2.23) y las más bajas, para la programación individual (rango promedio = 1.65). En la calificación global que los estudiantes otorgaron a las metodologías no distinguimos diferencias significativas con un nivel de confianza del 95% como referencia, pero puede con siderarse significativa con un 90% de confianza como referencia, al tratarse de una investigación inicial. Los resultados de esta comparación con la prueba de Friedman fueron: PValue = 0.062, Jí cuadrado = 5.548, gl = 2. Las puntuaciones más altas correspondieron a la programación por pares (rango promedio = 2.29) y las más bajas, a la programación Mob (rango promedio = 1.75).
Las entrevistas para el apartado cualitativo revelaron que a los alumnos les
gusta programar por pares porque lo perciben como un punto medio entre no
programar con nadie y hacerlo con un grupo numeroso. Programar de manera
individual puede provocar equivocaciones, tensión, bloqueo intelectual y
aprehensión por la responsabilidad del trabajo; por otra parte, programar con
demasiadas personas simultáneamente puede generar desorden, estrés, distracción
y desbalance de trabajo entre los participantes. La
Fuente: elaboración propia.
Pregunta
Resumen de respuesta s del
participante 1 (hombre, 20 años, alumno
regular de tercer semestre)
Resumen de respuesta s del
participante 2 (hombre, 21 años, alumno
regular de tercer semestre)
•¿Cuáles son las ventajas que percibes de la programación
por pares sobre la programación Mob y la programación
individual?
•Tener un compañero con quien resolver los problemas
•Responsabilidad compartida
•¿Cuáles son los principales problemas que encontraste al
trabajar con la programación Mob?
•Genera más estrés trabajar con tantas personas al mismo
tiempo
•Desorganización para trabajar y tomar decisiones
•¿Cuáles son los principales problemas que encontraste al
trabajar de manera individual?
•En ocasiones produce tensión o bloqueo especialmente si se
desconoce cómo resolver los problemas que se presentan. Se
tiene que pedir ayuda a otro compañero o al profesor
•Se siente la responsabilidad total del proyecto
• ¿Qué opinas sobre la posibilidad de implementar la
programación por pares o la programación Mob como práctica
cotidiana en los cursos universitarios?
•Estaría bien implementar la programación por pares
•No estaría bien implementar la modalidad Mob si no hay
espacios de trabajo más privados ni suficientes proyectores
para cada equipo. A lo mejor también habría que entrenar a
los alumnos para trabajar en equipo
Los resultados de este trabajo indican que la programación por pares podría ser el enfoque más apropiado como estrategia didáctica, ya que cuenta con una buena aceptación por parte de los alumnos y, además, su implementación no requiere equipos adicionales o adecuaciones al espacio de trabajo. Los alumnos podrían organizarse en equipos de dos personas para utilizar las computadoras que ya se encuentran instaladas y distribuidas en los laboratorios de cómputo. La percepción de los estudiantes privilegia la programación por pares sobre la individual y la modalidad Mob, pues consideran que es bueno compartir las responsabilidades pero no con demasiadas personas al mismo tiempo, porque las situaciones podrían salirse de control con facilidad. En este sentido, en la programación Mob, la actitud y el comportamiento de algunos estudiantes afectan aspectos como la comunicación, el entendimiento del problema y la organización de las tareas. Por otra parte, al programar individualmente, los alumnos sienten que cometen más errores y que tardan más tiempo en encontrarlos y corregirlos.
Las posturas de los autores de este trabajo concuerdan con las de
Nuestros resultados son semejantes a los de
Para la correcta interpretación de nuestros resultados debe considerar que este estudio se realizó con una muestra pequeña de un curso universitario de nivel principiante-intermedio. Se requiere mayor investigación para comprobar estos hallazgos y profundizar en ellos.
Los alumnos que experimentaron con las tres modalidades de trabajo estudiadas en este artículo mostraron una preferencia por la programación por pares. El uso de la programación Mob no fue reportado como favorable en estos aspectos debido a la interacción múltiple de los participantes y a la falta de consenso en la organización y en la toma de decisiones. La programación individual, por el contrario, limita la interacción continua con otras personas y esto puede ser un impedimento si los participantes no tienen clara la manera de resolver los problemas planteados. Recomendamos promover el trabajo por parejas en los cursos universitarios de programación. Esta práctica puede implementarse fácilmente en las instalaciones existentes de los laboratorios de cómputo en las universidades.
Es necesario continuar con las investigaciones para conocer las maneras más adecuadas de enseñar a programar. En este sentido, se debe profundizar en la aplicación de la programación colaborativa en sus diversas modalidades e involucrar a estudiantes principiantes, intermedios y avanzados.