资源描述
在线考试系统详细设计
基于B/S在线考试系统
详细设计文档
2013-11-04
1引言 3
1.1编写目的 3
1.2项目背景 3
1.3术语说明 3
2系统概述 4
2.1需求概述 4
2.2软件结构 5
3系统功能说明 5
3.1 模块描述 5
3.2功能 10
3.3 性能 13
3.4 输入输出项 13
3.7接口 20
3.8 存储分配 21
3.9 注释设计 21
3.10 限制条件 22
详细设计说明书
1引言
1.1编写目的
在线考试系统是为了减轻教师出题、改卷负担,同时也便于学生自我测试,主要针对试卷中的客观题而开发的系统,该文档是直接给软件开发人员看的,以便指导编程人员编写代码。
预期读者:详细设计人员、概要设计评审小组。
1.2项目背景
系统的名称:在线考试系统
l 系统名称:在线考试系统
Online_Examination System (OES)
l 项目开发者:
l 项目管理者:
l 最终用户:教师 学生 维护人员
1.3术语说明
Brower
浏览器
B/S
Brower/server 浏览器/服务器构架
SQL
数据库操作语言
IE 6.0/ Mozilla/Netscape
主流浏览器
2系统概述
2.1需求概述
总体,包括用户的登录、注销,以及权限的相关操作,如:找回密码、注册等
对学生,包括在线考试、查询以往考试成绩等。
(需求1)在线答题:学生可以任选时间进行在线测试,考试结束后,系统会根据已有的标准答案进行在线判卷,考生可以立刻知道考试成绩。
(需求2)查询考试成绩:学生可以在线查询考试相关信息,个性空间操作。
对管理员、教师,主要包括管理基本资料、试卷管理、题库管理、成绩管理。
(需求3)成员管理:对成员的删改、控制与分配用户的访问权限,保障系统的安全性,防止非法访问。
(需求4)试卷管理:管理员可以从课程难度级别方面对某份试卷提出一定的要求生成试卷规则,在学生考试时,由系统根据试卷规则自动组卷生成满足管理员要求的试卷,而不用手工组卷。
(需求5)题库管理:管理员可以根据教学需求对题库中的试题进行三种基本操作:添加新的考题、删除旧有考题、修改原有考题,其中试题类型只包括单选题;针对试题,管理员可以设置题干、答案、试题难度系数、解析、添加时间等属性。
(需求6)成绩统计:管理员可以查看考生的考试成绩。
2.2软件结构
在线考试系统
查看考生信息
查看所有考试记录
管理考试试卷
管理试卷试题
教师后台管理
修改管理员信息
选择考试科目
开始考试
考生注册
考生登陆
学生在线考试
考试记录查询
自动评分
3系统功能说明
3.1 模块描述
系统主页面
表:3-1
用例名:
index.jsp
位置:
根目录
描 述:
考试系统主页面。
一般事件过程:
1:注册按钮进入注册页面zhuce.jsp。
2:登陆按钮进入登陆页面login.jsp。
3:后台管理超链接进入管理员登陆页面glylogin.jsp
完成后的状态:
实现页面跳转
(一)、前台考试
考生注册页面
表:3-2
用例名:
zhuce.jsp
位置:
根目录
描 述:
考生注册页面
一般事件过程:
将表单信息提交到Stservlet.java进行数据库的插入操作
其它事件过程:
前导状态/条件:
完成后的状态:
显示注册后的信息,如果注册失败,则跳转到注册页面并提示错误信息;如成功则跳转到登陆页面login.jsp
考生登陆页面
表:3-3
用例名:
login.jsp
位置:
根目录
描 述:
考生登陆
一般事件过程:
将表单信息提交到Stservlet.java进行数据库的查询验证操作
其它事件过程:
如果登陆信息不存在,则重新登陆
前导状态/条件:
完成后的状态:
进入login_success.jsp选择操作查询成绩queryscore.jsp或选择科目考试slsubject.jsp
考试科目选择页面
表:3-4
用例名:
slsubject.jsp
位置:
根目录
描 述:
考生选择考试科目试卷
一般事件过程:
选择考试科目试卷
其它事件过程:
如果没有可考试卷,则打印提示信息可选择退出
前导状态/条件:
查询数据库,只能展出考生没有考过的及试题添加完整的科目
完成后的状态:
进入test.jsp考试页面
考试页面
表:3-5
用例名:
test.jsp
位置:
根目录
描 述:
初始化试卷试题进行考试
一般事件过程:
1:从数据库question表中提取所选择的科目试卷的题目
2:做完试题后提交表单数据到JisuanServlet.java进行阅卷,成绩存入score表。并返回到打印成绩页result.jsp
其它事件过程:
数据库操作失败则返回错误信息
前导状态/条件:
完成后的状态:
数据库操作成功后返回result.jsp显示成绩
显示成绩页
表:3-6
用例名:
result.jsp
位置:
根目录
描 述:
一般事件过程:
显示考试成绩,可选择退出或继续考试
其它事件过程:
前导状态/条件:
完成后的状态:
根据所选超链接进入相应页面
(二)后台管理
管理模拟考试基本信息
表:3-7
用例名:
glylogin.jsp
位置:
根目录/guanli
描 述:
管理员登陆页面。
一般事件过程:
将表单信息提交到GlyLoginServlet.java进行数据库的查询验证操作
其它事件过程:
如果登陆信息不存在,则重新登陆
前导状态/条件:
完成后的状态:
进入main.jsp选择操作修改管理员信息updatemg.jsp或查询考试记录mgscore.jsp或编辑试卷mgsubject.jsp
修改管理员信息
表:3-8
用例名:
updatemg.jsp
位置:
根目录/guanli
描 述:
新旧信息的表单
一般事件过程:
1:向GlyLoginServlet.java中提交表单更改数据库中manager表的管理员信息
其它事件过程:
如果更改无效,显示出错信息
前导状态/条件:
完成后的状态:
信息得到删除或失败后的错误信息,成功后返回glylogin.jsp,重新登陆生效
查询所有考试记录信息
表:3-9
用例名:
mgscore.jsp
位置:
根目录/guanli
描 述:
显示数据库中考试记录信息
一般事件过程:
从数据库中查询并提取score中所有记录信息
其它事件过程:
前导状态/条件:
完成后的状态:
数据库操作成功或失败后的错误信息,成功后返回显示信息。
(三)、试卷的编辑
试卷编辑包括试卷类型的创建,试题的录入,并可以对系统中的试卷或试题进行修改、级联删除等。
试卷的管理
表:3-10
用例名:
mgsubject.jsp
位置:
根目录/guanli
描 述:
以一份试卷的形式录入自由测试的题目。
一般事件过程:
1:显示数据库中subject表中所有试卷信息
2:超链接进入相应试题库管理试题mgquestion.jsp。
3:通过SubServlet.java从数据库表subject中添加或删除试卷,
其它事件过程:
前导状态/条件:
完成后的状态:
系统在subject表内加入或删除相关信息或进入mgquestion.jsp试题管理页面
试题录入或修改
表:3-11
用例名:
mgquestion.jsp
位置:
根目录/guanli
描 述:
录入或修改试卷题目。
一般事件过程:
1:添加题目到question表QuServlet.java
2:修改题目updateQ.jsp。
3:从question表中删除题目
其它事件过程:
由updatetest.jsp完成后台数据库校验和插入的过程
前导状态/条件:
完成后的状态:
系统在question表中进行相应操作并返回提示信息
3.2功能
1、 总体
l 登录
l 注销
2、在线考试
l 随机抽题
l 自动阅卷
3、查询考试成绩
l 查询本人成绩
4、成员管理
l 删改用户
l 修改用户
5、试卷管理
l 单选题数量设置
l 单选题权重分布设置
6、题库管理
l 增加试题
l 删除试题
l 修改试题
7、成绩统计
l 成绩单显示
3.3 性能
数据精确度
数量值:精确到小数后一位;
时间值:精确到日,并以yyyy/mm/dd的形式表示;
价格值:精确到分,并以.XX的形式表示。
3.4 输入输出项
输人项包括:
学生的考生的学号和考生的姓名。学号只能是长度的6的string 类型,考生姓名只能是长度不能超过6的string 类型
考生的试卷答案,是一个数组项。
考试时间是一个int 类型数据,用来表示本次考试时间
输出项包括:
一个标志符bool 类型数据,表示通过验证
考生的成绩单。是一个float 类型数据
考试剩余时间。
manager:管理员表
l 保存管理员信息
表结构:
字段名称
类型
可否
为空
长度
缺省值
主键
外键
外键参考表
说明
id
int
否
4
是
记录主键
name
varchar
否
20
姓名
Password
varchar
否
20
密码
student:学生信息表
l 保存学生注册信息
表结构:
字段名称
类型
可否为空
长度
缺省值
主键
外键
外键参考表
说明
id
int
否
4
是
记录主键
username
varchar
否
20
姓名
password
varchar
否
20
是
密码
usermail
varchar
否
20
邮箱
usertel
varchar
否
20
电话
address
varchar
20
地址
subject:试卷科目表
l 保存各试卷信息
表结构:
字段名称
类型
可否为空
长度
缺省值
主键
外键
外键
参考表
说明
id
int
否
4
是
记录主键
subjectname
int
否
20
是
科目名称
singleper
int
20
单选分值
singlenumber
int
20
单选个数
testtime
int
20
考试时间
question:试题表
l 保存试题
表结构:
字段名称
类型
可否
为空
长度
缺省值
主键
外键
外键
参考表
说明
id
INTEGER
否
11
是
记录主键
Question
varchar
否
255
试题的题干
A
varchar
否
255
A选项
B
varchar
否
255
B选项
C
varchar
否
255
C选项
D
varchar
255
D选项
answer
varchar
10
正确答案
Weight
varchar
10
权重(可为为3档:难、 中、易)
subjectname
varchar
20
是
subject表的subjectname字段
所属试卷名
题目来源:试卷名必存在于试卷科目表中
权重:分为3档:1-难、 2-中、3-易
scores:考试成绩记录表
l 保存考试记录
表结构:
字段名称
类型
可否
为空
长度
缺省值
主键
外键
外键参考表
说明
id
int
否
11
是
记录主键
username
varchar
否
20
是
student表的username字段
考生姓名
subjectname
varchar
否
20
是
subject表的subjectname字段
试卷名
score
FLOAT
否
分数
endtime
varchar
考试日期
3.6.1 用户注册模块
此模块是添加新的用户,填写学生个人基本信息,包括姓名、性别、学号、班级,设定个人的原始密码,并添加到学生用户信息库中。
录入用户信息
接收信息
Yes
提示信息不能为空
信息为空?
No
用户已存在吗
提示用户已存在
Yes
No
注册成功
图3-3 用户登录模块执行流程
3.6.2 用户登录模块
该模块包括login.asp文件。如果用户要使用为注册用户提供的功能,那么在使用之前必须登录。用户只要输入用户名、密码就可以了。若用户输入的以上两项与数据库中保存的相符,则表明用户登录成功,可以开放全部前台子系统;如果不符,则登录失败。模块执行流程如图4-3所示。其中管理员、用户登录模块执行流程类似,文件为:INDEX.ASP . 具体的数据表结构和原代码参见附录B
登录信息录入
接收登录信息
Yes
用户名、密码为空?
提示用户名或密码不能为空
No
按照用户名查询
No
用户已存在吗
No
提示用户不存在
Yes
口令正确吗?
提示密码错误
No
Yes
已 登 录
图3-4 用户登录模块执行流程
3.6.3 在线测试模块
在此模块中包含查询成绩、考试、自动判卷等模块。
进入在线考试系统。在线测试是有时间限定的,学生要先登入自己的用户,用户可以查询成绩,再进行在线考试。一旦进入在线考试,系统就自动开始计时。时间到会自动交卷,然后进入判卷系统。考试过程中学生可以不按题目顺序答题。
用户登录
进入考场
查询成绩
返回
考试
交卷?
时间结束?
No
No
自动交卷
交卷?
No
Yes
自动阅卷显示成绩
退出考场
图3-3 在线考试流程图
3.6.6 评判卷模块
图3-6批判卷模块执行流程
考生答案
调用标准答案
Result[i][j]
初始化成绩
Mark=0
i - -
i- 0
no
j- 0
yes
answer[i][j]
Result[i][j]
j- -
yes
进入在线考试系统
Mark
3.7接口
用户接口
用户输入类型
输入内容
系统输出类型
输出内容
BeginTest.aspx
点击
测试选项选择、确定提交
数字
测试分数
CheckAchive.aspx
字符串
查询人姓名
表项
查询成绩相关信息
Member.aspx
字符串、点击
查询对象关键字、选定对象
表项
处理后结果
SetPaper.aspx
点击
选取试卷参数
数字
总分参数
SubjectManager.aspx
字符串、点击
插入内容、选定对象
表项
处理结果
AchiveView.aspx
无
无
表项
成绩总表
CreatUser.aspx
字符串
注册姓名及相关信息
字符串
出错信息
PsswRe.aspx
字符串
找回密码姓名
字符串
成功信息
Login.aspx
字符串
登录姓名、密码
页面
系统功能页
外部接口
接入
内容
接入方式
接口
接口支撑
BeginTest.aspx
题库
随机抽题结果+ DataList
Datatable
SQL Server 2000
CheckAchive.aspx
成绩库
查询结果+A DataTable
Datatable
SQL Server 2000
Member.aspx
用户表
A DataTable
A SqlDataSouce
SQL Server 2000
SetPaper.aspx
试卷参数
应用程序参数
Global.asax
Application operation
SubjectManager.aspx
题库
DataView
A SqlDataSouce
SQL Server 2000
AchiveView.aspx
成绩库
DataView
A SqlDataSouce
SQL Server 2000
CreatUser.aspx
用户库
A CreatUser
Aspnet_SQL
SQL Server 2000
PsswRe.aspx
用户库
A PasswordRecovy
Aspnet_SQL
SQL Server 2000
Login.aspx
用户库
A Login
Aspnet_SQL
SQL Server 2000
内部接口
BeginTest.
aspx
CheckAchive.
aspx
Member.aspx
SetPaper.aspx
SubjectManager.
aspx
AchiveView.aspx
CreatUser
.aspx
PsswRe.
aspx
PickPage
.aspx
BeginTest.aspx
接入
CheckAchive.aspx
接入
Member.aspx
接入
SetPaper.aspx
接入
SubjectManager.aspx
接入
AchiveView.aspx
PickPage.aspx
条件接入
条件接入
Login.aspx
接入
接入
条件接入
3.8 存储分配
3.9 注释设计
说明准备在本程序中安排的注释,如:
a. 加在模块首部的注释;
b. 加在各分枝点处的注释;
c. 对各变量的功能、范围、缺省条件等所加的注释;
d. 对使用的逻辑所加的注释等等。
3.10 限制条件
本系统通过将招生报名的相关信息采集到系统中,步步跟踪学员从报名-〉学习-〉考试-查询成绩整个过程,以供学员使用。本系统能够维护已经报名学习的学员信息,为培训中心提供准确的资料。条件与约束
l 技术约束:
要求采用B/S结构。界面要求使用汉字。
l 标准约束:
《网页编程规范》,《界面风格规范》
展开阅读全文