ScenoClasse

SPY

Un scénario d'une durée de 180 minutes proposé par Mathieu Muratet, composé de 7 tâches distribuées en 7 temps et s'adresse à un public de Cycle 3/4

Résumé : Initier les élèves à la programmation à l'aide du jeu sérieux SPY
Matériel necessaire pour toutes les tâches
tablettes ou ordinateurs, Connexion internet requise, tablettes ou ordinateurs, Connexion internet requise, tablettes ou ordinateurs, Connexion internet requise, tablettes ou ordinateurs, Connexion internet requise, tablettes ou ordinateurs, Connexion internet requise,
Références externes / bibliographie :
SPY,
Compétences pour ce scénario
  • C2.3 créer une séquence d'actions pour atteindre un objectif simple
  • C2.1 ordonner une séquence d'actions pour atteindre un objectif
  • C5.1 représenter des objets ou séquences d'actions au moyen d'une représentation formelle
  • C6.1 vérifier si une séquence d'actions atteint un objectif donné
  • C2.6 décomposer des objectifs en sous-objectifs plus simples
  • C2.2 compléter une séquence d'actions pour atteindre un objectif simple
  • C1.2 différencier objet et action, et actions atomiques et non atomiques
  • C2.1 ordonner une séquence d'actions pour atteindre un objectif
  • C5.1 représenter des objets ou séquences d'actions au moyen d'une représentation formelle
  • C2.3 créer une séquence d'actions pour atteindre un objectif simple
  • C6.1 vérifier si une séquence d'actions atteint un objectif donné
  • C1.6 utiliser des objets dont la valeur peut changer
  • C6.3 corriger une séquence d'actions pour atteindre un objectif donné
  • C5.1 représenter des objets ou séquences d'actions au moyen d'une représentation formelle
  • C4.2 comparer deux séquences d'actions selon un critère donné
  • C6.1 vérifier si une séquence d'actions atteint un objectif donné
  • C6.3 corriger une séquence d'actions pour atteindre un objectif donné
  • C1.1 nommer des objets et séquence d'actions
  • C2.6 décomposer des objectifs en sous-objectifs plus simples
  • C2.3 créer une séquence d'actions pour atteindre un objectif simple
  • C2.1 ordonner une séquence d'actions pour atteindre un objectif
  • C1.6 utiliser des objets dont la valeur peut changer
  • C1.7 reconnaître, parmi des objets et séquences d’actions connus, lesquels peuvent être utilisés pour atteindre un nouvel objectif
  • C2.2 compléter une séquence d'actions pour atteindre un objectif simple
  • C2.3 créer une séquence d'actions pour atteindre un objectif simple
  • C6.3 corriger une séquence d'actions pour atteindre un objectif donné
  • C1.2 différencier objet et action, et actions atomiques et non-atomiques
  • C6.1 vérifier si une séquence d'actions atteint un objectif donné
  • C1.5 prédire le résultat d'une séquence d'actions
  • C2.4 créer une séquence d'actions pour atteindre un objectif complexe
  • C1.6 utiliser des objets dont la valeur peut changer
  • C5.1 représenter des objets ou séquences d'actions au moyen d'une représentation formelle
  • C3.1 répéter une séquence d'actions un nombre donné de fois
  • C2.1 ordonner une séquence d'actions pour atteindre un objectif
  • C2.6 décomposer des objectifs en sous-objectifs plus simples
  • C2.4 créer une séquence d'actions pour atteindre un objectif complexe
  • C1.6 utiliser des objets dont la valeur peut changer
  • C2.1 ordonner une séquence d'actions pour atteindre un objectif
  • C5.1 représenter des objets ou séquences d'actions au moyen d'une représentation formelle
  • C5.2 traduire des objets ou séquences d'actions entre représentations formelles
  • C6.1 vérifier si une séquence d'actions atteint un objectif donné
  • C3.4 intégrer une condition complexe dans une séquence d'actions
  • C3.3 intégrer une condition simple dans une séquence d'actions
  • C3.1 répéter uns séquence d'actions un nombre donné de fois
  • C6.2 corriger une séquence d'actions pour atteindre un objectif donné
  • C1.2 différencier objet et action, et actions atomiques et non-atomiques
  • C2.6 décomposer des objectifs en sous-objectifs plus simples
  • C6.4 etendre ou modifier une séquence d'actions pour atteindre un nouvel objectif
Objectifs du scénario
  • Principal: Faire comprendre aux élèves ce qu'est l'informatique
  • Principal: Découvrir le jeu SPY
  • Principal: Programmer un robot avec des actions simples
  • Principal: Apprendre à nommer un programme et programmer plusieurs robots
  • Principal: Apprendre à identifier des schémas répétitif et à les décrire sous la forme d'un programme
  • Principal: Revenir sur les notions travaillées lors des sessions de jeu
  • Principal: Faire découvrir aux élèves les structures de contrôle conditionnelles
DETAILS
UP
N°1
Introduction
~ 10 minutes En Classe / Mise en situation
Objectif(s) :
  • Principal: Faire comprendre aux élèves ce qu'est l'informatique
Description :

Poser la question aux élèves, qu'est ce que c'est l'informatique pour vous ? Quand on vous parle d'informatique, à quoi vous pensez ?

Recueillir les idées des élèves et les noter sur le tableau. Exemple de références données par les élèves : ordinateur, tablette, écran, jeux vidéo, logiciel, programmation...

Rebondir sur les représentations des élèves. Par exemple leur expliquer que l'informatique ne se réduit pas aux matériels (ordinateur, tablette, console de jeu...). Faire des parallèles avec d'autres disciplines, par exemple : la littérature ne se réduit pas au support matériel qui est le livre, que les mathématiques ne se réduit pas à la calculatrice ou que l'art ne se réduit pas au pinceau.

Leur expliquer également que l'informatique ne se réduit pas aux logiciels comme les jeux vidéo ou les applications sur tablette. Leur faire comprendre que l'informatique a permis de fabriquer ces logiciels pour autant utiliser ces logiciels ce n'est pas faire de l'informatique. Là encore donner une image par exemple en expliquant qu'en jouant au tennis on est contraint par les lois de la physique (la balle retombe au sol par ce qu'elle est attirée par la Terre, la balle est freinée par l'air...) pour autant quand on joue au tennis on n'est pas en train d'étudier la physique.

Si les termes comme "programmation", "codage" ou "code" ressortent s'appuyer dessus ou sinon les énoncer. Expliquer aux élèves que les ordinateurs sont très bêtes, ils ne font que ce qu'on leur a dit de faire, que ce pour quoi ils ont été programmés. Expliquer également que pour qu'un ordinateur nous comprenne, il faut lui parler dans un langage un peu particulier, il faut coder les actions qu'il doit réaliser avec un langage précis.

Terminer en leur expliquant qu'ils vont jouer à un jeu dans lequel il vont devoir programmer un robot pour l'aider à sortir d'un labyrinthe.

UP
N°2
Tutoriel de spy
~ 5 minutes En Individuel / Recherche
Organisation spaciale :

Possibilité de mettre les élèves à deux par tablette ou ordinateur

Matériel necessaire : tablettes ou ordinateurs, Connexion internet requise,
Références externes / bibliographie :
SPY,
Compétence(s) pour cette tâche
  • C2.1 ordonner une séquence d'actions pour atteindre un objectif
  • C2.3 créer une séquence d'actions pour atteindre un objectif simple
  • C5.1 représenter des objets ou séquences d'actions au moyen d'une représentation formelle
  • C6.1 vérifier si une séquence d'actions atteint un objectif donné
Objectif(s) :
  • Principal: Découvrir le jeu SPY
Solutions :

Ce que doivent produire les élèves :

Le programme permettant de terminer le tutoriel

Description :

Comprendre comment jouer au jeu SPY : Comment déplacer la caméra, comment ajouter un action au programme du robot, comment exécuter un programme

UP
N°3
Scénario explorateur
~ 20 minutes En Individuel / Recherche
Organisation spaciale :

Possibilité de mettre les élèves à deux par tablette ou ordinateur

Matériel necessaire : tablettes ou ordinateurs, Connexion internet requise,
Références externes / bibliographie :
SPY,
Compétence(s) pour cette tâche
  • C6.3 corriger une séquence d'actions pour atteindre un objectif donné
  • C6.1 vérifier si une séquence d'actions atteint un objectif donné
  • C5.1 représenter des objets ou séquences d'actions au moyen d'une représentation formelle
  • C2.6 décomposer des objectifs en sous-objectifs plus simples
  • C2.3 créer une séquence d'actions pour atteindre un objectif simple
  • C2.2 compléter une séquence d'actions pour atteindre un objectif simple
  • C2.1 ordonner une séquence d'actions pour atteindre un objectif
  • C1.6 utiliser des objets dont la valeur peut changer
  • C1.2 différencier objet et action, et actions atomiques et non atomiques
Objectif(s) :
  • Principal: Programmer un robot avec des actions simples
Consignes données aux élèves :

Dans ce scénario tu devras réaliser plusieurs défis en utilisant des actions simples. Ton objectif sera d'utiliser les bonnes actions, dans le bon ordre.

Solutions :

Mission 1 : ; Mission 2 : ; Mission 3 : ; Missions 4 : ; Mission 5 : ; Missions 6 : ; Mission 7 : ; Mission 8 :

Ce que doivent produire les élèves :

La solution de chaque mission du scénario

Points de vigilance :
  • Cas autre : Mission 3
    Alors : Le robot est volontairement positionné vers le bas pour faire comprendre à l'élève que l'action "Avancer" représenté par un flèche vers le haut ne signifie pas "Avancer vers le haut" mais bien "Avancer devant toi".
  • Cas autre : Mission 7
    Alors : Dans cette mission le joueur peut utiliser l'action "Se retourner" qui est équivalente à deux actions "Pivoter à gauche" ou deux actions "Pivoter à droite". Il s'agit d'une action non atomique car elle est équivalente à deux actions qui sont elles atomiques.
Description :

Dans ce scénario l'élève va apprendre à utiliser plusieurs blocs pour programmer un robot. Ce scénario est composé de 8 missions et ne demande au joueur de ne manipuler que des blocs d'action simples ("Avancer", "Pivoter à gauche", "Pivoter à droite", "Attendre"...). Les 4 premières missions donnent seulement accès au blocs requis, le joueur doit donc les agencer dans le bon ordre sans avoir à se demander si tel ou tel bloc est utile ou non. Les 4 dernières missions fournissent les blocs d'action en quantité illimitée, c'est alors au joueur de déterminer quels blocs doivent être utilisés et dans quel ordre. Pour chacune de ces missions le joueur peut décomposer son programme en sous parties, il peut déposer quelques blocs, exécuter son programme, observer la nouvelle situation et poursuivre sa résolution sans avoir à recommencer au début.

UP
N°4
Scénario collaborateur
~ 30 minutes En Individuel / Recherche
Organisation spaciale :

Possibilité de mettre les élèves à deux par tablette ou ordinateur

Matériel necessaire : tablettes ou ordinateurs, Connexion internet requise,
Références externes / bibliographie :
SPY,
Compétence(s) pour cette tâche
  • C4.2 comparer deux séquences d'actions selon un critère donné
  • C1.7 reconnaître, parmi des objets et séquences d’actions connus, lesquels peuvent être utilisés pour atteindre un nouvel objectif
  • C6.3 corriger une séquence d'actions pour atteindre un objectif donné
  • C6.1 vérifier si une séquence d'actions atteint un objectif donné
  • C5.1 représenter des objets ou séquences d'actions au moyen d'une représentation formelle
  • C2.6 décomposer des objectifs en sous-objectifs plus simples
  • C2.3 créer une séquence d'actions pour atteindre un objectif simple
  • C2.2 compléter une séquence d'actions pour atteindre un objectif simple
  • C2.1 ordonner une séquence d'actions pour atteindre un objectif
  • C1.6 utiliser des objets dont la valeur peut changer
  • C1.1 nommer des objets et séquence d'actions
Objectif(s) :
  • Principal: Apprendre à nommer un programme et programmer plusieurs robots
Consignes données aux élèves :

Dans ce scénario tu vas contrôler plusieurs robots. Tu devras bien faire attention à quels robots tes programmes seront envoyés.

Solutions :

Mission 1 : ; Mission 2 : ; Mission 3 : ; Mission 4 : ; Mission 5 : ; Mission 6 : ; Mission 7 : ; Mission 8 : ; Mission 9 : ; Mission 10 : ; Mission 11 : ; Mission 12 :

Ce que doivent produire les élèves :

La solution de chaque mission du scénario

Points de vigilance :
  • Cas autre : Mission 11
    Alors : Cette mission vise à montrer à l'élève qu'il peut créer ses propres lignes de programme en cliquant sur le bouton "+". Jusqu'à maintenant les lignes de programme étaient présentent dès le début du niveau, ici l'élève doit créer sa propre ligne de programme et la nommer de manière appropriée.
  • Cas autre : Mission 4
    Alors : Deux robots ne peuvent utiliser la même case, il faut donc faire attention à faire attendre Erty pendant que Plok pivote.
  • Cas autre : Mission 5
    Alors : Comment obtenir 3 étoiles dans cette missions ? Souvent l'erreur vient du fait que le joueur s'ajoute une contrainte de déplacer Erty sur la sortie de gauche et Plok sur la sortie de droite, mais rien n'impose ça. La solution est donc d'amener Erty sur la sortie de droite et Plok sur celle de gauche. Ainsi on réduit la longueur du programme de Plok.
  • Cas autre : Mission 1
    Alors : Cette mission vise à faire comprendre à l'élève le principe de nommage. Une erreur classique est de glisser l'action dans la zone de programme et de ne pas penser à vérifier à qui se programme sera envoyé. Montrer que l'on peut connaître le nom du robot en passant son doigt ou le curseur de la souris dessus. Montrer que l'on doit indiquer son nom dans la zone de programme afin que le code lui soit envoyé.
  • Cas autre : Mission 2
    Alors : C'est la première mission avec deux robots et donc deux zones de programme. A la mission 1 les élèves on compris qu'une zone de programme envoie son code à un robot particulier. Une erreur possible est que l'élève ne fasse pas attention au nom de la zone de programme. Bien lui montrer qu'il y a deux zones de programme (une pour chaque robot) et qu'il doit faire donc attention à quelle zone de programme il utilise s'il veut contrôler un robot particulier.
  • Cas autre : Mission 6
    Alors : Dans cette mission le joueur ne doit pas programmer, simplement lire les deux solutions qui lui sont proposées et choisir celle qu'il souhaite envoyer au robot en indiquant son nom dans la zone de programme appropriée. Les deux solutions données sont correctes dans le sens où les deux solutions amènent le robot à destination mais une solution est plus courte (une action de moins). Il est possible de s'appuyer sur cette mission pour montrer qu'il n'existe pas une solution unique à un problème mais que certaines solutions sont plus efficaces que d'autres.
  • Cas autre : Mission 10
    Alors : Dans cette mission les deux programmes sont bogués. Il suffit de ne déplacer qu'un seul bloc dans chaque programme pour trouver la solution. Cette mission vise à pousser les élève à lire et comprendre un code existant en vue de le corriger.
  • Cas autre : Mission 8
    Alors : Dans cette mission un programme est proposé pour chaque robot mais deux robots ne pouvant utiliser la même case ils ne peuvent se croiser. L'élève doit donc modifier les programmes proposés par exemple en ajoutant 1 bloc "Attendre" dans le programme de Plok.
Description :

Dans ce scénario l'élève devra faire collaborer deux robots. Ce scénario est composé de 12 missions. Il devra notamment apprendre à nommer correctement les zones de programmation afin de contrôler les bons robots. Dans ce scénario 3 missions ne demandent pas au joueur de programmer mais proposent des solutions pré-construites, le joueur doit alors lire ces programmes, les comprendre et choisir celui qu'il souhaite envoyer au robot. Deux missions contiennent des solutions erronées que le joueur doit corriger.

UP
N°5
Scénario répétiteur
~ 45 minutes En Individuel / Recherche
Organisation spaciale :

Possibilité de mettre les élèves à deux par tablette ou ordinateur

Matériel necessaire : tablettes ou ordinateurs, Connexion internet requise,
Références externes / bibliographie :
SPY,
Compétence(s) pour cette tâche
  • C6.3 corriger une séquence d'actions pour atteindre un objectif donné
  • C6.1 vérifier si une séquence d'actions atteint un objectif donné
  • C5.1 représenter des objets ou séquences d'actions au moyen d'une représentation formelle
  • C2.6 décomposer des objectifs en sous-objectifs plus simples
  • C2.3 créer une séquence d'actions pour atteindre un objectif simple
  • C2.1 ordonner une séquence d'actions pour atteindre un objectif
  • C1.6 utiliser des objets dont la valeur peut changer
  • C1.2 différencier objet et action, et actions atomiques et non-atomiques
  • C1.5 prédire le résultat d'une séquence d'actions
  • C2.4 créer une séquence d'actions pour atteindre un objectif complexe
  • C3.1 répéter une séquence d'actions un nombre donné de fois
Objectif(s) :
  • Principal: Apprendre à identifier des schémas répétitif et à les décrire sous la forme d'un programme
Consignes données aux élèves :

ans ce scénario tu vas apprendre à optimiser tes programmes en répétant une ou plusieurs actions. Tu devras aussi faire attention aux gardes qui surveillent certaines zones et les éviter.

Solutions :

Mission 1 : ; Mission 2 : ; Mission 3 : ; Mission 4 : ; Mission 5 : ; Mission 6 : ; Mission 7 : ; Mission 8 (solution "Courir devant") : ; Mission 8 (solution "Passer dessous") : ; Mission 9 : ; Mission 10 :

Ce que doivent produire les élèves :

La solution de chaque mission du scénario

Points de vigilance :
  • Cas autre : Mission 3
    Alors : L'objectif de cette mission est que l'élève repère que le schéma "Avancer", "Pivoter à gauche", "Avancer" et "Pivoter à droite" le repositionne dans la même orientation mais un peu plus loin. Il peut donc répéter ce schéma autant de fois que nécessaire. Montrer qu'il est possible de mettre plusieurs actions à l'intérieur du bloc "Répéter plusieurs fois".
  • Cas autre : Mission 2
    Alors : Montrer que l'on peut modifier le paramètre du bloc "Répéter plusieurs fois".
  • Cas autre : Mission 8
    Alors : Cette mission contient deux stratégies de résolution pour obtenir les trois étoiles, la première consiste à courir devant le robot, la seconde consiste à repérer que le robot n'observe pas la zone sous lui et qu'il est donc possible d'y passer dessous sans se faire repérer.
  • Cas autre : Mission 6
    Alors : C'est certainement la mission qui pose le plus de problèmes aux élèves car il faut repérer ici que deux schémas sont imbriqués. Le premier schéma consiste à avancer 5 fois et pivoter à droite. Le second schéma consiste à répéter le premier schéma trois fois. Si l'élève bloque montrer qu'il est possible de mettre un bloc "Répéter plusieurs fois" à l'intérieur d'un bloc "Répéter plusieurs fois".
Description :

Ce scénario est centré sur la notion de répétition. Ici les blocs actions sont limités non pas pour réduire la charge cognitive du joueur mais pour forcer l'utilisation du bloc "Répéter n fois". Ce scénario exploite aussi les agents ennemis qui contiennent des actions que le joueur peut consulter mais ne peut pas modifier. Le joueur doit alors anticiper les actions de l'ennemi et programmer son robot en conséquence. Ce scénario est composé de 10 niveaux.

UP
N°6
Scénario sélectionneur
~ 60 minutes En Individuel / Mise en situation
Organisation spaciale :

Possibilité de mettre les élèves à deux par tablette ou ordinateur

Matériel necessaire : tablettes ou ordinateurs, Connexion internet requise,
Références externes / bibliographie :
SPY,
Compétence(s) pour cette tâche
  • C6.4 etendre ou modifier une séquence d'actions pour atteindre un nouvel objectif
  • C6.2 corriger une séquence d'actions pour atteindre un objectif donné
  • C6.1 vérifier si une séquence d'actions atteint un objectif donné
  • C5.2 traduire des objets ou séquences d'actions entre représentations formelles
  • C5.1 représenter des objets ou séquences d'actions au moyen d'une représentation formelle
  • C3.4 intégrer une condition complexe dans une séquence d'actions
  • C3.3 intégrer une condition simple dans une séquence d'actions
  • C3.1 répéter uns séquence d'actions un nombre donné de fois
  • C2.6 décomposer des objectifs en sous-objectifs plus simples
  • C2.4 créer une séquence d'actions pour atteindre un objectif complexe
  • C2.1 ordonner une séquence d'actions pour atteindre un objectif
  • C1.6 utiliser des objets dont la valeur peut changer
  • C1.2 différencier objet et action, et actions atomiques et non-atomiques
Objectif(s) :
  • Principal: Faire découvrir aux élèves les structures de contrôle conditionnelles
Consignes données aux élèves :

Dans ce scénario tu vas rendre ton robot intelligent pour qu'il choisisse les actions à faire en fonction de son environnement.

Solutions :

Mission 1 : ; Mission 2 : ; Mission 3 : ; Mission 4 : ; Mission 5 : ; Mission 6 : ; Mission 7 : ; Mission 8 :

Ce que doivent produire les élèves :

La solution de chaque mission du scénario

Points de vigilance :
  • Cas autre : Mission 5
    Alors : Comme pour la Mission 2, cette mission vise à comprendre et lire un algorigramme afin de le traduire avec le langage formel du jeu.
  • Cas autre : Mission 7
    Alors : Dans cette mission l'objectif est de faire monter en abstraction le joueur pour ne pas programmer un robot dans une situation donnée mais de trouver un seul programme permettant à deux robots dans des situations proches mais légèrement différentes d'atteindre les arrivées.
  • Cas autre : Mission 2
    Alors : Dans cette mission la problématique est d'amener les joueurs à traduire la solution donnée en langage naturel dans la consigne avec le langage formel du jeu. C'est pour cette raison que la scène est cachée empêchant le joueur de voir l'arrivée. Il est donc important pour cette mission que les joueurs lisent attentivement la consigne.
  • Cas autre : Mission 1
    Alors : Dans cette mission une difficulté peut consister à comprendre que les blocs de structures peuvent être imbriqués les uns dans les autres. Vous pouvez les aider à décomposer le problème par exemple en leur posant la question de combien de cases le robot doit avancer et ensuite de se poser la question quand est-ce qu'il doit tourner et d'intégrer ça dans leur boucle.
Description :

Ce scénario est centré sur la notion de structure de contrôle conditionnelle. Il s'agira de découvrir les structure "Si ALors Sinon" et "Tant que". Ces structures de contrôle évaluent des capteurs qui indiquent Vrai ou Faux et qui déterminent ainsi la suite des actions à exécuter. Dans les missions les plus avancées, les capteurs peuvent être combinés avec les opérateurs booléens Et, Ou et Non.

UP
N°7
Synthèse et conclusion
~ 10 minutes En Classe / Synthèse
Objectif(s) :
  • Principal: Revenir sur les notions travaillées lors des sessions de jeu
Description :

Revenir avec les élèves sur ce qui a été travaillé au cours des sessions de jeu :

  • La notion de langage, les robots ne comprennent que des actions précises et qu'ils ne font que ce qu'on leur à dit de faire. Une des difficultés de la programmation est de traduire ce que l'on a dans la tête (ce que l'on souhaite faire au robot) dans un langage simple mais formel composé de quelques actions comprises par le robot.
  • La notion de nommage, il est important de bien nommer les choses pour éviter d'être ambigüe. Si deux robots sont présents dans le jeu il faut nommer chaque zone de programme de manière appropriée de manière à ce que chaque robot sache quoi faire.
  • L'identification de schéma répétitif, il est possible d'identifier des schémas répétitifs et de demander au robot de les réaliser plusieurs fois. Ceci permet de réduire la taille des programmes et donc de simplifier leur lisibilité.
  • La variété des solutions, il peut exister plusieurs solutions pour un même problème. Pour autant elles ne sont pas toutes équivalentes, certaines requièrent moins de blocs, d'autres permettent d'atteindre l'objectif plus rapidement.
  • La résolution en sous-étapes, pour résoudre un problème complexe il est possible de le décomposer en sous étapes plus faciles à résoudre.