基于JSP与Servlet的网上答题系统作为网络教学的一个组成部分,要求实现网络考试系统的各项基本功能。从安全性和易维护性考虑,选择了Web实现技术。简单的说就是将系统做成一种B/S模式,可以让用户通过浏览器直接访问位于服务器上的试题以及对系统进行远程维护。
本人选用了当前比较流行的网络编程技术——JSP作为主要实现手段(配合Java Servlet、Java Bean、HTML等)。JSP作为一种Web实现技术,它的效率是很高的。这一点正好符合了考试系统所要求的实时性。JSP自身的安全性,再加上实现模式的特点,完全能够达到考试的保密性要求,保证了考试的公平性原则。除此之外,作为Java平台的一部分,JSP拥有Java语言“一次编写,各处运行”的特点。又随着越来越多的服务器供应商将JSP支持添加到他们的产品中,这样一来用JSP做成的这套系统可以轻松移植到其它平台来运行。种种优点使得这套系统不但为目前校内的网络教学以至于今后远程教育的实现都打下了良好的基础。所以JSP是实现本系统的最佳技术,它是完全可行的。
模块组成:系统维护模块、学生在线考试模块、教师试题录入模块。其软件结构表4-1所示:
它们各自的功能如下所述:
(一)学生在线考试子系统
基于JSP与Servlet的网上答题系统主要是学生使用。考试子系统是本网络考试系统的核心部分,也是设计时的重点。网络考试可以在任何时候、任何地方进行。学生首先打开登录页面进行登录,如信息不正确(包括有些考生试图绕过登录页面,直接进入试卷页面的情况,此时由于没有登录信息,系统也会认为是非法考生),系统给出提示信息,并重新定位到登录页面;如信息正确,则可以开始不同模式的考试。当考试时间到或考生点击“交卷”按钮时,则系统把考生答案传送至服务器的数据库中保存起来,并在数据库中标记考生是否参加过某门课程考试。(随机考试则可给出成绩;非随机考试等教师批改完试卷后讲成绩保存于数据库。)另外,考生通过个人信息可以及时、方便地了解自己的考试成绩。
(二)教师试题录入系统
本系统是老师专用的(通过教师登陆才可以进入),对考生来说是不可见的。(对于进行有主观题测试的模式,采用此系统进行人工给分)主要功能有:
1、录入单元考试试卷
2、录入自由考试试卷
3、录入模拟考试试卷
4、修改试卷(有助于老师修改试卷中可能存在的错误或增加、删减题目)
5、成绩统计、查询(有助于老师了解学生考试情况)
6、年级科目管理(有助于及时调整年级科目)
7、知识点管理(有助于及时调整不同版本课本的不同知识点)
8、模拟考试管理(根据教学进度及时增加或删除模拟考试)
(三)系统维护
这个模块能对数据库中的信息(系统参数、老师用户、学生用户、试题、知识点、年级科目等)进行维护,主要使用对象是系统管理员(可在客户端上运行,进行远程维护)。本系统数据库部分用Mysql来实现。
(2) 系统功能的初步构想
1、 界面方面:系统主界面为登陆界面,有学生、老师、管理员三个身份选项,每个选项对应系统不同的运行状态(具体由登录系统人员的身份而定)。
2、 内容方面:由于网上考试的特点所限,考试内容以客观题为主。主观题只给出参考答案和评分标准。(以上是指“在线测试模式”下)对于“人工模式”下,则由阅卷人改卷后,通知考生成绩。这时以“综合测试题”为主。
3、 安全性方面:设立用户名和密码验证方式,防止非法用户登录和越权操作。
4、 其他:可以根据具体情况适当用其他辅助工具(如:Dreamwaver MX、Dreamwaver UltraDev等工具)对系统的界面进行美化和布局,以达到更好的效果。
5、 开发环境:Windows NT 4.0+IE6.0+Apache Tomcat +EditPlus2.0+Dreamwaver MX。