xAPI vs SCORM. Une bataille qui n'arrivera pas

image



Dans un article précédent sur l'utilisation de xAPI ( https://habr.com/en/post/508624/ ), j'ai écrit sur la façon d'organiser pratiquement l'interaction avec LRS. À ma grande surprise, j'ai reçu beaucoup de lettres et de questions concernant pourquoi utiliser les nouvelles normes xAPI / CMI5 s'il y a SCORM? Quels sont leurs avantages? J'ai entendu beaucoup d'opinions sur l'impossibilité d'utiliser une approche si abstraite (comme il leur semble) xAPI, qu'elle est mal supportée par de nombreux LMS, etc.



Je suis personnellement passé à xAPI (TinCan) dès 4 ans. Et je peux clairement imaginer la différence entre ces spécifications. Souvent, les experts essaient de comparer xAPI et SCORM "de front". Comme IMS CP et SCORM ou comme SCORM 1.1 et SCORM 2004v4. De plus, lors de la résolution des mêmes problèmes dans les mêmes conditions. Et vous n'avez absolument pas besoin de le faire. SCORM est certainement pratique et doit être utilisé si:



  • La ressource pédagogique électronique doit être stockée dans le LMS
  • Tout ce qui est nécessaire en termes de reporting de cette ressource est le temps consacré à son étude et à l '«évaluation» en cours (terminé / non terminé, progrès (% des tâches terminées), «exactitude» des tâches)
  • La «note» doit être prise en compte dans le cours général de toute discipline, ainsi que les tests et autres éléments de cours non SCORM.


En effet, si vous faites la même chose sur xAPI, il n'y aura pas d'avantages significatifs, mais la complexité augmentera considérablement. Il faudra immédiatement décider quel LRS utiliser, comment le connecter au LMS, comment inclure les notes du LRS dans le cours LMS, etc. Et dans ce cas, vous pouvez vraiment arriver à la conclusion que la norme est "mauvaise" / "brute" / "trop ​​abstraite" / "on ne sait pas pourquoi elle est nécessaire", etc. C'est ce que j'entends souvent des spécialistes.



Mais vous conviendrez qu'il est étrange de penser que des consortiums et des organisations respectés tels que ADL, qui traitent de la spécification SCORM depuis de nombreuses années, ont fait un excellent travail, un grand nombre de consultations avec des experts bien connus dans ce domaine et ... ont soudainement décidé de publier une norme absolument inutile? Quand je pose cette question aux "supporters du SCORM", personne ne peut y répondre ... Et puis cette spécification a été "reprise" et a publié CMI5. Et ici les pensées commencent à venir que probablement, peut-être, il est nécessaire pour quelqu'un? Mais à qui et pourquoi?



Pour répondre à cette question, oublions temporairement toute notre expérience avec SCORM et considérons un problème intéressant ...



Il est nécessaire de développer un simulateur pour un groupeformer, par exemple, des spécialistes pour travailler avec n'importe quel équipement. Nous n'entrerons pas dans les exigences de la 3D, de la VR, etc.







Le simulateur doit fournir une sorte de rapport de performance pour les instructeurs qui dispensent une formation, qui contient non seulement des estimations et le temps d'exécution, mais, par exemple, doit fournir:



  • Calendriers des rapports d'enquête sur les dangers et problèmes connexes (HAZOP);
  • diagrammes des conséquences possibles d'une défaillance ou d'une défaillance du système ("arbre de défaillance", FTA);
  • diagrammes des conséquences possibles d'un événement ("arbre des événements", ETA), etc .;


Par exemple, sous cette forme ...





Probabilités d'événements liés au facteur humain sur le diagramme ETA





Probabilités d'événements liés au facteur humain sur le diagramme FTA



De plus, ce sont les résultats du groupe indiquant tous ceux qui étaient dans ce groupe. + résultats pour chaque élève de ce groupe.



Ou encore plus intéressant -



image



Rappelons maintenant SCORM et décidons qu'en principe, nous pouvons écrire les informations nécessaires pour ces graphiques en utilisant cmi.interactions.X.description, cmi.comments_from_learner.X.comment, etc., mais nous nous surprenons à penser que les données Aucune opportunité n'a été créée pour ces tâches, et nous utilisons simplement ces «champs de données» pour stocker les informations dont nous avons besoin. Mais cela devient encore plus intéressant. Supposons que les instructeurs souhaitent afficher ces graphiques, comment les afficher? Réécrire les codes sources LMS qui affichent le rapport SCORM?, Écrire des plugins pour Moodle? Nous ne pouvons pas utiliser un programme externe, car tous les LMS stockent les données de rapports différemment. Nous n'avons pas d'interface pour recevoir des données de LMS par une application externe. Tous ont navigué.



Souvenons-nous maintenant qu'il existe xAPI. Nous étudions books.ifmo.ru/file/pdf/1772.pdf. Il est immédiatement révélé que:



1. Un simple «caractère abstrait inutile» nous aidera à décrire strictement toutes les données sur ces diagrammes, exactement comme nous en avons besoin.



En utilisant l'approche xAPI ( acteur - verbe - objet - extensions - résultat ) , vous pouvez créer des rapports dont les ordres de grandeur sont plus compliqués que cela n'est possible dans SCORM.



Un exemple de la documentation officielle:



{
  "actor": {
    "name": "Sally Glider",
    "mbox": "mailto:sally@example.com"
  },
  "verb": {
    "id": "http://adlnet.gov/expapi/verbs/completed",
    "display": { "en-US": "completed" }
  },
  "object": {
    "id": "http://example.com/activities/hang-gliding-test",
    "definition": {
      "type": "http://adlnet.gov/expapi/activities/assessment",
      "name": { "en-US": "Hang Gliding Test" },
      "description": {
        "en-US": "The Solo Hang Gliding test, consisting of a timed flight from the peak of Mount Magazine"
      },
      "extensions": {
        "http://example.com/gliderClubId": "test-435"
      }
    }
  },
  "result": {
    "completion": true,
    "success": true,
    "score": {
      "scaled": 0.95
    },
    "extensions": {
      "http://example.com/flight/averagePitch": 0.05
    }
  },
  "context": {
    "instructor": {
      "name": "Irene Instructor",
      "mbox": "mailto:irene@example.com"
    },
    "contextActivities":{
      "parent": { "id": "http://example.com/activities/hang-gliding-class-a" }
      "grouping": { "id": "http://example.com/activities/hang-gliding-school" }
    },
    "extensions": {
      "http://example.com/weatherConditions": "rainy"
    }
  },
  "timestamp": "2012-07-05T18:30:32.360Z",
  "stored": "2012-07-05T18:30:33.540Z",
  "authority": {
    "name": "Irene Instructor",
    "mbox": "mailto:irene@example.com"
  }
}


2. Nous découvrons que nous avons un mécanisme pour recevoir des données du LRS par un programme tiers, que nous utilisons immédiatement pour montrer de beaux rapports aux instructeurs. Les instructeurs nous demandent de montrer des échantillons complexes basés sur les résultats de groupes de formation dans différentes villes, il n'y a aucun problème. Nous collectons et analysons ces informations.



C'est là que commencent généralement les objections, par exemple, qu'en est-il des scores LMS? Intégration dans LMS. La réponse est très simple. Si vous le souhaitez, la ressource d'apprentissage xAPI / CMI5 peut être facilement intégrée dans le cours LMS. C'est juste un lien après tout. Le simulateur de l'exemple démarre à la simulation de lien: //virtual.oilfield.test. Il n'est pas non plus difficile d'écrire un package SCORM qui, une fois lancé, demande de sélectionner un enregistrement dans le LRS et publie la même estimation dans le LMS (si cela est vraiment nécessaire). Ceci est pertinent lorsque le personnel est formé dans un domaine où il n'y a pas d'Internet. Dans ce cas, les résultats peuvent arriver dans le LMS au moment où cette connexion apparaît (qui n'est pas disponible pour SCORM, car la "session" ne peut pas être interrompue). Le LMS peut désormais «ne pas être», ce qui est aussi souvent simplement nécessaire (conditions de communication par exemple).



J'espère que cet article vous aidera à mieux comprendre l'essence de xAPI et à ne plus comparer ces 2 spécifications, car À mon avis, ils sont conçus pour résoudre des problèmes complètement différents.



All Articles