APP下载

基于云计算在线教育平台系统的研究与实现

2022-11-11王宝龙

电子技术与软件工程 2022年15期
关键词:租户帖子教学资源

王宝龙

(天津轻工职业技术学院 天津市 300350)

现阶段,由于在传统教学模式当中,教师的教学平台具有有限的受众范围,资源利用效率明显不够,不能够开展更加便捷且高效的资源共享、开发成本不断提高、运维效率大打折扣等问题,针对以云计算为基础的在线教育系统研究越来越丰富。在以下内容中,所研究设计实现的平台系统结合教学实践流程,以系统用户、主要用例两个角度出发,着重分析在线教育系统平台设计的具体需求,并整理出了更加详细的基于云计算在线教育平台系统当中的技术架构、系统设计目标、逻辑架构以及功能架构等。

1 基于云计算在线教育平台系统的详细设计

1.1 系统设计目标

在运行以往的在线教育教学系统过程中,绝大部分系统开发期间都无法脱离自主开发与企业委托这两种方式。还有少部分会选择直接购买成品系统。但是不论何种工作方式,都存在许多优点,比如:

(1)具有较高的资金成本。包括构建软件环境与硬件环境,以及系统后期维护、保养、管理,都要求用户投入较多成本。

(2)系统后期维护困难,系统运行的稳定性、需求的不断变化,这都都需要用户耗费较多资金和精力来开展维护与管理。

(3)扩展性有待提升。因为现阶段的教育体制正随着我国经济发展而不断转型,用户在应用网络教育平台过程中,也有了越来越多的功能需求,所以现有系统必须要不断完善并优化自身功能,确保能够做到与时俱进,满足用户需求。

(4)功能不健全。大多数在线教育系统都不能够根据教学流程对教学任务进行合理化设计,而是往往只可以提供有关服务的简易化功能,不能够获取更多受众的信赖。而本研究中的系统则与传统系统大有不同,在本系统设计过程中,融入了“软件、服务相同步”这种设计理念,以云计算以及大数据一类先进技术为基础,充分展现出云计算的重要优势,对以往系统中存在的缺陷进行有效优化,从而为更多用户提供更加充足的教育服务。为此,本系统在设计开发过程中制定了多个目标,包括投资成本较低、灵活扩展、维护简单、功能齐全、服务可配置。如图1所示。

图1:系统设计目标

1.2 功能模块设计

图2:系统功能

(1)用户管理。本系统当中的用户主要包括教师、学生以及管理人员三种。用户管理这一模块能够确保用户合法的访问与操作该系统。主要功能包括用户登录、权限分配以及用户注销。

(2)教学资源管理模块。这一模块结合系统用户角色不同时出现的不同功能需求来设计。该模块还能够作为一个单独小系统来设计。该模块的主要功能包括教学资源上传、教学资源发布、资源信息增删与修改、文件检索、文件下载等。

(3)学习任务。在线教育过程中,主要的学习任务都是借助于测试或作业的形式实现,既有助于促进学生们的学习与成长,也有助于强化他们对知识的理解与掌握,更有利于教师掌握每一个学生的学习情况。结合用户角色以及具体的功能来提高需求标准。对大学生来说,在线教育期间主要包括信息浏览、作业提交、在线作答这些任务,以及查看评语任务等。就教师而言,学习任务则主要包括作业构建、任务发布、任务上传、在线批改以及答题卡设置等等。

(4)互动交流模块。互动交流以及解答疑惑都离不开论坛这个版块。主要功能如下:发帖、抽检、回复以及查询等。互动交流这一模块当中的功能可以与大学生心理诉求更加契合,从而有效激发他们的兴趣,提高他们的学习效率。

1.3 多租户数据隔离技术

本系统选择SaaS模式。应用本身存放于云端当中,致使数据层通常也会出现公开化的特征,带来较大的数据安全隐患。同时为进一步提高资源共享水平,不同租户之间存在的数据同样需要得到共享。目前常见多租户数据主要隔离方案有三种。

(1)独立的数据库。在该模式当中,大部分租户都带有一个单独的数据库实例,也就是每一个租户都能够作为单独的数据库系统而存在。主要的优势就是能够具有更强大的分离程度,租户们的数据相互独立,具有更好的安全性,能够有效避免发生数据篡改等问题,同时也能够更好的扩张与实现,可以满足不同用户的个性功能需求[1]。缺点则是不具备较高的共享效率、租户数量相对较少,而一旦租户数量相较于以往变多,则数据库也会随之数量增加,因此会增加数据库成本。

拟定设计方案的时候还要顾虑到建筑的美观性以及经济性,同时也需要考虑到建造过程中的可操作性,综合各个方面选出最佳的方案,制定金额的限制,通过各种手段来达到详细的分析设计细节的目的。再进行详细的测量后,选择最佳的方案,并且确认所选方案的可用性,一旦选择了方案,就应该谨慎的执行,不能随便的更换方案,为了避免产生错误,应该全程检查并且跟踪建筑工程的进行,随时发现问题解决问题,将所需要的成本降到最低。拟定最佳的方案,合理的调配金额,对工作进行细致的划分。

(2)共享数据库以及相对独立的一个Schema。这种模式下,各个租户能够相互关联与协作,也就是大家都拥有一个相同的数据库系统,当租户不同,则数据表也明显不同。以该角度来看,租户绝大多数业务数据都可以有效存储到自己的数据表当中当中存放,主要的优势就是每一个租户之间的数据逻辑是不可见的,相较于上一种模式,这种模式具有更多的与租户支持量,有效减少了数据库运行成本。缺陷则对于数据备份与恢复十分不利,因为有限的数据数量,导致租户数量也急剧减少。

(3)共享数据库、共享数据表与共享Schema。在这种模式当中,大部分租户数据都能够实现高度的共享,也就是说所有租住的数据都能够存储到一个数据表当中。主要的优势就是能够促进提高租户数据共享水平,从而优化资源利用效果,减少成本。主要缺陷则是不具备较强的安全性,从租户定制的数据来看,个性化特征明显,会导致编程更加复杂。

1.4 数据库模块技术

数据访问这一层可以提供业务层所需数据,主要能够实现对连接各个数据库的职责,业务层当中的设计则更多为实体对象都需要做好持久化的数据存储,一个对象都会有一个对应的表与记录在数据库当中。通常情况下,数据访问与业务这两层当中的实体都属于对应存在,业务对象都比较复杂,同时不同的对象可以与多张表相对应,此时就应当整合在一个对象中,负责映射数据库与业务对象存在的联系。本系统设计的主要数据表包括:

(1)用户管理模块数据。在该表当中,详细记录了用户们的基本信息,主要功能为用户注册与用户登录;

(2)教学资源数据表。在这个表格当中,主要记录着各种基础性的教学资源数据,可以为广大用户提供检索、浏览、下载等功能;

(3)在线学习任务表。在线学习过程中的任务通常为在线作业和在线测试这两部分。在线学习过程中,相关任务信息会直接存储到信息表中,并交由教师直接上传至系统当中后进行在线批改,其中也包括任务信息、题目信息以及学生个人信息等。可以有效保障学生们的在线测试、在线作业以及教师的在线上传、在线批改等功能实现;

(4)互动讨论模块信息表。这一该模块中同样离不开论坛的帮助,互动讨论主要负责对用户发布的各种信息进行保存。主要功能就是评论、恢复以及跟帖等等,从而实现更好的交流与探讨目的[2]。

2 基于云计算在线教育平台系统的实验与测试

2.1 系统具体实现

2.1.1 开发环境搭建

本系统主要采取Java开发语言,应用MyEclipse这种开发工具以及关键插件功能,通过Java SDK版本完成开发系统功能的目标。搭建开发环境包括以下步骤:

(1)Java软件开发与安装。将jdk1.7安装到oracle管网中。安装结束后,将Java SDK这一目录配置到系统环境当中,最终借助于将java-version指令输入到命令提示符当中,即可验证是否成功安装了Java SDK;

(2)在Apache Tomcat管网当中下载32位压缩包,而后解压至本地的目录中;

(3)下载安装MyEclipse2014。完成后,利用菜单栏当中的指令将安装完成的java SDK当做默认运行环境来运行Java。而后借助于其他指令流程,在系统当中配置tomcat7.0;

(4)安装谷歌插件。利用该插件可以更有助于实现测试、部署与生成所有工作应用。借助于在谷歌插件当中输入网站安装正版软件。由此,便能够完成完整的系统所需开发环境搭建工作[3]。

2.1.2 工程目录结构

在Google App Engine当中,Java Web应用程序当中的文件,主要包括已经完成编译的Java类、配置文件以及静态文件这几种,属于以一种Web为主要应用程序档案作为标准目录构建组织而来的工程目录结构。在本文中,以GAE平台为基础,采取标准的JAVA网络技术,主要包括servle与JSP,设计实现了一个多种能的在线教育平台系统。采取MyEclipse创建得来的App Engine Java工程目录结构相对来说较为复杂。其中名为src/的子目录当中包含着Java源代码数据,war/子目录包含系统页面JSP文件和系统配置文件。

2.1.3 用户管理模块

用户在运行该系统时,可以将信息直接输入到登录页面,即输入自己的用户名与设置的用户密码。系统结合不同的信息符号可以直接登录到页面当中,再由用户根据自己的用户名与密码直接向系统发送请求。系统通过对配置文件的查询,能够把用户的登录请求直接发送至LoginAction中进行处理。LohinAction首先能够获取到的用户信息主要为用户名、密码以及验证码等,通过userCheck()方法能够直接获取缓存,若没有缓存,则可以通过对RegisterSrevie中的login()直接调用来查询所需的用户信息,而后根据查询所得的具体用户信息能够返回到对应的页面当中。用户在成功登陆到个人中心当中之后,会由Action user_saveInfo负责对用户已经完成修改表单当中的信息进行接收,利用对模型层中的saveInfo()方法直接调用对用户信息进行保存[4]。用户修改个人信息流程图如图3所示。

图3:用户修改个人信息流程图

2.1.4 学习任务模块

在这一模块当中,结合不同用户角色,发挥出的模块功能也各不相同。教师用户可以通过系统直接进行作业上传与批改;同时学生用户也可以直接实现在线作与作业提交,还能够直接查看自己的分数,这些都属于模块中的有效功能。在教师进入到作业这一模块当中之后,系统借助于调取教师设置的各种类型作业,同时直接在列表当中展示。通过点击其中的链接实现不同操作需求。教师发布作业主要有以下流程:借助于控件完成作业上传、处理请求,保存作业信息、处理下一步请求,保存答题卡信息、处理保存发布记录请求,保存发布记录、处理发布请求,查询出班级或小组信息、处理下一步请求,保存题目属性信息[5]。针对学生们已经完成并提交的测试或者作业,教师可以直接进行批改操作,结合学生们的作业与答案给出具体分数。主要包括如下流程:发出批改请求、处理请求、查询学生作答信息与正确答案、批改完成,提交分数、接受处理请求,保存教师批阅信息。最后,还有学生在线任务的实现,主要包括以下流程:用户登录、进入学习任务、查看任务内容、是否完成、是否在线作答、提交、查看分数。

2.1.5 教学资源模块

这一模块能够得以实现结合用户角色能够划分为两大部分,分为是学生搜索与下载教学资源、教师发布各类教学资源、其中教师发布各类教学资源主要包括如下流程:在控件中上传教学资源、处理文件信息、处理发布请求。如图4所示。而学生们搜索与下载教学资源则主要包括如下流程:初始化查询条件、查询满足查询条件的教学资源、是否有结果、有则将结果以列表分页形式返回,页面显示、结合资源路径处理下载请求,如果没有则直接结束。通过教学资源模块当中这两项重要功能的实现,可以让该在线教育平台系统充分发挥出教育过程中的自主性,提高教师的教学效率、缓解教师的教学压力,同时也能够提高学生们学习的主动性与学习能力[6]。

图4:教师资源发布流程图

2.1.6 互动讨论模块

互动讨论模块大多包括发表帖子、浏览其中内容以及恢复帖子评论这些功能。用户发表帖子的流程主要如下:初始化添加主题页面、用户借助于页面填写帖子内容,设置帖子信息、接收参数并处理保存帖子请求、保存帖子内容[7]。具体位:用户直接发出新建的帖子申请后,由系统影响处理请求,对发帖页面进行初始化处理。用户借助于新建主题页面,将帖子的主题内容填写到当中,同时设置好帖子里的其他重要信息,将保存请求直接提交到负责接收用户提交的帖子信息当中,同时借助于调用模型层当中的savaLpost()方法在数据库当中保存详细的帖子信息。用户检索与浏览帖子当中的内容实现的流程如下:初始化查询条件、查询满足查询条件的主题帖子、是否有结果,如果有的将结果按照列表分页形式返回到页面当中显示、结合帖子id查询帖子当中的详细内容,如果没有则直接结束。

2.2 系统测试

本次系统测试针对主要的功能模块开展测试。比如:

(1)用户登录。在登录页面直接输入用户名和密码,然后点击登录。测试发现可以直接进入到个人中心当中,实现了设计预期;

(2)信息修改。首先找到个人信息这个页面,而后将个人信息填写完整并保存。测试发现用户的个人信息在修改后能够完整保存,实现了设计预期;

(3)在线作答。首先由学生登录到系统当中,点击在线作业,而后选择自己未完成部分作业部分进行作答,最终提交作业。测试实现了学生借助于成功完成作业作答并提交,教师受到学生提交的作业。满足了预期效果[8]。等等。

3 结束语

综上所述,在上述内容中,设计实现了一个基于云计算在线教育平台系统,通过合理的设计与科学的测试试验,最终实现了多种功能,满足了预期设计效果与需求。

猜你喜欢

租户帖子教学资源
基于MVC模式的多租户portlet应用研究*
暴力老妈
初中语文数字化教学资源应用探索
初探教学资源开发的系统思维
临床实验教学中教学资源的整合优化与应用
企业多租户云存储平台的设计与实现
土木工程科研资源转化为实践教学资源的探索
SaaS模式下多租户数据比较存储模式研究
高手是这样拍马屁的
我是怎样在坛子里堕落的