6

我试图更好地理解 xAPI / Tin Can 的工作原理(我以后将其称为 xAPI)

以前我正在开发一个 SCORM 1.2 LMS,其中有“记录”,例如:每个内容包的原始尝试状态原始分数。LMS 想要升级到 xAPI,但我不确定 xAPI 工作原理背后的原理。

http://tincanapi.com/learning-record-store/它声明:

存储在 LRS 中的数据可以通过 LMS、报告工具或其他 LRS 访问,并且可以存储为单独的学习记录和/或整个成绩单

随后在http://www.learningsolutionsmag.com/articles/1271/the-xapi-and-the-lms-what-does-the-future-hold它还指出:

具有内置 LRS 的 LMS 支持 Experience API,并且还执行 LMS 产品为管理学习交付所做的所有其他事情。

问题是,

LMS 和 LRS 之间的这种关系究竟意味着什么?我需要能够从位于 LMS之外的应用程序中设置上述 LMS“记录” ,你如何使用 xAPI 来做到这一点?

或者也许我完全误解了 xAPI LRS,它旨在完全取代 LMS 记录?

谢谢您的帮助。对此信息资源的链接也将不胜感激。

4

4 回答 4

6

LRS 是一个学习者记录存储,它是关于学习者做了什么或正在做什么的一系列陈述。有人可以纠正我,但我相信 Activity Streams 是由社交媒体实体在 2006 年左右创建的,不同的实体采用/扩展了它以形成一种电子学习标准。

如果我们解构这两个真正的快速(高级)——

LMS 是一个包含任务、报告、维护/管理工具、论坛等的门户……有时是 LCMS(学习内容管理系统)和基于 Web 的一体化解决方案的其他变体。AICC 是在 CBT(DOS - 磁盘操作系统)期间开发的,然后是浏览器(pre-XML)。SCORM 是在 2001 年左右(后 XML,前 JSON)之后不久出现的,现在生活在浏览器的世界中(HTML/CSS/JS、Macromedia/Adobe Flash 等)。因此,使用 SCORM,您实际上是在捆绑小型便携式网站,后来我们能够将其扩展为使用内容媒体服务器或 CDN,以保持“逻辑”和“资产”外部化。SCORM 基于通过 CAM/PIF 包共享培训,其中包括清单/目录,以及您的 HTML 文件,其中涵盖了规范的打包部分。第二部分是运行时。LMS 将公开此运行时以管理学生尝试。在某种程度上,这就像“陈述”,只是它是整个学生尝试数据或 CMI 对象。这包括:评分、交互、目标和其他数据点。SCORM 2004 进一步扩展了这一点,使大部分规范成为强制性的,迫使 LMS 支持更丰富的序列和导航功能。这些通常被认为过于复杂,并且由于缺乏工具和支持而难以管理。但人们确实使用它们。SCORM 2004 进一步扩展了这一点,使大部分规范成为强制性的,迫使 LMS 支持更丰富的序列和导航功能。这些通常被认为过于复杂,并且由于缺乏工具和支持而难以管理。但人们确实使用它们。SCORM 2004 进一步扩展了这一点,使大部分规范成为强制性的,迫使 LMS 支持更丰富的序列和导航功能。这些通常被认为过于复杂,并且由于缺乏工具和支持而难以管理。但人们确实使用它们。

通过“端点”的 LRS 很像您将语句发布到服务器。有 XML 和 JSON 实现。因此,当您部署“应用程序”时,您正在传递一个 URL 以便与之通信。您实际上可以将一些以 SCORM 为中心的内容转换为 xAPI 语句,但请记住 xAPI 不控制打包、顺序和导航。所有这些现在都基于您的应用程序(网络、iOS、Android 等)来管理它。它现在主要允许非 HTML 应用程序利用培训,因为 SCORM 主要是 JavaScript 通信标准。

因此,您必须对您正在尝试做的事情进行正面/反面观察,SCORM 或 xAPI、Activity Streams 或某些专有方法如何满足您的需求。

xAPI 语句可能类似于:

{
actor: {
    name: "Learner Name",
    objectType: "Agent",
    account: {
        homePage: window.location.href,
        name: "Learner ID"
    }
},
verb: {
    id: "http://adlnet.gov/expapi/verbs/completed",
    display: {
        "en-US": "completed"
    }
},
object: {
    id: "commonly a URI",
    objectType: "Activity",
    "definition": {
        type: "http://adlnet.gov/expapi/activities/lesson",
        "name": {
            "en-US": "Some Name"
        },
        "description": {
            "en-US": "Some Description"
        }
    }
},
result: {
    completion: true,
    success: true,
    duration: 'PTHMS'
    score: {
        scaled: 0.9        
    }
}

}

SCORM,主要是定位LMS Runtime(API_1484_11或API),然后调用Initialize、Set/Get Value、Commit和Terminate等方法。CMI 对象(对于 SCORM 2004)在填写后看起来更像这样。 https://gist.github.com/cybercussion/4675334

于 2015-06-18T17:56:17.033 回答
6

我学到

最佳实践是使用 LMS 进行内容交付,使用 LRS 进行分析。所有报告都通过 LRS 跟踪扩展数据,然后 LMS 将跟踪其正常数据(scorm1.2 等)。

让 LMS 做它现在所做的事情 - 完成课程、添加书签并将内容提供给用户。然后使用 LRS 进行更复杂的数据捕获——哪条路径、交互多长时间、给出的答案、选择的答案——你的“谁做了什么”

“大多数人”使用 xAPI 已经放弃了他们的 LMS,现在一切都通过 LRS 完成,即他们放弃了混合 LMS/LRS 结构 - 为什么?因为这将所有可能的学习媒介——应用程序、视频、面对面等解耦,现在都可以在一个系统中进行跟踪,以形成一个更有凝聚力的分析/审计/报告架构。

部署 iPad 应用程序时,这直接与 LRS 通信,并且 LRS 无法在任何时候与 LMS 通信,除非您编写一些自定义的“网络挂钩”/代码将两者联系在一起 - 未经同意推荐。

在部署基于浏览器的学习时,您可以分别将数据联合发送到 LMS 和 LRS——当我们需要对学习者所做的额外分析时从 LRS 中提取数据,然后离开 LMS 以保留其当前功能——“我们完成了吗? ”。


概括

回答我原来的问题。LMS 和 LRS 之间没有默认关系。如果内容在 LMS 之外——它永远在 LMS 之外——无论如何它都不会与之交互。考虑在 LRS 调用中模仿 LMS 的相同数据字段,并从 LRS 的数据库运行自定义报告。


笔记

感谢@Mark 对这两个系统的详细解释,并帮助我初步了解了这些系统。

此信息是从与工作相关的经验中获得的 - 抱歉没有官方来源。

于 2016-11-17T00:24:31.723 回答
0

我不确定我是否完全理解这个问题,但无论如何都会尝试回答。

LRS 可能有几种不同的方式与 LMS 相关联。我按照它们在当今 LMS 供应商中的常见程度以及许多 LMS 供应商似乎遵循的顺序列出了这些内容。

  1. LMS 可能会推出学习体验。这样做时,它可能会为学习体验提供一些安全凭证和 LRS 的端点 URL,以便学习体验可以追溯到 LRS。这些学习经验可能是上传到 LMS 的打包内容或外部内容。

  2. LMS 可能包括 LRS 作为 LMS 应用程序的一部分。例如,请参见此处。LMS 中包含的 LRS 应始终具有连接到外部 LRS 的功能。

  3. LMS 可能会从 LRS 中提取数据,例如用于仪表板和报告或支持完成跟踪。

  4. LMS 中的活动,例如论坛、测验等,可以使用 Tin Can 跟踪到 LRS。

从你的问题听起来,第三个是你要找的?这里的高级方法是将这些外部源输入 LRS,然后将数据从 LRS 推/拉到 LMS。

于 2015-06-18T09:08:02.240 回答
0

我建议您看一下cmi5,这是一个用于定义 LMS、LRS 和学习内容之间通信的 xAPI 协议。本规范中定义了内容模块已完成和/或通过的确定。

于 2015-09-23T19:34:29.353 回答