您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 公司方案 > Scorm-1.2-开发介绍
1SCORM1.2介绍李超2012.12资源建设部22目录一、SCORM介绍二、SCORM框架结构三、SCORM运行时环境四、SCORMAPI五、SCORM参数六、SCORM标准教材制作33一、SCORM介绍4什么是SCORM•SCORM:SharableContentObjectReferenceModel【共享内容对象参考模型】•SCORM,是在线教学领域的一套标准。•这套标准的目的,是为了让任何课件在任何学习平台上(前提是遵循SCORM标准)都能顺畅运行。5SCORM主要版本•SCORM标准从提出现在已有多个版本,分别是:SCORM1.0SCORM1.1SCORM1.2SCORM2004SCORM2008•应用最广泛的是SCORM1.2,其次为SCORM2004。6什么时候用SCORM•1.需要跟踪学习进度,统计学习时长的时候•2.需要课程部署在已符合SCORM标准的平台的时候•3.需要进行较多的E-Learning培训,更好的管理培训课程的时候•4.需要学生学习完课程,然后进行测试并统计成绩的时候7SCORM的特点•1.学习内容的可重用性•2.详细的学习记录跟踪•3.丰富的学习路径设计•4.多重目标的设定•5.多种学习交互方式•6.课件跨平台使用•7.多种媒体资源的整合8使用SCORM课件进行教学能够带来什么好处?•使用SCORM课件,教师可以根据课程的特点以及教学思路来组织教学内容,并根据学员的不同层次设定最佳的学习路径。•使用SCORM课件,学员按照教师设定的路径进行针对性的学习,做到按需学习,提高学生的学习主动性和学习效果。•SCORM课件是平台依赖性的,没有平台就不能播放。在一定程度上制约了盗版的发生。•使用SCORM课件,教师可以完整掌握学生的学习进度和学习效果,并根据当前的学习状况对教学活动进行调整。•使用SCORM课件,教学的管理者可以实时掌控课件的使用情况、学员的学习进度和效果,并进一步建立完善的课件评价体系及学习评价体系。99SCORM精神SCORM想要强调的精神是教材可以透过统一的格式跨平台、可以真正的达到可重复使用、追踪学习记录也可以有统一的标准,更能符合学习者的需要。1010二、SCORM框架结构11几个重要概念•LMS(学习管理系统):能够解析SCORM课件,跟踪学习者的学习记录的web系统。•Asset(原始素材):学习资源的最基本形式是asset。asset是上传到网上并呈现给学习者的电子形式的媒体,如文本、图像、声音或任何其他一种数据。几个asset可以集合在一起建立新的asset。•SCO(可共享内容对象):是一个或者多个asset的集合,它可以在SCORM运行环境中与LMS进行数据传递。SCO是LMS通过SCORM运行时间环境可以跟踪的最低粒度水平的学习资源。•API:是SCO与LMS之间传送的信息的一种通信机制,使用API可以开始、结束、获取、存储数据等动作。•数据模型(CAM):描述了在SCO与LMS之间传送信息数据的模型,如,跟踪信息,完成状态、停留时间等数据。在学习者会话中,LMS必须维护来自SCO数据模型的状态信息。而SCO需要利用这些预先定义的信息,以便在不同的LMS中重复使用。12SCORM1.2标准组成•SCORM1.2规格书分为三部分•CAM(contentarggreationmodel)内容聚集模型•RTE(runtimeeviroment)(SCORM课件)运行环境•SN(sequenceandnavigation)次序与导航13SCORM1.2的技术框架SCORM1.2规范Run-TimeEnvironmentContentAggregationModelContentModelMetadataContentPackageLaunchAPIDataModelSCOAssetContentOrganizationManifest档案文件Manifest14CAMContentModelSCOAssetContentOrganizationmetadataContentPackage内容封装(打包)CAM主要功能:定义教材结构,让教材可以互通于不同的LMS,可在不同LMS上执行,但必须符合SCORMRTE规范。CAM,以XML为描述语言,遵循IMSXML模式15Asset内容模型Asset,必须可以在Web客户端运行和展示的Asset,是任何一种媒体的电子表现,比如文本文件、图像文件、声音文件等等,如下图:16SCO•SCO是由Asset组成的,SCO与Asset最大的不同在于SCO是与LMS进行通讯的,在LMS看来,SCO是一个基本的不可分割的学习资源。•无论是SCO还是Asset,这些内容按照一定的模式进行组织,其模型如下:17IMSmanifest.xml一个SCO或者Asset可以是一个文件,也可以是一组文件,但无论怎样都会有一个起始的文件,这个文件的地址就会由一个Item指向。这个指向就是物理模型和逻辑模型的关联。清单是一个关于包内容的目录组织结构,由4个主要部分组成:1.Meta-data:内容包数据描述的入口。2.Organizations:包含了学习资源的组织或内容结构作为一个单位。3.Resources:在内容包中定义的学习资源束(集合)。4.(sub)Manifest(s):嵌套的子清单。18DEMO19Package•一个逻辑目录,包含了一个顶级内容清单文件,以及在该内容清单文件中引用到的各个子目录下的实际物理资源文件。•一个包代表一组可独立使用的学习内容。它可以是课程的一部分,因为有教学需求而单独提取出来使用;也可以是一门完整的课程或者若干课程的集合。一个包可以被重新组合或拆分。包必须能够独立存在,即它包含了被单独运行或复用时需要的所有信息。•包并不一定要压缩成一个包交换文件,它可以直接通过CD或其它可移动媒介进行发布。内容清单文件和该文件所需要的支持文件(如XML文件所需的DTD,XDR,XSD)必须置于该发布媒介的根目录下。20一般的包结构21DEMO2222三、运行时环境23SCORMRuntimeinterface【官方图】24SCO和LMS交互流程2525四、SCORMAPI26SCORM标准的LMS在客户端的运行机制1)运行SCORMAPIAdapter。2)调用API初始化函数。3)加载课件SCO初始化数据。4)获取DataModel中的用户ID和用户姓名。5)获取DataModel中cmi.core.lesson_status值,即当前用户对当前SCO的学习状态,包括passed(通过)completed(已完成)browsed(浏览)incomplete(非完成)failed(失败)notattempted(未尝试)6种状态。6)获取数据模型中的cmi.core.entry值,该值判断当前用户是否第一次学习当前SCO。如果值为“ab-initio”,则表示当前用户是首次学习;如果值为“resume”,则表示用户是再次学习当前SCO。7)获取数据模型中的cmi.core.lesson_mode值,该值判断当前用户访问当前SCO的方式,包括Browse(预览,不跟踪学习)、Normal(跟踪学习)、Review(复习)三种模式;278)获取数据模型中的cmi.core.score.raw值,该值用来存放每一个学员在每一个SCO的学习过程中所累积的总成绩。如果当前SCO有评测就会记录当前用户的评测总成绩,没有就不记录。LMS可借此DataModel作学习者成绩分析。如果用户是初次学习当前SCO,系统就会初始化cmi.core.score.raw的值为“”(空值)。9)获取数据模型中的cmi.core.lesson_location值。LMS借此DataModel记录每一个用户最后一次学习哪一个SCO,以便下一次重新进入该课程时可以直接跳转到上次学习位置继续学习,相当于书签的功能。10)用户开始学习当前SCO,在学习过程中会记录一系列数据模型的值,用于学习跟踪。其中cmi.core.session_time用来记录每个学员每次学习的时间,包括每个用户进入每个SCO的停留时间及访问的日期。在当前用户结束对当前SCO的学习时,LMS则会记录cmi.core.total_time的值,cmi.core.total_time表示当前用户对每个SCO学习所花的总时间。11)执行LMSCommit(Parameter)接口函数。该函数主要是用来提交数据模型元素的值,LMSCommit发生在LMSfinish之前。12)执行LMSFinish()函数。当用户学习完并要离开一个SCO时,便会调用LMSFinish()。LMSFinish()主要负责将环境变量重设,并判断该SCO是否在结束之前己经调用LMSCommit()将所有记录存储到LMS。若尚未储存,则会自动调用LMSCommit()将当前用户在当前SCO的学习记录保存。2829SCO与LMS的通讯API30LMSInitialize•LMSInitialize负责启动SCO,当学习者进入开始阅读一个SCO时,SCO第一步就是先要调用LMSInitialize,LMSInitialize判断该学员之上课记录,当学员第一次学习该门课的该SCO时,LMSInitialize就会将设定初值至相关的环境变量;•若学习者并不是第一次学习该SCO,LMSInitialize则必须将该学习者之前的上课记录取出,并存入环境变量中,如此即完成启动SCO之动作。31LMSInitializeCodeDemofunctionloadPage(){varresult=LMSInitialize();varstatus=LMSGetValue(cmi.core.lesson_status);if(status==notattempted){LMSSetValue(cmi.core.lesson_status,incomplete);}exitPageStatus=false;startTimer();}当前SCO的学习状态,包括passed(通过)completed(已完成)browsed(浏览)incomplete(非完成)failed(失败)notattempted(未尝试)6种状态。32LMSFinish•当学习者阅读完并要离开一个SCO时,在结束时SCO便会将调用LMSFinish,LMSFinish主要负责将环境变量重设,并判断该SCO是否在结束之前己经有调用LMSCommit将所有记录回存至LMS,若尚未储存,则会自动呼叫将所有学习者在该SCO的上课记录回存。33LMSFinishCodeDemofunctiondoQuit(status){computeTime();exitPageStatus=true;varresult;result=LMSCommit();result=LMSSetValue(cmi.core.lesson_status,status);//NOTE:LMSFinishwillunloadthecurrentSCO.Allprocessing//relativetothecurrentpagemustbeperformedprior//tocallingLMSFinish.result=LMSFinish();}34LMSSetValue•在LMSSetValue是相当复杂的Function,负责储存所有相关的学习记录,当SCO呼叫欲将某个datamodel回存时,LMSSetValue第一步先判断所欲回存之datamodel,判断该datamodel是否可以set(写入),其次判断其型别,当型别错误时,记录其ErrorCode,当型别检查通过时,则依SCORM1.2RTE所订定该datamodel的处理规则,并将数据存入内存中。35LMSSetValueCodeDemovarstatus=LMSGetValue(cmi.core.lesson_status)
本文标题:Scorm-1.2-开发介绍
链接地址:https://www.777doc.com/doc-4473969 .html