您现在的位置: 论文网 >> 教育论文 >> 学科教育论文 >> 一种轻量级课程教学辅助系统的设计与实现论文

一种轻量级课程教学辅助系统的设计与实现

出处:论文网
时间:2017-02-01

一种轻量级课程教学辅助系统的设计与实现

  Abstract: A lightweight teaching assistant system based on web technology was designed and developed. The system was divided into two parts: the teacher's function and the student's function. The business functions of selecting topic of the operation, grouping the operation, submitting the operation and searching the sharing resources of the course were implemented. On the performance of the system, the design of the information authentication based on MAC online, the upload of large file and the deploying applications was completed. The system is simple, flexible and easy to deploy. And the system has some good reference value to the development of other teaching assistant systems.

  Key words: teaching assistant system;system design;lightweight;MySql;J2EE

  中图分类号:TP311.1;E23 文献标识码:A 文章编号:1006-4311(2016)14-0122-04

  0 引言

  利用计算机系统辅助教学已在国内外的课程教学中得到了广泛的应用,国内各大高校纷纷建立起相应的课程教学辅助系统,实现对课程教学过程的全程管理和教学资源的统一规划[1-2]。WEB技术的不断发展,使得WEB技术逐渐成为实现辅助教学系统的主流技术。要实现基于WEB的课程教学辅助系统,就必须建立服务器。但是,对服务器的配置和维护一般都需要专业的人员,不便于其他专业课程的教师直接使用。另外,这些教学辅助系统的一般较为庞大,对于一些只需要简单功能的课程教学而言,建立和维护这类课程教学辅助系统的性价比不高。因此,设计开发一种易于部署,小巧灵活的教学辅助系统成为这一部分课程教学的客观需要。

  1 系统目的和要求

  系统主要目的是在校园网环境下,实现在线作业分发、作业提交、作业评价、资源发布与共享等功能。系统要具有简单灵活、便于部署与维护的特点。因此,要求系统在技术框架上,采用B/S结构进行开发;在服务器端的部署上,支持不需要安装就可以运行;在系统维护上,一般教师就可以完成系统和数据的维护工作;在系统功能上,应小巧灵活,操作简单,模块化程度高,能够满足功能进一步拓展的需要。

  2 系统设计

  2.1 系统技术框架

  系统技术框架如图1所示。

  系统采用J2EE构架,MVC模式开发。其中,以JSP和ExtJs框架实现系统视图的展现,并完成前端业务数据的处理;以Servlet技术实现系统前后台控制功能;以JAVA Bean等实现系统业务逻辑;以iBATIS框架的ORM技术实现数据库的访问;以MySql做为后台数据库。

  2.2 系统主要流程

  根据课程教学需要,设计的系统主要流程如图2所示。

  以教师发布作业选题,学生进行作业选题为两大主线,将系统划分为教师功能和学生功能。教师进行题目发布时,通过设置选题最大人数来控制选题学生的人数。学生根据自己的兴趣爱好进行选题,可以查看自己的已经完成的选题和本组成员,还可以查看其他组的成员。

  在教师确定作业选题前,学生可以删除该选题,并重新进行选择。一旦学生的选题被教师确定,该学生的选题即被锁定,学生就不能进行删除操作;只有当教师解除锁定,才能重新选题。教师还可以通过设置题目的发布状态来实现封题功能。封题后,学生将不能进行该题目的选择。

  学生完成作业后,可以将已经确认选题的作业进行在线提交。教师根据学生作业完成情况,进行评分。考虑到分组作业的需求,教师也可以对没有上传作业的学生,按照小组成绩给予评价。

  2.3 系统功能设计

  系统的用户角色分为:教师和学生。教师除了具有作业布置、作业评价等权限外,还需要当充当系统管理员完成系统管理的工作。学生则主要完成作业选择,作业提交,信息查询,资料下载等功能。如图3所示。

  2.3.1 教师功能

  ①作业分发。用于作业题目的发布,如果是分组作业,小组成员应明确每个人的具体任务。学生分组可以由教师来指定,也可以由学生根据题目自行编组。考虑到一些课程的实践作业可能有多个阶段构成,在作业分发时,可通过设置作业的课程阶段实现。

  ②学生作业评价与管理。对学生提交的作业进行管理,包括:确定学生的作业选题;对学生作业进行评分;成绩打印;将学生的作业发布到案例库等。   ③学生作业查询。按照学生的学号或者姓名查询作业情况。系统默认为当前年度的数据,也可以对历年的数据进行查询,实现对查询数据的导出和打印功能。为方便教师使用,还应具有优秀作业的案例发布功能。

  ④学生信息管理。通常,同一个学生使用同一台电脑来完成本课程的系列作业比较科学。因此,学生在注册时,系统按照课程、年度、学期和MAC地址四要素进行信息登记。考虑到特殊情况的需求,也可以由教师可以按照课程、年度、学期、MAC地址和学号进行信息登记,这样,既实现多个学生对同一台电脑的操作授权,又有效维护了教学班的上机秩序。

  ⑤资源发布与管理。实现与课程相关的资源进行上传、修改、删除等。资源发布按照教师和学生两类角色进行授权,学生发布的学习资料等必须经过教师的审核通过才能有发布到资源库中。

  ⑥系统管理。主要包括:课程信息管理、资源类型管理、数据备份恢复等。

  2.3.2 学生功能

  ①作业选题。实现对教师发布题目的选择。选题完成后,一旦经教师确认,就不能进行修改。只有经过教师确认的选题,才能进行作业提交。

  ②作业提交。学生完成某题目的实践作业后,将作业打包,然后,通过上传功能,实现作业上传。

  ③课题组成员查询。实现对同组成员作业的查询和其他组成员作业的查询功能。

  ④学习资源。主要包括对学生优秀案例资源、课程相关资源的查询和下载。

  2.4 数据库设计

  MySql数据库具有体积小、速度快、配置灵活的特点,选择该数据库符合系统轻量级设计的思想。数据库的主要包括教师信息表、学生信息表、课程信息表、作业信息表、学生作业信息表、推荐作业信息表等。其中,学生信息表包括年度、学期、班级、学号、登录密码、课程成绩、IP地址、MAC地址等。课程信息表包括年度、学期、课程ID、课程名称、授课教师等。作业信息表包括年度、学期、课程ID、作业ID、作业名称、作业要求、选择人数、附件位置等信息等。数据库主要结构如图4所示。

  3 系统实现

  3.1 系统功能的实现

  采用MyEclipse作为辅助系统的开发平台,实现了后台业务功能和前台操作功能。其中,后台功能中,采用iBATIS框架的实现对数据库的访问,其配置文件sqlMapConfig.properties的各参数设置为:

  driver= com.mysql.jdbc.Driver;

  url= jdbc:mysql://localhost:3306/database;

  username=root;

  password=fzjxxt123。

  前台采用ExtJs框架进行搭建,最后实现的教师功能模块和学生功能模块如图5和图6所示。

  3.2 系统关键技术

  根据系统需求,除了分别实现教师和学生的业务功能外,主要实现了以下三个关键技术:

  3.2.1 基于UDP协议的MAC地址认证方法

  专业课程的实践教学中,特别是一些作业需要进行一系列的任务才能完成,这就需要学生具有相对固定的电脑。采用MAC地址进行认证控制,有利于加强上机秩序的管理。

  获得客户端网卡MAC地址的方法通常有三种:一是通过命令方式;二是通过ActiveX的方法;三是用UDP协议来发送查询MAC指令,然后从返回值中解析MAC地址。其中,第三种最为理想。系统以第三种方法为基础,当学生第一次进行注册时,直接获取MAC地址,完成MAC的认证,避免了多个学生在一台计算机上同时登录系统。MAC地址获取主要由UdpGetClientMacAddr类实现,其GetRemoteMacAddr()方法结构如下:

  bqcmd=GetQCmd();//生成询问指令

  send(bqcmd); //发送指令

  DatagramPacket dp=receive();

  smac=GetMacAddr(dp.getData());

  close();//关闭连接

  return smac; //还回MAC地址信息

  3.2.2 基于http协议的超大文件上传模块

  以http协议为基础的纯网页上传模块,对上传文件大小都有限制,因此,上传较大的文件通常采用安装插件来实现。由于校园网具有较高的网速,为避免安装插件的烦琐性,系统对基于ant框架的文件上传技术进行了重新设计,实现了基于校园网的纯网页大文件上传模块。该模块无须安装插件,具有上传进度条的显示功能,能够满足超大文件上传的需要。

  其中,前台由JSP页面中JavaScript程序的Ajax方法实现,其核心调用过程为:

  Ajax.PeriodicalUpdater('status',

  'uploadfile',

  {asynchronous:true,

  frequency:1,

  method: 'get',

  parameters: 'c=status&file='+files,

  onFailure: reportError});

  后台服务程序由Servlet类UploadServlet完成,其主程序为:

  //获取HttpSession

  session=request.getSession();

  //获取Ajax传递过来的参数c

  stats=request.getParameter("c");

  if (stats.equals("status")){   doStatus();//调获取并返回状态信息方法

  } else {

  doFileUpload();//否则,调上传文件方法。

  }

  最后实现的通用上传模块如图7所示。

  3.2.3 集成服务器的系统部署

  为简化服务器端的安装和配置,通过将WEB服务器、JDK、数据库和辅助系统等进行集成,实现了系统的免安装功能。使用时,只需要运行一个主控文件,就可以启动WEB服务和数据库。对教学辅助系统所需环境的集成,一方面大大降低了系统部署的难度;另一方面使得系统的使用更加灵活。教师可以将整个系统拷贝到个人电脑中,可以拷贝到统一的服务器上,操作非常简便。集成主要方法是采用批处理方式实现,主控命令如下:

  @echo '正在启动mysql服务器...'

  start StartMySQL.bat

  @echo 'mysql服务器启动中...'

  @echo '正在启动WEB服务器...'

  set JAVA_HOME=%cd%\jdk1.6.0_05

  set path=%JAVA_HOME%\bin;%path%

  set CATALINA_HOME=%cd%\apache-tomcat-6.0.18

  set JAVA_OPTS=-Xms64M -Xmx256M %JAVA_OPTS%

  call %CATALINA_HOME%\bin\startup.bat

  @echo '正在等待系统启动...'

  @echo off

  @ping -n 10 127.0.0.1 >nul

  call startie.bat

  4 结语

  该教学辅助系统是一种基于J2EE的轻量级信息管理系统,具有操作简单、小巧灵活、针对性强、无需安装、对运行维护人员要求低的特点,适合大多数教师直接使用。特别是一些在学校公用计算机房上课,而又需要及时提交作业的课程教学,可以很方便地实现课堂作业布置和作业提交。从系统运行和使用情况看,达到了预期目的,取得了较理想的效果。该系统的实施对其他课程教学辅助系统建设也具有一定的借鉴意义。

一种轻量级课程教学辅助系统的设计与实现

论文搜索
关键字:轻量 轻量级 辅助 课程 教学 设计
最新学科教育论文
软件工程专业“计算机网络”课程实验教学研
“赛教学训”四位一体化的物联网工程专业人
浅议幼儿美术趣味教学及创新能力的培养
如何利用奥尔夫音乐教学法培养幼儿的创造力
解读体育游戏在初中体育教学中的应用及影响
如何在美术教学中营造快乐的氛围
微积分慕课教学资源与应对策略探究
浅析在德育课教学中如何灌输团队观念
MOOC引领下中学历史课程多元化教学模式研究
“情感过滤”假设对大学英语听力教学探讨
热门学科教育论文
浅谈语文教学中学生创造力的培养
变“教师教,学生学”为“教师教学生学”
素质教育与小学语文教学
小学“语文综合性学习”实践初探
素质教育和小学语文教学改革
现代体育课堂教学重在创新
浅谈《体育课程标准》与体育教师观念的转变
电教手段优化体育教学
陶行知健身思想研究
简论现代游泳技术与训练的发展方向