xAPI与SCORM。一场不会发生的战斗

图片



在上一篇有关使用xAPI的文章中(https://habr.com/ru/post/508624/),我写了关于如何实际组织与LRS交互的信息。令我惊讶的是,我收到了很多信件和问题,关于如果存在SCORM,为什么还要使用新的xAPI / CMI5标准呢?它们提供什么好处?我听到了很多关于使用xAPI(如他们所认为的)这样的抽象方法的可能性的意见,因为许多API都很少支持它。



我个人已经切换到xAPI(TinCan)已有4年了。我可以精确地想象这些规范之间的差异。通常,专家会尝试比较“正面” xAPI和SCORM。像IMS CP和SCORM或SCORM 1.1和SCORM 2004v4。而且,在相同条件下解决相同问题时。这绝对没有必要。SCORM当然很方便,并且必须在以下情况下使用:



  • 电子教育资源必须存储在LMS中
  • 从此资源进行报告所需要的全部是花费在研究它上的时间以及当前的“评估”(已完成/未完成,进度(已完成任务的百分比),任务的“正确性”)
  • 在一门学科的一般课程中应考虑“评估”,以及课程中的测试和其他非SCORM要素。


的确,如果您在xAPI上执行相同的操作,则不会有明显的优势,但是复杂性会大大增加。立即有必要决定使用哪个LRS,如何将其连接到LMS,如何在LMS课程中包括LRS的等级等。在这种情况下,我们真的可以得出结论,该标准是“不良” /“原始” /“过于抽象” /“不清楚为什么需要它”等。这是我经常听到专家的信息。



但是,我们承认奇怪的是,多年来一直在处理SCORM规范的受尊敬的财团和组织,例如ADL,已经做了很多工作,与该领域的知名专家进行了很多磋商,然后……突然他们采取并决定发布一个绝对无用的标准?当我向“ SCORM支持者”提出这个问题时,没有人可以回答……然后“挑选”了该规范并发布了CMI5。而这里的想法开始浮现,也许对某人来说是必要的?但是对谁又为什么?



为了回答这个问题,让我们暂时忘记我们在SCORM方面的所有经验,并考虑一个有趣的问题...



有必要为团队开发模拟器培训例如使用任何设备的专家。我们不会深入研究3D,VR等的要求。







模拟器应为进行培训的讲师提供某种绩效报告,其中不仅包含估算和执行时间,而且还应提供:



  • 危害和相关问题调查(HAZOP)报告时间表;
  • 系统故障或事故的可能后果图(“故障树”,FTA);
  • 事件的可能后果图(“事件树”,ETA)等;


例如,以这种形式...





ETA图上与人为因素有关的





事件的概率FTA图上与人为因素有关的事件的概率



此外,这是该组的结果,指示该组中的所有人员。 +该组每个学生的成绩。



甚至更有趣-



图片



现在让我们回想起SCORM,并决定,原则上,我们可以使用cmi.interactions.X.description,cmi.comments_from_learner.X.comment等为这些图编写必要的信息,但是我们发现自己认为数据没有为这些任务创建功能,我们仅使用这些“数据字段”来存储所需的信息。但这变得更加有趣。假设讲师要查看这些图,我们如何显示它们?重写显示SCORM report?的LMS源代码,编写Moodle插件?我们不能使用外部程序,因为所有LMS都以不同的方式存储报告数据。我们没有用于通过外部应用程序从LMS接收数据的接口。全部航行。



现在,让我们记住有xAPI。我们研究books.ifmo.ru/file/pdf/1772.pdf立即发现:



1.只是“不必要的抽象性”将帮助我们严格按照需要精确地描述这些图中的所有数据。



使用xAPI方法(演员-动词-对象-扩展名 -result ),您可以构建比SCORM中复杂得多的数量级的报告。



官方文档中的示例:



{
  "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.我们发现,我们有一种机制可以通过第三方程序从LRS接收数据,我们可以立即使用该机制向讲师展示精美的报告。指导员要求我们根据不同城市的培训小组的结果显示复杂的样本,没问题。我们收集并分析此信息。



这通常是异议开始的地方,例如,LMS分数如何?集成到LMS中。答案很简单。如果需要,可以将xAPI / CMI5学习资源轻松集成到LMS课程中。毕竟这只是一个链接。该示例中的模拟器由链接模拟启动://virtual.oilfield.test。编写SCORM程序包也不难,它会在启动时要求您从LRS中选择一个条目,并在LMS中发布相同的等级(如果您确实需要)。在没有Internet的领域对人员进行培训时,这是正确的。在这种情况下,结果可以在出现此连接的那一刻到达LMS(对于SCORM而言,这是不可用的,因为无法断开“会话”)。 LMS现在可以“不是”了,这通常也很简单(例如,通信条件)。



我希望本文将帮助您更好地了解xAPI的本质,并且不再比较这两个规范,因为 我个人认为,它们旨在解决完全不同的问题。



All Articles