SCORM标准下的教学设计包含三大模块:
1. CAM(Content Arggreation Model)
2. RTE (Runtime Environment)
3. SN (Sequence and Navigation)
分别对应
CAM——学习内容的设计与开发(内容聚合模型)
RTE——运行时间环境
SN——学习活动的设计(排序和导航)
学习内容是静态存储的,而学习活动是一个动态过程,对它的设计是对人机交互过程的设计。如果把学习内容比作年货,那么学习内容的设计与开发是打算和采买年货,而学习活动的设计是对怎么吃年货的计划。
符合SCORM的学习内容的设计与开发:
Step1. 首先要梳理学习内容(建立内容聚合模型)。
对学习内容进行分析、整理,因为做了分类整理,所以也叫做Content Organization(内容模型)。
元数据描述一些整体信息,例如说明年货是什么、生产日期(版本edition),等等。资源引用是“核桃”、“果汁”之类的标签,物理资源就是标签所指对应具体库存物品。
整理成XML文件框架(内容清单)如下:
有关子内容清单(sub-mainfest.xml),IMS内容包装规范的一个通用规则是一个内容包总是包括唯一一个顶级的内容清单,它可能包括一个或多个子内容清单。顶级的内容清单总是描述整个内容包的内容和结构。任何镶嵌的子内容清单描述子内容清单层面的内容。这一层可以是一节课、一个模块等。
这就像Java中的父类与子类之间的关系,你可以说核桃一定是零食,但是不可以说零食一定是核桃。
Step2. 设计之后通常是开发。
开发的素材通常被称作Asset(微单元),以图片、视频、网页、声音等等形式存在。将这些素材有机组合起来,成为SCO(Sharable Content Object,可共享内容对象),零食大礼包这个组件里面包含了若干的Asset,成为一个SCO。SCO的意义在于它可以与外界通信,具备和平台传递数据的功能。至于这个功能如何实现,现在有很多课件制作工具包含这一功能,所以已经可以方便地将课件打包发布成为SCO。
Step3. 关于SCO的设定。
至于哪些内容组合成为一个SCO,哪些内容是Asset其实是非常灵活的,可以根据需求来设定。就像市面上提供的产品,大礼包是一种包装方式,单是瓜子也是一种包装方式。
比如一张网页,它可以是作为一个Asset,也可以发布成为SCO。
Step4.怎么吃年货的计划(学习活动的设计,SN,排序和导航)
活动树中学习活动的分支和流程,基于学习者与运行的内容对象的交互结果和作者的顺序策略。
由于资源可以自由组合,我们可以安排初学者作线性学习,而让深学者根据自己的兴趣需要复习自定义模块。我觉得,SCORM最大的好处就是制订了标准。例如给“红酒”、“巧克力”、“瓜子”等贴上了相应的货架标签,这时我们无论是居住的本地人,还是异乡发展者,只要来到这家店根据相应的标签就能很快找到我们各自需要的东西,然后挑选相应的礼物变成年货大礼包。
以上内容,是整理摘抄自《教学的角度看SCORM标准》一文,有关《ADL_SCORM_2004翻译文档》的学习笔记。
SCORM 2004 清单结构
标准结构参照:SCORM标准参照
根据上文连接中的博文,我整理了一份mainfest.xml.并作了一些标注。
可以把以下代码复制粘贴到Notepad++中查看,这样就可以进行折叠查看每一层结构o(∩_∩)o
<?<?xml version="1.0" encoding="gbk"?> <Mainfest xmlns:Adlcp="default.xml" Identifier = "123" Version = "1.0" > <!-- Identifier --> <!-- 此清单的唯一标识符. 应该是一个全球性的独特价值. --> <!-- Version --> <!-- 此清单的版本. --> <Metadata Schema = "default" SchemaVersion = "CAM 1.3" > <!-- Schema --> <!-- 一个关于整个清单的容器metadat,即元数据 --> <!-- XML解决了数据表示的问题,但它没有定义一套标准的数据类型,更没有说怎么去扩展这套数据类型 --> <!-- 例如,整形数到底代表什么?16位,32位,还是64位?这些细节对实现互操作性都是很重要的。--> <!-- XML Schema(XSD)格式就是专门解决这个问题的一套标准。它定义了一套标准的数据类型,并给出了一种语言来扩展这套数据类型。 --> <!-- String(100) --> <!-- SchemaVersion --> <!-- schema的版本 --> <Adlcp:location> default.xml <!-- 进一步描述整个清单的元数据,放在本容器外 --> </Adlcp:location> </Metadata> <Organizations Default = "default" > <!-- 资源目录树 --> <!-- Default --> <!-- 指定第一个目录的缺省值 --> <Organization Identifier = "1234" Title = "learn more" Structure = "horizontal" > <!-- Identifier --> <!-- 用于标识内容组织结构的标识符 --> <!-- Title --> <!-- 目录标题 --> <!-- Structure --> <!-- 描述内容结构的类型,缺省值为"分层目录" --> <Metadata> <Adlcp:location> default </Adlcp:location> </Metadata> <Item Identifier = "12345" IdentifierRef = "default_url" Title ="item1" IsVisiable = "true" Parameters = "default" > <!-- 层次结构中的一个节点 --> <!-- IdentifierRef --> <!-- 标识符引用,在<Resource/>中找到对应项,并得到本条Item是sco或assert --> <Metadata> <Adlcp:location> default </Adlcp:location> </Metadata> <Item> <!-- 内容子项 --> <!-- 注意 --> <!-- 如果组成课程的所有内容连接紧密以致于不能进行拆分,则使用一个内容清单描述这门课的资源就可以了 --> <!-- 如果某些资源可以进行复用,可以在别的内容清单取到,则应该将其单独设定成一个sco --> </Item> </Item> </Organization> </Organizations> <Resources> <!--包含的所有资源列表 (SCOS和ASSERTS) --> <Resource Identifier = "124" Type = "Webcontent" Adlcp:scormType = "assert" HRef = "default_url" > <!-- Type --> <!-- 指出资源的类型,SCORM标准中使用的类型为"Webcontent" --> <!-- Adlcp:scormType --> <!-- 指明是sco或assert --> <Metadata> <Adlcp:location> default.xml </Adlcp:location> </Metadata> <Dependency IdentifiterRef = "default_url" > <!-- 本资源的依存资源,为简单设为default --> </Dependency> <File HRef = "default_url" > <!-- 因为引用文件的路径是保存在Assert中,故本处不再定义Name --> <Metadata> <Adlcp:location> default_url </Adlcp:location> </Metadata> </File> </Resource> </Resources> </Mainfest>