Tabla de Contenidos
Consideraciones
En esta sección se recogen algunas consideraciones y algunos consejos prácticos para el uso de preguntas externas con ficheros
Evaluación directa vs. evaluación con etiquetas. Preguntas simples y compuestas
Al evaluar una pregunta basada en un fichero no suele ser suficiente una evaluación simple que determine únicamente si la pregunta ha sido respondida de forma correcta o incorrecta. La evaluación directa está limitada a casos sencillos.
Por eso, la mayoría de las preguntas de evaluación mediante ficheros requieren el uso de etiquetas de evaluación. Cada una de las pruebas de ejecución es en cierta forma un ítem que proporciona un poco de información. Puesto que en Siette pueden usarse items politómicos y modelos de crédito parcial, en el caso de que haya varias pruebas relativamente iguales, pueden utilizarse etiquetas correspondientes a una discretización de la evaluación, por ejemplo acumulando puntos según el número de pruebas que se satisfagan, usando por ejemplo la instrucción @eval add all del lenguaje SPSL.
En casos mas complicados, es mejor utilizar preguntas compuestas, (cada una de ellas a su vez podría ser evaluada con crédito parcial) ya que cada una de las subpreguntas representaría una restricción que el fichero enviado debe cumplir. Esta es una buena forma de implementar mecanismos de tipo CBR (Constraint Base Reasoning)
Pruebas públicas y privadas
En la práctica de evaluación mediante ficheros salta se ponen de manifiesto algunos potenciales problemas de la evaluación cuando esta se hace exclusivamente mediante casos de uso.
Esta técnica tiene muchas ventajas, ya que resulta muy fácil de implementar y no requiere un análisis profundo del código. Este mismo es su punto débil, al no realizarse un análisis profundo del código es a veces posible que el alumno circunvale la realización de la tarea ofreciendo directamente un programa que de los mismos resultados para un conjunto de casos de prueba conocidos, engañando así al sistema y devaluando la calidad de la evaluación.
Cuando se utilizan exclusivamente casos de prueba en la terminología de Siette distinguimos dos tipos:
- Pruebas públicas, que son aquellas que se muestran al alumno como ejemplo, y qué debe conocer y probar.
- Pruebas privadas, entendiendo como tales, pruebas secretas que solo el profesor conoce y están ocultas a los alumnos.
Es importante, para una evaluación sumativa, que el alumno no conozca al menos parte de estos casos de prueba. Para una evaluación formativa es menos importante, ya que el alumno no tiene ningún aliciente para intentar engañar al sistema. Por otra parte, es conveniente que el alumno conozca las pruebas que debe superar su programa, ya que esto forma parte de las especificaciones.
Como consejo general, los casos de prueba públicos y privados deben ser similares, cambiando solamente algunos valores numéricos para evitar fraudes. Por otra parte, los casos de prueba deberían ser lo más independientes posibles unos de otros, entendiendo como un único caso de prueba una pareja de pruebas pública y privada similares. La experiencia en el uso de la evaluación con ficheros determinará en gran medida la forma de proceder mas adecuada a la materia que se quiera evaluar.
Por último, conviene mencionar que hay otras alternativas al uso exclusivo de pruebas ocultas o privadas, como por ejemplo realizar un análisis mas profundo del código, su complejidad, detectar el uso procedimientos recursivos, o detectar el abuso de ciertas sentencias, etc. Cada caso puede ser diferente y requerir soluciones distintas.