Herramientas de usuario

Herramientas del sitio


es:manual:test:variables_de_sesion

¡Esta es una revisión vieja del documento!


Variables de sesión

Las variables de sesión son espacios de memoria referenciados mediante un nombre o identificador, a los que se van asignado valores durante la ejecución de un test.

Las variables de sesión se crean al iniciar el test, tan pronto como se les asigna el primer valor, y desaparecen una vez que el test ha terminado.

Para modificar las variables de sesión el test y las preguntas establecen pequeños programas en lenguaje SSL que se ejecutan cuando ocurren distintos eventos:

  • Al inicio del test.
  • Cada vez que se selecciona una respuesta a una pregunta.
  • Al final del test.

No todas las variables de sesión se tienen que modificar en todos estos puntos. Por ejemplo, supongamos una variable de perfil denominada nFallos, y otra nAciertos, que nos permite medir el número de veces que un alumno ha seleccionado una opción incorrecta o una opción correcta de un test en el que se permite la marcha atrás, y por tanto múltiples cambios en la respuesta a una misma pregunta hasta llegar a una respuesta final.

Siette evalúa la respuesta final y lleva cuenta de los cambios, pero supongamos que se quiere realizar algún tipo de adaptación o mensaje al usuario mientras aún no ha concluido el test.

En este caso lo primero que se haría será fijar el el script del principio del test el siguiente programa:

 nFallos = 0;
 nAciertos = 0;

Luego, en cada pregunta del test se configura una acción diferente si la opción es correcta o si no lo es, es decir, en las respuestas correctas se usaría el script

 nAciertos++;

y en las respuestas incorrectas el script:

 nFallos++;

Al finalizar el test estas dos variables tomarán un valor dependiendo del número de veces que se haya seleccionado la opción correcta o incorrecta, y esta información se asociará a la sesión.

Variables de perfil

Las variables de perfil son a todos los efectos variables de sesión, con la particularidad de que su valor se conserva entre distintas ejecuciones del mismo o distintos test de una misma asignatura, o incluso entre asignaturas si se trata de variables de perfil globales. Si el uso de las variables de perfil es temporal, es decir, si se van a inicializar cada vez que se entre en un test, no sería necesario definirlas como variables de perfil, sino simplemente como variables de sesión.

La diferencia entre unas y otras es simplemente la permanencia entre distintas sesiones. Las variables de sesión se extinguen y las de perfil permanecen.

Interacción con javascript

Las variables de sesión (y por consiguiente las variable de perfil) son variables que residen en el servidor de Siette, que en principio solo podrán modidifcarse a través de programas SSL que se ejecutan en el servidor.

No obstante, existe un mecanismo para que las interacciones del alumno con la página web de Siette donde se plantean las preguntas puedan ser capturadas y enviadas a Siette como variables de sesión. Las páginas que plantean preguntas contienen dos funciones javascript para leer y modificar las variables de sesión:

  function getVariable(nombre) {
     ...
     return valor;
  }
 
  function setVariable(nombre, valor) {
     ...
  }

Por ejemplo, supongamos una variable de sesión nClicks, que se quiere usar para llevar la cuenta de las veces que el usuario ha abierto un enlace que muestra un texto o una imagen. Para informar a Siette de esta contabilidad, cada vez que se dispara el evento que abre el enlace se añadirá la llamada javascript:

   setVariable('nClicks', getVariable('nClicks')+1);

Preguntas condicionadas

Uno de los usos mas frecuentes de las variables de sesión es para la selección de preguntas en las que se establece alguna condición en lenguaje SSL. Si la condición devuelve true la pregunta puede seleccionarse, si devuelve false, no.

Con las variables del primer ejemplo, la condición de selección de una pregunta puede ser:

  return nAciertos>5 && nAciertos>nFallos;

es decir, que la pregunta solo aparecería en aquellas sesiones en las que el número de aciertos sea superior a 5 y superior al número de fallos hasta el momento.

Consejos prácticos

Use las variables de sesión con moderación. Normalmente pequeñas adaptaciones

es/manual/test/variables_de_sesion.1625572967.txt.gz · Última modificación: 2021/07/06 12:02 por root

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki