- Eines per a l'avaluació (rúbriques, portafolis, contractes d'aprenentatge...)
- Altres recursos digitals
Metodologías activas para favorecer el aprendizaje profundo de los estudiantes
Acciones para fomentar la empleabilidad y el emprendimiento.
Fomento de la competencia digital en en el estudiantado.
La industria del software dispone de multitud de herramientas destinadas a la evaluación y comprobación del código fuente y de los programas. En los últimos cursos, este grupo de innovación ha implantado diferentes herramientas para el mantenimiento y la gestión del código en las prácticas de laboratorio y para proporcionar realimentación rápida en las asignaturas de programación de varios grados. Pero hasta ahora no se han abordado las actividades de evaluación en estas asignaturas como parte de los objetivos de innovación.Este proyecto tiene como objetivo la incorporación en la actividad docente de herramientas de evaluación y análisis de código fuente propias de la industria, con el fin de generar evidencias que servirán al estudiantado para evaluar y regular su proceso de aprendizaje y al profesorado como ayuda en la evaluación.Se desarrollarán tres líneas de acción: se ampliarán las herramientas de realimentación automática basadas en jupyter+nbgrader, desarrolladas en el último PID concedido; se integrará el sistema de control de versiones desplegado en los anteriores PID con un servidor de evaluación automatizada (con Jenkins+SonarQube); se desarrollarán herramientas de análisis estadístico para extraer información del servidor de control de versiones como evidencias del ritmo de trabajo y organización del trabajo en equipo del estudiantado. Se adaptará la metodología docente de las asignaturas involucradas, de tal manera que el estudiantado recibirá realimentación de manera inmediata tras cada progreso intermedio en las tareas de programación.Como resultado de este proyecto se potenciarán la autoevaluación y la evaluación formativa, proporcionando al estudiantado mayor capacidad para tomar decisiones sobre su propio aprendizaje. Además, la incorporación de metodologías de desarrollo propias del ámbito profesional mejorará la empleabilidad y la capacidad emprendedora del estudiantado.
La finalidad del proyecto es desarrollar herramientas de apoyo a las actividades de evaluación en las asignaturas de programación, empleando métodos y tecnologías propios de un equipo profesional de desarrollo software.
Antecedentes
Los proyectos de innovación ejecutados en las convocatorias anteriores han tenido, como acción central, la puesta en marcha de un servidor con un Sistema de Control de Versiones (SCV) en el Departament d’Informàtica, para su utilización en las asignaturas de programación de los grados de la ETSE-UV. Los Sistemas de Control de Versiones son repositorios centralizados de código fuente, empleados en los equipos profesionales de desarrollo. Estos sistemas requieren, además, la adopción de metodologías de desarrollo específicas, ampliamente usadas en el ámbito profesional. Estas metodologías se han incorporado también a la práctica docente de las asignaturas de programación. Puede encontrarse la documentación generada y otras evidencias en la web del grupo (https://diversion.blogs.uv.es/) y en el propio servidor de repositorios (https://diversion.uv.es/scm/).
En el último PID concedido (del curso 2022-2023), se han empleado además diferentes herramientas (Jupyter notebook, Kernel de Java, nbgrader, Jupyter Hub, Git, entre otras) con el fin de ofrecer tareas para asignaturas de programación que incorporaran retroalimentación al estudiantado sobre su desempeño. Dos objetivos principales eran, por un lado, permitir la autorregulación del aprendizaje por parte del alumnado y, por otro, conseguir una mayor motivación a la hora de realizar estas tareas. Durante el curso de vigencia de este proyecto,
se han desarrollado 11 notebooks que han cubierto prácticamente todos los temas de una asignatura y el alumnado ha mostrado un alto grado de satisfacción al incluir este tipo de tareas en la metodología docente. En este proyecto se mantendrá y ampliará su uso.
Además, se ha definido un flujo de trabajo simple y claro (tanto para el profesorado como para el alumnado) que permite:
• Que el profesorado pueda desarrollar tareas de programación cortas que incorporan retroalimentación sobre el desempeño.
• Que el alumnado pueda obtener estas tareas desde un repositorio de control de versiones.
• Que el alumnado pueda realizar estas tareas (en las que puede escribir código en un lenguaje de programación) desde un navegador, tanto en local como en remoto.
Como resultado de este trabajo, se ha creado repositorio público en Github (https://github.com/jgutie2r/jupyter-java-nbgrader) con todos los artefactos para que otros centros puedan adoptar el uso de estas herramientas.
Tras los resultados de los tres Proyectos de Innovación realizados, las asignaturas de programación utilizan actualmente una infraestructura de desarrollo muy potente, que integra SCV y que podría comunicarse con otras herramientas propias de la Ingeniería del Software. Muchas de estas herramientas están específicamente diseñadas para comprobar que el código fuente de un proyecto funciona correctamente y que sigue ciertos estándares de calidad. Estas comprobaciónson, también, propias de la evaluación de una asignatura de programación en lo que respecta a los resultados del aprendizaje relacionados con competencias específicas de informática. En el último PID se están realizando pruebas con herramientas de evaluación y verificación de programas y de código fuente, aunque todavía no se han incorporado al trabajo en el aula.
También existen en la industria herramientas destinadas a hacer un seguimiento del progreso de un proyecto de desarrollo. Este seguimiento es similar al que se hace del trabajo del estudiantado y que permite determinar los resultados del aprendizaje relacionados con competencias generales y transversales.
En resumen, disponemos de una potente infraestructura para la docencia de programación, que habilita el uso de metodologías activas de aprendizaje, y la utilización en el aula de las prácticas y herramientas propias de un equipo profesional de desarrollo. Se han iniciado acciones orientadas a la realimentación y a la evaluación formativas, aunque no se han generalizado todavía a todas las asignaturas involucradas en el proyecto. Pensamos, en definitiva, que no hemos explorado aún toda la potencia que ofrecen las herramientas que estamos empleando para su uso en la evaluación.
Objetivos específicos
La propuesta para este proyecto es combinar varias de estas herramientas para adaptarlas a las actividades de evaluación, especialmente por medio de la generación de evidencias tanto para el estudiantado (para autoevaluación y evaluación formativa) como para el profesorado (para evaluación formativa y evaluación sumativa).
Como objetivos específicos se plantean:
• Despliegue de la infraestructura informática necesaria para la realización de evaluaciones automatizadas del código de un proyecto de software.
• Ampliación del sistema de realimentación rápida para generar informes de evaluación detallados.
• Adaptación de la metodología docente y de los materiales de un conjunto de asignaturas.
• Desarrollo de herramientas para el seguimiento de las actividades de desarrollo del estudiantado.
• Documentación y difusión de los resultados.
Subvenció concedida: 600€
Grau en Enginyeria Multimèdia
Grau en Enginyeria Telemàtica
Ingeniería Sociedad y Universidad
Programación
Estructuras de datos y algoritmos
Asignatura GIM
Ingeniería del software I
Programación avanzada
Gráficos por computador
Interacción multimodal
Desarrollo de videojuegos
Aplicaciones para dispositivos móviles
Trabajo Fin de Grado
Estudiantes de 20 asignaturas de los Grados de Ing. Informática, Ing. Multimedia e Ing. Telemática
los resultados del proyecto se han presentado en las jornadas de la ETSE.
A lo largo de la ejecución del proyecto se han llevado a cabo la mayor parte de las actividades propuestas. En concreto, se han completado casi totalmente las actividades relacionadas con la creación y despliegue de infraestructura de computación en la nube para la realización de tests automatizados de código fuente y de evaluación de actividades de programación, y se cuenta con un prototipo funcional; se ha ampliado y mejorado el sistema de realimentación rápida en actividades de programación para sesiones teórico-prácticas; y se han llevado a cabo actividades de documentación y de difusión relacionadas con estas tareas del proyecto. Ha quedado pendiente la aplicación de la infraestructura de tests automatizados, ya que el prototipo no se ha completado con suficiente antelación como para implantarlo en las actividades de enseñanza y aprendizaje. Se ha avanzado también en el desarrollo de herramientas de seguimiento del progreso del estudiantado, aunque no se han completado por depender parcialmente de la plataforma de tests automatizados.
A continuación, se presenta, de forma más detallada, el grado de finalización de cada una de estas actividades. Las actividades se presentan en el mismo orden en que se propusieron en la memoria de solicitud del proyecto.
Despliegue y configuración de la infraestructura tecnológica para implantación de metodologías de tests automáticos. Esta actividad era el reto técnico de mayor entidad en el proyecto. Su grado de consecución ha sido muy satisfactorio, ya que se dispone de un primer prototipo funcional que cumple con los objetivos planteados.
Para esta actividad se ha contado con la participación de un estudiante del Grado en Ingeniería Telemática que, además, ha centrado su TFG en el desarrollo y despliegue de la infraestructura. Se ha preparado documentación y se han tenido en cuenta los casos de uso más frecuentes. El principal obstáculo que se ha encontrado en esta actividad ha sido la complejidad técnica de la misma. Esto ha hecho que se haya alcanzado un prototipo usable a principios del mes de junio, con el curso ya finalizado, por lo que ha sido imposible su puesta en marcha en el aula. No obstante, el material preparado está listo para su implantación el curso próximo. El reto era plantear un sistema automatizado que permitiera obtener evidencias (para el alumnado y para el profesorado) a partir del código disponible en el control de versiones. Para ello se ha usado Jenkins (que permite definir pipelines con diferentes etapas), SonarQube (para realizar un análisis estático del código), test unitarios (para realizar comprobaciones sobre el código) y herramientas de gestión del software para construir los artefactos (por ejemplo, Maven). Jenkins se encarga de orquestar todas las etapas y de recolectar la información que se pondrá a disposición del alumnado y del profesorado (en el propio sistema de control de versiones). Tras la realización de las pruebas de rendimiento, se ha constatado que se necesita una infraestructura escalable ya que con un solo servidor se pueden atender concurrentemente una decena de peticiones. Este será uno de los objetivos a abordar en la continuación del proyecto el próximo año. Como evidencia se presenta la memoria del TFG desarrollado.
Ampliación del sistema de realimentación en actividades de programación. Esta tarea se ha completado de manera satisfactoria.
Como continuación del proyecto de innovación desarrollado en el curso 22/23, en este curso se han usado los Jupyter Notebooks en una práctica de laboratorio de la asignatura Programación de tercer curso del Grado en Ingeniería Telemática (que en la que se realizó la prueba piloto el curso anterior). Para ello se diseñó un notebook diferente para cada grupo de laboratorio. Este notebook integraba test para permitir una retroalimentación sobre cada apartado (de este modo el alumnado podía comprobar su progreso). Al final de la sesión los notebooks completados se entregaban en Aula Virtual. Una vez que todos los grupos realizaron la entrega, se descargaron las entregas y se procesaron localmente con
nbgrader (que ejecutaba test adicionales). Tanto las notas como el feedback (que nbgrader almacena en una base de datos SQLite) se extrajeron y se transformaron al formato que admite Aula Virtual. Esta información se cargó en Aula Virtual de tal forma que el alumnado podía ver su nota (integrada en el sistema de calificciones) y la retroalimentación.
Tras la realización de esta actividad de innovación, se planteó una encuesta al alumnado con los siguientes resultados:
Como se puede observar en los resultados, la valoración de la actividad ha sido positiva. Se resalta que un 93.3% considera que esta metodología se debería implantar en más sesiones, lo que nos confirma la conveniencia de generalizarlo a otras asignaturas.
Como reflexión final, a partir de los datos parece que este tipo de actividad es valorada por el alumnado, pero conlleva un trabajo considerable ya que requiere el diseño de un Jupyter Notebook diferente para cada grupo de laboratorio (para evitar las copias).
Como evidencia, se presenta un documento de instrucciones sobre cómo emplear el sistema integrado en Aula Virtual que se ha elaborado como ayuda para el profesorado.
Adaptación de asignaturas para uso de metodologías de tests automáticos. Como se ha indicado, esta tarea dependía de la consecución del sistema de tests automáticos, que no se ha podido completar a tiempo para su uso en el aula. No obstante, el sistema se ha desarrollado teniendo en cuenta los requisitos planteados por el profesorado de las asignaturas involucradas. Por este motivo, su implantación a lo largo del curso próximo será casi inmediata.
Herramientas de seguimiento del progreso del estudiantado. Esta tarea dependía parcialmente del sistema de tests automáticos, por lo que no se ha podido competar. Sí se han realizado tareas de desarrollo de scripts que extraen indicadores de los repositorios de control de versiones, que se utilizarán para su integración con el resto de las herramientas una vez se implante el sistema de tests. La interfaz web queda como tarea pendiente por no haber sido posible finalizarla en el plazo previsto. Esto se ha debido, principalmente, a que se subestimó el coste de realizar la tarea de desarrollo de sistema de tests en la propuesta y no ha sido posible completar este objetivo. Por tanto, el objetivo se consiguió parcialmente y se completará progresivamente.
Documentación y difusión de los resultados. Además de la documentación generada para el sistema de tests automatizados y para el sistema de realimentación rápida, se han realizado actividades de difusión de los resultados del proyecto. Este año se ha escogido la Jornada de Innovación Educativa de la ETSE-UV como foro en el que presentar el proyecto. Se adjuntan certificado de asistencia y presentación.
Como principal debilidad del proyecto, hemos identificado la dificultad técnica del mismo. Analizando en perspectiva los sucesivos proyectos, observamos una creciente dificultad técnica de los mismo. Pensando en futuras ediciones, entendemos que debemos realizar una mejor estimación de la dificultad técnica, de tal manera que se garantice su viabilidad técnica. Dado que el proyecto era también muy ambicioso, entendemos que los niveles de logro alcanzados son satisfactorios, a pesar de no haberse alcanzado todos los objetivos de forma completa.
Se han adaptado los enunciados e instrucciones de las actividades que emplean el sistema de realimentación rápida para indicar al estudiantado el procedimiento de entrega y evaluación con la nueva versión del mismo. Se han diseñado Jupyter Notebooks para cada grupo de laboratorio
https://github.com/jgutie2r/jupyter-java-nbgrader
- GARCIA FERNANDEZ, IGNACIO
- PDI-Titular d'Universitat
- GUTIERREZ AGUADO, JUAN
- PDI-Titular d'Universitat
- Director/a Titulacio Master Oficial
- GARCIA FERNANDEZ, IGNACIO
- PDI-Titular d'Universitat
- GUTIERREZ AGUADO, JUAN
- PDI-Titular d'Universitat
- Director/a Titulacio Master Oficial
- ALBERT BLANCO, JESUS V
- PDI-Titular d'Universitat
- Delegat/Delegada Rector/A
- Modenitzacio Dels Sistemes de Gestio Academica
- BARBER MIRALLES, FERNANDO
- PDI-Titular d'Universitat
- Coordinador/a Curs
- CASANOVA SALAS, PABLO
- PDI-Associat/Da Universitari/A
- PIT-Tecnic/a Mitja/Na Uv
- COMA TATAY, INMACULADA
- PDI-Titular d'Universitat
- Vicedega/Vicedegana / Vicedirector/a Ets
- DE RUS ARANCE, JUAN ANTONIO
- PI-Invest Formacio Predoc Fpu
- DURA MARTINEZ, ESTHER
- PDI-Titular d'Universitat
- GARCIA CALDERARO, JOSE FRANCISCO
- PDI-Col.laborador/A
- GIMENO SANCHO, JESUS
- PDI-Titular d'Universitat
- Coordinador/a Curs
- LOZANO IBAÑEZ, MIGUEL
- PDI-Prof. Permanent Laboral Ppl
- PEÑA ORTIZ, RAUL
- PDI-Prof. Permanent Laboral Ppl
- PEREZ AIXENDRI, MANUEL
- PDI-Associat/Da Universitari/A
- PAS-Etm Investigacio
- RIERA LOPEZ, JOSE VICENTE
- PDI-Ajudant Doctor/A
- ROMITTI -, GIADA SIRA
- PI-Invest Formacio Predoc Ministeri