摘 要:随着计算机网络技术的飞速发展与互联网的不断普及,“在线学习”打破传统的教育模式,以其特有的灵活、便捷等优点,已经成为教育发展的一个重要方向。本文设计的系统按权限分主要包括学生用户、教师用户、管理员用户三个角色,其中学生用户能够实现公告查看、课程查看、网上提问、网上讨论、网上测试、资料下载、修改登录密码等功能;教师用户能够实现公告发布、课程查看、试题管理、网上答疑、网上讨论、修改登录密码等功能;管理员用户具备公告信息管理、课程信息管理、资料信息管理、系统用户信息管理、修改登录密码等功能。
关键词:在线学习;系统设计;教育信息化
中图分类号:TP311.52 文献标识码:A 文章编号:2096-4706(2019)04-0067-03
Design and Implementation of Online Teaching System
XU Guohong
(Jiangxi Modern Polytechnic College,Nanchang 330095,China)
Abstract:With the rapid development of computer network technology and the continuous popularization of internet,“online learning” to break the traditional mode of education,with its peculiar advantages of flexible and convenient has become an important direction of the education development.Online teaching system includes students,teachers and administrator,student users can realize announcement view,course view,online questions,online discussion,online testing,data download,modify the login password and other functions. Teacher users can realize the functions of announcement publishing,course viewing,test management,online question answering,online discussion and modifying login password. Administrator users have the functions of announcement information management,course information management,data information management,system user information management and modifying login password.
Keywords:online learning;system design;education informatization
0 引 言
目前大部分学生是被动地接受老师所灌输的书本知识,丧失了对学习的热情与积极性。因此,需要一种的新的教学模式来打破传统的教学模式的限制,这种新的教学模式必须能尽可能地激起学生学习的热情与积极性。利用计算机、网络技术实现的在线学习系统使得师生的教学不再受到地域的限制——不仅仅局限于学校教室了,也不受时间的限制——不仅仅局限于上课时间了,只要身边有一台可以联网的设备,就可以随时随地地通过互联网进行学习了。本系统是针对我校师生教与学的需求,建设一个面向广大师生的在线教学系统。该系统能辅助学校更好地完成师生相关课程的教学工作,便于学生更加牢固地掌握课堂所学知识,同时能够补充扩展课堂知识点,使得学生能够更加深入、更加全面地了解每门课程的相关知识。要求最终开发出的系统能具备相对完善的功能,如教学相关的功能,即课程查询、公告查询、网上讨论、网上答疑、网上测试和上传下载资料等,同时也能够方便管理员对教师用户和学生用户的相关信息进行管理以及对整个系统进行维护。当然,界面也必须足够美观、简洁明了,易于用户操作。
1 系统功能分析
通过问卷调查以及调研的方式,得到该系统的业务需求。学生用户端:具备公告查看、课程查看、网上提问、網上讨论、网上测试、资料下载、修改登录密码等功能。教师用户端:具备公告发布、课程查看、试题管理、网上答疑、网上讨论、修改登录密码等功能。管理员用户端:具备公告信息管理、课程信息管理、学习资料信息管理、系统用户信息管理、修改登录密码等功能。在对系统业务进行分析之后,得出系统具有三种不同角色:教师、学生及管理员,得出系统的数据流图如图1所示。数据字典能够对数据流图中的各个数据做出进一步详细的解释,用以描述系统中每个数据,并给出其定义。
2 系统功能设计
系统功能图是用来描述系统功能结构的图,将一个系统的各项功能划分若干层次,上层功能包含下层功能,一步一步细化功能,便于设计实现。通过对系统业务和数据流图进行具体分析,得出系统的功能模块结构图。系统的功能模块图如图2所示。
3 系统功能实现
3.1 公告信息管理
公告信息管理具有公告信息查询、添加公告、修改公告、删除公告等操作,进行各种操作时,会触发各种action,通过配置在服务器上的Java Servlet:MainCtrl服务中的控制操作对JSP页面上的各种请求、数据进行处理,对数据库进行操作,然后反映到相应的JSP页面上。
以添加公告为例,当点击添加公告按钮后,触发该按钮的action弹出添加系统公告的JSP页面,填写相关信息后点击提交信息,触发一个action:addnotice,通过配置在服务器上的Java Servlet:MainCtrl服务中的控制操作,通过post方法获取到JSP添加公告页面中表单中公告的公告标题(ntitle)和公告内容(ncontent),调用数据库操作insert语句将公告的标题(ntitle)、内容(ncontent)插入数据库公告信息表(notices)中。
3.2 课程信息管理
课程信息管理具有课程信息查询、添加课程信息、修改课程信息、删除课程等操作。进行各种操作时,会触发各种action,通过配置在服务器上的Java Servlet:MainCtrl服务中的控制操作对JSP页面上的各种请求、数据进行处理,对数据库进行操作,然后反映到相应的JSP页面上。
当进行课程信息的查询时,可以支持模糊查询,在查询课程的输入框里填写课程的关键词(key),首先通过JSP页面获取表单信息关键词key,调用数据库查询语句kename like'%"+key+"%'查找数据库中课程信息表(kechens),将课程名中包含这个关键词的所有课程在列表中显示出来。
当点击添加课程按钮后,触发该按钮的action弹出添加课程的JSP页面,填写相关信息后点击提交信息,触发一个action:addkechen,通过配置在服务器上的Java Servlet:MainCtrl服务中的控制操作,通过post方法获取到JSP添加课程页面中表单中课程的名称(kname)、上课地点(kplace)、上课时间(ktime)、授课老师(kteacher)、上课班级(kclass),调用数据库操作insert语句将课程的上述相关信息等插入数据库课程信息表(kechens)中。
3.3 资料上传下载
资料上传下载具有学习资料查询、上传学习资料、修改学习资料信息、删除资料等操作。当点击添加文件按钮后,触发该按钮的action弹出添加文件的JSP页面,填写相关信息并浏览本地文件选择一个文件后,点击提交信息后,触发一个action:addfiles,通过配置在服务器上的Java Servlet:Upload、MainCtrl服务中的控制操作,通过DiskFileItemFactory factory将这个文件复制到工程文件夹下的upfile文件夹下,并生成一个url下载链接,可以支持上传各种文件,并且可以通过setSizeMax函数设置文件的上限,这里设置的是最大100M,通过post方法获取到JSP添加文件页面中表单中资料的名称(filename)、类别(fileclass)、类型(filetype)、下载链接(fileurl),调用数据库操作insert语句将资料的上述相关信息等插入数据库资料信息表(kcfiles)中。
当进行资料下载操作时,选择一个文件点击下载后,JSP页面把该请求交给tomcat服务器上的servlet服务处理,根据这个文件的url找到指定路径的存储位置,下载该文件到本地指定路径下,并通过这个url调用数据库查询语句找到这个url数据的其他属性,如文件名(filename)、类别(fileclass)、类型(filetype)等。
3.4 试题信息管理
试题管理是对教师自己任课课程的试题的管理,对试题具有如下操作:添加、修改、删除、查询试题等。教师除了能够通过课堂讲授知识给学生外,同时还能在网上提供一些试题给学生练习,这样能够让学生边学边练,有助于学生更加牢固地掌握所学知识。
进行各种操作时,会触发各种action,通过配置在服务器上的Java Servlet:MainCtrl服务中的控制操作对JSP页面上的各种请求、数据进行处理,对数据库进行操作,然后反映到相应的JSP页面上。
当点击添加试题按钮后,触发该按钮的action弹出添加试题的JSP页面,填写相关信息后点击提交信息,触发一个action:addshiti,通过配置在服务器上的Java Servlet:MainCtrl服务中的控制操作,通过post方法获取到JSP添加试题页面中表单中试题的课程名(kechen)、章节(zhangjie)、题型(stype)、内容(scontent)、答案(anwers)和分值(fenzhi),调用数据库操作insert语句将上述信息等插入数据库试题信息表(sysuser)中。
3.5 网上答疑
学生在学习过程中遇到问题,通过网上交流比直接去找老师更加方便,可以直接在网上提出自己的问题,教师登录系统查看后,便能看到学生提出的问题,然后一一对其进行答疑解惑,有助于帮助学生对于课程上的重点、难点等有更深入的理解,对学生的学习提供帮助。
实现答疑解惑,要首先選择一个问题,点击回答,触发该按钮的action弹出添加实体的JSP页面,对该问题进行回答点击提交信息后,触发一个action:addanswer,通过配置在服务器上的Java Servlet:MainCtrl服务中的控制操作,通过post方法获取到JSP添加回答页面中表单中回答内容(answer),调用数据库操作insert语句将回答(answer)插入数据库答疑问题信息表(tiwen)对应id的那条问题数据中。
3.6 网上测试
学生通过对老师提供的试题进行测验,检测巩固自己所学的课程知识,通过网上测验知晓自己还有哪些知识点没有掌握好,然后针对这些没有掌握好的知识点进行复习,这有利于学生全面掌握知识点,对学习提高大有帮助。
实现这一功能,选择相关信息如课程、章节后点击提交信息,触发该按钮的action进入考试的JSP页面,由JSP页面通过表单获取填写的信息后,调用数据库操作select 语句将课程名(kechen)、章节(zhangjie)与数据库中试题信息表(shitis)中数据进行比对,从三种不同的题型(stype)通过order by newid()函数随机各提取10条与该门课程的该章节相同的数据通过3个list集合显示在JSP试卷页面中。
答题结束后,提交答案,由JSP考试页面获取表单中每个试题的答案,经过与数据库中试题信息表(shitis)相应的数据中的答案(anwers)进行比对,若相同则提取该题的分值(fenzhi)加到每个题型的总分上去,最后通过total+=Number(f)方法将三种题型(选择、填空、判断)各自所得总分数相加,显示总成绩。
3.7 网上讨论
通常老师上完课之后,为了让学生巩固所学知识点中的重点、难点,这时老师可以通过登录系统网上讨论提出相关的讨论题,与学生们一起在每个讨论题下面自由发言讨论,不但可以帮助同学们更好地掌握知识点,同时还有助于促进老师学生之间的学习交流。当点击添加讨论按钮后,触发该按钮的action弹出添加讨论的JSP页面,填写相关信息后点击提交信息,触发一个action:addtaolun,通过配置在服务器上的Java Servlet:MainCtrl服务中的控制操作,通过post方法获取到JSP添加讨论页面中表单中讨论的内容(content)和发言人编号(id),调用数据库操作insert 语句将讨论内容(content)、发言人编号(id)插入数据库讨论信息表(taolun)中。在老师提出一个讨论题后,学生登录本系统网上讨论功能,可以看到老师提出的各个讨论题,学生们可以在下面自由发言讨论,不但可以帮助同学们更好地掌握知识点,同时还有助于促进老师学生之间的学习交流。当点击一个讨论题目时,JSP获取该题目的编号(id),通过调用数据库操作select语句将与数据库讨论信息表中题目的编号(id)相同的数据的讨论题内容(content),发言者用户名(uname)显示在JSP讨论题页面。在文本框内输入发言信息,点击提交后,触发一个action:fy,通过配置在服务器上的Java Servlet:MainCtrl服务中的控制操作,通過post方法获取到JSP网上讨论页面中表单中讨论内容(content)和发言者者编号(id),调用数据库操作insert语句将上述信息插入数据库讨论信息表(taolun)中。
4 结 论
本文设计的在线教学系统所具备的功能比较全面,包含课程查询、公告查询、网上讨论、网上答疑、网上测试和上传下载资料等,基本可以满足广大师生的教学需求;同时界面干净整洁,简洁明了,易于用户操作,用户体验良好,系统的可扩展性良好,便于修改或添加更多功能。
参考文献:
[1] 陈莉.基于Struts2框架的应用研究 [D].湖北:湖北工业大学,2008.
[2] 王嘉.基于开源框架的在线学习平台的研究与应用 [D].大连:大连理工大学,2008.
[3] 郑达.商业网站软件系统的设计与实现 [D].上海:华东师范大学,2008.
作者简介:徐国红(1981-),女,汉族,江西樟树人,本科,助教,招生处、国际交流中心主办科员,学士,研究方向:计算机。