网上考试系统设计与实现Word文档格式.docx
- 文档编号:22108785
- 上传时间:2023-02-02
- 格式:DOCX
- 页数:46
- 大小:705.35KB
网上考试系统设计与实现Word文档格式.docx
《网上考试系统设计与实现Word文档格式.docx》由会员分享,可在线阅读,更多相关《网上考试系统设计与实现Word文档格式.docx(46页珍藏版)》请在冰豆网上搜索。
SSMFrame
第一章引言
1.1选题的目的与意义
在现如今的发展中,随着经济的进步网络覆盖越来越来广,基本的每个人都会有网络设备用来上网以及聊天,而且现在的学校里都以基本拥有一些机房用来上计算机基础课,所以在这个基础上,来开发一套网上考试系统是非常有必要,通过网上考试系统,在学校里可以减轻老师的负担,让老师可以不需要花费太多的时间在出卷以及审阅试卷上,而学生可以更加轻松的参加考试,不用再留着一沓厚厚的试卷,而是再需要查看过往试卷时,只需要上网就可以查看,极大地方便了老师以及学生。
1.2国内应用现状
根据本人的了解,目前网上考试在中学中的应用并不是很广泛,只有大学在这方面有应用,所以说在网络如此便捷的今天而且现在中学覆盖如此之广的前提下,网上考试系统是十分有必要普及的。
通过此系统可以极大的便捷广大师生的日常考试生活。
1.3可行性研究分析
软件开发首要分析的就是软件的开发是否具有可行,现将本系统开发的可行性进行详述的分析论证,主要对系统的经济、技术、法律、操作等四个方面进行分析研究。
1.3.1经济、技术、法律方面可行性分析
1.网上考试系统技术可行性分析
在各个大学之中,为了减轻老师以及学生的负担,网上考试系统有着极为广泛的应用,所以在如此广泛的应用之下,这样系统开发已经非常成熟以及稳定,所以在技术方面来说,这个系统可以进行开发。
2.网上考试系统经济可行性分析
网上考试只在学校中用来作为学生考试检测只用,只需要花费少量的人力来维护即可,所以在经济方面十分的可行。
3.网上考试系统法律可行性分析
网上考试系统的设计是为了帮助学校简化考试流程,解放老师以及学生的负担所用,最终系统并不用于商业方面,且本系统在开发过程完全自主进行的没有构成任何侵权以及违法行为,所以在法律方面该系统是可行的。
1.3.2不同角度分析系统操作的可行性
该系统通过网上调研以及学校之间的访问了解,以及结合自己的理解与实践来设计的各种系统交互,各个功能模块之间操作方便易用,在安全方面的设计比较全面,竟可能保护系统的安全以及稳定,系统框架模式完成开发,在后期维护以及管理方面十分便捷易懂。
1.4系统项目开发计划
1.项目开发所需的系统资源
本系统的开发以及运行需要软件以及硬件系统的支持,所以选择好的软硬件环境有助于软件的开发以及运行。
1)系统开发和运行所需软件
操作系统:
Windows7。
服务器操作系统:
WindowsServer2003。
网站发布服务器:
TOMCAT7.0。
开发工具:
Eclipse4.5.2。
浏览器:
GoogleChrome。
数据库:
MYSQL数据库。
2)硬件资源
CPU:
主频1G或以上的CPU。
内存:
最低配置1GB,建议使用2GB以上内存。
硬盘空间:
需要10G以上的硬盘空间。
2.成本预算
该系统用于学校的日常考试所用,只需少量的人工维护即可,所以成本方面不予考虑。
1.5项目所需开发工具及相关技术介绍
本系统所用到的开发工具及主要的技术如下。
1.Eclipse
Eclipse软件是一款功能强大的JAVA开发,Eclipse集成了大量的插件JAVA程序开发提供了极大地便捷。
2.Maven
Maven是一款用来构建JAVA项目的软件,它可以帮助我们便捷的管理项目,下载依赖包,以及Maven支持热部署和热编译,当我们修改代码时不需要重启服务器便可以被web服务器更新。
3.Layui
Layui是一款前段UI框架,他的体积较小,组件却比较丰富,是为了服务端程序员量身定做的一款前端UI框架,并不需要了解太多的前端工具以及配置,便可轻松的取得所需的元素以及交互。
4.Spring
Spring是一个用来简化JAVA开发的开源框架,Spring框架可以协助我们管理对象之间的依赖关系便于以后的代码维护,而且Spring还可以集成其他的框架,可以使其他的框架使用起来更加简洁方便。
5.Springmvc
Springmvc是一款mvc框架,使用springmvc可以简化基于mvc架构的web程序的开发。
6.MyBatis
Mybatis是一款持久层的开源框架,基于jdbc为底层开发的一款轻量级框架,可以更加便捷的管理数据交互。
7.Ajax
Ajax的出现是为了改善用户的体验,通过发送异步请求来更新部分页面数据,这个过程并不打断用户的操作,极大的提升了用户的体验感。
8.JSON
JSON是一种轻量级的数据交换格式,相较于xml,JSON文档的体积更小且解析速度更快。
9.Tomcat服务器
Tomcat服务器是一种轻量级的开源服务器,在用户量小的情景下被大家普遍的使用。
10.HTML
HTML是一种浏览器可解析的超文本标记语言。
11.JavaScript
JavaScript是一种网络脚本语言,常用于web场景下,用来为网页添加各种动态效果,可以给用户带来更好的体验。
第二章需求分析
2.1功能描述
网上考试系统根据三类用户分为三大模块,管理员可以对教师、学生的信息进行管理,对试卷信息进行管理,对试题信息进行管理,对科目信息管理以及修改密码等功能,
教师模块可以对试题、试卷信息管理以及修改密码等功能,学生模块可以参加考试、查看过往成绩以及修改密码等功能。
1.网上考试系统管理功能
系统管理员输入账号密码登入后台管理界面,管理员可以在此界面对各模块进行操作,如增加试题信息,管理员点击增加试题按钮之后,页面跳转到增加页面,管理员输入相关试题信息保存即可。
2.用户个人修改功能
各类型用户登录系统界面之后,在系统右上角点击之后弹出隐藏区域,用户该区域的修改密码按钮即可跳转到修改密码界面,在此界面用户输入新密码之后提交即可完成修改密码操作。
3.各类信息基本功能
用户通过系统页面点击各类模块后,右侧窗口便会将各个模块所能展示的信息展示出来,之后用户可以对个各模块展示的信息进行一系列必要的操作,例如:
学生点击试卷之后,在页面展示出各试卷信息之后,学生可以选择其中的试卷参加考试。
4.教师组卷功能
教师登录系统之后,在左侧导航栏选择增加试卷信息之后,右侧显示对应的界面,教师输入试卷名之后选择相应科目,之后将要加入试卷的题目点击添加,之后确认所存信息无误之后,点击提交即可。
5.学生答卷功能
学生登录系统之后,在左侧导航栏选择查看试卷信息之后右侧窗口显示出各试卷列表,学生选择其中一张试卷点击参加考试之后,系统从数据库取出相应题目信息之后,在新的页面将信息展示之后,学生再该页面进行作答,答完之后点击提交即可。
2.2系统用例图
绘制系统用例图将系统实体类表示出来,可以更加明了的体现各系统件关系以及各系统结构
网上考试系统后台管理系统用例图如图2.1所示。
图2.1后台管理系统用例图
教师管理用例图如图2.2所示。
图2.2教师管理用例图
学生管理用例图如图2.3所示。
图2.3学生用例图
管理员业务流程活动图如图2.4。
图2.4管理员业务主线活动图
教师业务活动图如图如图2.5。
图2.5教师业务主线活动图
学生业务活动图如图2.6。
图2.6学生业务主线活动图
2.3系统非功能性需求
该考试系统操作方式有着简单明了的特效,对于使用者并没有太高的要求,使用者可以快速掌握并且使用该系统。
实时性:
本考试系统可以实时的更新题库以及考试信息
代码的可读性:
程序的代码逻辑明确,思路清晰,有必要的需减少注释。
可维护性:
基于框架的设计代码十分简化便于后期的维护更新。
低耦合性:
基于框架的开发模式极大降低了代码之间的耦合性。
2.4数据库ER图
该考试系统分为管理员,学生,教师,试卷,课程,题目,答案7个实体类。
该系统整体E_R关系如下E_R图所示。
图2.7总体ER图
管理员实体包含ID,账号,密码,姓名,管理员E_R图如下图所示。
图2.8管理员实体
教师实体包含ID,用户名,密码,姓名,学历,所教课程ID,教师E_R图如下图所示。
图2.9教师实体
学生实体包含ID,用户名,密码,姓名,性别,入学日期,学生E_R图如下图所示。
图2.10学生实体
试卷实体包含ID,试卷名称,课程ID,创建时间,题目ID信息,试卷实体E_R图如下图所示。
图2.11试卷实体
题目信息实体类包含ID,题目内容,A,B,C,D,答案,课程ID,题目信息E_R图如下图所示。
图2.12题目信息实体
课程实体类包含ID,课程名,课程E_R图如下图所示。
图2.13课程实体
试卷答复实体类包含ID,学生ID,试卷ID,分数,试卷名称,考试时间,试卷答复E_R图如下图所示。
图2.14试卷答复实体
第三章系统设计
3.1软件结构
3.1.1软件结构图
网上考试系统总体分为三个模块,管理员模块,教师模块,学生模块以及下属的一些小模块,具体结构如下图所示。
图3.1系统结构图
3.1.2项目类的架构设计
1.项目名称为网上考试,架构设计如图3.2,3.3所示。
图3.2目录结构
图3.3目录结构(续)
2.工程中实体类说明如表3.1所示。
表3.1网上考试系统中实体类的说明
类名称
说明
Admin
该类为管理员及其属性类
Teacher
该类为教师及其属性类
Student
该类为学生及其属性类
Paper
该类为试卷及其属性类
Title
该类为题目及其属性类
Subject
该类为课程及其属性类
Result
该类为试卷答复及其属性类
3.项目中主要文件夹说明如表3.2所示。
表3.2网上考试系统工程的资源文件夹说明
文件夹名称
Web-INF
存放web.xml配置文件
image
存放程序中使用的图片资源
css
存放系统页面样式文件
admin
存放管理员管理页面
Scripts
存放js脚本文件
3.2数据库表的设计
通过对系统的分析研究,设计完系统的ER图后,接下来就是将系统ER图转换成数据库中的表,以便存储数据。
系统ER图转换成数据库表如下所示。
1.admin(管理员信息表)
admin表用于存储系统管理员信息数据,该表结构如表3.3所示。
表3.3管理员表admin
字段名
数据类型
长度
主键否
描述
Id
Int
10
是
管理员编号
username
varchar
20
否
用户名
Password
登录密码
Name
姓名
2.teacher(教师信息表)
teacher表用来存储教师信息数据,该表结构如表3.4所示。
表3.4教师表teacher
id
int
10
教师编号
用户名
password
name
education
学历
subjectid
课程ID
3.student(学生表)
student表用于存储学生信息数据,该表结构如表3.5所示。
表3.5学生表student
学生编号
username
姓名
sex
性别
Admissiondate
timestamp
入学日期
4.paper(试卷信息表)
paper表用于存储试卷信息数据,该表结构如表3.6所示。
表3.6试卷信息表paper
10
试卷编号
paperName
试卷名称
titleids
50
题目ID信息
5.title(题目信息表)
title表存储题目信息数据,该表结构如表3.7所示。
表3.7题目信息表title
题目编号
content
100
题目信息
A
A选项信息
B
B选项信息
C
C选项信息
D
D选项信息
answer
答案
subid
6.subject(课程信息表)
subject表用来存储课程信息数据,表结构如表3.8所示。
表3.8课程信息表subject
课程编号
subjectname
课程名称
7.result(试卷答复信息表)
result表用来存储试卷答复信息数据,表结构如表3.9所示。
表3.9卷答复信息表result
id
试卷答复编号
stuid
学生ID
paperid
试卷ID
score
分数
testdate
考试时间
3.3数据库表的架构设计图表
网上考试系统各个表结构以及之间的关系如下图所示
图3.4数据库表的结构图
第四章系统实现
4.1用户登录模块
4.1.1用户登录界面
首先用户在浏览器地址栏中输入:
http:
//localhost:
8080/examination/login.html点击回车键之后,页面跳转到登录界面。
在登录界面中用户需要输入账号,密码,验证码,以及选择角色之后即可点击登录,提交登陆之后系统会调用后台数据的相关数据信息与用户输入的账号密码进行比对,如果用户输入的账号密码与数据库中所保存的相同则登录成功并且跳转到相关的主界面,如果用户输入的账号密码与数据库的数据匹配失败,则登录页面会展示相关的提示信息提醒用户进行修改后再次登录。
登录页面如图4.1.1所示。
图4.1用户登录页面
修改密码功能:
用户登录到主界面之后,点击右上角的用户名之后弹出下拉框选择修改密码按钮,页面跳转到修改密码界面,在该界面用户输入新密码之后点击保存,如果用户俩次输入的新密码不同,页面会提示用户俩次输入的密码不匹配,请重新输入密码,用户重新输入之后点击提交即可。
修改密码页面如图4.1.2所示。
图4.2用户修改密码页面
4.1.2用户登录的设计与实现
用户分为三类:
管理员,教师以及学生,管理员可以管理课程信息,试卷信息,试题信息,教师信息以及学生信息等一系列操作,教师可以管理试卷信息,试题信息等一系列操作,学生可以查看过往考试信息以及参加考试。
这些操作都需要用户登录之后才可以进行操作,用户输入相关的登录信息之后点击登录,系统将提交的信息与后端数据库中的数据进行比对,匹配成功则成功登录且进入到相关的主界面,匹配失败则登录页面提示用户登录失败,修改相关信息再次提交即可。
1.用户登录模块处理流程
1)用户打开登录页面。
2)按照提示的要求输入账号和密码并提交。
3)系统后台对输入的数据进行用户数据查询。
4)若与后台查询的数据不匹配则登录失败且页面提示相关信息给用户。
5)若与后台查询到的
6)模块结束。
用户登录模块流程图如图4.2所示。
是否
图4.3用户登录流程图
4.1.3用户登录模块相关代码
1.service层相关处理代码
publicObjectlogin(Stringname,Stringpassword,Stringrole)throwsNameException,PasswordException{
if(name==null||name.trim().isEmpty()){
thrownewNameException("
用户名不能为空"
);
}
if(password==null||password.trim().isEmpty()){
thrownewPasswordException("
密码不能为空"
if(("
管理员"
).equals(role)){
Admina=adao.findByName(name);
if(a==null){
thrownewNameException("
用户不存在"
}
if(a.getPassword().equals(password)){
returna;
}else{
thrownewPasswordException("
密码错误"
教师"
Teachert=tdao.findByName(name);
if(t==null){
if(t.getPassword().equals(password)){
returnt;
学生"
Students=sdao.findByName(name);
if(s==null){
if(s.getPassword().equals(password)){
returns;
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 网上 考试 系统 设计 实现
![提示](https://static.bdocx.com/images/bang_tan.gif)