当前位置:文档之家› 在线考试系统的设计和实现(毕设参考)

在线考试系统的设计和实现(毕设参考)

软件工程课程设计设计说明书考试系统的设计与开发学生姓名学号班级成绩指导教师数学与计算机科学学院2012年12月26日软件工程课程设计评阅书课程设计任务书2012 —2013 学年第一学期专业:学号:姓名:课程设计名称:软件工程课程设计设计题目:考试系统的设计与开发完成期限:自2012 年12 月17 日至2012 年12 月28 日共2 周设计依据、要求及主要内容(可另加附页):指导教师(签字):教研室主任(签字):批准日期:年月日摘要在线考试系统旨在实现考试的无纸化管理,对一些科目的考试可以通过互联网络或局域网进行,方便校方考务的管理,也方便了考生,尤其适合考生分布广,不易集中的远程教育。

我主要开发系统的后台管理系统—JAVA在线考试管理子系统,它包括试题管理、考生管理、在线制作试卷、控制学生考试的设置、试卷审批等功能。

本论文主要介绍了对JAVA在线考试管理子系统的分析、设计和开发的全部过程。

运用ER图,程序流程图等对在线管理子系统的设计过程进行详细的说明。

关键词:在线考试;j2EE目录1 课题描述 (5)1.1 开发背景 (6)1.2 系统开发目标 (6)1.3 开发工具的选择 (6)2 需求分析 (7)2.1 背景分析 (7)2.2 可行性分析 (7)2.2.1 技术可行性分析 (7)2.2.2 经济可行性 (7)2.2.3 方案可行性 (8)2.3 概要设计 (8)2.4 总体设计 (9)2.4.1 系统的功能模块图 (9)2.4.2 系统功能模块 (10)3 数据库设计 (12)3.1数据字典 (12)3.2 数据库的连接 (15)4 详细设计 (16)4.1 公共类设计 (16)4.2 在线考试模块设计 (18)4.3 查看考生试卷模块设计 (19)4.4 考试设置信息维护模块设计 (19)4.5 用户管理模块设计 (20)5 程序调试与测试 (1)5.1 系统运行环境 (1)5.2 测试目的 (1)5.3 各功能模块测试 (1)5.3.1 在线考试模块测试 (1)5.3.2 查看试卷测试 (2)5.3.3 管理员模块 (3)5.3.4 用户管理模块测试 (5)总结 (7)参考文献 (8)1 课题描述1.1 开发背景在二十一世纪的新时代,随着计算机技术的发展及计算机的日益普及,基于在线考试与无纸化办公一样已成为大势所趋。

在线考试系统也越来越成为学校的好帮手,它的优势不但体现在人力上也体现在物力上,在线考试系统的采用自动评阅、计分、成绩存档功能将有效地避免资源的浪费,有利于环保,减少人员,提高效率[。

1.2 系统开发目标该系统是一个基于B/S模式的Web在线考试系统,根据科目出相应的考卷。

学生可以进行考试,查看考试情况等操作。

当考试完成后系统能自动地考试题评分。

教师登陆时系统可以还原学生考试试卷,可以查看学生总分,并生成各分数段情况信息,供给老师参考,以便能够了解学生的学习情况。

1.3 开发工具的选择本系统开发语言为JAVA,从各IDE的性能和价格考虑所使用的开发工具主要是MyEclipse。

由于本系统数据量和负载量都比较大,从经济和效率上考虑本系统选用mysql 数据库。

Web服务器选Apache开源组织提供的TomCat,TomCat是一个免费的开源软件是SUN公司推荐的web服务器。

2 需求分析2.1 背景分析网络化教育代表了教育改革的一个发展方向,已经成为现代教育的一个特征,并对教育的发展形成新的推动力。

随着Internet/Intranet的迅速发展和广泛普及,建立在其上的远程教育成为现代教育技术未来发展方向之一,考试测试作为远程教育的一个子系统也成为一个重要的研究领域。

现代远程教育作为一种新的教学手段已经开始进入我们的生活,正在给传统教育模式带来新的变革,并对教育的发展形成新的推动力。

相比传统的考试方式,在线考试系统的主要好处是一方面可以动态地管理各种考试信息,教师可以网上出题,之后学生便可以网上进行答题,从而使得考教分离。

2.2 可行性分析2.2.1 技术可行性分析系统开发将要用到JSP、ssh2、JavaBean、mysql数据库技术。

另外,硬件只需要一台pc机,装上软件MyEclipse,DreamWeaver等开发工具,利用mysql作为后台的数据库,利用Tomcat作为Web服务器,所以在这方面来说是可行的。

已经掌握了开发考试系统方法和开发工具,并且在调查过程中,已经了解和熟悉了在线考试系统的业务流程。

综上所述本系统开发从技术上是可行的。

2.2.2 经济可行性从经济效益来分析,软件的开发成本不大,而其它的投入也只是电脑。

电脑的普及也带来了低成本投入。

由于系统运行的基础环境均已具备,无需重新开发建设,所以系统开发、运行所需的费用是比较低的。

而系统的效益很高可以提高管理效率实现计算机化、系统化、规范化操作,效率大于投入,可行性很高。

2.2.3 方案可行性根据系统的分析,本系统充分从适用性出发,全面为不同的使用用户考虑。

使系统的许多功能与规则都可根据用户的习惯进行定制,包括软件界面、操作方式、录入方式等。

本系统的设计充分从使用用户和教务教学任务考虑。

2.3 概要设计本考试系统用户主要分为三类:学生,教师,管理员。

1.学生需求学生登陆系统主要进行两类操作:在线考试,成绩查询。

(1)在线考试学生登录后,学生选择考试科目,之后从备选试卷中选择要参考的试卷。

学生在考试过程中页面将提供考试时间倒计时功能,使考生随时了解考试剩余时间。

在考试时间到时,系统将自动地将学生考试试卷提交。

当考试试卷提交时,系统自动评分,并且即使反馈给考生。

(2)成绩查询学生可以登陆系统查询各科成绩,其中成绩查询是查询自己的考卷,了解自己的考试情况。

2.教师需求教师登陆系统主要有三类操作:添加科目,添加试卷,添加学生和查看学生试卷,查看相应试卷各分数段统计。

(1)添加科目教师可以登录系统,添加自己所教科目。

(2)添加试卷教师选择所要添加的科目后,便可以添加新的试卷,试卷包括试卷考试时间,题目以及每道题目的分值及选项,答案等。

(3)添加学生教师登陆系统之后可以添加新的学生。

(6)查看学生试卷教师登陆系统之后可以查看到参加该门考试的学生的考试情况。

(5)查看相应试卷各分数段统计教师登陆系统之后可以查看到考试的分数段情况。

3.管理员系统管理员登陆系统后主要进行一类操作:添加教师信息以及具有老师的一切权限(1)添加教师信息管理员可以添加教师信息。

(2)具有老师的一切权限管理员可以查看所有老师出的试卷,并进行删除操作,并且自己可以独立进行添加科目,添加试卷,添加学生等操作。

2.4 总体设计2.4.1 系统的功能模块图根据2.3所述需求,设计出系统功能模块如图2-1所示:图2-1系统的功能模块图2.4.2 系统功能模块1、在线考试在线考试的流程如下:首先考生进入系统后选择科目,之后进行试卷的选择进行答题操作。

答题必须在规定的时间内进行,此时间是由教师在出试卷时设置好的,如在规定的时间内没有完成答题,系统将强制提交学生考试试卷进。

考生在试卷提交后系统自动地为试题进行评分,本系统的试题主要有单选题,双选题,多选题。

其数据流图如3.3所示。

图2-2第2层在线考试数据流图2、成绩查询考生根据用户编号查询考试成绩信息。

成绩信息包括单选题得分,多选题得分等详细信息。

页面提供对相应科目试卷的链接,使得学生还可以查询自己的考卷,了解自己的考试情况。

3、试题维护试题维护是后台教师的重要功能,它包括对试题的添加,修改,删除操作。

为了使界面更友好,管理员在试题维护时系统会先将考试试题读出,再提供给管理员操作。

其数据流图如图2-3所示图2-3 第2层考题维护数据流图4、用户管理用户管理是管理员对系统用户信息的管理。

这些用户包括学生和教师。

用户管理操作包括添加用户和删除用户。

管理用户时,系统会先将用户信息读出供给管理员参考,再提供给管理员操作。

其数据流图如图2-4所示。

图2-4 第2层用户管理数据流图3 数据库设计3.1数据字典通过对系统功能的分析可知,本系统主要包括如下的数据库信息:(1)管理员表,该表保存了系统管理员的基本信息,属性有管理员编号、管理员名称、管理员密码。

其中管理员编号为主码,它是用户信息的唯一标识。

表结构如表3-1所示。

(2)学生表,该表保存了学生的基本信息,属性有学生编号、学生名称、学生密码。

其中学生编号为主码,它是用户信息的唯一标识。

表结构如表3-2所示。

(3)考题表,该表用于保存考题的基本信息,属性有考题编号,考题类型,本题分数等。

其中考题编号为主码。

表结构如表3-3所示。

(6)科目表,该表用于保存考试科目的基本信息,属性有科目编号,科目名称。

其中科目编号为主码。

表结构如表3-6所示。

(5)试卷表,该表用于保存考生的试卷信息,属性有试卷编号,试卷名称,试卷状态,考试时间等。

其中试卷编号作为主码。

表结构如表3-5所示。

(6)成绩表,该表用于保存考生的考试成绩信息,属性有成绩编号,考生编号,课程编号,总得分。

其中成绩编号作为主码。

表结构如表3-6所示。

(7)答案表,该表用于保存试题的答案信息,属性有答案编号,所属题目编号,答案内容等。

其中答案编号作为主码。

表结构如表3-7所示。

(8)学生答案表,该表用于保存考生考试的答案信息,属性有答案编号,所属学生编号,答案内容,试题编号等。

其中答案编号作为主码。

表结构如表3-8所示。

系统表结构如下:字段类型允许为空说明备注id int(11)否用户编号pkusername varchar(50)否学生名password varchar(50)否密码表3-3考题表(t_question)字段类型允许为空说明备注id int(11)否考题编号pk 自增长type varchar(10)否考题类型单选多选双选Point int(11)否考题分数content text否题目paperId int(11)否所属试卷外键表3-6科目表(t_subject)字段类型允许为空说明备注id int(11)否科目id pkname varchar(50)否科目名称表3-5试卷表(t_paper)字段类型允许为空说明备注id int(11)否试卷id pkname varchar(50)否试卷名称state Varchar(20)否试卷状态开放和关闭两种状态time int(11)否考试时间以分钟为单位adminId int(11)否所属管理员fksubjectId int(11)否所属科目fk表3-6成绩表(t_score)字段类型允许为空说明备注id Varchar(10)否成绩编号pkmark Varchar(20)否成绩值student_Id float否考生ID fkpaper_Id float否科目ID fk表3-7答案表(t_answer)字段类型允许为空说明备注id int(10)否答案编号pkaitem varchar(50)否A选项内容bitem varchar(50)否B选项内容citem varchar(50)否C选项内容ditem varchar(50)否D选项内容content varchar(50)否正确答案questionId int(11)否所属问题ID fk表3-8学生答案表(t_studentanswer)说明备注字段类型允许为空id int(10)否学生答案编号pk questionIdList varchar(255)否学生答题题目ID序列学生所答试卷题目的有序序列answerList varchar(255)否学生答题答案序列学生答卷的答案序列studentId int(11)否学生ID fk3.2 数据库的连接在本系统中我们使用JDBC-ODBC桥连接,要进行数据库连接首先要配置数据源。

相关主题