还剩5页未读,继续阅读
文本内容:
在线学习平台的设计与实现摘要针对当前在线教学过程中缺乏交流互动的问题,本文设计了一套基于私有云的高校在线学习交流平台系统通过OpenStack搭建私有云服务,使用SpringBoot和Vue框架实现前后端分离并开发了在线学习交流平台系统通过用户自主上传学习资源、自由标记知识点问题和自由加入讨论组,实现学习过程中的实时交流通过本平台,一方面解决了部分高校信息化建设基础条件受限的问题;另一方面解决了在线教学过程中无人交流和无法实时解惑的问题关键词在线教学;OpenStack;前后端分离;讨论组;交流在国内,慕课网[2]、职教云等各类在线学习平台的出现,也为高校实现在线教学提供了技术支撑在线学习为学生提供了丰富的学习资料和多样化的学习方式,逐渐成为学生获取知识的有效手段之一为了研究在线学习是否能够普及使用,有学者开始组织学生对在线学习、在线教学和模块化教学进行评价[3]结果显示,有部分学生对在线学习体验不满意其主要原因包括1)环境与技术因素例如基础条件不足,同时缺乏互联网使用经验以及必要培训[4];2)在线教学过程中仅能够在线留言和回复,无法对学习内容进行实时交流为了解决这些问题,学者们也进行了探索刘小英⑸等提出通过WebSocket通讯技术,实现实时交流,提高了师生互动性;安磊⑹等开发了一个基于ThinkPHP框架的远程学习交流平台,实现了网上交流和资料下载;张国平⑺开发了适用于软件工程专业的学习交流平台,实现了学生从被动听讲到主动参与的转化学者们的这些工作,在一定程度上解决了在线学习过程中的交流问题,在经济发展较好的地区及高校能够快速地推广使用然而,这些信息化系统通常需要一定的硬件条件支撑,有些还需要较高的系统配置才能够使用,同时还需要一定的后期维护在一些基础条件不足的高校,可能无法进行此类学习交流平台系统的建设随着云计算平台的不断发展,对于基础设施的要求逐渐降低因其具备虚拟性、可靠性、通用性、可伸缩性、按需使用等特点,使其在数据安全、计算效率、经济成本等方面都有巨大的优势因此,使用云平台构建定制化的数字系统也逐渐被各企事业单位所接受私有云作为一种单独为企事业单位创建的云服务,只为企事业单位内部用户使用,最大程度地增加了数据的安全性本文主要将私有云技术应用到在线学习交流平台中,以期用比公有云更低的经济成本,满足高校学生在学习过程中的实时交流需求,同时为高校的信息化建设提供参考1需求分析本系统主要目标为构建学习问题交流、分享发布学习资源、学习资源管理的在线交流平台根据用户需要,系统主要涉及三种角色学生、教师和管理员1)学生用户具有维护个人基本信息;查看各类通知公告;浏览课程资料、教师资料;浏览课程进度;针对课程信息的交流、留言;针对课程或某一问题创建、编辑、加入和退出讨论组;课程相关资源的上传下载等功能2)教师用户除学生用户的功能外,还具有通知公告的编辑;课程资料编辑;课程大纲、教案、先导和后续课程的编辑等功能3)管理员用户可以使用平台的所有功能,除学生和教师用户的功能外,还具有基础信息维护⑻(包含院系、专业、班级、课程、学生、教师等基础信息的初始化及导入导出);系统的基础管理;数据字典的设置;学习资源的审核管理等功能2系统设计
2.1系统架构本系统包含基A设施层、服务管理层和用户层,其平台架构图如图1所示基础设施层将多台服务器资源进行整合和存储,由服务管理层对用户数据进行管理,在用户层进行结果展不1)基础设施层基础设施层位于云平台的最底层,包括构成云计算平台的基础硬件设施、系统虚拟镜像、数据管理服务及网络服务等模块该层负责采集物理节点的存储、网络、内存等资源,通过虚拟化技术将资源进行处理并整合为统一资源池资源池内部根据用户的需要进行动态调整,为系统运行提供了基础保障2)服务管理层服务管理层为系统的核心层,采用模块化设计,为平台提供支撑,其数据资源来源于基础设施层具有元数据服务、资源库服务、数据计算服务、在线交流平台系统门户服务等模块通过服务管理层实现在线学习交流系统的开发、配置、维护等学习交流资源存储在云端,学生可以便捷的上传和下载3)用户层用户层一般由浏览器构成,包含PC端浏览器和移动端浏览器用户根据请求地址对数据资源进行请求操作,数据经由基础设施层和服务管理层的处理,最终以友好的方式向用户展现私有云设计云平台构建采用基于OpenStack的laaS架构,OpenStack云计算平台的优势在于模块耦合度低、组件灵活配置等[9]云平台构建时使用OpenStack中的核心组件及其功能如表1所示云平台用户经由Keystone认证,使用Horizon的UI界面创建虚拟机,镜像服务由Glance提供由Neutron进行IP地址的配置,再由Cinder为虚拟机实例提供块存储本系统使用五台物理机,具有网络节点、控制节点和计算节点,网络节点配置如表2组网结构如图2系统功能设计在线学习交流平台具有在线论坛和系统管理两个模块在线论坛主要包括在线学习、论坛板块列表、论坛帖子列表、帖子交互(包括回复、引用、点赞、收藏等)、热门内容(时间段内讨论最多的问题)、关键字搜索等功能;系统管理主要包括[10]论坛板块管理、论坛帖子管理、讨论组管理、学习资源管理(审核资源合法性)、初始化管理、通知公告和系统管理等模块具体系统功能结构如图3所示1)课程资源管理课程资源由授课教师进行编辑维护教师负责维护课程的课程标准、教学大纲、教学设计、课程知识点、教学课件、课后习题等必要资源对于多个教师同时教授一门课程时,可以同步维护课程资源2)资源上传下载用户可以按照课程维度和知识点维度,自由上传和下载相关学习资源上传资源类型支持Word、PPT、ExceLPDF、MP
4、AVI、MOV、WMV和RMVB等对于上传的学习资源,可以选择公开或独有,但公开的学习资源,需要经过管理员审核后才会被其他用户所见3)资源在线学习用户可以自由查看课程相关资源,资源支持在线浏览学习,同时开始记录学习时长对于用户浏览的非视频资源,系统每隔15min检测一次客户端是否活跃当发现用户无任何交互动作后,暂时计时,直到用户重新激活学习状态学习资源也支持下载到本地观看,线下学习时间不被系统记录4)知识点标记学生对于任意知识点问题,可以进行手动标记,可以看到已在该知识点下进行标记的学生列表5)讨论组当知识点被标记后,平台自动以“专业—学科-知识点名称”创建一个关于该知识点的讨论组,学生可以自由选择加入、邀请列表内学生加入和退出该讨论组讨论组内可以进行实时交流,交流的消息记录可以在云端永久保存学生可以自由讨论关于该知识点的见解或疑问,也可以针对该知识点选择某一有授课记录的教师来进行回复受邀教师将收到平台短消息推送,教师可以直接回复该问题,而不会自动加入该讨论组同一教师每日最多可以被选择5次来进行答疑6)学生学习统计学生可以查看当前已学习的课程信息,包括已学课程列表、在学课程列表、在学课程已完成进度、单科和全科学习时长,同时可以选择是否公开个人学习状态及信息系统可以统计排名全站用户的公开信息7)学习资源管理用户上传的各类学习资源,都处于待审核状态,管理员负责管理审核该类资源对于WordPPTExcel等文件内容首先由系统平台扫描文件内是否存在违禁词字典表中的内容,然后由管理员手动审核正文内容是否存在意识形态等问题,审核无误后该资源才能被其他用户所查看对于视频资源,系统平台不支持视频直接上传,必须先上传至第三方站点,再将该外链地址保存至系统平台,合法的第三方站点由管理员在字典表中进行设置8)初始化管理管理员可以上传导入学校基本资料,如院系信息、专业信息、课程信息、班级信息、学生信息、教师信息等,同时自动检测是否存在对应的课程论坛板块若该板块不存在,则自动按照学院一专业一课程的目录结构创建该板块课程板块创建完毕后,自动将有授课任务的教师列入该板块的管理者3私有云的构建基础环境配置物理机硬件采用8核心CPU、64Gb内存义
4、16Tb企业盘X4操作系统使用Centos
7.7o配置好W络节点、防火墙,数据库使用MySQLKeystone服务安装Keystone为OpenStack提供认证服务,其安装过程如下1)基础环境安装后,登录MySQL并创建Keystone数据库,创新系统用户并赋予操作权限;2)获取对应的管理口令,安装软件服务和配置文件;3)执行身份引导服务;4)配置管理员用户,创建项目、域、用户、角色创建项目作为OpenStack的系统项目,所有系统服务加入该目Glance服务安装Glance为OpenStack提供镜像服务,为用户的上传、修改、导出、删除虚拟机镜像提供服务支撑,其安装过程如下1)登录MySQL并创建Glance数据库2)创建用户、角色和API服务端点3)安装和配置Glance服务4)同步Glance数据库,启动并测试Glance服务5)测试独有镜像并上传Nova服务安装Nova为OpenStack提供计算服务,可以用来管理虚拟机实例,其安装过程与Glance服务的安装基本一致1)登录MySQL并创建Nova数据库2)创建用户、角色和API服务端点3)安装配置Nova4)同步Nova数据库,启动并测试Nova服务Neutron服务安装Neutron为OpenStack提供网络服务,其对防火墙、交换机、负载均衡器等都有较好的支持其安装过程如下1)登录MySQL并创建Neutron数据库2)创建用户、角色和API服务端点3)安装配置Neutron修改内核配置文件4)初始化创建网络Horizon服瞻沧Horizon为OpenStack提供友好的交互界面,用户可以使用控制台完成项目管理软件安装后,修改用户域和角色并重启服务,即可登录OpenStack控制台Cinder服务安装Cinder为OpenStack提供块存储服务,同时提供实例对象的虚拟磁盘其安装过程如下:1)登录MySQL并Cinder数据库2)创建用户、角色和API服务端点3)安装配置Cinder4)同步Cinder数据库,启动并测试Cinder服务4系统实现本系统基于开源软件若依进行开发若依采用前后端分离技术,后端核心采用SpringBoot集成MyBatis、SpringSecurityRedis等框架,前端集成ES
6、Vue、Axios、Element-UI等框架,数据库使用MySQLo知识点标记用户可以选中知识点内容,当监听到鼠标松开事件后,通过window.getSelection方法获取选中的文本将选中的文本内容和当前行数的文本做配对,从而获取选中文本的索引值若未有用户标记过则定义新的索引值,标记的内容使用span标签包裹并随机设置背景色然后通过标签弹窗的方式,列出已标记该知识点的其他用户,用户间可以进行交互操作其中,知识点添加点击事件的关键代码如下讨论组实时交流讨论组的实时交流基于WebSocket通讯协议实现用户通过WebSocket的onOpen事件进入讨论组,输入交流内容后通过WebSocket的send方法发送给服务端服务端收到交流内容后,经过解析处理再转发给讨论组内其他用户,用户通过WebSocket的onMessage方法接收交流内容其中,用户接收交流内容的方法如下当用户在线学习时,发生以上任意动作,则累加动作间的时长使用window.onload和windowonbeforeunload方法监听页面加载和页面关闭;使用pageshow和pagehide监听浏览器前进或后退;使用visibilitychange监听Tab切换、桌面切换和电脑睡眠热门内容用户可以按时间维度查看高频关键词,关键词统计源包括论坛帖子内容、知识点活跃度和讨论组内关键词等关键词以词云的方式进行显示,鼠标滑动到词云时,显示其词频数量及占比,如图4所示5结束语本文系统分析了当前高校“停课不停学”状态下学生所遇到的问题,并基于OpenStack构建了一个高校在线学习交流的私有云平台私有云通过硬件虚拟化、存储虚拟化和网络虚拟化等技术,能够最大程度地保证用户数据的安全性和可靠性;在线学习交流平台为学生在学习过程遇到的问题,提供了良好的解决途径本文对高校进一步完善在线教学的能力提供了参考。