Évaluations de solutions d’exercices d’algorithmique « à la main » versus « automatiques par jeux d’essai » Denis Bouhineau, François Puitg Laboratoire d’Informatique de Grenoble (LIG) Université de Grenoble (Grenoble-I, Univ. J. Fourier)
Correction de copies … Bouhineau, Puitg Mai 20112EIAH
Contexte : Évaluation - EIAH Évaluation - « corriger des copies » [Veslin & Veslin - 92] – Formes diverses (multitude) – Subjectivité – Objectivité (compétences) EIAH – Correction automatique QCM, Appel au prof, … Sciences dures – Objectivité – Gaming the system – Expérience d’APLUSIX [Nicaud, Bouhineau & Chaachoua – 04] Rétroactions (permanente non intrusive vs coûteuse et limitée) Changements (+ d’autonomie, statut de l’erreur, place du prof) Bouhineau, Puitg Mai 20113EIAH
Contexte : Algorithmique - EDBA Algorithmique – Résultats théoriques vs Test Gödel vs ~ Dijkstra – Évaluation automatiques [Skupiene - 10] Sur la forme Sur le fond EDBA – Exercice DataBase about algorithms Base de donnée d'exercices d'algorithmique EIAH pour l'algorithmique Application web Ajax/Javascript Gestion collaborative d'une ressource pédagogique – Evaluation par jeux d’essai Bouhineau, Puitg Mai 20114EIAH
Démarche – moyen - objectif Comparaison de 2 démarches – Correction à la main (étude subjective sur 3 ans) – Évaluation par jeux d’essai des copies corrigées à la main – Évaluation par jeux d’essai (premières expérimentations avec EDBA) Faire le point sur nos pratiques (expertes [?]) – En vue de comparaison – En vue d’opérationalisation Aller au delà de l’évaluation par jeux d’essai – Améliorer la création des jeux d’essai – Tirer plus d’information de la passation des jeux d’essai À la base, une recherche sur comment améliorer un EIAH, comment mixer pratique enseignante et conception d’un EIAH Une solution : l’étude introspective, la mise en place de rendez-vous / éléments récurrents dans l’enseignement sur lesquels fonder une étude un peu plus fournie Bouhineau, Puitg Mai 20115EIAH
Au boulot ! Bouhineau, Puitg Mai 20116EIAH
Évaluation à la main – 1/3 (avant) Corpus d’étude – Sujet 1 : cet exercice porte sur des listes de 0 et de 1, ex. : [0,0,1,0,1]. Spécifiez, réalisez et donnez des exemples d’utilisation d’un prédicat « rangListe » qui donne le rang du premier 1 dans une liste de 0 et de 1 (le premier élément de la liste est au rang 0). – Variante 2 : sur le dernier 1 (à la place du premier 1). – Sujet 3 : Spécifiez et réalisez un prédicat qui détermine le nombre N d’occurrences d’une valeur E donnée dans une liste L donnée également. – Variante 4 : une réponse booléenne pour indiquer la présence ou l’absence de 1 dans une liste. Analyse a-priori de l’évaluation – Évaluation du paradigme de programmation – Évaluation de la maitrise de la récursivité Bouhineau, Puitg Mai 20117EIAH
Évaluation à la main – 2/3 (pendant) Pendant l’évaluation – Comment faire, Que se passe-t-il, en algorithmique ? Peu d’informations disponibles Est-ce un sujet de non-étude ? – Réponses personnelles Processus de contrôle syntaxique Processus de vérification formelle Processus de validation par l’exemple Processus d'appréciation esthétiques Bouhineau, Puitg Mai 20118EIAH
Évaluation à la main – 3/3 (après) Résultats de l’évaluation –P–Pour les étudiants –P–Pour la matière enseignée –P–Pour l’enseignant Évaluation des erreurs –G–Grande variabilité des erreurs Erreurs atomiques en nombre moyen Combinatoire … Étude sur l’évaluation –N–Nécessité d’outils (limite de l’analyse introspective) –R–Remarque : erreur d’évaluation (en faveur des copies, en faveur des bon élèves) Bouhineau, Puitg Mai 20119EIAH
Dans un monde imaginaire Bouhineau, Puitg Mai EIAH
Évaluation par jeux d’essai des copies corrigées à la main Évaluation par jeux d’essai – « Program testing can be used to show the presence of bugs, but never to show their absence! » [Dijkstra – 69] – Souvent utilisée en EIAH [Pears & Al. – 07], outil de base des concours d’algorithmique (ex. – Typologie des différentes notions de test (un domaine en soi en informatique) Exemple de jeux d’essai pour le sujet 3 : nombreDOccurence(E,L,N) est vrai ssi le nombre d’occurrence de E dans la liste L est N : Donnée (E,L,N) : Résultat : (1,[],0)true (0,[],1)fail (2,[0,1,1,0,1,1,0],N)N = 0; (0,[0,1,1,0,1,1,0],N)N = 3; (1,[0,1,1,0,1,1,0],N)N = 4; Hypothèses & limitations – Disponibilité des copies sous forme électronique – Correction syntaxique minimale Bouhineau, Puitg Mai EIAH
Résultat des évaluations par jeux d’essai des copies corrigées à la main Résultats sur les copies (7 tests) – Avec 0 test passé correctement (5 copies) : copies ayant un problème important de syntaxe – Avec 1 test passé correctement (18 copies) : cas de base incorrect – Avec 2 et 3 tests passés correctement (7 copies) : cas de base satisfaisant, mais propagation incorrecte – Avec 5 tests passés correctement (3 copies) : copies justes mais pas optimales – Avec 7 tests passés correctement (10 copies) : copies justes. Structure implicite engendrée par les jeux d’essai Proximité entre les 2 modes d’évaluation ? Bouhineau, Puitg Mai EIAH
Retour aux EIAH Bouhineau, Puitg Mai EIAH
Évaluation automatique par jeux d’essai EDBA – Micromonde (éditeur+console+interpréteur) – 256 exercices / 1800 jeux d’essai Utilisateurs – 40 étudiants / 4 * 2 ans : 20 utilisateurs – 100h d’utilisation, 1500 séries de tests d’exercices Méthode d’observation – Log divers (code, test, actions) ex : log test ex : log action Bouhineau, Puitg Mai EIAH
Résultats des évaluations automatiques par jeux d’essai Parcours étudiants – Recherche du 100% – Élément de motivation, ou support à une motivation assistée – Élément d’évaluation des apprentissages Recherche des structures implicites – Pas de structures simples – Élimination des doublons – Différentiation entre jeux d’essai ‘simples’ et ‘difficiles’ – Association entre jeux d’essai, erreurs et remédiations (?) Bouhineau, Puitg Mai EIAH
Résultats des évaluations automatiques par jeux d’essai Parcours étudiants – Recherche du 100% – Élément de motivation, ou support à une motivation assistée – Élément d’évaluation des apprentissages Recherche des structures implicites – Pas de structures simples – Élimination des doublons – Différentiation entre jeux d’essai ‘simples’ et ‘difficiles’ – Association entre jeux d’essai, erreurs et remédiations (?) Bouhineau, Puitg Mai EIAH
Contraintes et gains pour l’EIAH Interpréteur spécifique – Limitée en temps – Comparaison souple aux solutions de références – Adaptation au langage Rédaction des exercices / jeux d’essai – Objectif : rédaction exercice < 10 min – Retour sur usage pour l’amélioration Gains – Des solutions – Des éléments d’appréciation de la difficulté d’un exercice – Et + pour créer des parcours d’exercices basés sur des pratiques Bouhineau, Puitg Mai 2011EIAH17
Extensions ? Limites d’utilisation ? Remédiation ? – Repérage des erreurs par jeux d’essai possible – Mais combinatoire des erreurs importante Utilisation de jeux d’essai génériques ? – Coût de production « à la main » des jeux d’essai faible – Qualité des jeux d’essai produits « à la main » + convaincante Babel : jeux d’essai indépendants du langage ? – Dans une certaine mesure – Mais pas complètement Bouhineau, Puitg Mai 2011EIAH18
Références Bibliographie – [Skupiene - 10] Jurate Skupiene, Improving the evaluation model for the lithuanian informatics olympiads. Informatics un education. Vol 9.1. Vilnius – [Veslin & Veslin - 92] Odile et Jean Veslin. Corriger des copies, évaluer pour former. Pédagogie pour demain, Nouvelles approches. Hachette éducation, Paris Illustrations – C. Chaplin. Les Temps modernes, – M. C. Escher. Exposition de gravures, – J. Miro, Bleu, – S. Kubrick, 2001, l'Odyssée de l'espace, Bouhineau, Puitg Mai EIAH