Évaluations Normatives Autonomes avec Topaze

                                         

                  E.DUQUENOY / Université du Littoral - Côte d'Opale / FCU

Résumé

De quoi allons nous parler ? 🗣️

Créer, avec Topaze, des évaluations normatives qui enregistrent un score fiable dans Moodle, c’est possible grâce à la norme Scorm.

Mais comment aller plus loin en proposant des parcours différents pour chaque apprenant ou à chaque passage dans l’évaluation ? Quelles sont les types de questions utilisables et comment le langage Javascript, disponible dans ce modèle documentaire, peut nous aider à en inventer ? Comment évaluer des compétences pratiques et pas seulement la connaissance du cours ? Comment afficher un score détaillé, et éventuellement commenté, en fin de parcours ? Qu’en est-il de la sécurité du questionnaire ?

C’est à ces questions, et à d’autres, que cette présentation tentera de répondre.

Qui suis-je ? 🕺

  • Maître de conférences à l'ULCO, j'utilise Opale depuis plus de 15 ans,

  • j'enseigne Opale et Topaze dans un master de Didactique des Langues

  • l'ensemble de mes cours était dématérialisé sur Sakai (jusqu'en 2021) puis aujourd'hui sur Moodle

  • jusqu'en 2021, l'évaluation normative d'une grande majorité de mes modules était en partie basée sur les quiz en ligne, réalisés sur Sakai

De quoi s’agit-il ? 🐓/🥚

Un premier déclencheur 💥

Mon université, l'ULCO, a fait le choix de migrer vers la plate-forme pédagogique Moodle après plus de 12 ans d’utilisation de Sakai.

⇒ Plusieurs dizaines de quiz à migrer manuellement...🥱

Et un autre déclencheur... 🧨

Un collègue me fournit un ensemble de quiz d'auto-évaluation développé sur Wims, pour un cours de bases de données 🎁

Mais c'est quoi « Wims » 🙀?

Il s'agit d'une plateforme d'apprentissage en ligne dont le point fort est la gestion de l'aléatoire : « le principe de fonctionnement est de ne jamais présenter un exercice identique » 🎲

Conséquences

Se mettre à Wims ? 📜

  • Euh, oui bon ok mais ça va prendre du temps... ⏳

  • N'est-il pas possible d'utiliser Topaze pour produire quelque chose fonctionnant un peu comme Wims et permettant de recevoir un score sur Moodle via la norme Scorm (ce que ne fait pas Wims) ? 👍

Vers l'infini et au... 🚀

  • Peut-on aller plus loin que le simple contrôle de connaissances et évaluer des savoir-faire  ? 👷🏼

  • ... Un peu comme dans certaines questions du  ?

Qu'est-ce que le Pix ?

Le a remplacé les certifications C2i/B2i et est proposé publiquement sur https://pix.fr/. Il permet d'évaluer et de certifier ses compétences numériques. Pour cela, certaines compétences doivent être évalués de manière pratique

Principe 💡

Idée de base

L'idée de base est de proposer une évaluation normative, c'est-à-dire participant au calcul du score d'un module d'enseignement :

  • qui puisse être réalisée en autonomie, en dehors des cours 🏠,

  • sans limite de durée (mais avec une date limite tout de même) 🕰️,

  • sans limite de nombre d'essais, seul le dernier essai compte 🏏

  • réalisée avec Topaze

  • mettre en place un schéma standard réutilisable sur lequel bâtir chaque évaluation 👩🏻‍🍳

Cela a pour contraintes :

  • « autonomie, en dehors des cours » :

  • « avec une date limite » et « sans limite de nombre d'essais » : réglages Moodle

Et Moodle dans tout ça ?

Plusieurs déconvenues : 😩

  • le quiz Topaze s'ouvre dans une fenêtre surgissante (pop-up) : il faut que l'étudiant les autorise, 🪟

  • l'URL reste visible dans la fenêtre : risque de copier/coller dans une autre fenêtre et donc de triche éventuelle 🤥

Le quiz Topaze s'ouvre dans une pop-up (problème d'autorisation) et l'URL est visible

Mais pour le reste, c'est top : à chaque tentative, on recommence à zéro, ce qui va permettre une nouvelle génération du quiz. Seule la dernière tentative est prise en compte.

Mise en oeuvre

Mise en oeuvre : l'aléatoire 🎲

L'aléatoire dans Topaze

Il n'existe a priori que deux items qui nous permettent de gérer l'aléatoire dans Topaze :

  • l'« Etape de quiz partiel »

  • l'« Indicateur calculé automatiquement » en mode « Nombre entier aléatoire »

Items Topaze gérant de l'aléatoire

Etape de quiz partiel

Ce type d'étape permet de tirer au sort un ou plusieurs quiz parmi ceux référencés dans l'étape.

L'item « Etape de quiz partiel » permet le tirage aléatoire de questions

Indicateur calculé automatiquement

Cet item permet de générer un nombre entier aléatoire compris entre les deux valeurs indiquées. Sa persistance est réglable : en mode « parcours », le nombre aléatoire sera généré une seule fois et ne sera pas modifié pendant tout le parcours.

Réglages de l'item « Indicateur calculé automatiquement »

Mise en oeuvre : parcours aléatoire

Item « enchaînement conditionné »

Grâce à un item d'« enchaînement conditionné », il est possible de choisir quelle sera la prochaine étape dans le parcours. Pour cela, nous avons besoin de plusieurs informations :

  • quel est le parcours qui a été tiré au sort, de manière à connaitre l'ordre des étapes ?

  • où en est-on dans le parcours, autrement dit, quel est la prochaine étape ?

Générer un parcours

Un « indicateur calculé automatiquement » va centraliser les informations nécessaires, principalement le parcours sélectionné aléatoirement et la position dans le parcours, et générer le numéro de la prochaine étape :

L'indicateur renvoie le numéro de la prochaine étape dans l'enchainement conditionné

Tentative de représentation graphique

Le parcours étant généré dynamiquement, sa schématisation n'est pas simple...

Comment générer un parcours aléatoire ?

Introduction

Tout d'abord se pose une question : est-ce que je souhaite un parcours où les étapes s'enchainent de manière complètement aléatoire ou bien selon un minimum de contrôle, par exemple :

  • les questions simples en premier, les questions plus compliquées ensuite

  • ou bien un regroupement des questions par thème (en premier les questions sur les fleurs puis les questions sur les animaux)

  • ou tout autre ordonnancement

Un choix aléatoire entre plusieurs parcours prédéfinis

Dans un premier temps, j'ai choisi de garder une certaine maitrise des parcours et donc de faire un choix aléatoire parmi plusieurs parcours prédéfinis. Ceci étant, j'ai également implémenté une génération entièrement aléatoire des parcours

Mise en oeuvre : configuration ⚙️

Réglages centralisés

A force d'enrichir le fonctionnement du questionnaire, une nécessité est apparue : la centralisation des réglages. Quels sont les réglages concernés ?

  • le nombre d'étapes

  • les parcours prédéfinis ainsi que leur nombre

  • le tirage aléatoire du parcours

  • le mode debug

  • le mode sécurité

Elements de configuration

Configuration du quiz

Mise en oeuvre : sécurité 🔐

Réglage dans Moodle

Malgré le réglage strict dans Moodle, avec notamment la non-sélection de l'affichage de la barre d'URL :

L'URL s'affiche tout de même dans la fenêtre de l'étudiant :

Conséquence

Il est toujours possible de copier/coller l'URL dans une nouvelle fenêtre pour accéder aux boutons de navigation pour, éventuellement revenir en arrière et refaire un quiz :

Parade 1 🚦

Il est possible dans Topaze de limiter le nombre de passages dans une étape :

Parade 2 : ceinture et bretelles 🩹

Même si le réglage précédent est efficace, il ne s'applique qu'aux étapes de quiz, mais pas, par exemple, aux étapes de contenus. Avec un peu de Javascript, on peut résoudre le problème :

Extrait du script de sécurité inclus dans skin.js

Ceci étant, il est possible d'activer ou non la sécurité grâce à une variable de configuration :

Mise en oeuvre : ordre des propositions dans les QCM/QCU 🔢

Quel est le problème ?

Dans les quiz d'Opale de type QCM ou QCU, les propositions de réponses apparaissent à l'étudiant dans un ordre figé qui est celui décidé au moment de la conception du quiz.

Cependant, dans la plupart des LMS (Moodle, Sakai, ...), il existe une option pour choisir un affichage aléatoire des réponses :

Réglage Moodle : mélange aléatoire des propositions de réponses dans les QCM/QCU

Opale ou Topaze

Malheureusement, cette possibilité n'existe pas dans les QCM/QCU d'Opale ou de Topaze. Sauf qu'avec Topaze et un zeste de Javascript, ça devient possible ! Chaque réponse va être générée par un script :

Position des réponses aléatoire

Comment ça fonctionne ?

Sans entrer dans les détails de programmation, dans le script qui génère l'énoncé, on génère également un positionnement aléatoire des réponses. Lorsque l'utilisateur final clique sur les réponses, on récupère un score codé en binaire qui indique les réponses cochées.

Lors de la saisie des questions et des réponses, les bonnes réponses sont précédées d'une étoile :

Saisie des questions et des réponses

Il faut ensuite comparer les réponses fournies aux bonnes réponses et calculer le score correspondant

Exemples

Exemples de quiz : audionumérique (1/2) 🔈

Présentation

Dans le cadre d'un DEUST orienté « Web Designer Développeur », j'initie à l'audio-numérique. Nous utilisons le logiciel libre Audacity. Voici un exemple d'évaluation d'un savoir-faire sur ce logiciel

Description

Voici à quoi ressemble l'un des exercices :

Savoir-faire Audacity : manipuler les enveloppes

Le fonctionnement :

  • l'étudiant télécharge le fichier audio proposé : il s'agit d'un fichier au format d'Audacity comportant une partie inaudible,

    Exercice de manipulation d'une enveloppe.
  • il effectue la manipulation permettant de rendre audible la partie cachée

  • il écoute et note le mot prononcé : c'est la réponse attendue

Le principe :

  • très simple : il s'agit d'un exercice à trou.

Exemples de quiz : audionumérique (2/2) 🔈

Présentation

Autre exemple en audionumérique, utilisant ici l'item « Graphique dynamique »

Description

Voici à quoi ressemble l'un des exercices :

Exercice sur la compréhension d'un spectre en audionumérique

Le fonctionnement :

  • un spectre est généré de manière aléatoire,

  • on demande de déterminer la fréquence de la raie correspondant soit au son le plus aigu (raie la plus à droite), soit le plus grave (raie la plus à gauche),

  • les réponses sont proposées sous forme de QCU

Principe

L'énoncé est généré aléatoirement :

Générateur d'énoncé

et le graphique également, grâce à l'item « Graphique dynamique ». Les propositions de réponses, bonne ou fausses, sont également générées grâce au javascript.

Exemples de quiz : CSS 🎨

Présentation

Dans le cadre d'un module d'initiation à la création Web, j'initie à l'utilisation des feuilles de styles CSS. Dans l'exercice suivant, il s'agit de créer un fichier CSS qui permettra de modifier l'aspect d'une page HTML. C'est ce fichier qui sera rendu (via un copier/coller) et analysé.

Description

Voici à quoi ressemble l'exercice :

Création d'un fichier CSS

Le fonctionnement :

  • le travail consiste à télécharger le fichier html qui contient déjà les noms des classes à utiliser :

    Un fichier HTML est généré automatiquement et contient les noms de classe à utiliser dans le fichier CSS
  • puis à créer le fichier CSS avec les contraintes proposées (couleurs et justification du texte)

  • il faut ensuite effectuer un copier/coller du texte pour fournir la réponse

Principe

  • Pour cet exercice, on génère aléatoirement les codes de couleurs en choisissant dans une liste : un choix complètement aléatoire pourrait conduire à un texte illisible (blanc sur blanc par exemple),

  • les paragraphes de texte sont également choisis aléatoirement parmi des listes prédéfinies

  • le fichier HTML est également créé à la volée à partir des données précédentes

Particularité

Pour les exercices de cette série, un commentaire est également généré et affiché à la fin, en même temps que le score détaillé :

Affichage des scores et commentaires détaillés

Exemples de quiz : équations logiques et tableur 🤖

Présentation

Dans le cadre d'un module de technologies du numérique, voici un exercice qui consiste à déterminer la bonne transcription d'une équation logique, dans un tableur

Description

Voici à quoi ressemble l'exercice :

Implémentation d'une équation logique dans un tableur

C'est un simple QCU mais dont l'énoncé, et les propositions de réponses, sont générés via des variables calculées automatiquement

Principe

  • l'équation à traiter est générée aléatoirement grâce à des nombres aléatoire.

  • Elle est ensuite mise en forme pour un affichage au format LaTeX.

  • La table de vérité est aussi créée dynamiquement.

    Génération de l'énoncé
    Enoncé généré

Principe

  • l'équation est également utilisée pour générer la bonne et les mauvaises réponses, en respectant la syntaxe particulière du tableur :

    Propositions de réponses générées automatiquement
    Générateurs de réponses

Résultats ⚖️

En vrac : difficultés, remarques

  • Le principal problème vient du fait que les quiz s'ouvrant dans une fenêtre surgissante (pop-up), il faut les autoriser dans le navigateur

  • Moodle ne fournit pas de trace détaillée du parcours facilement exploitable, exercice par exercice : ça pourrait être un problème dans le cas d'un exercice trop difficile ou comportant des erreurs. Une trace au format JSON est cependant fournie, étudiant par étudiant : difficile à utiliser

  • aucune remontée négative de la part des étudiants

  • les premiers quiz n'étaient pas sécurisés... voir remarque précédente 😃

Participation aux évaluations

  • Toutes évaluations confondues, nous avons une moyenne de 3 tentatives par personne.

  • parfois jusqu'à une dizaine de tentatives individuelles

  • la moyenne des notes obtenues par quiz est en général supérieure à 60/100

Quelles informations d'analyse fournit Moodle ?

  • Moodle fournit un outil graphique de synthèse :

Histogramme des résultats d'un quiz Scorm

Moodle fournit le résultat détaillé (exportable dans un tableur) pour chaque personne :

Résultat détaillé par personne : numéro de tentative, durée, score

Des informations, au format JSON, sont également fournies mais difficilement exploitable :

  • car justement au format JSON : il faudrait un outil d'analyse ou de conversion,

  • car par étudiant et par tentative et donc très long à récupérer

Informations détaillées fournies par Moodle, pour une tentative et un étudiant

Ce qui manque

Un outil permettant de remonter les scores exercice par exercice, de manière à détecter des points de blocage (ou des erreurs). Il semble que le plugin d'export Moodle réalise cela, cependant :

  • pas installé et pas installable (problème de version) dans mon établissement

  • pas suffisamment stable (selon échanges sur le forum)

Solution 💡 : attendre l'arrivée du nouveau modèle, « Parcours » et sa compatibilité IMS LTI

Perspective, conclusion et remerciements 🤝

Perspectives

  • mettre en place une remontée de statistiques via une connexion client/serveur, notamment pour vérifier si il y a des points de blocage,

  • concevoir de nouveaux exercices orientés compétences pratiques,

  • proposer un modèle plus facile d'usage pour les collègues intéressés

Conclusion

L'application semble fiable et, désormais, sécurisée. Mais cela n'est qu'une hypothèse : il est difficile de savoir comment les étudiants effectuent les parcours. Sans doute qu'une analyse des traces Scorm pourrait aider, ou la mise en place d'un processus client/serveur. Ceci étant, les résultats ne sont pas incohérents ou délirants : la fraude, si elle existe, reste à un niveau acceptable.

Les améliorations peuvent toujours être apportées : trouver de nouveaux types d'exercices, mettant en oeuvre des compétences pratiques, est un challenge passionnant.

Remerciements

Service de la formation continue de l'ULCO

Communauté Scenari

Questions 🙋‍♀️

Vous avez des questions ?

J’arrête les exams !

Présentation de Jocelyn DRUEL dans Wims 2022 (13 au 15 juin 2022 à Université de Technologie Belfort-Montbéliard), https://www.youtube.com/watch?v=crj7YuvZPjg

QCM

Questionnaire à Choix Multiples

QCU

Questionnaire à Choix Unique

Liste des raccourcis clavier

Liste des fonctions de navigation et leurs raccourcis clavier correspondant :

  • Bloc Suivant : flèche droite, flèche bas, barre espace, page suivante, touche N
  • Bloc Précédent : flèche gauche, flèche haut, retour arrière, page précédente, touche P
  • Diapositive Suivante : touche T
  • Diapositive Précédente : touche S
  • Retour accueil : touche Début
  • Menu : touche M
  • Revenir à l'accueil : touche H
  • Fermer zoom : touche Échap.