SCORM 无疑是一个挑战。我无法为您提供具体的实施细节,因为即使是scorm.com的行业领导者和发行商 Rustici Software 也估计
[...t] 符合 SCORM 的时间通常以“开发者年数”来衡量。
那么,为了让您入门,我将尝试回答您的第一个问题。对于实现细节,有比 StackOverflow 更好的资源。我在帖子底部链接了一些。
LMS 的哪些功能使其符合 SCORM?
“SCORM 合规性”是一个误称,通俗地用于表示 LMS 支持创建、播放或跟踪 SCORM 内容。实际上,每个 LMS 可能会发现其目标人群可以接受的实施级别。
官方的合规性衡量标准是通过ADL Initiative的SCORM 认证,该计划是负责 SCORM 标准的政府计划。通常提供三种可测试级别的测试(请注意,在发布时测试不可用):
SCORM® 一致性——声称 SCORM® 一致性(特定版本的 SCORM®,即 SCORM® 1.2 版)的唯一标准是通过相应 SCORM® 版本的 ADL 一致性测试套件中的相应测试。一致性测试套件可从 ADLnet.gov 免费下载。该测试是在荣誉系统上完成的,不需要 ADL 倡议参与。
SCORM® 采用者– SCORM® 一致性的下一个层次是产品成为 SCORM® 采用者。产品必须符合 SCORM® 才能被视为 SCORM® 采用者。在 ADL 一致性测试套件中通过测试产生的日志将提交给 ADL Initiative(有关更多信息,请参阅 SCORM® 采用者页面),如果发现正确,该产品将在 SCORM® 中标记为 SCORM® 采用者采用者产品列表(针对特定版本的 SCORM®)。
SCORM® 认证– SCORM® 符合性的最终级别是 SCORM® 认证。认证产品是由独立的 ADL 认证测试中心测试以满足相应版本的 SCORM® 符合性要求文档所述的要求并通过一致性测试套件验证的产品(有关更多信息,请参阅 SCORM® 认证页面) . 完成此过程后,该产品将通过 SCORM® 认证并添加到 SCORM® 认证产品列表中。该产品还符合 SCORM® 认证。
更随意地,声称“符合 SCORM”的 LMS 可能符合以下标准:
1.支持SCORM JavaScript API
SCORM 包将尝试在启动时通过遵循完善的发现算法来定位 LMS 提供的 API 。本质上,它会从其父对象开始查找名为API
(SCORM 1.1, SCORM 1.2) 或(SCORM 2004) 的对象并向上搜索,直到找到匹配项或超出允许的导航次数。API_1484_11
window
这个 API 对象应该实现八个标准函数和数据模型对象。有关更多信息,请参阅完整的运行时参考。
SCORM 1.1、1.2 |
SCORM 2004 |
参数) |
退货 |
描述 |
LMS初始化 |
初始化 |
空字符串 |
布尔值 |
初始化运行时并从 LMS 取得控制权 |
LMS提交 |
犯罪 |
空字符串 |
布尔值 |
请求 LMS 持久化当前数据模型 |
LMSGetValue |
获取值 |
CMI元素 |
细绳 |
从当前数据模型中获取指定元素的值 |
LMSSetValue |
设定值 |
CMIElement,任何 |
细绳 |
设置当前数据模型中指定元素的值 |
LMSGetLastError |
获取最后一个错误 |
|
CMI错误代码 |
获取最后一次调用这些方法之一的结果 |
LMSGetErrorString |
获取错误字符串 |
CMI错误代码 |
细绳 |
获取与指定错误代码等效的字符串 |
LMSGetDiagnostic |
得到诊断 |
CMI错误代码 |
细绳 |
获取有关导致指定错误代码的特定错误的附加信息 |
LMS完成 |
终止 |
空字符串 |
布尔 |
退出运行时并将控制权返回给 LMS |
2. 跨会话保存运行时数据
SCORM 包通常是无状态的,但如果提供了先前提交的数据模型,则可以将其返回到状态。在 SCORM 包中实现状态的方法有多种,但常见的运行时方法包括:
- 在退出之前存储令牌、路径或状态
cmi.suspend_data
,然后在重新进入包时使用该信息恢复到特定位置
cmi.interactions
在会话之间存储已回答的问题/用户操作
此外,某些包可能会与外部资源通信,或者可能使用浏览器功能(如 cookie 或Web Storage API)来保存数据。从 LMS 的角度来看,这是不太理想的,因为在 LMS 中聚合和持久化数据时更难解释。
通常,当一个包调用 时LMSCommit
,存储当前学习者/学生的当前数据模型就足够了。这可以通过任何常见的持久层(Redis、Web Storage API、SQL 等)来完成,只要当学习者/学生希望继续与 SCORM 包交互时可以检索并提供信息。
3. 提供有关会话的报告和跟踪信息
LMS 的目标是促进和加强学习,LMS 实现这一目标的方法之一是允许报告其用户采取的行动、他们获得的分数以及他们遵循的趋势。
报告目标将根据 SCORM 包中内容的性质以及 LMS 旨在为用户提供的特定学习目标而有所不同。
那么接下来在哪里?