Canvas 安卓手机版本 5.4.2下载

admin 发表了文章 • 0 个评论 • 1871 次浏览 • 2019-01-25 17:34 • 来自相关话题

    canv ...查看全部

 



 



canvas 5.4.2 点我下载安卓版的canvas去喽



 



这个应用是不能够单独使用的,如果你没有买国外的instructure的服务,你还是不要下载了。因为下载了也没用。



 



 



上几张图片

















 


Canvas的基本分析报告

admin 发表了文章 • 0 个评论 • 2378 次浏览 • 2018-06-04 13:49 • 来自相关话题

  一、引言   随着高校课堂教学改革的深入,项目式教学在高校课堂中的应用越来越广泛,它的主要特点是“以项目为主线、教师为主导、学生为主体” ...查看全部

 



一、引言



  随着高校课堂教学改革的深入,项目式教学在高校课堂中的应用越来越广泛,它的主要特点是“以项目为主线、教师为主导、学生为主体”。课堂上,教师提供一个难度适宜的教学项目,提出问题,学生在教师的引导下采用自主探究、小组协作等方式进行学习,在学习实践中发现并解决问题,掌握新知识。项目教学法改变了以往“教师讲,学生听”的被动教学模式,有效地提高了课堂教学效率。但是,在教学实践中,由于一个项目涉及的知识面比较广,内容偏多,利用传统教学模式,基础知识的讲解势必会占用很多课堂时间,不利于项目式教学的有效开展。为了发挥项目式教学的优势,我们考虑将知识传授部分提前,放在课外由学生自主学习,课堂上则以项目为基础,教师和学生开展各种互动教学活动,完成知识的吸收和内化[1]。这种教学活动翻转了传统的课堂教学模式,所以被称为“翻转课堂”。



  所谓翻转课堂,就是教师课前创建教学视频,学生在家中或课外观看教学视频,针对教学内容完成测试,提出学习中存在的问题;在课堂上师生面对面交流,进行探究性、协作式学习;课后,师生还需要对课堂教学进行及时评价与反思的一种教学形态[2]。这种新型的教育教学形式,颠覆了传统意义上的课堂教学模式。在翻转课堂中,教师是学习的指导者和促进者,学生是学习的主体,在教师的指导下进行学习,学习活动也不再是孤立的,增加了学生和教师之间的互动和个性化的接触时间[3][4]。学生可以利用教学视频合理地安排和控制自己的学习,可以有效地增加教学活动的互动环节,促进小组合作学习的有效开展。翻转课堂不是简单的视频教学,也不同于传统的在线课程,而是依托在线学习管理系统,融合了在线学习与面对面教学的混合教学模式[5]。在翻转课堂教学中要为学习者提供良好的学习环境,选择合适的学习管理系统是翻转课堂有效开展的基础。



  二、翻转课堂学习管理系统分析



  在“翻转课堂”教学模式下,学习管理系统是一种重要的促进性条件,充分利用它的辅助作用,可以更强有力地推动个性化学习和小组协作学习。学习管理系统主要用于发布教学通知、教学视频、测试题目、教学资源和作业等教学内容,同时提供分组学习、学习指导、在线交流、在线测试、电子学档及教学评估等功能,为面对面教学提供网络支撑。



  1. 常用学习管理系统分析



  目前我国高校使用的学习管理系统(LMS)主要有以下几种模式:自主开发LMS、商业化LMS和开源LMS。自主开发的LMS一般来说主要服务于本校,针对性较强,符合学校的教学需求,更能体现本校特色。但是开发技术要求较高,后续升级和维护比较困难。常用的商业化LMS是Blackboard。该平台以课程为核心,教师可以方便地发布、管理、组织教学内容,教师和学习者之间可以进行讨论、交流,并提供了强大的在线考核和成绩管理等功能。但是Blackboard需要支付相当高的费用才能使用,对大部分高校,特别是高职院校很难承担[6][7]。开源LMS使用最广泛的是Moodle。Moodle平台开源使用,界面简单,具有教学管理的大多数功能,如课程管理、作业管理、在线交流以及在线测试等。但是该平台配置和操作较为复杂,社会化网络工具整合不够,而且当课程很多时,对服务器性能要求较高[8]。



  综上所述,一款好的学习管理系统,除了具备一般教学管理系统应有的基本功能外,还应该免费、好用、维护简单、整合功能强,最好是不需要配置服务器就能使用。考察了众多LMS,基于云服务架构的Canvas是一个不错的选择。



  2. Canvas的特点



  Canvas是Instructure公司开发的一款开源学习管理系统,和其他常用LMS相比,Canvas具有如下五个特点 [9]:



  (1)云系统架构



  Canvas是目前唯一基于本地云服务的LMS。通过本地云,Canvas以较低的成本提供了显著的云计算优势。用户不需要搭建系统可以直接使用。当前,国内大多数学校使用的LMS都是属于手动托管,一旦出现超负荷工作,服务器由于不堪重负,就会导致系统不能正常工作甚至瘫痪。Canvas采用自动峰值负荷管理,随着活动的增加,系统会自动添加额外的服务器容量,智能分配各类资源,从而匹配各种资源的需求,确保系统正常运行[10][11]。



  (2)开源应用



  Instructure公司把开放源代码软件的可访问好处与商业公司的稳定和支持结合起来,Canvas作为一款开放源代码的软件系统,能无缝集成创新的网络技术和学习资源,其开放式API为轻松地与第三方系统结合以及实行开放式发布提供了可能[12]。



  (3)强大的整合功能



  Canvas具备每一个LMS都提供的基本功能,如作业、小组讨论、学习评价和课程内容等工具。同时,Canvas还拥有App中心,支持大量教育工具嵌入使用,集成了许多第三方教育应用、社交网络和即时聊天工具,而且还在不断地发展更新中,用户可以很方便地在Canvas中应用其他软件展开教学交流。



  (4)强大的数据分析功能



  Canvas拥有精心设计的量规和分级工具,可以自动记录学生的学习过程和学习成果,并可以跟踪报告,帮助教师及时识别学生的状况,还可以从现有教学资源选出最佳项目,很容易地检索资源和组合课程,为智能化、个性化教学提供了方便[13]。  (5)移动应用



  Canvas提供免费的移动应用:SpeedGrader移动应用和iOS应用。Canvas的SpeedGrader移动应用程序为iPad用户提供服务,可以让教师快速、轻松地检查作业及评定成绩,甚至可以通过iPad为学生反馈视频、音频或文本评论[14][15]。Canvas同样适用于iOS应用程序,学习者通过iPad或iPhone能观看评分通知、课程表、收发信息、参与讨论、上传视频与音频评论等。



  三、翻转课堂教学模式设计



  在高职教学实践中,项目式教学法是目前常用的教学模式。翻转课堂的特点非常适合项目式教学,可以很好地解决传统项目式教学时间和空间不足等问题。Canvas平台构建的教学系统,能够很好地应用于翻转教学的所有环节,为教学带来方便。翻转课堂并不是简单的视频教学,富有成效的面对面互动学习活动才是翻转课堂最重要的价值体现,在线活动是翻转课堂教学环节的必要补充。参考项目式教学和翻转课堂的特征,笔者设计了依托Canvas平台和多媒体教学系统的项目式翻转课堂教学模型(如图1所示)。



  



  图1 项目式翻转课堂教学模型



  1. 教师教学活动设计



  在翻转教学活动中,教师是教学的发起者和指导者。课前,教师根据教学大纲和教案,结合课程与实际工作情景,设计合理的教学项目,制作并发布教学微视频。根据“最近发展区”理论,教师在网上针对教学视频提出几个问题,帮助学生完成知识的过渡。同时,根据教学需要提供相应的教学资源并发布课前教学通知等;课中,教师首先根据课前教学内容布置2-3个问题,了解学生自我学习的情况,并根据反馈情况,引导学生展开讨论,利用多媒体教学网讲解学生存在的共性问题。然后,根据学生实际情况合理分组,分解项目,指导学生利用Canvas平台展开自主学习和小组协作学习,并参与学生项目的研讨,引导他们分析、解决问题。在项目完成后,引导学生展示小组作品,并组织学生进行互评,促进学生自由、主动发展,激发他们的思维碰撞,形成头脑风暴。同时,选择典型项目进行评析,分析项目的优势与不足,促进学生的专业发展;最后,根据需要布置课后作业,指导学生巩固加深所学知识。课后,教师利用Canvas平台回答学生提出的问题,批改课后作业。对教学过程进行总结,反思教学中存在的问题,在下一轮教学中进行完善。课程结束后为学生进行评分,并根据Canvas平台的评分簿提供的分析数据,发现学习中存在的问题,对整个课程进行总体性评价和教学反思。



  2. 学生学习活动设计



  学生是学习的主导者,课前主要进行视频的学习,对于学习中不理解的概念或理论,可以先暂停视频,利用教师提供的资源和教学文件进行自主学习,理解后继续视频的学习。接下来,完成教师布置的测试题,检验学习效果。然后,熟悉课堂项目的基本情况,并记录自己不能理解的问题,方便在课堂上与同学或教师讨论。课堂上利用Canvas平台加入学习小组,按照小组“日历”中的活动计划,在教师的指引下利用教学资源进行探究式学习,与小组成员研讨交流、协作学习,及时弥补自己在课前学习阶段的不足,扩展知识的广度和深度,和小组成员共同完成项目任务。项目完成后,展示小组作品,对同组成员和组外其他小组作品做出评价,充分发挥学习的主观能动性,提高比较与分析能力,完成知识的内化。课后及时完成作业并展示作品,对同伴的作业进行评价,及时完善补充个人的电子学档,自我反思、自我管理,实现学习的升华。



  四、翻转课堂教学应用案例



  《FLASH动画制作》课程教学按照工作任务所需的知识和技能构建学习领域框架内的“小型”主题学习单元,通过情景模式和项目组织教学,每个教学单元由“若干个知识点+一个项目”组成。每个项目在一周内完成,每周两次课,每次三课时。这种教学模式在Canvas平台中非常适合以课程单元为单位组织课程框架,结合多媒体教学系统,完成翻转教学的重要环节。



  1. 课前活动



  在翻转教学中,知识的传授主要是学生通过学习管理系统,利用课前教师发布的视频和教学资源进行自主探究式学习实现的。



  (1)教师教学准备



  任课教师以教师身份登录到Canvas平台,构建教学单元,如“《FLASH MV制作》项目学习”。在教学单元首页列出本单元的项目任务:利用FLASH将优美的音乐、唯美的动画场景和引人入胜的故事情节结合,制作一个四分钟左右的MV作品。知识准备为如下四点:FLASH MV动画的特点和制作流程介绍;FLASH MV字幕的添加;FLASH MV镜头的运用技巧;Flash MV影片的优化与发布。设计如下三个练习题:Flash MV有哪几种类型?MV中使用什么类型的音频格式?如何实现动画与字幕的同步?教师首先利用 Camtasia Studio录制知识点的微视频,利用富内容编辑器 (Rich Content Editor)把教学微视频和测试题发布到教学平台,并设置学习完成的最后期限。利用平台的“文件”功能,把项目学习需要的教学文件上传到“课程文件夹”内,供学生下载学习。



  教学资源是自主探究式学习能否成功的重要因素之一,互联网是世界上最大的教学资源库,教师可以利用网络上的各种资源来充实教学资源,如各培训机构提供的FLASH MV制作教程和其他优秀的MV作品。Canvas的WIKI页面很容易整合来自互联网的多媒体学习资源,这种网络资源的共享帮助学生提高了网络利用率。Canvas保留了页面的整个历史,师生可以清晰地看到教学资源是如何随着教学进度的推移而发展的。课前准备工作完成后,教师通过E-mail发布通知,提醒学生要学习的新内容和完成期限。



  (2)学生自主学习



  学生通过E-mail接收到学习通知,登录到学习平台,在线学习教学视频,及时利用课前测试题检验自己的学习情况,没有掌握的地方利用播放器的回放功能反复学习。学生根据自己学习教学视频的情况,在教学资源模块选择扩展资料和教学文件进行个性化学习。学习完成后,仔细阅读教师的导读部分,熟悉课堂项目的制作流程,并记录下学习期间遇到的疑难问题,学习期间也可以通过Canvas平台进行师生、生生交流。  2. 课中活动



  翻转课堂相比传统灌输式的教学活动,真正的转变不是课前的以视频学习为主的自主学习,而是课堂教学活动的变革。传统灌输式教学,将大量的时间用在了知识的传授上,学生自主学习和小组协作学习的时间得不到保障,特别是以实践为主的课程,项目式教学活动的开展由于时间限制没有办法实现。而翻转课堂的出现,将知识传授提前到课外,课堂上学习小组依托教学环境,在教师的指引下,通过一个完整作品的实现,小组成员可以充分地进行自主学习、协作学习,更好地完成知识的内化。



  (1)课堂测评



  在课堂教学中,为了更有效地展开项目式合作学习,教师首先通过Canvas平台的学习记录了解学生课前学习的情况,提出2-3个测试题,测验学生对前期知识的掌握程度,根据反馈情况采用交流、探讨等形式解决学生的疑问。然后,利用多媒体教学网络分析项目“FLASH MV”制作的要点,解答学生的疑难问题。



  (2)小组分组



  在《FLASH动画制作》课程的项目制作阶段,需要学生以组为单位展开合作学习,共同完成FLASH项目。在分组时,遵循组内异质、组间同质的原则。根据学生的不同特长按照项目的流程进行分组,每组四人(含剧本及导演一人、美术编辑一人、有创新意识一人、熟练动画操作一人)。在完成FLASH MV项目时,利用Canvas平台创建“FLASH MV制作组”,为了让学生能够结合自己的特长进行随机组合,分组时允许学生自行注册,根据班级人数确定创建的小组个数,限定组内成员(如图2所示)。创建好后,学生根据事先约定的组合选择加入协作学习小组。



  (3)小组协作学习



  在Canvas平台上,小组是一种合作性工具,在小组空间里,学生能够创建页面、通告、合作、讨论以及活动日历等。在“翻转课堂”小组协作学习过程中,学生是学习的主体。但是,为了让协作学习有序进行,教师要进行合理的组织,引导小组展开讨论,并有针对性地参与到组内研讨中。教师要时刻关注小组的活动情况,根据学生情况做出鼓励性、针对性、指导性和全面性的评价。Canvas平台除了方便学生展开有序的小组协作学习外,还为教师查看、管理小组学习提供了方便。教师在“人员”导航中选择需要查看的小组,在“小组活动”页面可以看到小组成员在小组协作学习中的任何活动,并且可以通过查看组内的“日历”清楚地了解小组的整个活动计划。



  



  图2 小组分组



  在课堂项目式小组协作学习中,小组成员首先利用平台的会话功能讨论确定FLASH MV项目的名称,分析项目完成需要的步骤,结合自身的特长进行分工,推选出小组长,在小组“日历”中列出项目完成的计划。



  项目确定后,首先,根据MV的主题确定剧本。由于FLASH MV的制作不需要太多的故事情节,所以课堂上要求学生不用写出完整的剧本,只需要完成分镜头脚本的制作,使用镜头语言呈现出每个镜头的面貌,确定MV的场景、角色和视图,在分镜表格内注明镜头动作、时间和内容等。学生在讨论分镜头脚本时,可以利用Canvas中的EtherPad技术。EtherPad是开源的、基于WEB的实时协同文档处理器,为所有参与用户提供了富有成效的合作方式。首先,由负责剧本编辑的同学撰写脚本草稿,然后导入到EtherPad中,所有组员可以在线阅读,利用EtherPad的聊天窗口在线讨论,并可以在线协作,修改和完善脚本。



  脚本完成后,大家根据分镜头,分工制作项目需要的素材,比如角色、场景和背景音乐等。素材完成后,组员利用“文件”功能上传各自收集、制作的资源和素材到“组文件夹”内。小组成员浏览组内素材,提出修改意见,有争议的地方大家一起讨论,必要时邀请教师参与讨论,找到解决问题的办法。最后,由小组长收集所有的素材,统一风格,并按要求修改文件名,完成项目的角色库、场景库等。



  调试是项目制作过程中很重要的一环。在这一阶段,组内成员要时刻保持会话。小组长首先分配好动画分工,大家根据自己的任务完成动作元件。制作期间,碰到疑难问题,可以利用教学资源进行自主学习,寻找解决问题的办法;也可以开启Canvas私人讨论功能,将制作的动画元件以附件形式上传,在小组内就动画制作中的某个问题发起讨论,请其他同学和教师帮助解决。由于项目一般安排在一周内完成,同组人员在课外时间,可以利用Canvas会议功能,针对某个问题进行视频或语音会议,及时解决问题。小组成员完成各自的动画元件后,小组长召集组内成员进行互评,提出修改意见进行完善。最后,由小组长收集所有的动画元件文件,按要求修改文件名,完成项目的动画库。



  最后,小组根据前期的工作进行项目的合成,完善并修改作品。小组长根据前期制作的素材和动画元件,新建FLASH文件,导入背景音乐,添加相应的素材和动画元件,完成字幕的制作,测试动画。组内成员观看作品,提出修改意见,完善作品后上传到平台中。



  (4)成果展示与评价



  项目制作完成后,教师及时组织项目成果的展示。小组展示结束后,选派一名代表回答项目制作过程中所使用的技术要点。教师组织学生对展示的MV作品展开讨论,分析作品的优缺点,以及可以从形式和技术上做些什么改进。通过激烈的讨论,大家思想上可以相互碰撞,启发灵感,加深对知识的理解,促进学生的认知,最大限度地发挥每个学生的专长。最后,教师在小组作品中选出几个具有代表性的作品进行点评,特别是对小组协作过程中出现的问题进行评析,以便学生从多方面的信息来了解自己的学习过程、成就及优缺点。



  3. 课后活动



  课后教师根据翻转教学的情况,及时进行教学总结,将课堂中观察到的问题进行梳理,以便在下一轮教学中进行改进,并批改作业,评价学生的作品。学生课后完成作业,展示成果,并积极评价同伴的作品,完善自己的电子学档。  (1)课后作业



  Canvas的作业可以用来测试学生的理解程度,运用各种多媒体帮助教师评估学生能力,学生通过作业页面可以查看所有作业的得分。Canvas评分簿是功能齐全的管理工具,可以作为学生与教师间的交流工具,并可以生成报告,帮助教师追踪学生进步情况。《FLASH动画制作》课程的作业大部分都是实践类的,比如在学完“动画短片”项目后,布置了作业“反腐动画短片”,要求学生按照要求完成动画短片,并且规定了作业的分数、提交期限、文件类型,设置了需要同伴审阅,方便其他学生对作品展开评论。作业提供一个明确的评价量规让学生参考,使其能根据评分标准衡量自己的学习成果(如图3所示)。在批改学生作业时,教师可以利用评分簿对学生提交的作品作出反馈,还可以使用Chrome浏览器的语音识别功能在评分簿中为学生的作品添加评论,语音会自动转换成文本,省去了打字的烦恼。



  



  图3 评分标准



  (2)作品展示



  Canvas中的ePortfolios 是用来展示作品并对其进行评价的地方,由章节和页面组成。学生可以将素材、完成的作业添加到ePortfolios。在作品页面内,学生可以添加自己的反思,记录下对于作业或学习过程的自我评价,有助于学生更了解自我学习的过程及相关的学习与认知策略,达到元认知的效果[16]。同时,可以将作品设置为共享模式,与同伴相互学习,除了可以观摩同伴作品外,还可以获得同伴对自己作品的评价与建议,增进同伴间的了解与互动[17]。



  (3)教学评价



  翻转课堂的教学评价采用多元评价方法,将传统教学评价和网上教学评价相结合[18],由平时表现、个人作业和小组作业三部分组成(如表1所示)。平时表现由考勤、登录Canvas平台次数、讨论情况、小组学习中的表现等几部分组成[19]。评价时主要依靠教师平时在面对面教学中的记录以及Canvas平台记录的情况,Canvas平台完整地记录了学生的登录次数、参与讨论、小组学习时提供的资源等情况[20]。个人作业主要是教师布置的由个人独立完成的作业,教师的评价主要是利用Canvas的评分簿记录平时的作业成绩,学生的评价则利用ePortfolios记录的同伴评价情况。小组作业由学生评价、小组评价和教师评价三部分组成,Canvas的小组协作功能提供了很好的评价功能,根据学生在组内的活动情况,教师可以根据学生的表现在评价作品时给予不同的评分,小组成员也可以根据在作品合作中的具体表现互相评分。课程的整个评价采取定量与定性相结合的方式[21],准确、科学地对学习者做出全方位的评价。



  表1 考核方式



  [序号\&评价方式\&评价形式\&分值\&1\&平时表现\&教师评价\&100%\&10\&2\&个人作业\&学生评价\&30%\&40\&教师评价\&70%\&3\&小组作业\&学生评价\&20%\&50\&小组互评\&30%\&教师评价\&50%\&总评\&100\&]



  4. 教学效果



  翻转课堂的教学活动,改变了教师和学生的角色,学生自主性得到体现,真正成为学习的主人,解决了传统教学中项目式教学不能按教学进度完成的情况。通过一个学期的教学实践,学期结束后对所任班级的32位学生进行在线问卷调查,分析表明,所有学生都认为利用Canvas平台能很好地帮助他们实现翻转课堂学习,并且对他们的学习态度、学习能力及实践技能等方面都有很大的帮助。93%以上的学生认为采用基于Canvas平台的翻转课堂教学模式后对其学习兴趣有帮助,学习过程更加自由,提高了学习的积极性。87%以上的学生认为该教学模式能培养他们自主学习、独立探索的能力,对培养他们的创新思维能力和团队合作意识有帮助。利用Canvas平台,可以在教师的指导下,展开自主学习和小组协作学习,主动地发现问题、探索问题、解决问题,能有效地提高课堂效率。84%以上的学生认为该模式能有效地提高他们的动手实践能力。在学期结束的作品答辩环节,学生的作品及答辩明显好于前几届学生。总之, 基于Canvas平台的翻转课堂教学模式获得了参加实际体验的学生的认可[22]。



  五、结束语



  翻转课堂是目前国内教育工作者研究比较多的课题,通过《FLASH动画制作》课程在Canvas教学平台中的应用,可以看到,基于云服务的Canvas为现今高校实施翻转教学提供了一种高效、实用的辅助工具与平台[23]。它的出现,有效地解决了部分高校由于资金问题不能使用Blackboard平台的状况,也可以解决利用Moodle、SAKAI等开源平台需要额外搭建服务器带来的一系列问题。虽然目前国内对Canvas的使用和研究不多,但是随着网络教育模式的不断深入,对Canvas的研究和使用必定会出现新的高潮。



 


Canvas快速安装教程【原版英文】

admin 发表了文章 • 0 个评论 • 2287 次浏览 • 2017-12-08 16:30 • 来自相关话题

Database installation and configuration Installing Postgres Rails, the library Canv ...查看全部

Database installation and configuration



Installing Postgres



Rails, the library Canvas uses, supports many database adapters, but we primarily use Postgres and SQLite (for testing). Since this tutorial is for setting up a production environment, we recommend Postgres.



You can run Postgres on the same server you're going to run Canvas on, or not. It really doesn't matter. Just make sure the server you're running Canvas on can talk to the Postgres database.



If Postgres isn't already on the host you are planning on running your database on, if the host is Debian/Ubuntu, then this is as easy as




sysadmin@dbserver:~$ sudo apt-get install postgresql-9.5


N.B., if you're running MacOS X and using the excellent Homebrew tool, then you can just run brew install postgresql. Note that you need Xcode though.



Be sure you're running at least Postgres version 9.5.



Running Postgres on a different server



If you are running Postgres on a different server than the server that Canvas will be running on, you'll need to make sure Postgres is listening to connections from foreign clients. You can do this by editing postgresql.conf and pg_hba.conf as described in [the Postgres documentation] (http://www.postgresql.org/docs/current/static/auth-pg-hba-conf.html).



Configuring Postgres



You'll want to set up a Canvas user inside of Postgres. Note that in the below commands, you'll want to replace localhost with the hostname of the server Canvas is running on, if Canvas is running on a different server than Postgres.




# createuser will prompt you for a password for database user
sysadmin@dbserver:~$ sudo -u postgres createuser canvas --no-createdb \
--no-superuser --no-createrole --pwprompt
sysadmin@dbserver:~$ sudo -u postgres createdb canvas_production --owner=canvas


Getting the code



There's two primary ways to get a copy of Canvas



Using Git



You can install Git on Debian/Ubuntu by running




sysadmin@appserver:~$ sudo apt-get install git-core


Once you have a copy of Git installed on your system, getting the latest source for Canvas is as simple as checking out code from the repo, like so:




sysadmin@appserver:~$ git clone https://github.com/instructure/canvas-lms.git canvas
sysadmin@appserver:~$ cd canvas
sysadmin@appserver:~$ git checkout stable


Using a Tarball or a Zip



You can also download a tarball or zipfile.





Code installation



We need to put the Canvas code in the location where it will run from. On a Unix machine, choosing something like the following is a good choice:




/var/canvas


Take your tarball or your checkout and make sure you move the contents to this directory you've chosen such that all of the directories inside the canvas directory (app, config, db, doc, public, etc). all exist inside this new directory you chose.



We'll be referring to /var/canvas (or whatever you chose) as your Rails application root.



As an example:




sysadmin@appserver:~$ sudo mkdir -p /var/canvas
sysadmin@appserver:~$ sudo chown -R sysadmin /var/canvas
sysadmin@appserver:~$ cd canvas
sysadmin@appserver:~/canvas$ ls
app db Gemfile log Rakefile spec tmp
config doc lib public script test vendor
sysadmin@appserver:~/canvas$ cp -av . /var/canvas
sysadmin@appserver:~/canvas$ cd /var/canvas
sysadmin@appserver:/var/canvas$ ls
app db Gemfile log Rakefile spec tmp
config doc lib public script test vendor
sysadmin@appserver:/var/canvas$


Dependency Installation



Canvas now requires Ruby 2.4.0, as of the 2017-04-22 release.



External dependencies



Debian/Ubuntu



We now need to install the Ruby libraries and packages that Canvas needs. On Debian/Ubuntu, there are a few packages you're going to need to install. If you're running Ubuntu, you'll need to add a PPA in order to get the required Ruby version, by using the following commands:




$ sudo apt-get install software-properties-common
$ sudo add-apt-repository ppa:brightbox/ruby-ng
$ sudo apt-get update


Now, We install Ruby 2.4 via the following command:




$ sudo apt-get install ruby2.4 ruby2.4-dev zlib1g-dev libxml2-dev \
libsqlite3-dev postgresql libpq-dev \
libxmlsec1-dev curl make g++


Node.js installation:




$ curl -sL https://deb.nodesource.com/setup_10.x | sudo -E bash -
$ sudo apt-get install nodejs


After installing Postgres, you will need to set your system username as a postgres superuser. You can do so by running the following commands:




sudo -u postgres createuser $USER
sudo -u postgres psql -c "alter user $USER with superuser" postgres


Mac OS X



For OS X, you'll need to install the Command Line Tools for Xcode, and make sure you have Ruby 2.1. You can find out what version of Ruby your Mac came with by running:




$ ruby -v


You also need Postgres and the xmlsec library installed. The easiest way to get these is via homebrew. Once you have homebrew installed, just run:




$ brew install postgresql nodejs xmlsec1


Ruby Gems



Most of Canvas' dependencies are Ruby Gems. Ruby Gems are a Ruby-specific package management system that operates orthogonally to operating-system package management systems.



Bundler and Canvas dependencies



Canvas uses Bundler as an additional layer on top of Ruby Gems to manage versioned dependencies. Bundler is great!




sysadmin@appserver:/var/canvas$ sudo gem install bundler --version 1.13.6
sysadmin@appserver:/var/canvas$ bundle _1.13.6_ install --path vendor/bundle


Note on Mac OS X Mavericks



If your on Mac OS X Mavericks, the thrift gem may fail to build due to a bug concerning xcode. This can be resolved by running the following:




sysadmin@appserver:/var/canvas$ sudo gem install bundler --version 1.13.6
sysadmin@appserver:/var/canvas$ bundle config build.thrift --with-cppflags='-D_FORTIFY_SOURCE=0'
sysadmin@appserver:/var/canvas$ bundle _1.13.6_ install --path vendor/bundle


Yarn Installation



Canvas now prefers yarn instead of npm. (Note, as of 15Sep2018, the required yarn version is 1.10.1, specifically sudo apt-get update && sudo apt-get install yarn=1.10.1-1)




sysadmin@appserver:/var/canvas$ curl -sS https://dl.yarnpkg.com/debian/pubkey.gpg | sudo apt-key add -
sysadmin@appserver:/var/canvas$ echo "deb https://dl.yarnpkg.com/debian/ stable main" | sudo tee /etc/apt/sources.list.d/yarn.list
sysadmin@appserver:/var/canvas$ sudo apt-get update && sudo apt-get install yarn=1.10.1-1


Also, make sure python is installed (needed for contextify package)




sysadmin@appserver:/var/canvas$ sudo apt-get install python


Then install the node modules:




sysadmin@appserver:/var/canvas$ yarn install


Canvas default configuration



Before we set up all the tables in your database, our Rails code depends on a small few configuration files, which ship with good example settings, so, we'll want to set those up quickly. We'll be examining them more shortly. From the root of your Canvas tree, you can pull in the default configuration values like so:




sysadmin@appserver:/var/canvas$ for config in amazon_s3 database \
delayed_jobs domain file_store outgoing_mail security external_migration; \
do cp config/$config.yml.example config/$config.yml; done


Dynamic settings configuration



This config file is useful if you don't want to run a consul cluster with canvas. Just provide the config data you would like for the DynamicSettings class to find, and it will use it whenever a call for consul data is issued. Data should be shaped like the example below, one key for the related set of data, and a hash of key/value pairs (no nesting)




sysadmin@appserver:/var/canvas$ cp config/dynamic_settings.yml.example config/dynamic_settings.yml
sysadmin@appserver:/var/canvas$ nano config/dynamic_settings.yml


Database configuration



Now we need to set up your database configuration to point to your Postgres server and your production databases. Open the file config/database.yml, and find the production environment section. You can open this file with an editor like this:




sysadmin@appserver:/var/canvas$ cp config/database.yml.example config/database.yml
sysadmin@appserver:/var/canvas$ nano config/database.yml


Update this section to reflect your Postgres server's location and authentication credentials. This is the place you will put the password and database name, along with anything else you set up, from the Postgres setup steps.



Outgoing mail configuration



For Canvas to work properly, you need an outgoing SMTP mail server. All you need to do is get valid outgoing SMTP settings. Open config/outgoing_mail.yml:




sysadmin@appserver:/var/canvas$ cp config/outgoing_mail.yml.example config/outgoing_mail.yml
sysadmin@appserver:/var/canvas$ nano config/outgoing_mail.yml


Find the production section and configure it to match your SMTP provider's settings. Note that the domain and outgoing_address fields are not for SMTP, but are for Canvas. domain is required, and is the domain name that outgoing emails are expected to come from. outgoing_address is optional, and if provided, will show up as the address in the From field of emails Canvas sends.



If you don't want to use authentication, simply comment out the lines for user_namepassword, and authentication.



URL configuration



In many notification emails, and other events that aren't triggered by a web request, Canvas needs to know the URL that it is visible from. For now, these are all constructed based off a domain name. Please edit the production section of config/domain.yml to be the appropriate domain name for your Canvas installation. For the domain field, this will be the part between http:// and the next /. Instructure uses canvas.instructure.com.




sysadmin@appserver:/var/canvas$ cp config/domain.yml.example config/domain.yml
sysadmin@appserver:/var/canvas$ nano config/domain.yml


Note that the optional files_domain field is required if you plan to host user-uploaded files and wish to be secure, or if you want to allow custom Javascript in custom themes. files_domain must be a different hostname from the browser's perspective, even though it can be the same Apache server, and even the same IP address.



Security configuration



You must insert randomized strings of at least 20 characters in this file:




sysadmin@appserver:/var/canvas$ cp config/security.yml.example config/security.yml

sysadmin@appserver:/var/canvas$ nano config/security.yml


Generate Assets



Canvas needs to build a number of assets before it will work correctly. First, create the directories that will store the generated files. See the Canvas ownership section below in case you want to plan to assign ownership to canvasuser and the user does not exist yet.




sysadmin@appserver:~$ cd /var/canvas
sysadmin@appserver:/var/canvas$ mkdir -p log tmp/pids public/assets app/stylesheets/brandable_css_brands
sysadmin@appserver:/var/canvas$ touch app/stylesheets/_brandable_variables_defaults_autogenerated.scss
sysadmin@appserver:/var/canvas$ touch Gemfile.lock
sysadmin@appserver:/var/canvas$ touch log/production.log
sysadmin@appserver:/var/canvas$ sudo chown -R canvasuser config/environment.rb log tmp public/assets \
app/stylesheets/_brandable_variables_defaults_autogenerated.scss \
app/stylesheets/brandable_css_brands Gemfile.lock config.ru


Then will need to run:




sysadmin@appserver:/var/canvas$ yarn install
sysadmin@appserver:/var/canvas$ RAILS_ENV=production bundle exec rake canvas:compile_assets
sysadmin@appserver:/var/canvas$ sudo chown -R canvasuser public/dist/brandable_css


Subsequent Updates (NOT NEEDED FOR INITIAL DEPLOY)



If you are updating code, and you run canvas:compile_assets in a place that does not have a database connection, then you'll also want to run the following once code is in place and an active DB connection exists, in order to full update existing themes:




sysadmin@appserver:/var/canvas$ RAILS_ENV=production bundle exec rake brand_configs:generate_and_upload_all


Database population



Once your database is configured, and assets are installed, we need to actually fill the database with tables and initial data. You can do this by running our rake migration and initialization tasks from your application's root:




sysadmin@appserver:/var/canvas$ RAILS_ENV=production bundle exec rake db:initial_setup


Note that this initial setup will interactively prompt you to create an administrator account, the name for the default account, and whether to submit usage data to Instructure. The prompts can be "pre-filled" by setting the following environment variables:




























Environment Variable Value(s) supported
CANVAS_LMS_ADMIN_EMAIL E-mail address used for default administrator login
CANVAS_LMS_ADMIN_PASSWORD Password for default administrator login
CANVAS_LMS_ACCOUNT_NAME Account name seen by users, usually your organization name
CANVAS_LMS_STATS_COLLECTION opt_in, opt_out, or anonymized


Canvas ownership



Making sure Canvas can't write to more things than it should.



Set up or choose a user you want the Canvas Rails application to run as. This can be the same user as your webserver (www-data on Debian/Ubuntu), your personal user account, or something else. Once you've chosen or created a new user, you need to change the ownership of key files in your application root to that user.




sysadmin@appserver:/var/canvas$ sudo adduser --disabled-password --gecos canvas canvasuser


Making sure other users can't read private Canvas files



There are a number of files in your configuration directory (/var/canvas/config) that contain passwords, encryption keys, and other private data that would compromise the security of your Canvas installation if it became public. These are the .yml files inside the config directory, and we want to make them readable only by the canvasuser user.




sysadmin@appserver:/var/canvas$ sudo chown canvasuser config/*.yml
sysadmin@appserver:/var/canvas$ sudo chmod 400 config/*.yml


Note that once you change these settings, to modify the configuration files henceforth, you will have to use sudo.



Making sure to use the "most restrictive" permissions



Passenger will choose the user to run the application based on the ownership settings of config/environment.rb (you can view the ownership settings via the ls -l command). Note that it is probably wise to ensure that the ownership settings of all other files besides the ones with permissions set just above are restrictive, and only allow your canvasuser user account to read the rest of the files.



Apache configuration



Installation



You're now going to need to set up the webserver. We're going to use Apache and Passenger to serve the Canvas content. Before proceeding, you'll need to add the Phusion Passenger APT repository, which contains the passenger package. After you've installed the repository, you'll need to install the apache and passenger packages. If you are on Debian/Ubuntu, you can do this quickly by typing:




sysadmin@appserver:/var/canvas$ sudo apt-get install passenger libapache2-mod-passenger apache2


We'll be using mod_rewrite, so you'll want to enable that.




sysadmin@appserver:/var/canvas$ sudo a2enmod rewrite


On Mac OS X you can simple use:




sysadmin@appserver:/var/canvas$ brew install passenger


and follow the instructions.



Once you have Apache and Passenger installed, we're going to need to set up Apache, Passenger, and your Rails app to all know about each other. This will be a brief overview, and for more detail, you should check out the Passenger documentation for setting up Apache.



Configure Passenger with Apache



First, make sure Passenger is enabled for your Apache configuration. In Debian/Ubuntu, the libapache2-mod-passenger package should have put symlinks inside of /etc/apache2/mods-enabled/ called passenger.conf and passenger.load. If it didn't or they are disabled somehow, you can enable passenger by running:




sysadmin@appserver:/var/canvas$ sudo a2enmod passenger


In other setups, you just need to make sure you add the following lines to your Apache configuration, changing paths to appropriate values if necessary:




LoadModule passenger_module /usr/lib/apache2/modules/mod_passenger.so
PassengerRoot /usr
PassengerRuby /usr/bin/ruby


If you have trouble starting the application because of permissions problems, you might need to add this line to your passenger.conf, site configuration file, or httpd.conf (where canvasuser is the user that Canvas runs as, www-data on Debian/Ubuntu systems for example):




PassengerDefaultUser canvasuser


Configure SSL with Apache



Next, we need to make sure your Apache configuration supports SSL. Debian/Ubuntu doesn't ship Apache with the SSL module enabled by default, so you will need to create the appropriate symlinks to enable it.




sysadmin@appserver:/var/canvas$ sudo a2enmod ssl


On other systems, you need to make sure something like below is in your config:




LoadModule ssl_module /usr/lib/apache2/modules/mod_ssl.so
SSLRandomSeed startup builtin
SSLRandomSeed startup file:/dev/urandom 512
SSLRandomSeed connect builtin
SSLRandomSeed connect file:/dev/urandom 512
SSLSessionCache shmcb:/var/run/apache2/ssl_scache(512000)
SSLSessionCacheTimeout 300
SSLMutex file:/var/run/apache2/ssl_mutex
SSLCipherSuite HIGH:MEDIUM:!ADH
SSLProtocol all -SSLv2


Configure Canvas with Apache



Now we need to tell Passenger about your particular Rails application. First, disable any Apache VirtualHosts you don't want running. On Debian/Ubuntu, you can simply unlink any of the symlinks in the /etc/apache2/sites-enabled subdirectory you aren't interested in. In other set-ups, you can remove or comment out VirtualHosts you don't want.




sysadmin@appserver:/var/canvas$ sudo unlink /etc/apache2/sites-enabled/000-default.conf


Now, we need to make a VirtualHost for your app. On Debian/Ubuntu, we are going to need to make a new file called /etc/apache2/sites-available/canvas. On other setups, find where you put VirtualHosts definitions. You can open this file like so:




sysadmin@appserver:/etc/apache2/sites-enabled$ sudo nano /etc/apache2/sites-available/canvas.conf


In the new file, or new spot, depending, you want to place the following snippet. You will want to modify the lines designated ServerName(2), ServerAdmin(2), DocumentRoot(2), SetEnv(2), Directory(2), and probably SSLCertificateFile(1) and SSLCertificateKeyFile(1), discussed below in the "Note about SSL Certificates".




<VirtualHost *:80>
ServerName canvas.example.com
ServerAlias canvasfiles.example.com
ServerAdmin youremail@example.com
DocumentRoot /var/canvas/public
RewriteEngine On
RewriteCond %{HTTP:X-Forwarded-Proto} !=https
RewriteCond %{REQUEST_URI} !^/health_check
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [L]
ErrorLog /var/log/apache2/canvas_errors.log
LogLevel warn
CustomLog /var/log/apache2/canvas_access.log combined
SetEnv RAILS_ENV production
<Directory /var/canvas/public>
Allow from all
Options -MultiViews
</Directory>
</VirtualHost>
<VirtualHost *:443>
ServerName canvas.example.com
ServerAlias canvasfiles.example.com
ServerAdmin youremail@example.com
DocumentRoot /var/canvas/public
ErrorLog /var/log/apache2/canvas_errors.log
LogLevel warn
CustomLog /var/log/apache2/canvas_ssl_access.log combined
SSLEngine on
BrowserMatch "MSIE [17-9]" ssl-unclean-shutdown
# the following ssl certificate files are generated for you from the ssl-cert package.
SSLCertificateFile /etc/ssl/certs/ssl-cert-snakeoil.pem
SSLCertificateKeyFile /etc/ssl/private/ssl-cert-snakeoil.key
SetEnv RAILS_ENV production
<Directory /var/canvas/public>
Allow from all
Options -MultiViews
</Directory>
</VirtualHost>


Apache 2.4 users: the allow/options configuration inside the <Directory /var/canvas/public> have changed in Apache 2.4. You'll likely want something like this:




<Directory /var/canvas/public>
Options All
AllowOverride All
Require all granted
</Directory>


And finally, if you created this as its own file inside /etc/apache2/sites-available, we'll need to make it an enabled site.




sysadmin@appserver:/etc/apache2/sites-enabled$ sudo a2ensite canvas


A Note about SSL Certificates



You'll notice in the above Canvas configuration file that we provided directives to an SSLCertificateFile and an SSLCertificateKeyFile. The files specified are self-signed certificates that come with your operating system.



Browsers, by default, are configured not to accept self-signed certificates without complaining. The reason for this is because otherwise a server using a self-signed certificate can risk what's called a man-in-the-middle attack.



If you want to get a certificate for your Canvas installation that will be accepted automatically by your user's browsers, you will need to contact a certificate authority and generate one. For the sake of example, Digicert (for pay) and Let's Encrypt (free) Verisign are commonly used certificate authorities.



For more information on setting up Apache with SSL, please see O'Reilly OnLamp.com's instructionsApache's official SSL documentation, or any one of many certificate authority's websites.



Optimizing File Downloads



If you are storing uploaded files locally, rather than in S3, you can optimize the downloading of files using the X-Sendfile header (X-Accel-Redirect in nginx). First make sure that apache has mod_xsendfile installed and enabled. For UBUNTU this can be done by following command:




sysadmin@appserver:/var/canvas$ sudo apt-get install libapache2-mod-xsendfile


This command installs and enables module. To ensure about properly running module you can use:




sysadmin@appserver:/var/canvas$ sudo apachectl -M | sort


Module xsendfile_module (shared) should be in the list.



In config/environments/production.rb you'll find the necessary config.action_dispatch.x_sendfile_header line, but commented out. We recommend that you create a config/environments/production-local.rb file and add the uncommented line to that file, to avoid future merge conflicts.



In your canvas virtual host at /etc/apache2/sites-available/canvas.conf , add the following two directives:




XSendFile On
XSendFilePath /var/canvas


Cache configuration



Canvas supports two different methods of caching: Memcache and redis. However, there are some features of Canvas that require redis to use, such as OAuth2, so it's recommended that you use redis for caching as well to keep things simple.



Below are instructions for setting up redis.



Redis



Required version: redis 2.6.x or above.



Note: Ubuntu installs an older version by default. See http://redis.io/download for instructions on how to manually install redis 2.6.x or above manually or use the PPA below.



If you're using Homebrew on Mac OS X, you can install redis by running the command: brew install redis.



For Ubuntu, you can use the redis-server package. However, on trusty, it's not new enough, so you'll want to use a backport PPA to provide it: https://launchpad.net/~chris-lea/+archive/redis-server.




sysadmin@appserver:/var/canvas$ sudo add-apt-repository ppa:chris-lea/redis-server
sysadmin@appserver:/var/canvas$ sudo apt-get update
sysadmin@appserver:/var/canvas$ sudo apt-get install redis-server


After installing redis, start the server. There are multiple options for doing this. You can set it up so it runs automatically when the server boots, or you can run it manually.



To run it manually from a Homebrew installation, run the command: redis-server /usr/local/etc/redis.conf.



Now we need to go back to your canvas-lms directory and edit the configuration. Inside the config folder, we're going to copy cache_store.yml.example and edit it:




sysadmin@appserver:/var/canvas$ cd /var/canvas/
sysadmin@appserver:/var/canvas$ cp config/cache_store.yml.example config/cache_store.yml
sysadmin@appserver:/var/canvas$ nano config/cache_store.yml
sysadmin@appserver:/var/canvas$ sudo chown canvasuser config/cache_store.yml
sysadmin@appserver:/var/canvas$ sudo chmod 400 config/cache_store.yml


The file may start with all caching methods commented out. Match your config file to the entries below:




test:
cache_store: redis_store
development:
cache_store: redis_store
production:
cache_store: redis_store


Then specify your redis instance information in redis.yml, by coping and editing redis.yml.example:




sysadmin@appserver:/var/canvas$ cd /var/canvas/
sysadmin@appserver:/var/canvas$ cp config/redis.yml.example config/redis.yml
sysadmin@appserver:/var/canvas$ nano config/redis.yml
sysadmin@appserver:/var/canvas$ sudo chown canvasuser config/redis.yml
sysadmin@appserver:/var/canvas$ sudo chmod 400 config/redis.yml



production:
servers:
- redis://localhost


In our example, redis is running on the same server as Canvas. That's not ideal in a production setup, since Rails and redis are both memory-hungry. Just change 'localhost' to the address of your redis instance server.



Canvas has the option of using a different redis instance for cache and for other data. The simplest option is to use the same redis instance for both. If you would like to split them up, keep the redis.yml config for data redis, but add another separate server list to cache_store.yml to specify which instance to use for caching.



Save the file and restart Canvas.



QTIMigrationTool



The QTIMigrationTool needs to be installed to enable copying or importing quiz content. Instructions are at https://github.com/instructure/QTIMigrationTool/wiki. After installation, ensure the plugin is active in Site Admin -> Plugins -> QTI Converter (it should detect the QTIMigrationTool and auto-activate).



Automated jobs



Canvas has some automated jobs that need to run at occasional intervals, such as email reports, statistics gathering, and a few other things. Your Canvas installation will not function properly without support for automated jobs, so we'll need to set that up as well.



Canvas comes with a daemon process that will monitor and manage any automated jobs that need to happen. If your application root is /var/canvas, this daemon process manager can be found at /var/canvas/script/canvas_init.



You'll need to run these job daemons on at least one server. Canvas supports running the background jobs on multiple servers for capacity/redundancy, as well.



Because Canvas has so many jobs to run, it is advisable to dedicate one of your app servers to be just a job server. You can do this by simply skipping the Apache steps on one of your app servers, and then only on that server follow these automated jobs setup instructions.



Installation



If you're on Debian/Ubuntu, you can install this daemon process very easily, first by making a symlink from /var/canvas/script/canvas_init to /etc/init.d/canvas_init, and then by configuring this script to run at valid runlevels (we'll be making an upstart script soon):




sysadmin@appserver:/var/canvas$ sudo ln -s /var/canvas/script/canvas_init /etc/init.d/canvas_init
sysadmin@appserver:/var/canvas$ sudo update-rc.d canvas_init defaults
sysadmin@appserver:/var/canvas$ sudo /etc/init.d/canvas_init start


Rich Content Editor



Canvas includes a new rich content editor component to support a consistent editor experience across multiple applications in the Canvas ecosystem. To make use of this component you need to run a supporting API server. See the Canvas RCE API Documentation for information on running the service and configuring Canvas to make use of it. Starting July 14, 2018, the stable branch of canvas-lms will require this service to be running and configured for full rich content editing functionality.



Ready, set, go!



Restart Apache (sudo /etc/init.d/apache2 restart), and point your browser to your new Canvas installation! Log in with the administrator credentials you set up during database configuration, and you should be ready to use Canvas.


Canvas的应用及其对 学校网络教学的影响

admin 发表了文章 • 0 个评论 • 1309 次浏览 • 2017-10-12 18:36 • 来自相关话题

除了专门的网络学院,大多数普通高校和中小学校因为设备经费、技术问题、网络师资培训以及在校师生不能拥有一个适于开展网络教学的平台等因素,使学校网络教学进展缓慢,不能适应信息时代学习者的多元学习需求。架构于云服务之上的免费Canvas学习管理系统,不但具有强 ...查看全部

除了专门的网络学院,大多数普通高校和中小学校因为设备经费、技术问题、网络师资培训以及在校师生不能拥有一个适于开展网络教学的平台等因素,使学校网络教学进展缓慢,不能适应信息时代学习者的多元学习需求。架构于云服务之上的免费Canvas学习管理系统,不但具有强大的数据分析功能,还深度整合了移动应用、互联网应用、教育工具和各种社会化网络工具,它的广泛应用可以解决目前网络学习管理系统硬件资源有限、系统更新麻烦、管理维护困难、校园间资源共享不易、教师使用不方便、学习者不喜欢在线学习、在线课程缺乏互动、师生需要进行前期技术培训等问题,满足普通高校和中小学开展网络教学的需求,并在一定程度上促进学校网络教学的快速发展,形成“基于现有学校体系,变部分实体课堂为虚拟课堂,以学习者为主体、以教育者为主导,超越时空、主动探究、多维参与、在线互动、资源共享”的“云学习”环境。 



 



1.云技术应用,构建云服务网络学习平台在2012年的Horizon报告中,学者对教育技术的发展趋势进行了预测,认为云技术、云计算协作环境、云服务等将在一年左右成为主流应用,而不仅仅是理论上的研究,并且云计算服务的应用能带来大量高质量、跨学校、跨地区的应用数据供研究分析,以帮助建立和培育更加个性化的学习环境。目前,大多数学习管理系统常见的问题是开学、期末及其他高峰时期的频繁使用会给服务器带来巨大压力,甚至造成系统瘫痪,以致师生无法正常登录、学生不能及时提交作业作品、教师不能评价、综合成绩无法输出,也就是说在用户最需要LMS的时候,它却罢工了。当前学校使用的Blackboard和Moodle学习管理系统属于手动托管,一旦出现超负荷,系统瘫痪或不能正常工作是难免的,师生抱怨成家常便饭。 某校在应用Moodle平台广泛开展网络教学过程中,由于当学期有两门全校必修公共课,修课学生达8000人,网络课程管理系统部门担心服务器承受不了而导致系统瘫痪,只能让课程老师通知学生错开时间使用,随时随地的网络学习成为固定时间学习。Canvas的“本地云”和“自动峰值负荷管理”技术架构,使用户无需自己搭建和维护系统就可以直接使用,系统自动更新各种功能,且Canvas能在用户使用频繁时自动增进其服务器的能力,协调资源池产生额外的可用资源,智能分配各类资源,确保系统正常运作,不至于出现管理维护困难和系统瘫痪的情况。另外,用户还可以充分享受Canvas云端服务,如云资源、云存储、云计算机能力、云端应用软件等,用户再也不用担心系统崩溃、课程资源的安全、用户终端配置低、教学应用程序缺乏等问题。 



 



2.移动应用,开创学校移动学习新环境 未来开放的学习世界中,移动技术领域的不断创新很大程度上会促进学校教育和课堂学习的发展,学习将随时随地发生,移动学习是一种学习趋势,也是学习方式的变革,它不仅能为学习者与学习组织带来 学习方式和教学方式的革新,增进主动学习,增强正式学习的效果,还能扩展数字化学习,为情景学习、非正式学习以及社会性学习的发展提供契机。因此,任何学习管理系统,都有必要考虑移动用户,为移动学习提供方便。 在普通高校,40%的课程是公共必修课程,要求在大二之前修读完,大四因为顶岗实习和找工作,基本不在学校,专业课程只能安排在二、三年级,期间还要求学生参加各种社会实践活动,以致高校学生的学习压力和工作压力与日俱增,传统的全日制课堂教学限制了学生的学习自由,也耽误了大学生宝贵的学习时间,借助Canvas构建移动网络远程学习环境,开展移动学习,能开创新的学习环境,扩展传统课堂教学。学生可以自主决定学习时间,即便不在课室或学校,也可以通过手机或其他移动终端进行学习,把学习延伸到课室甚至学校以外,突破学校与现实社会之间的界限,使得在校生有时间通过了解和参与各种社会实践活动,加深对校外世界的切身体会,建立自我与社会环境的联结,达到学习与生活紧密结合的理想状态。在中小学,课堂教学的最大问题是老师讲过的就过去了,对于没记到笔记或没有掌握课堂内容的学生来说,课后回顾与交流是个问题,有了Canvas构建的移动学习环境,学生可以在CanvasK-12创建内容和有效地与同学和教师交流,学习可以随时随地进行。 



 



3.跨平台工具整合和智能教学应用,实现智能化教学管理和个性化学习服务 对于师生而言,学习管理系统的应用主要体现在教师的教与学生的学、教学评价与学习评价两大层面。现在的大多数学习管理系统(如Moodle),需要使用者具备相当的技术能力,才能轻松组建、管理自己的网络课程,如在课程中嵌入教学视频、特定科目应用程序、社交工具等,都需要使用者有一定的代码编写能力,而高校教师科研压力大,中小学教师的教学任务繁重,他们通常都没有太多时间学习额外的技术来使用学习管理系统以规划、开发网络课程内容和设计各种网络教学活动,从而影响了网络教学工作的有效开展。 CanvasApp中心针对不同的用户终端、不同的科目和年级,提供和支持大量免费使用的教育App应用和各种社会网络工具。这些App均放在云端服务器上,用户可以非常方便地创建和使用各类学习资源、管理用户资源、设计各种学习活动、讨论和交流等,如各视频网站上的教学视频,用户无需打开视频网站,也不用像在Moodle平台上那样编写视频代码,就可以通过App中心的YouTubeForSchools、TEDEd等工具轻松将不同网站上的教学视频嵌入Canvas平台上的课程中;借助Pathbrite、PebblePad等电子学档工具随时建立和管理个人电子档案。[7] 另外,Canvas包括内容编辑器、线上考核、可与外部同步的行事日历、即时通讯和视像会议等基本功能,并可指定只让某些使用者查看特定的课程内容,为不同的学习者提供符合其特征的学习材料、策略和方法,教师可在专用的管理画面上查看有关课程的图表,学生可制作属于自己的学习专页。可以说,Canvas是专为师生设计的新一代网络教学平台,它能实现个性化的学习目标及个性化、智能化的管理,同时它比其他学习管理系统都更安全,传输信息更快速,无论是简单的课程创建和管理,网络学习活动设计,无缝的日历,还是常规分组,对虚拟社区和小组协作的支持,以及对其他媒体的整合,如在任何一个学习接触点插入音频、视频、文本、图像及其他,都非常简单,不需要花费教师很多时间。评定成绩也是一件轻而易举的事情,只需通过Canvas自带的SpeedGrader就能获得为学生和教师提供全面评估报告和个性化学习建议的评价分析报告,可见Canvas使教与学更容易,而不是更难。Canvas还通过了解用户的各种需求、反馈和建议来完善改进平台,其宗旨是让技术方便个人。它让教师和学生有更多的时间去做有意义的事情,使他们能规划学习的未来。[8][9] 



 



4.云服务架构,促进校际合作,实现网络学习资源共享 目前,学校的学习管理系统基本上是各自独立的,学校需要投入大量的人力、物力、财力去管理和维护系统,以及开发教学资源,而这些平台之间不兼容,学校教学资源有限且不易共享,造成现有学习管理系统管理压力较大,信息孤岛现象明显,且现在大城市与小城市之间、城乡之间教育发展失衡,严重阻碍了教育事业的健康发展,优质教育资源的共享迫在眉睫。基于云服务的Canvas无需用户独立购买硬件和基础软件来部署就能独立应用,并突出强调对巨量资源的有效使用,校际之间可以借助Canvas共建共享资源,教师也可以跨班级和学校进行资源共享(如现在大量的“微课”资源),以提高优质资源的利用 率,缩小地区间的教育差距。


Canvas LMS的高可用性

admin 发表了文章 • 0 个评论 • 1025 次浏览 • 2017-10-12 18:34 • 来自相关话题

任何教育软件系统,对于用户来说,首先要简单易用,而不是越复杂越好,正如乔布斯所说的“把复杂留给自己,把简单交给客户,可惜大多数产品都搞反了”。   ...查看全部

任何教育软件系统,对于用户来说,首先要简单易用,而不是越复杂越好,正如乔布斯所说的“把复杂留给自己,把简单交给客户,可惜大多数产品都搞反了”。



 



如果学习管理系统复杂而不易使用,为什么还需要呢?学生和教师都会抱怨,师生偶尔会试图找到解决的方法,也有出于无奈最终干脆放弃使用学习管理系统的,这不是我们所希望看到的,对网络教学的开展也不利。幸运的是,相对于其他学习管理系统而言,Canvas非常直观且易于使用,其设计原则和使用规范完全符合用户平时的使用习惯,且Canvas坚持更新使用说明,随时为用户提供最新的在线使用文档,以最大限度地减少用户受挫,降低支持成本,并最终让用户集中精力做其他真正重要的事情。



 



2011年3月,美国德州大学奥斯汀分校(UT-Aus⁃tin)的信息技术服务(ITS)和教学与学习中心(CTL)联合发布了Blackboard、Canvas、De⁃sire2Learn、Moodle和Sakai国际著名的五大学习管理系统资质认证请求(RFQ)调查报告,报告指出,绝大部分用户在学习管理系统的易用性方面选择了Canvas,也就是说,大多数Canvas用户选择Canvas系统很大程度上是由于它的易用性。如在CanvasK-12版本中,Canvas结合中小学师生常用的短信、社交网络、实时在线聊天等沟通方式,设计了非常简单的师生交互模块,用户只需使用自己熟悉的方法和工具,就可以确保与师生、家长、其他教师和管理人员保持密切联系,也就是说,交流双方无需成为社交网络上的朋友,或者学习复杂的新系统,只需选择想要的方式就可以进行沟通和开始对话。


Canvas LMS的功能性

kylincoal 发表了文章 • 0 个评论 • 1158 次浏览 • 2017-10-12 18:32 • 来自相关话题

Canvas的功能性体现在提供标准LMS功能、综合学习输出和支持移动应用三个方面。作为国际上流行的学习管理系统,Canvas具备用户喜欢的标准LMS功能,并提供综合学习结果输出和支持移动应用。   ...查看全部

Canvas的功能性体现在提供标准LMS功能、综合学习输出和支持移动应用三个方面。作为国际上流行的学习管理系统,Canvas具备用户喜欢的标准LMS功能,并提供综合学习结果输出和支持移动应用。



 



实际上每款学习管理系统(如Blackboard和Moodle等)都会为用户提供一整套的在线课程管理基本功能,如课程作业、测试、小组讨论、学习评价与课程内容工具、学习支持工具等。但用户在使用学习管理系统时,期望通过他们熟悉的浏览器或其他社会化网络工具如Facebook、博客等来组织论坛、创建学习小组、在线测试等,以及发布已准备好的Word、Excel、PPT、视频等各种类型的教学材料,从而让他们的学生可以使用简便易用的交流工具(如QQ、MSN等)来对学习内容进行交流。



 



相对于Blackboard、Moodle等竞争对手,Canvas拥有App中心,支持大量教育工具嵌入使用,能用简单直观的、用户喜欢的方法提供更加流畅的在线课程管理功能,如提供成绩单、评估工具、讨论工具、在线聊天、视音频交流等多项功能,并支持拖拽式文件上传、HTML视频和自动语音文本转换。



 



此外Canvas还集成了谷歌文档和Facebook,用户可以通过Facebook、SMS文本信息、email和其他通讯渠道获取Canvas通知。相比而言,Canvas比任何一套学习管理系统都能提供更好的用户体验。 另外,Canvas拥有精心设计的量规和分级工具。通过Canvas进行学习,学生的学习结果可体现在具体课程活动与学习目标的一致上,也就是说,Canvas自带的SpeedGrader量规可用来评定学生作业,使学习结果与量规保持一致,学生的绩效将被自动记录,老师能够及时识别有问题的学生。如CanvasK-12版具备学习分析精确定位设计,能让老师及时洞察到学生的需求,如学生有哪些知识点没有掌握、错过了哪些作业、哪个同学需要额外的帮助等。另外,Canvas还提供学生、班级、学校、跨学校之间的学习数据比较,这对于教学来说是一个积极的预警系统,能对个别学生存在的学习问题进行早期干预。



 



Moodle和Blackboard仅能对学习活动进行一些简单的描述性统计,也就是对所有学习活动的总体情况给予简单描述,如列出学习者在某段时间内的登录总数、阅读资源的次数、发帖总数、上传资源文件总数等,教学日志没有深入记录学生与学习系统的互动情况,同时也没有提供对学生学习情况的统计分析,不能给老师提供精确的学习分析,教师无法有针对性地控制和安排课程学习活动,也不知道该对哪个学生进行个别辅导。 



 



更重要的是,Canvas LMS中国版本已经支持移动端设备浏览,能让学生和教师结合自己常用的移动设备(如iPhone或iPad),随时使用学习管理系统,确保教育者能快速简单地检查评定作业,包括回传视频、音频或文本评论给学生,学习者能观看评分通知、课时安排、收发信息、参与讨论、上传视频与音频说明等,且无需为这些便利而额外付费。Blackboard虽然也提供移动应用,但需要收费。


Canvas LMS的开放性

admin 发表了文章 • 0 个评论 • 1083 次浏览 • 2017-10-12 18:29 • 来自相关话题

Canvas的开放性体现在软件授权许可、开放式API和开放式安全审查三个方面。商业性封闭源代码的应用虽然使公司能控制软件的有偿使用并为产品提供特定服务与支持,但其高昂的费用不是一般学校能够接受的。   ...查看全部

Canvas的开放性体现在软件授权许可、开放式API和开放式安全审查三个方面。商业性封闭源代码的应用虽然使公司能控制软件的有偿使用并为产品提供特定服务与支持,但其高昂的费用不是一般学校能够接受的。



 



Blackboard网络教学平台基于SQL强大的数据库处理能力,使其可以承载百万级的用户注册,但需要付费使用,平台能承受的用户数由使用方购买,学校或研究机构等团体使用通常是按年收取许可费用,在部分市场上也有按使用人数计算许可费用的情况,一般用户的市场价为80元左右1个,这对于使用Blackboard的学校来说是一笔不小的数目,尚未包括系统的管理、维护、升级等需要投入的费用。



 



Moodle是遵循GPL协议的开源软件,用户可以自由使用,不存在像使用Blackboard平台所需的高昂费用,但是没有商业公司的支持,软件系统的管理与维护及二次开发难度很大。



 



而Instructure公司把开放源代码软件的可访问好处与商业公司的稳定及支持结合起来,Canvas作为该公司的一款开放源代码软件系统,能得到公司的资源、赞助及客户服务的支持,确保Canvas能持续正常运作,且Canvas遵循AGPL协议(AGPL是GPL协议的一个补充,在GPL协议的基础上加了一些限制),避免了GPL协议中的漏洞(WebServiceLoopwhole)。



 



另外,Canvas具备开放式安全审查机制,已经与外面的安全监察专家签订了合同全面审查Canvas的安全问题,用户不必担心系统的安全性。 



 



跨平台整合技术及迅速崛起的第三方教育产品市场对开放式API(ApplicationProgramInterface,应用程序接口)和公共开发平台提出了新的要求,开放式API是开源软件必不可少的,也是开放共享的前提。越来越多的教育技术供应商从产品制造商转变成应用平台供应商。开放式API可以促成平台合作及跨平台应用与整合。这种合作和跨平台应用不仅仅局限在用户分享上,还扩展到跨平台领域方面。产品供应商之间的协作和开放,一定程度上促进了资源内容的快速创新和共享,为用户提供更多的服务。



 



Canvas学习管理系统从一开始就被设计为一款开放灵活的教育平台,它能与创新网络技术及学习资源实现无缝结合,其开放式API为轻松与第三方系统结合或定制开发与传送以及实行开放式发布提供了可能。


Canvas LMS的基础架构

luling 发表了文章 • 0 个评论 • 1196 次浏览 • 2017-10-12 18:27 • 来自相关话题

近年来,学术界对于云技术、云服务、教育云、云托管(Cloudhosting)等方面的研究有逐年增长的趋势,特别是在云教育应用方面。   云托管整合计算、存储、网络、 ...查看全部

近年来,学术界对于云技术、云服务、教育云、云托管(Cloudhosting)等方面的研究有逐年增长的趋势,特别是在云教育应用方面。



 



云托管整合计算、存储、网络、安全、负载调度、监控等IT综合能力,在节省教育信息化进程中硬件成本和不增加任何其他资金成本的同时,实现包括数据热备份、数据热迁移、灾备、容错等增值服务。



 



大家喜欢云的理由就是在不增加服务器或IT资源成本的情况下,仍能得到所有的好处,如当服务器负载过高时,云会自动进行调整;当有一个安全更新时,云能立即应用它;云服务器的每份数据都有多份副本,单份损坏可在短时间内快速恢复等。架构于云服务之上的Canvas具备云应用的各种特点,重应用轻硬件,信息存储安全,支持自动峰值负荷管理,更容易实现资源的开放共享。



 



Blackboard和Moodle都不具备这些特性,在使用方面有诸多限制。 另外,学习管理系统开发使用的程序设计语言所具备的内在优点与局限直接影响系统的性能。



 



Can⁃vas是在使用现代网络应用程序语言RoR(RubyonRails是一套用Ruby语言编写的开源Web应用程序框架,是一个可以使开发、部署、维护Web应用程序变得简单的框架)的基础上建立的,使用RoR能大量减少程序设计时间,使Canvas更快更频繁地更新它的功能。



 



Canvas利用Web2.0技术、HTML5以及最新的程序设计方法来创建一个现代开放的网络学习平台,能更好地满足今天的开放教育环境。



 



Moo⁃dle基于开源的PHP+MySQL开发而成,使用LAMP(Linux+Apache+MySQL+PHP)的开源软件架构模式,其规模比较小,功能相对有限,安装比较复杂,功能和版本更新繁琐。


Canvas LMS学习管理系统与 Blackboard和Moodle的异同

wbxyz 发表了文章 • 0 个评论 • 1889 次浏览 • 2017-10-12 18:25 • 来自相关话题

已有研究从基础架构、开放性、功能性和可用性等层面说明了Canvas、Blackboard和Moodle三大学习管理系统的异同(见表1)。   ...查看全部

已有研究从基础架构、开放性、功能性和可用性等层面说明了Canvas、Blackboard和Moodle三大学习管理系统的异同(见表1)。



 




Canvas LMS开源学习管理系统的特点

admin 发表了文章 • 0 个评论 • 1464 次浏览 • 2017-10-12 18:21 • 来自相关话题

Canvas是美国Instructure公司的一个学习管理系统,和Moodle、Sakai一样是一个开源的学习管理系统。   Instructure公司创建于200 ...查看全部

Canvas是美国Instructure公司的一个学习管理系统,和Moodle、Sakai一样是一个开源的学习管理系统。



 



Instructure公司创建于2008年,Canvas开源于2011年。2012年10月,加拿大最大的艺术与设计学校安大略艺术设计学院(OCADUniversity,简称OCADU)在2012-2013学年已经将学校的在线课程管理转移到Instructure公司的Canvas系统上。OCADU是加拿大第一所实施Canvas开源版本的大学,自2012年1月,OCADU开始启用Canvas系统,现在这所大学的Canvas上已经有4500名学生和1500门课程。



 



在国外,有大量的学校关注Can⁃vas开源学习管理系统,到目前为止,已经有2000多所大学和1250多个中小学学区在使用Canvas。这一数量还在不断上升。[3] Canvas研究团队宣称,Canvas是促进4亿多使用该系统的学习者变革学习的网络学习平台,系统平台功能丰富多样。



 



与国际著名且国内用得比较多的Blackboard和Moodle学习管理系统相比,Canvas有以下五大特点:



 



1.云系统架构 Canvas是目前唯一的基于本地云服务的学习管理系统,平台所有的功能均通过云服务来完成(如图1)。本地云托管意味着无需关注用户系统的软硬件状态,无需升级,也无需迁移,不存在暂停服务进行系统升级和数据转移的麻烦,也不存在系统超负荷运转的问题。Canvas平台整合了云管理、存储与共享、创建与编辑文件、收发邮件与OA(OfficeAuto⁃mation,简称OA)、在线聊天与讨论等基础服务,同时,用户可以通过云端的CanvasApp(App主要是指第三方应用程序,英文全称为Application)中心嵌入所需要的各种在线应用。用户只需一个账号,简单的个人桌面操作,就能随心整合各类应用软件,无需下载,无需安装,真正实现零维护、完全个性化的教学应用服务,满足不同用户的需求。Canvas每三周自动更新,无需繁琐的下载与添加补丁,并且能够提供许多低成本的云计算优势。用户的Canvas云系统总是保持最新的功能,能自动修正错误,强化系统安全性能和可伸缩性以及正常的运行时间。事实上,Canvas具备99.9%保障正常运行时间的服务水平协议,沉重的系统管理压力成为过往烟云。由于Can⁃vas系统完全架构于云服务之上,用户无需自己搭建和维护系统就可以直接使用。



 



2.教与学工具整合应用 Canvas系统支持大量强大的APP教与学工具应用,对移动应用、互联网应用、多媒体应用工具、教育工具、社会化网络工具等有更深度的整合,如YouTube、Facebook、Twitter、GoogleChart、WordPress、 CourseSmart、 Prulu、 Piazza、 Graphbuilder、TEDEd、Wikipedia、SlideshareEducreations、EvaluationKIT、Mahara、Media⁃Core、QuestionMark、GraphBuilder等。即使是最不精通技术的教师和学生也可以轻松浏览Canvas平台中的LTI(ExternalTools)工具库,根据自己网络教学和在线学习的需要,简单点击一下就可以嵌入使用。这些大量的教育应用工具工作于不同的系统中,绝大部分学习管理系统不支持跨系统扩展程序应用,目前只有Canvas平台支持网络上各种流行的、实用的教学、学习、交流、评估、数据统计与分析等跨系统扩展程序和工具应用。Canvas的App中心共享着大量的教育应用工具,且在不断更新中,这对于网络教学工作的有效开展是非常有利的。[4] 



 



3.强大的数据分析功能 Canvas系统整合了大量的数据分析工具,具有强大的教与学数据分析功能,能跟踪课程教与学情况、学生学习纪录、学习任务完成情况等,为师生提供学习反馈信息和图形分析报告,也为智能化教学和个性化学习创造了条件。 



 



4.支持移动用户 Canvas系统平台嵌入了iOS(“iPhoneOS”的简称,是由苹果公司开发的手持设备操作系统)和Andriod,支持移动应用,无需管理员或教师做其他工作,系统就能通过鉴别用户使用的终端类型,自动生成移动版本的用户界面,因此,除了PC用户之外,移动用户也可以通过智能终端随时随地轻松访问Canvas,开展移动管理、移动教学和移动学习。 



 



5.开源应用 Canvas以AGPL许可开源,所以任何人可以在AGPL许可下免费使用,Instructure提供商业的咨询、指导和相关运营服务。Canvas开源应用符合开放教育的理念,能为我国教育均衡发展提供有效途径。