David Muñoz de la Peña, Fabio Gómez-Estern Universidad de ...

14
D. Muñoz, F. Gómez-Estern 1 Taller CEA EJS. Madrid, 10/3/2011 Goodle GMS Goodle GMS Evaluación automatizada avanzada Taller de aprendizaje David Muñoz de la Peña, Fabio Gómez-Estern Universidad de Sevilla D. Muñoz, F. Gómez-Estern 2 Taller CEA EJS. Madrid, 10/3/2011 Goodle GMS Organización del curso Motivación Herramientas existentes Solución propuesta Conceptos básicos Interfaz de usuario Opciones Modelo de ejecución Robustez y aspectos prácticos Estudio de casos Ejercicios de programación Ejercicios basados en Matlab Ejercicios basados en EJS Talleres Conclusiones

Transcript of David Muñoz de la Peña, Fabio Gómez-Estern Universidad de ...

Page 1: David Muñoz de la Peña, Fabio Gómez-Estern Universidad de ...

D. Muñoz, F. Gómez-Estern1

Taller CEA EJS. Madrid, 10/3/2011 Goodle GMS

Goodle GMSEvaluación automatizada avanzada

Taller de aprendizaje

David Muñoz de la Peña, Fabio Gómez-Estern

Universidad de Sevilla

D. Muñoz, F. Gómez-Estern2

Taller CEA EJS. Madrid, 10/3/2011 Goodle GMS

Organización del curso

MotivaciónHerramientas existentesSolución propuesta

Conceptos básicosInterfaz de usuarioOpciones

Modelo de ejecuciónRobustez y aspectos prácticos

Estudio de casosEjercicios de programaciónEjercicios basados en MatlabEjercicios basados en EJS

TalleresConclusiones

MotivaciónHerramientas existentesSolución propuesta

Conceptos básicosInterfaz de usuarioOpciones

Modelo de ejecuciónRobustez y aspectos prácticos

Estudio de casosEjercicios de programaciónEjercicios basados en MatlabEjercicios basados en EJS

TalleresConclusiones

Page 2: David Muñoz de la Peña, Fabio Gómez-Estern Universidad de ...

D. Muñoz, F. Gómez-Estern3

Taller CEA EJS. Madrid, 10/3/2011 Goodle GMS

Motivatción

La evaluación automática es una pieza clave dele-Learning

PROSEl profesor se centra en tareas creativasGarantiza la equidad en la evaluaciónPermite la evaluación continuaReduce la subjetividad en la correcciónAyuda a planificar los exámenes con más rigorPermite hacer un seguimiento detallado del trabajo del alumno (estadísticas de trabajo, historial de envíos…)Dota al alumno de recursos parta el aprendizajePermite realizar ejercicios individualizadosPermite introducir información aleatoria en los enunciados¡Permite ajustar el nivel de dificultad dinámicamente en función de la evolución del alumnoPermite implementar estrategias de evaluación colaborativa y competitiva. Personalized exams (based on random data generation)Abre nuevas posibilidades aún por explorar

D. Muñoz, F. Gómez-Estern4

Taller CEA EJS. Madrid, 10/3/2011 Goodle GMS

Motivación

Nadie es perfecto!

INCONVENIENTESEs siempre deseable eliminar toda subjetividad en los procesos de evaluación?Puede ser un obstáculo a las soluciones diferentes e innovativaspropuestas por los alumnos.Requiere un intenso esfuerzo de análisis a priori de posibles respuestasLimitaciones propias de las tecnologías disponibles:

Tests de elección múltipleValidación por coincidencia textualSin embargo, en ingeniería resulta insuficiente para calificar la

funcionalidad y rendimiento de los diseños (controladores, programación de algoritmos…)

Page 3: David Muñoz de la Peña, Fabio Gómez-Estern Universidad de ...

D. Muñoz, F. Gómez-Estern5

Taller CEA EJS. Madrid, 10/3/2011 Goodle GMS

Revisión de herramientas existentesWebCT

CaracterísticasSoftware bajo licencia privadaDificil de instalar y mantenter (soporte necesario)Potente gestión de alumnos y cursos (campus-wide)Dificultades para su extensión

Exámenes disponiblesElección múltiple, Comparación de textos, Aritmética básica

MoodleCaracterísticas

Open sourceFunciona en servidores PC con requisitos mínimos (servidor open source)

Utilidades de gestión potentesFácilmente extensible, comunidad software libre

ExámenesElección múltiple, Comparación de textos

D. Muñoz, F. Gómez-Estern6

Taller CEA EJS. Madrid, 10/3/2011 Goodle GMS

Goodle GMS

Nueva herramienta con capacidades intermedias entre los casos anteriores

CarcterísticasOpen source (Matlab requerido)

Fácil instalación, multiplataformaCapacidad de gestión de cursos

Completamente extensible

ExámenesElección múltiple, Comparación de textos

…y una nueva: modelo de evaluación de caja negra

Page 4: David Muñoz de la Peña, Fabio Gómez-Estern Universidad de ...

D. Muñoz, F. Gómez-Estern7

Taller CEA EJS. Madrid, 10/3/2011 Goodle GMS

Qué es el modelo de caja negra?

Se trata de una idea empleada a menudo por profesores de ingeniería para ayudar a evaluar los diseños técnicos de los alumnos.

El trabajo del alumno se evalúa en modo “caja negra”, es decir, como un elemento que procesa una entrada para dar una salida.

El sistema se prueba con una serie de entradas, y para cada una de ellas la salida se compara con la produciría la solución correcta

Este paradigma es muy amplio, el alumno no tiene que ser consciente de este proceso.

Solución alumno

Solución alumno

Datos de entradaDatos de entrada

Solución profesor

Solución profesor

CompararComparar

PuntuarPuntuar

Solución alumno

Solución alumno

Datos de entradaDatos de entrada

Comprobarespecificaciones

Comprobarespecificaciones

PuntuarPuntuar

Unique solutionmodel

Specification-basedevaluation

D. Muñoz, F. Gómez-Estern8

Taller CEA EJS. Madrid, 10/3/2011 Goodle GMS

Más sobre el modelo de caja negraPrincipios

No se evalúan conceptos aislados, sino diseños completosLos alumnos disponen de medios para comprobar la bondad de sus soluciones antes de entregarlasLas soluciones no son únicas, ni tienen por qué ser exactasCada alumno puede resolver una versión o parte diferente del problemaLas notas se calculan según los resultados de la ejecución del código del alumnoLas entregas de trabajos han de ser comprobadas sintácticamente antes de su aceptación

Areas de aplicación (en educación)Programación (modelo de solución exacta)Problemas matémáticos (sol. exacta)Diseño de controladores (basado en especificaciones)Diseño de filtros en telecomunicacionesDiseño de circuitos electrónicosDiseño mecánico y estructural

PID Planta

Specs: Tpo. subida,Error permanente,Dominio frecuencia…

Page 5: David Muñoz de la Peña, Fabio Gómez-Estern Universidad de ...

D. Muñoz, F. Gómez-Estern9

Taller CEA EJS. Madrid, 10/3/2011 Goodle GMS

Arquitectura de la aplicación

Servidor Web ApacheServidor Open sourceBase de datos SQLLenguaje PHP.Opcionalmente: Matlab (controlado mediante COM y TCP/IP)

UsuariosAdministradoresProfesores (diseñadores de ejercicios)Profesores (monitores prácticas)Estudiantes

Estructuras de datosGrupos de alumnosEjerciciosAsignacionesTurnos y asistenciasCalificaciones

D. Muñoz, F. Gómez-Estern10

Taller CEA EJS. Madrid, 10/3/2011 Goodle GMS

Arquitectura de red

Page 6: David Muñoz de la Peña, Fabio Gómez-Estern Universidad de ...

D. Muñoz, F. Gómez-Estern11

Taller CEA EJS. Madrid, 10/3/2011 Goodle GMS

Proceso de evaluación

Execution model

D. Muñoz, F. Gómez-Estern12

Taller CEA EJS. Madrid, 10/3/2011 Goodle GMS

User interface

AlumnoAlumno

Registro: email & clave

Login

Servidor Goodle GMSServidor Goodle GMS

Almacenar datos de registro

ProfesorProfesor

Asignar ejercicios

Diseñar curso y ejercicios

Lanzar evaluación

Resolver ejericios localmente

Entregar por web en formato texto Rechazar errores de sintaxis

Mostrar y almacenar resultados

Cargar listas de claseCargar listas de clase

Login

Almacenar solución en BD

Procesar resultados

Ver calificación e informes

Page 7: David Muñoz de la Peña, Fabio Gómez-Estern Universidad de ...

D. Muñoz, F. Gómez-Estern13

Taller CEA EJS. Madrid, 10/3/2011 Goodle GMS

Interfaz EJS

AlumnoAlumno

Registro: email & clave

Login

Ejecutar apliación EJS

Servidor Goodle GMSServidor Goodle GMS

Almacenar datos de registro

Mostrar y almacenar resultados

Cargar listas de clase

Almacenar solución en BD

El alumno trabaja en EJS

EJS genera el código solución

EJSEJS

Envío EJS->Goodle por TCP

D. Muñoz, F. Gómez-Estern14

Taller CEA EJS. Madrid, 10/3/2011 Goodle GMS

Interfaz del profesor

Definición de un ejercicioEnunciado PDFCódigo de inicializaciónCódigo de evaluaciónSelección de opciones

OptionsPlataforma de ejecución

Compilador C/C++ externo: para cursos de informáticaMatlab: para matemáticas en ingeniería en general

Palabras prohibidas: para evitar código pernicioso o “atajos”Modo de ejecución: única o múltipleFiltro de sintaxis configurableFiltro de IP para restringir envíos fuera del aulaEvaluación competitiva: la nota depende de un ranking

Page 8: David Muñoz de la Peña, Fabio Gómez-Estern Universidad de ...

D. Muñoz, F. Gómez-Estern15

Taller CEA EJS. Madrid, 10/3/2011 Goodle GMS

Interfaz del profesor

Diseño de ejercicios

Cargar listas de clase

Calificar o controlar asistencias

Asignar ejercicios a grupos

Comprobar conexión Matlab

Reserva de aulas y grupos

Datos personales

D. Muñoz, F. Gómez-Estern16

Taller CEA EJS. Madrid, 10/3/2011 Goodle GMS

Cargar listas de alumnos

Añadir alumnos a listas existentes

Cargarlistas de alumnos

Reiniciar claves de usuario

Enviar emails a un grupo

División en subgrupos

Page 9: David Muñoz de la Peña, Fabio Gómez-Estern Universidad de ...

D. Muñoz, F. Gómez-Estern17

Taller CEA EJS. Madrid, 10/3/2011 Goodle GMS

Creación de ejercicios

Introducir info básica y enunciado

Seleccionar o crear un ejercicio

Redactar el código de evaluación

Redactar código de inicialización

Seleccionar opciones de seguridad

Configurar control de sintaxis

Simular una entrega

Crear plantilla para el alumno

D. Muñoz, F. Gómez-Estern18

Taller CEA EJS. Madrid, 10/3/2011 Goodle GMS

Asignación de ejercicios

Establecer fecha de inicio y fin

Asignar una tarea un grupo

Filtrado por dirección

Fecha de fin retardada

Activar/desactivar asignaciones

Visibilidad de las calificaciones

Page 10: David Muñoz de la Peña, Fabio Gómez-Estern Universidad de ...

D. Muñoz, F. Gómez-Estern19

Taller CEA EJS. Madrid, 10/3/2011 Goodle GMS

Gestión de actividades

Los alumnos se pueden inscribir

Cada grupo tiene un horario

Sistema de control de asistencia

Insripción manual/automática

Una actividad (p. ej. práctica de laboratorio) puede requerir una división de un grupo en ubgrupos, por limitaciones de espacio, equipamiento ,etc.

Asistente para crear actividades

D. Muñoz, F. Gómez-Estern20

Taller CEA EJS. Madrid, 10/3/2011 Goodle GMS

Execution model

Evaluación

PrincipiosEl código de inicialización se ejecuta en Matlab (se crean variables en el workspace)A continuación, se ejecuta el código particular del alumno El alumno no ha de conocer el modelo de ejecución (en general no “programa”)

Ejemplo

Escriba la fórmula de las soluciones de la ecuación de segundo gradoax2+bx+c=0

Inicializacióna=100;b=20;

Solución:r1=-b+sqrt(b^2-4ac)/(2a);r2=-b-sqrt(b^2-4ac)/(2a);

Evaluadorif ((r1=-b+sqrt(b^2-4ac) && r2=-b-sqrt(b^2-4ac)) then mark=10

Plantilla

Page 11: David Muñoz de la Peña, Fabio Gómez-Estern Universidad de ...

D. Muñoz, F. Gómez-Estern21

Taller CEA EJS. Madrid, 10/3/2011 Goodle GMS

Evaluación

D. Muñoz, F. Gómez-Estern22

Taller CEA EJS. Madrid, 10/3/2011 Goodle GMS

Evaluación

La calificación automática puede ser un proceso lento y requerir de varias Iteraciones hasta llegar a una evaluación aceptable

Al comportar riesgos de bloqueo, se debe hacer fuera de línea cuando Todos los alumnos hayan entregado su trabajo

El sistema puede generar una nota y una cadena alfanumérica con Información detallada sobre los fallos encontrados en el trabajo.

Dicha información se hará visible al alumno cuando el profesor lo indique

Page 12: David Muñoz de la Peña, Fabio Gómez-Estern Universidad de ...

D. Muñoz, F. Gómez-Estern23

Taller CEA EJS. Madrid, 10/3/2011 Goodle GMS

Evaluación

Calificar individualmenteCalificar todo el grupo Nota del alumnoDatos generales

Acceso al código del alumno

D. Muñoz, F. Gómez-Estern24

Taller CEA EJS. Madrid, 10/3/2011 Goodle GMS

Resolución de problemasMotivación

Tras más de 7000 evaluaciones, se detectó la necesidad de abordar ciertos problemas

Problemas con la sintaxisMuchos envíos tenían errores de sintaxis menores. La calificación era “0” (p.ej. falta ‘;’)El trabajo del alumno debe cumplir unas reglas sintácticas estrictas…y al mismo tiempo el alumno no es consciente del lenguaje de programaciónSolución: comprobar la sintaxis en el momento de la entrega

Problemas de ejecuciónSuponga que el alumno envía el siguiente código

for (i=0;i<100;i--);…el servidor se cuelga en un bucle infinitoSolución: limitar el tiempo que puede correr el código de un alumno)Además, por seguridad, la evaluación se realiza offline Siguiente estudiante

Código del alumno

Watchdog

FinalizaciónNormal

Timeout

Kill proc

Page 13: David Muñoz de la Peña, Fabio Gómez-Estern Universidad de ...

D. Muñoz, F. Gómez-Estern25

Taller CEA EJS. Madrid, 10/3/2011 Goodle GMS

Cursos pasados

Detalles del cursoTeoría de Sistemas, 2º Ingeniería Industrial. 280 estudiantes100% de las prácticas evaluadas automáticamente50% de la teoría evaluada automáticamenteEntorno controlado (Filtros IP, ejercicios personalizados) 5 profesores

ResultadosIncremento en la calificación final (aunque la tasa de abandono no mejora)La asistencia a prácticas aumenta significativamenteEncuesta de satisfacción

Otros cursosControl Automático (340 alumnos). Ingeniería de TelecomunicaciónControl Automático (380 alumnos). Ingeniería IndustrialProgramación C/C++ (610 alumnos). Ingeniería IndustrialOptimización y Control Óptimo (20 alumnos). Ingeniería IndustrialProgramación Matlab (200 alumnos) Ing. Aeronáutica e Ing. Civil

D. Muñoz, F. Gómez-Estern26

Taller CEA EJS. Madrid, 10/3/2011 Goodle GMS

Resultados

Page 14: David Muñoz de la Peña, Fabio Gómez-Estern Universidad de ...

D. Muñoz, F. Gómez-Estern27

Taller CEA EJS. Madrid, 10/3/2011 Goodle GMS

Trabajo en curso

Desarrollar una amplia librería de ejerciciosTarea difícil: implementar evaluadoresDisponible hoy: 7 cursos en la Universidad de SevillaSe esta estudiando crear un asistente para el diseño de evaluadores

Acumular experiencias con los modos cooperativo y competitivo

Proyecto Open SourceLicencia GNUExtensibilidad en modosControl de versiones

Otros lenguajesAvances en la integración con EJSCurso de programación en JavaProgramación en ensamblador

D. Muñoz, F. Gómez-Estern28

Taller CEA EJS. Madrid, 10/3/2011 Goodle GMS

MUCHAS GRACIAS