Diferencia entre revisiones de «Administración de un VPL»

De Documentación Campus Virtual de la UEx
Ir a la navegación Ir a la búsqueda
Sin resumen de edición
Línea 276: Línea 276:
<h3><span class="" style="color: rgb(255, 102, 51); font-size: large; font-family: Verdana, Geneva, sans-serif;">'''Comprobación de servidores de ejecución'''</span></h3>
<h3><span class="" style="color: rgb(255, 102, 51); font-size: large; font-family: Verdana, Geneva, sans-serif;">'''Comprobación de servidores de ejecución'''</span></h3>
<h3><span class="" style="color: rgb(255, 102, 51); font-size: large; font-family: Verdana, Geneva, sans-serif;">'''Servidores de ejecución locales'''</span></h3>
<h3><span class="" style="color: rgb(255, 102, 51); font-size: large; font-family: Verdana, Geneva, sans-serif;">'''Servidores de ejecución locales'''</span></h3>
 
</span>
</div>
== '''Probar actividad''' ==
== '''Probar actividad''' ==
<div style="border-left:#5acabf 7px solid;border-top:#5acabf 2px solid;border-right:#5acabf 2px solid;border-bottom:2px #5acabf solid;">
<div style="border-left:#5acabf 7px solid;border-top:#5acabf 2px solid;border-right:#5acabf 2px solid;border-bottom:2px #5acabf solid;">

Revisión del 09:04 17 dic 2020

Administración de VPL

Una vez creada la actividad, en el Bloque de Administración de la misma, tenemos acceso a las distintas opciones de configuración del Laboratorio de Programación Virtual, como son:

Administracion VPL.PNG
  • Casos de prueba
  • Opciones de ejecución
  • Ficheros requeridos
  • Ajustes avanzados:
  • Ficheros para la ejecución
  • Límites máximos de recursos de ejecución
  • Ficheros a mantener mientras se ejecuta
  • Variaciones
  • Comprobación de servidores de ejecución
  • Servidores de ejecución locales
  • Probar actividad:
  • Entrega
  • Editar
  • Ver entrega
  • Calificación
  • Lista entregas previas
  • Laboratorios virtuales de programación
  • Roles asignados localmente

Casos de prueba

Una vez creada la actividad, si se desea crear un caso de prueba se accede al panel de Administración de VPL > Casos de prueba.
Para utilizar las funciones de evaluación automática de VPL, hay que completar el archivo "vpl_evaluate.cases".
Los casos de prueba permiten configurar los parámetros de entrada y salida a los que se verá condicionada una solución para poder obtener un informe de evaluación satisfactorio. Se despliega una ventana donde se debe definir el caso de prueba. Todo caso de prueba debe incluir una breve descripción, unos parámetros de entrada y salida esperada, y un grado de reducción en caso de fallo.
Para definir los casos de prueba se deben tener en cuenta las siguientes consideraciones:
  • Todo caso de prueba tiene una cabecera que determina el inicio del caso de evaluación. Se pueden definir varios casos de pruebas dentro de un mismo archivo de evaluación, cada uno separado por su cabecera: Case = Name Case
  • Los parámetros de entrada en un caso de evaluación se definen mediante la estructura Input = Text|Number. Las entradas del caso de evaluación pueden comprender varias líneas y culmina cuando se define otra sentencia.
  • La salida que debe arrojar la solución a la actividad se puede definir en el caso de prueba con la estructura Output = Text|Number|Regex. Se pueden definir múltiples salidas y terminan cuando se define otra sentencia.
  • Cuando se definen las salidas de una actividad, se puede definir un grado de reducción, en caso tal, las salidas de la solución planteada no se corresponden a ninguno de los valores esperados. La estructura del grado de reducción o valor asociado a cada uno de los casos de prueba es Grade reduction = Grade Reduction.
  • El grado de reducción de un caso de prueba se define de acuerdo con el sistema de calificación que se defina a la hora de crear la actividad, puede ser ya sea por escala o porcentaje.
En la siguiente imagen mostramos un ejemplo de test de prueba para nuestro VPL Suma simple:
2ejemplo7.png Sumasimple.png
En este otro ejemplo, los 3 test de pruebas son los que se muestran:
Ejemplo2LVP.png CPEjemplo2LVP.png

Opciones de ejecución

En esta página se establecen las diferentes opciones de ejecución de nuesto VPL.

  • Basado en: permite establecer otra actividad VPL de la que tomar referencias, y de la que se toman diversas características:
  • Ficheros de ejecución (los guiones predefinidos se concatenan)
  • Límites de los recursos de ejecución.
  • Variaciones, que se concatenan generando variaciones múltiples.
  • Tamaño máximo de cada fichero a subir
  • Ejecutar script y Script de depuración: podemos establecer un script determinado de entre la lista del desplegable, o dejar la opción "Autodetectar" para que lo detecte según la extensión del fichero de entrega.
  • Ejecutar, Depurar y Evaluar: establecen si se puede usar la opción correspondiente durante la edición de la entrega. Esto sólo afecta a los estudiantes, los usuarios con capacidad de calificación pueden usar estas opciones en cualquier caso.
  • Evaluar al entregar: al subir los ficheros se produce el proceso de evaluación automáticamente.
  • Calificación automática: si el resultado de la evaluación contiene códigos de nota automática estos se toman como nota definitiva.
OE VPL.png

Ficheros requeridos

Aquí se fijan nombres y contenido inicial para los ficheros requeridos. Si damos nombre a nuestro fichero, todas las entregas se harán en el fichero con el nombre especificado por el profesor en la configuración del laboratorio.
Si no se fijan nombres para el número máximo de ficheros establecido en la definición básica de la actividad, los ficheros para los que no se han establecido nombres son opcionales y pueden tener cualquier nombre. Se le pedirá el nombre del fichero al editar la entrega:
FR2.png
Además, se pueden establecer contenidos para los ficheros requeridos, de forma que dichos contenidos estarán disponibles la primera vez que el fichero se abra usando el editor, si no se ha realizado una entrega previa.
En nuestro ejemplo, se especifica la frase #Introducir el código de la práctica, que es lo que debe hacer el alumno, y se guardará con el nombre y extensión ya especificados:
FR VPL.png

Ajustes avanzados

Ficheros para la ejecución

Introducción

Aquí se establecen los ficheros necesarios para la ejecución, depurado o evaluación de una entrega. Esto incluye ficheros script, programas de prueba y ficheros de datos.

Uso general

Estos nuevos ficheros se pueden añadir, o bien creando un nuevo fichero escribiendo su nombre en la caja "Añadir fichero" y pulsando el botón "Añadir fichero", o bien cargando un fichero existente usando el control "Cargar fichero".
Todos los ficheros que se añadan o se carguen pueden ser editados, y todos, excepto los ficheros de script mencionados a continuación, pueden renombrarse o eliminarse.
Deben existir tres ficheros de script para preparar cada una de las tres posibles acciones. Estos ficheros tienen nombres predefinidos: vpl_run.sh (ejecución), vpl_debug.sh, (depuración) y vpl_evaluate.sh, (evaluación)
La ejecución de cualquiera de estos guiones debe generar un fichero denominado vpl_execution. Este fichero debe contener código binario ejecutable, o un script que comience por ""#!/bin/sh". La no generación de este fichero imposibilita ejecutar la acción seleccionada.
Si la actividad se basa en otra, los ficheros de la actividad base se añaden automáticamente. Los contenidos de los ficheros vpl_run.sh, vpl_debug.sh y vpl_evaluate.sh se concatenan para toda la cadena de actividades en la que se base la presente
Finalmente, se añade el fichero vpl_environment.sh, que contiene información sobre la entrega, la cual se suministra mediante variables de entorno:
LANG: el lenguaje empleado.
LC_ALL: el mismo valor que LANG.
VPL_MAXTIME: tiempo máximo de ejecución en segundos.
VPL_FILEBASEURL: URL para acceder a los ficheros del curso.
VPL_SUBFILE#: cada nombre de los ficheros entregados por el alumno. # va de 0 a número de ficheros entregados.
VPL_SUBFILES: lista de todos los ficheros entregados.
VPL_VARIATION+id: donde id es el orden de variación comenzando por 0 y el valor es el valor de la variación.
Si la acción solicitada es "evaluación" se añaden las siguientes variables:
VPL_MAXTIME: máximo tiempo de ejecución en segundos.
VPL_MAXMEMORY: máxima memoria usable en byte.
VPL_MAXFILESIZE: tamaño máximo en bytes de un fichero.
VPL_MAXPROCESSES: número máximo de procesos que pueden ejecutarse simultáneamente.
VPL_FILEBASEURL: URL a ficheros del curso.
VPL_GRADEMIN: mínimo nota para esta actividad.
VPL_GRADEMAX: máxima nota para esta actividad.

Códigos de resultado de evaluación

La salida de la evaluación es procesada para extraer, si es posible, comentarios sobre la evaluación y la nota propuesta. Los comentarios se pueden establecer de dos formas: con un comentario de línea definido con una línea que comienza por 'Comment :=>>' o con comentarios de bloques que comienza con una línea que contiene únicamente '<|--' y termina en una línea que contiene únicamente '--|>'. La calificación se toma de la última línea que comience por 'Grade :=>>'.

Scripts por omisión para ejecutar o depurar

Si no se establecen los script de ejecución o depuración, el sistema deduce el lenguaje empleado atendiendo a la extensión de los ficheros entregados para usar un script predefinidos. La siguiente tabla muestra los lenguajes soportados, las extensiones de ficheros usadas, los script disponibles, el compilador/interprete y depurador usado por este y finalmente un comentario sobre uso del lenguaje.
Lenguaje Extensiones Ejecutar Depurar Compilador / interprete depurador Comentario
Ada ada, adb, ads X X gnat (Ada 2005)/gdb Usa primer fichero como principal
C c X X gcc C99/gdb Compila todos los ficheros fuente
C++ cpp, C X X X g++/gdb Compila todos los ficheros fuente
C# cs X X mono/mdb Compila todos los ficheros fuente
Fortran f, f77 X X gfortran/gdb Compila todos los ficheros fuente
Haskell hs X hugs Ejecuta el primer fichero
Java java X X javac+java/jdb Compila todos los ficheros fuente. Localiza la clase con main.
Matlab/Octave m X matlab, octave Ejecuta el primer fichero. Use vpl_replot después de dibujar.
Pascal pas, p X X fpc o gpc/gdb Compila el primer fihero (fpc) o compila todos los ficheros fuente.(gpc).
Perl perl, prl X X perl Ejecuta el primer fichero.
PHP php X php5 Ejecuta el primer fichero.
Prolog pl, pro X swipl Ejecuta el primer fichero.
Python py X X python Ejecuta el primer fichero.
Java java X X javac+java/jdb Compila todos los ficheros fuente. Localiza la clase con main. Ejecuta el primer fichero.
Ruby rb X X ruby Ejecuta el primer fichero.
Scheme scm, s X mzscheme Ejecuta el primer fichero.
SQL sql X sqlite3 Ejecuta todos los ficheros fuente.Primero los establecidos en ficheros de ejecución
VHDL vhd, vhdl X ghdl Compila todos los ficheros fuente, el primero debe tener el método Main.


Evaluación automática

Si quiere usar las características de evaluación automática de programas de VPL debe rellenar el fichero "vpl_evaluate.cases". Este fichero tiene el siguiente formato:
  • "case = Descripción del caso": Opcional. Establece el inicio de un caso de prueba.
  • "input = texto": puede ocupar varias líneas. Finaliza cuando se introduce otra instrucción.
  • "output = texto": puede ocupar varias líneas. Finaliza con otra instrucción. Un caso de prueba puede tener varias salidas válidas. Existen tres tipos de salidas: sólo números, texto y texto exacto:
  • números: Se escriben sólo números. Solo se comprueban los número de la salida, el resto del texto es ignorado. Los números reales se comprueban con cierta tolerancia
  • texto: Sólo se comprueban palabras, la comparación es insensible a mayúsculas y se ignora el resto de los caracteres.
  • texto exacto: El texto se escribe entre comillas dobles.
  • "grade reduction = [valor|porcentaje%]" : Por defecto cuando se produce un error se descuenta de la nota máxima (rango_nota/número de casos) pero con esta instrucción se puede cambiar el descuento por otro valor o porcentaje.

(Mirar, en esta misma página, el punto Casos de prueba)


Límites máximos de recursos de ejecución

Ficheros a mantener mientras se ejecuta

Variaciones

Comprobación de servidores de ejecución

Servidores de ejecución locales

Probar actividad

Agregar entrega
Para probar la actividad, podemos:
Subir Fichero
  • Subir un fichero con la posible solución (pestaña Entrega):
Subir fichero VPL.PNG
Editor de entregas
  • Editar la entrega (en la pestaña Editar):


El editor de entregas de un VPL, tiene los siguientes botones para ejecutar los diferentes comandos:
Editorcorto2.PNG


...y si hacemos clic en el botón (+), tendremos más opciones:
Editorlargo.PNG


Escribiremos nuestro código en el editor del programa:
Editando entrega.PNG
Ejecutar
Hacemos clic en el comando "Ejecutar" para probar la actividad y comprobar que pasa los test:


EjecutandoVPL.PNG

Laboratorios virtuales de programación

Ejemplos de VPLs

VPL CVUEx.png
En los siguientes enlaces mostramos ejemplos de diferentes Laboratorios Virtuales de Programación creados en un aula virtual:

Volver a la página principal VPL (Virtual Programming Lab)