笔试考试系统需求分析
1. 引言
1.1. 背景
在当今社会随着科技的不断发展,大家对于互联网+这个词语并不陌生,近些年互联网+发展的速度超乎所有人的想象,互联网+教育的兴起也代表了教育改革的一个方向,但是目前远程教育的软件的种类不选,功能不是很完善,其中在线考试作为互联网+教育的一个重要的组成部分还有待去探索以及完善。
在线考试系统产生的原因是,我国高校教育信息化的建设,目的是充分利用学校的网络资源以及计算机资源实现无纸化考试以及考试资料不能持久化保存的不足。目前学校以及社会上 各种考试大多采取线下考试的方式进行,在这种方式下,一次考试大多需要经历以下步骤:考场安排、人工出题、考生考试、人工阅卷、成绩评估和试卷分析。这种方式不仅浪费了许多人力物力与财力,还不能够保证考试的的客观性与公正性,有时候还会因为人工阅卷的方式出现一些误差,然而在线考试的产生可以完美解决以上问题。进行在线考试,是现代化教育的一个具体实现,具有很重要的现实意义。可以实现教考分离以及教务工作的全自动化管理。本文主要对笔试考试系统的需求进行分析。
1.2.系统安装和环境配置
a) 本系统是基于B/S网络架构开发的软件,生产环境需要Windows Server或者Linux操作系统中以及sql server2008及以上版本数据库,安装.Net FrameWork 4.0运行时环境
b) 客户端需要支持Web访问。
2. 功能需求
2.1. 系统范围
本系统可以提供给老师对试题进行分类整理形成题库并持久化保存,试题一次录入,永久使用,相对于传统的纸质材料,将试题保存在云端即不占地方,而且有保障,使用起来更加方便。本系统可以提供给学生自由评测或者集体进行测评,老师可以根据学生考试的结果,对学生进行分类讲解,同时还可以对学生的错题进行统计将难点暴露出来,从而帮助老师提升教学的质量,另外学生还可以对错题进行回顾,从而达到复习的目的。
2.2. 系统体系结构
系统总体架构图:
系统总体架构描述:
a) 概述:笔试考试系统主要用于学生的考试评测,因此分成两个部分:学生操作部分、管理员(老师)操作部分。
b) 管理员(老师)操作部分
i. 题库管理部分,对题库名称进行添加、修改删除操作
ii. 题目管理部分,按照试题所属的题库进行添加,可以通过题目的所属题库名称,试题的难度等级进行查询,对题目的信息进行编辑以及删除操作。
iii. 试卷管理部分,可以按照试卷的名称以及生成时间对试卷的信息进行查询并且可以试卷的详情进行查看,另外可以对试卷进行编辑和删除操作(其中正在进行中的考试无对试卷进行编辑和删除操作 ),另外可对试卷的题目进行添加(题目的选项默认为4个,设置题目的分值,以及题目的正确选项,默认为多选);还可以自动组卷,从题库中抽取对应的比例完成自动组卷。
iv. 考试管理部分,实现对学生考试资格认证、取消、禁考、考试作废等功能设置。
v. 学生管理部分,考生信息的查看,学生信息的添加、修改、删除。
vi. 成绩统计部分,统计考生总体的得分情况,考试总体的最高分、最低分、各个分数段的积累人数,平均分,相关题目的错题率等,用表格和图形表示出相关数据。
c) 学生操作部分
i. 我的考试部分,进入我的考试可以看到相关考试的状态(进行中、已结束)正在进行的考试可以进入然后进行答题,已结束的考试可以查看成绩以及没到题目的相关信息。
ii. 我的错题,可以对考试中的错题进行查看。
iii. 我的信息,可以对自己的信息进行编辑,对用户密码进行修改。
2.3. 系统总体流程
a) 用户权限验证流程图:
描述:为了保证用户信息的安全性以及准确性,学生登录后只能访问学生对应模块以及功能,同样教师也只能访问教师对应功能以及界面,在教师对应功能界面需要对用户身份进行验证,身份不同不允许访问。
b) 系统完善流程图:
描述:
1) 用户划分:创建并划分各等级用户,管理员(老师)、学生。
2) 权限完善:针对不同用户,指定相应权限。
c) 操作流程图:
i. 学生:
描述:
1) 登录:根据上级管理员分配账号登录系统。
2) 我的信息:可以修改个人账户信息,包括手机号、QQ、登录密码等。
3) 我的考试:查看考试列表页面,已经结束的考试可以查看其考试结果及详情,正在进行的考试可u一进入考试,考试时间结束后系统会自动提交其考试结果。
ii. 管理员(老师)
描述:
1) 登录:根据系统内置账号登录系统。
2) 题库管理:对题库名称进行修改,都题库的题目数量进行查看 。
3) 题目管理:对题目进行添加、检索、编辑操作。
4) 组卷管理:对试卷进行手动添加、自动组卷、检索、编辑等操作。
5) 考试管理:对考试的基本信息进行查看、考试分数进行查看以及考试的发起操作。
6) 学生管理:实现对学生考试资格认证(考生账号密码的创建)、取消、禁考、考试作废等功能设置。
7) 成绩统计:统计考生总体的得分情况,考试总体的最高分、最低分、各个分数段的积累人数,平均分,相关题目的错题率等,用表格和图形表示出相关数据。
8) 对当前账号的密码进行修改。
2.4. 数据库设计
a) E-R图
b) 数据字典
表名Exam_User 用户信息表
字段名 |
数据类型 |
约束 |
描述 |
UserID |
int |
主键 自动增长 |
用户编号 |
UserType |
int |
不允许为空 |
用户类型0为学生1为管理员(老师) |
UserName |
Varchar(20) |
不允许为空 |
用户名 |
PassWord |
Varchar(32) |
不允许为空 |
登录密码 |
States |
bit |
不允许为空 |
账号状态 |
Phone |
Varchar(11) |
不允许为空 |
联系电话 |
RealName |
Nvarchar(4) |
不允许为空 |
真实姓名 |
CreateTime |
datetime |
不允许为空 |
添加时间 |
CreateName |
Nvarchar(4) |
不允许为空 |
添加人 |
表名 Exam_Library 题库信息表
字段名 |
数据类型 |
约束 |
描述 |
LibraryID |
int |
主键 自动增长 |
题库编号 |
Library_Name |
varchar(20) |
不允许为空 |
题库名称 |
Library_Remark |
Nvarchar(200) |
允许为空 |
题库备注 |
CreateTime |
datetime |
不允许为空 |
添加时间 |
UpdateTime |
datetime |
允许为空 |
更新时间 |
Library_States |
bit |
不允许为空 |
题库状态 |
表名 Exam_QuestionOptions 试题选项信息表
字段名 |
数据类型 |
约束 |
描述 |
OptionID |
int |
主键 自动增长 |
选项编号 |
QuestionID |
int |
外键 |
试题编号 |
OptionDescribe |
Varchar(200) |
不允许为空 |
选项详情 |
OptionCode |
Varchar(2) |
不允许为空 |
选项值 |
CreateTime |
datetime |
不允许为空 |
添加时间 |
UpdateTime |
datetime |
允许为空 |
更新时间 |
表名 Exam_Question 试题信息表
字段名 |
数据类型 |
约束 |
描述 |
QuestionID |
int |
主键 自动增长 |
题目编号 |
LibraryID |
int |
外键 |
题库编号 |
QuestionDescribe |
Varchar(200) |
不允许为空 |
试题描述 |
QuestionAnswer |
Varchar(10) |
不允许为空 |
试题答案 |
QuestionParse |
Varchar(200) |
允许为空 |
试题解析 |
Score |
int |
不允许为空 |
分值 |
表名 Exam_RuleDetail 组卷规则详情表
字段名 |
数据类型 |
约束 |
描述 |
RuleID |
int |
主键 自动增长 |
组卷规则明细编号 |
LibraryID |
int |
外键 |
题库编号 |
QuestionNum |
int |
不允许为空 |
题目数量 |
PaperRuleID |
int |
外键 |
试卷规则编号 |
表名 Exam_PaperRule 试卷规则表
字段名 |
数据类型 |
约束 |
描述 |
PaperRuleID |
int |
主键 自动增长 |
试卷规则编号 |
Rule_Name |
varchar(20) |
不允许为空 |
考试名称 |
RuleStartDate |
datetime |
不允许为空 |
考试开始时间 |
RuleEndDate |
datetime |
不允许为空 |
考试结束时间 |
Score |
Int |
不允许为空 |
试题分数 |
QuestionNum |
Int |
不允许为空 |
题目数量 |
表名 Exam_Paper 试卷信息表
字段名 |
数据类型 |
约束 |
描述 |
PaperID |
Int |
主键 自动增长 |
试卷编号 |
UserID |
Int |
外键 |
用户编号 |
RuleID |
Int |
外键 |
试卷规则编号 |
TotalScore |
Int |
不允许为空 |
试卷总分 |
UserScore |
Int |
不允许为空 |
考试分数 |
RealName |
Nvarchar(4) |
不允许为空 |
真实姓名 |
表名 Exam_Answer 答题信息表
字段名 |
数据类型 |
约束 |
描述 |
AnswerID |
Int |
主键 |
答题编号 |
UserID |
Int |
外键 |
用户编号 |
LibraryID |
int |
不允许为空 |
题库编号 |
PaperID |
int |
不允许为空 |
试卷编号 |
QuestionID |
Int |
不允许为空 |
试题编号 |
OptionID |
Int |
不允许为空 |
试题正确选项编号 |
AnswerOptionID |
Int |
不允许为空 |
答题选项编号 |
2.5.工作量估算
模块 |
功能 |
工作量 |
项目架构搭建 |
基础目录搭建 |
2工时 |
服务器环境配置 |
配置生产环境 |
2工时 |
登录模块 |
用户登录 |
2工时 |
授权验证 |
2工时 |
|
学生管理 |
学生考试授权、信息修改 |
4工时 |
题库管理 |
题库的创建修改以及查询 |
2工时 |
题目管理 |
题目的添加 |
4工时 |
题目的修改以及删除 |
4工时 |
|
试卷管理 |
试卷规则添加 |
4工时 |
试卷规则修改 |
4工时 |
|
成绩统计 |
学生考试成绩统计 |
4工时 |
我的考试 |
考试结果详情查看 |
4工时 |
学生参加考试 |
4工时 |
|
我的错题 |
学生错题查看 |
2工时 |
我的信息 |
学生个人信息查看及修改 |
2工时 |
工时合计 |
32工时 |
2.6 项目燃尽图