Présentation

Les devoirs dans Classroom sont appelés "Travaux et devoirs". Vous les trouverez sur la page "Travaux et devoirs" de n'importe quel cours Classroom. Bien qu'il existe quatre types d'éléments de cours, ce guide se concentre uniquement sur le type "Devoir". Pour savoir comment gérer les autres types de travaux et devoirs, consultez notre guide sur la gestion des travaux et devoirs.

Google Classroom propose deux façons de s'intégrer à un workflow de devoirs : le bouton de partage Classroom et l'API Classroom. Le bouton de partage permet aux utilisateurs de partager du contenu en tant qu'élément du flux via une boîte de dialogue pop-up Classroom, tandis que l'API Classroom permet un workflow d'attribution de devoirs de bout en bout, y compris la création de devoirs, la création et la gestion des devoirs remis par les élèves, et le transfert des notes.

Nous allons examiner les principales différences entre ces deux offres pour les développeurs. Plus précisément, nous allons examiner les différences d'implémentation et chaque phase du cycle de vie d'un devoir : création du devoir, devoirs rendus par les élèves, et notation/commentaires.

Comprendre le cycle de vie d'un devoir

Avant d'aborder les différences entre le bouton "Partager" et l'API CourseWork, définissons d'abord ce que nous considérons comme le cycle de vie d'un devoir dans le contexte de Classroom. Cela vous aidera à comprendre comment les enseignants et les élèves interagissent avec les devoirs dans Classroom.

Voici les cinq principales étapes à suivre pour intégrer les devoirs Classroom :

  1. Le devoir est créé.
  2. Le devoir est partagé avec les élèves.
  3. L'élève termine le devoir.
  4. L'élève envoie son devoir à l'enseignant.
  5. L'enseignant corrige et note les devoirs.

L'intégration aux devoirs Classroom permet aux enseignants et aux élèves de travailler de manière fluide entre Classroom et les applications tierces. Au lieu de gérer les détails d'un devoir ou les devoirs remis par les élèves, les utilisateurs peuvent s'appuyer sur votre application pour gérer ces détails à leur place.

Diagramme illustrant les cinq étapes d'un devoir

Implémentation

La première différence entre le bouton de partage et l'API CourseWork concerne l'implémentation. Du point de vue d'un développeur, le bouton de partage est une méthode plus simple pour partager du contenu dans Classroom, car il suffit d'inclure la ressource JavaScript nécessaire et d'ajouter une balise de bouton de partage. Dans sa forme la plus simple, l'intégration de votre bouton de partage Classroom peut ressembler à l'extrait ci-dessous :

<script src="https://apis.google.com/js/platform.js" async defer></script>
<g:sharetoclassroom url="http://url-to-share" size="32"></g:sharetoclassroom>

L'API CourseWork, quant à elle, fait partie de l'API REST Google Classroom, qui nécessite de configurer et d'activer des clés API avec la console Google Cloud, et de suivre les bonnes pratiques pour l'intégration à une API. Ce problème est moins préoccupant si votre plate-forme utilise déjà d'autres fonctionnalités de l'API Classroom, comme la gestion des listes.

Créer et partager des devoirs

Bien que le bouton de partage et l'API CourseWork permettent tous deux d'effectuer les deux premières étapes du workflow des devoirs (créer et partager le devoir avec les élèves), il existe des différences cruciales à prendre en compte avant de choisir une solution.

Les deux solutions permettent de publier des liens ou des fichiers en tant que devoirs dans Classroom. Il s'agit d'un workflow puissant pour les enseignants qui, autrement, seraient obligés de copier et coller des contenus entre Classroom et l'application tierce. Bien que les deux solutions permettent de publier du contenu en tant que devoir, vous devez déterminer si votre application a besoin de la flexibilité de publier ce contenu en tant qu'autres types de devoirs ou même en tant qu'annonce.

Les deux offres exposent tous les types de posts Classroom, à l'exception des devoirs de type "Quiz". Vous trouverez ci-dessous un récapitulatif de tous les types de posts et de leur visibilité.

Type de post Bouton "Partager" API CourseWork
Assignment X X
Devoir avec questionnaire
Question : réponse courte X X
Question : choix multiples X X
Matière X X
Annonce X X

Les fonctionnalités telles que la spécification du titre et de la description peuvent également être spécifiées de manière programmatique par votre application pour les deux solutions. Si l'intégration du bouton de partage permet aux utilisateurs de définir des champs tels que la date limite, le thème, le mode individualisé et le nombre de points dans la boîte de dialogue pop-up, ils ne peuvent pas être définis de manière programmatique par une application tierce. L'API, en revanche, expose tous ces champs pour l'accès en lecture et en écriture.

Modifier les devoirs

L'intégration à l'API Classroom permet, entre autres, d'éviter aux utilisateurs de synchroniser manuellement les modifications apportées à leurs devoirs. Le bouton de partage ne permet pas de modifier ni de supprimer des devoirs de manière programmatique. L'utilisateur devra donc effectuer les modifications nécessaires dans l'interface utilisateur de Classroom.

L'API CourseWork permet à votre application de modifier et de supprimer les devoirs qu'elle a créés, ainsi que de récupérer les détails de tous les devoirs publiés dans les cours de l'utilisateur. Toutefois, il est important de noter que les éléments de cours non créés par la même console de développement ne peuvent pas être modifiés par cette console. Ce modèle d'autorisation s'étend au reste du cycle de vie des devoirs. Par exemple, il n'est pas possible d'accéder à la gestion des devoirs et des notes des élèves pour ces éléments CourseWork.

Synchroniser automatiquement les devoirs

Avec les notifications push Pub/Sub, votre application peut s'abonner aux notifications qui déclenchent un événement lorsque des modifications sont apportées aux devoirs et aux devoirs rendus par les élèves associés. Cela permet à votre application de synchroniser facilement les devoirs en éliminant la nécessité de vérifier en permanence si le contenu a été mis à jour dans Classroom.

Faire et rendre des devoirs

Chaque devoir est associé à N devoirs rendus par les élèves, où N correspond au nombre d'élèves auxquels le devoir a été attribué. En d'autres termes, pour chaque devoir, il existe une remise d'élève associée à chaque élève, à laquelle il est possible d'accéder avec un ID unique. Ces devoirs d'élèves sont créés automatiquement et peuvent être récupérés par votre application à l'aide des points de terminaison GET et LIST des devoirs d'élèves.

Le bouton de partage et l'API CourseWork permettent d'ajouter des liens ou des fichiers à la remise d'un devoir par un élève. Le bouton de partage permet de le faire via un workflow semblable à celui de la boîte de dialogue de création de devoirs pour les enseignants, ainsi que l'API CourseWork via le point de terminaison studentSubmissions.modifyAttachments. Toutefois, en raison des restrictions d'autorisation d'API détaillées précédemment, cette fonctionnalité est limitée aux devoirs créés par votre application. Cette restriction ne s'applique pas au bouton de partage. Les élèves peuvent ajouter leurs devoirs à n'importe quel devoir qu'ils sélectionnent dans Classroom.

Mettre fin au parcours de l'élève

Bien que la restriction d'autorisation CourseWork ne serve pas de cas d'utilisation pour les plates-formes qui ne permettent pas de créer des devoirs, elle présente un avantage : les plates-formes tierces peuvent empêcher les élèves de remettre leurs devoirs au mauvais endroit et d'oublier de les rendre, car seule la fonctionnalité de partage est limitée pour les élèves.

Corriger et noter les devoirs

La dernière partie du cycle de vie d'un devoir revient à l'enseignant. Une fois que les élèves ont rendu leur devoir, l'enseignant peut l'examiner de la manière qui lui semble la plus appropriée. Dans le cas des fichiers stockés dans Drive, ils peuvent les consulter directement dans l'outil de notation de Classroom. Toutefois, les applications tierces ne sont pas accessibles dans l'outil de notation Classroom. Cette expérience implique que les enseignants doivent naviguer entre plusieurs onglets pour examiner et noter les devoirs.

Le bouton de partage ne permet actuellement pas de noter ni de renvoyer des devoirs. Bien que des fonctionnalités telles que les commentaires sur les devoirs des élèves ne soient actuellement pas exposées via l'API, il est possible de noter les devoirs et de renvoyer les notes aux élèves à l'aide des points de terminaison studentSubmissions.patch et studentSubmissions.return. Les notes ne peuvent être spécifiées que pour les éléments du flux "Travaux et devoirs" (types "Devoir" et "Question"). Elles ne sont disponibles que sous forme numérique et peuvent être attribuées en tant que note provisoire ou finale.

Récapitulatif des différences

Pour résumer tout ce qui a été vu dans les sections précédentes, le tableau ci-dessous compare le bouton de partage et l'API CourseWork pour les quatre catégories abordées ci-dessus : implémentation, création et partage de devoirs, réalisation et remise de devoirs, et examen et notation de devoirs.

Bouton "Partager" API CourseWork
Implémentation Quelques lignes de code JavaScript suffisent, ce qui rend l'implémentation simple et rapide. Nécessite la configuration de clés API, l'activation des API dans la console d'administration et une surveillance plus étroite
Créer et partager des devoirs
  • Redirige les enseignants vers la boîte de dialogue de partage du bouton de partage dans Classroom
  • Les utilisateurs peuvent publier tous les types d'éléments de flux, sauf un.
  • Vous pouvez spécifier moins de champs.
  • Permet de créer des devoirs, mais pas d'extraire ni de modifier les données des devoirs
  • Boîte de dialogue "Bouton de partage non nécessaire"
  • La plupart des champs de devoirs Classroom peuvent être spécifiés.
  • Possibilité de modifier les cours créés par votre application
  • Permet à votre application d'extraire toutes les données des devoirs depuis Classroom.
Remplir et envoyer des devoirs
  • Redirige les élèves vers la boîte de dialogue de partage du bouton de partage dans Classroom
  • Permet aux élèves de joindre leur devoir à n'importe quel devoir Classroom
  • Permet d'ajouter des pièces jointes aux réponses, mais pas d'extraire ni de modifier les données des réponses
  • Les élèves ne peuvent pas rendre le devoir.
  • Boîte de dialogue "Bouton de partage non nécessaire"
  • Autorise uniquement les élèves à joindre leur devoir aux devoirs créés par votre application
  • Permet à votre application de modifier les devoirs des élèves qu'elle a créés
  • Permet aux élèves de remettre leurs devoirs
Examiner et noter les devoirs Aucune prise en charge pour spécifier ou renvoyer des notes
  • Permet à votre application d'extraire toutes les données des devoirs rendus par les élèves depuis Classroom au nom d'un enseignant
  • Expose la possibilité d'attribuer des notes aux élèves, soit en tant que brouillon, soit en tant que note finale.
  • Expose la possibilité de modifier les notes des élèves
  • Expose la possibilité de rendre les notes aux élèves