毕业设计springboot《学生手册》线上考试系统设计与实现

摘 要

随着信息时代的来临,过去的传统管理方式缺点逐渐暴露,对过去的传统管理方式的缺点进行分析,采取计算机方式构建《学生手册》线上考试系统设计与实现。本文通过课题背景、课题目的及意义相关技术,提出了一种考试试卷、考试试题、在线考试等于一体的系统构建方案。
本文通过采用B/S架构,MySQL数据库以及java语言、springboot框架,结合国内线上管理现状,开发了一个基于springboot的《学生手册》线上考试系统。系统分为多个功能模块:学生信息、辅导员信息、学生成绩、考试试卷管、考试试题、在线考试等。通过系统测试,本系统实现了系统设计目标,相对于人工管理方式,本系统有效的减少了学校的经济投入,并且大幅度提升了线上考试的效率。
关键词:《学生手册》线上考试系统;java语言;springboot框架;MySQL数据库。

Abstract

With the advent of the information age, the shortcomings of traditional management methods in the past have gradually been exposed. Analyzing the shortcomings of traditional management methods in the past, a computer based online exam system for the “Student Handbook” has been constructed. This article proposes a system construction scheme that integrates exam paper management, exam questions, and online exams based on the background, purpose, and significance of the project.
This article develops a “Student Handbook” online exam system based on Springboot, using the B/S architecture, MySQL database, Java language, and Springboot framework, combined with the current situation of online management in China. The system is divided into multiple functional modules: student information, counselor information, student grades, exam paper management, exam questions, online exams, etc. Through system testing, this system has achieved its design goals. Compared to manual management, this system effectively reduces the economic investment of the school and significantly improves the efficiency of online exams.
Keywords: “Student Handbook” online exam system; Java language; Springboot framework; MySQL database.

目 录

摘 要 I
Abstract II

1 绪 论 1
1.1 课题背景 1
1.2 课题目的及意义 1
1.3 课题研究现状 2
1.4 论文主要工作内容 3
2 系统关键技术 4
2.1 SpringBoot框架 4
2.2 MySQL数据库 4
2.3 B/S架构 5
2.4 Java语言 5
3 系统分析 7
3.1 可行性分析 7
3.1.1 技术可行性 7
3.1.2 操作可行性 7
3.1.3 经济可行性 7
3.1.4 法律可行性 7
3.2 系统性能分析 8
3.2.1 系统安全性 8
3.2.2 数据完整性 8
3.3 系统功能分析 8
3.4 系统流程分析 10
3.4.1 数据开发流程 10
3.4.2 用户登录流程 10
3.4.3 系统操作流程 11
3.4.4 添加信息流程 12
3.4.5 修改信息流程 12
3.4.6 删除信息流程 13
4 系统设计 14
4.1 系统概要 14
4.2 系统结构设计 14
4.3数据库设计 15
4.3.1 数据库设计原则 15
4.3.2 数据库实体 15
4.3.2 数据库表设计 16
4.4 系统时序图 18
4.4.1 注册时序图 18
4.4.2 登录时序图 19
4.4.3 管理员修改用户信息时序图 19
4.4.4 管理员管理系统信息时序图 20
5 系统的实现 21
5.1 基本任务 21
5.2 前台功能模块 21
5.3 管理员功能模块 24
5.4 学生功能模块 28
5.5 辅导员功能模块 28
6 系统测试 31
6.1 测试环境 31
6.2 测试目的 31
6.3 测试概述 31
6.4 单元测试 33
6.4.1 注册测试 33
6.4.2 登录测试 33
6.5 集成测试 34
结 论 35
参考文献 36
致 谢 37

1 绪 论

1.1课题背景
随着网络的高速发展,网络技术的应用越来越广泛,信息化技术发展迅速,计算机管理系统优势逐渐体现,并且大量的计算机进入了千家万户。《学生手册》线上考试系统成为信息时代的一个重要代表,由于其涉及的数据量过大,过去的人工管理方式已经很难再维持下去,所以引用了信息化技术来进行管理[1]。计算机系统管理方式替代了人工管理方式,相对过去人工管理方式,利用计算机进行《学生手册》线上考试系统查询便利、信息准确率高、成本降低、效率提高、本次系统开发主要以《学生手册》 线上考试为对象,根据功能需求开发整个信息化系统。

1.2 课题目的及意义
随着信息化管理技术不断发展,传统的《学生手册》考试已经无法适应,效率与预期相差甚远,因此需要开发一套操作方便,效率较高的《学生手册》线上考试系统。当前,21新世纪,人们已经进入了信息时代,人们获取信息的方式大大增加,摆脱了传统的报纸、电视、广播等媒体,而是从各种网络、自媒体平台上获取信息,这就导致日常生活中产生的数据信息十分巨大,尤其是对于《学生手册》 线上考试管理,更需要大量的信息[2]。本系统能为学生、辅导员提供一个《学生手册》 线上考试管理平台,就能够快速有效的帮助学生在线查询考试试卷、通知公告等,辅导员发布《学生手册》线上考试系统设计与实现、考试试题、考试试卷、在线考试等,并且可以让管理员能够轻松效率地添加所有的信息。系统开发的意义主要在于两个方面,一方面,系统上线后,能够为学生与辅导员带来很大便利,《学生手册》 线上考试管理涉及的数据量较大,要求精度高,采用计算机系统能够很好满足此需求,并且随着目前电脑的普及,方便用户使用。另一方面,通过自己动手操作设计系统,不仅可以提升自己的学习兴趣,也是在进入社会之前的一次很好的锻炼机会。

1.3课题研究现状
其实,相关的研究在国外已经开展了很多年了,将《学生手册》 线上考试与信息技术相融合的理念在欧美等发达国家的学校建设中很受欢迎美国开放的Ravel平台,能够在电脑上实现远程考试试题、考试试卷、在线考试等功能,极大的丰富了线上管理模式。于是希望通过互联网技术保障实现线上考试系统[3]。但现如今,也有许多国外学者提出,信息化时代带来的局面乱象越来越多,日益增长的线上考试平台让人应接不暇,需一场数字化的现代化的转型,建立可靠的线上考试系统,实现数字管理。
随着网上线上考试不断的增加,越来越多的人们开始加入了网上线上考试大潮中,但是我国网上线上考试效果低下,而且出错率也很高。因此大家迫切需要一款更加专业化的线上考试系统,设计该系统主要目的是为了方便用户可以有一个非常好的《学线上考试管理平台,管理员也可以通过该系统进行更加方便的管理操作。

1.4 论文主要工作内容
本文设计并实现了一个《学生手册》线上考试系统,主要包括以下具体工作内容:
(1)参考国内外相关系统开展了系统的需求分析,明确了学生信息、辅导员信息、学生成绩、考试试题、考试试卷、在线考试等主要功能需求;
(2)设计系统技术方案,采用java语言,选用MySQL数据库、B/S架构、springboot框架来设计并实现本系统。
(3)具体介绍了各个功能模块的设计与实现。
(4)对系统的注册、登录等功能进行了全面的测试[4]。

2 系统关键技术

2.1 SpringBoot框架
该框架拥有自己独特的配置方式,网站开发人员不需要再进行大量重复的样板 式的配置工作,开箱即用,不会生成额外代码量,不需要进行XML文件的配置。
2.2 MySQL数据库
数据库系统是一个进行数据存储的系统,数据库就是这个系统的库,用来存放通过系统的数据,数据库在开发人员的日常生活中,占据了很大的地位。因为使用数据可以使自己系统存储数据更加方便、快捷。
MySQL之所以受到广大开发人员的欢迎,主要原因使因为数据库的使用是免费的。最开始的数据库研发出后,是需要收费的,但是随着MySQL的出现和不断更新,越来越多的用户去使用这款软件。首先它是开源且免费的,这样大大减少了开发的成本;第二MySQL可以在多个平台上使用,在MAC、Windows和Linux上都可以使用。其次它的性能也是十分强大的,性价比极高。最后,MySQL相比其他数据库语言来说,更加简单易于上手;可以与很多平台搭建联系,比如本文使用的Java 。
2.3 B/S架构
B/S架构,也就是浏览器/Server (Browser/Server),是在因特网技术发展过程中, C/S架构的一种改变和完善。采用该架构,可以充分利用 WWW的浏览器来完成用户接口,而在前端完成交易的部分业务,而服务端则完成了交易的基本功能。这就构成了3- tier的构造。B/S体系架构,采用了日益完善的 WWW技术,将各种 Script、 VBScript、 JavaScript、 ActiveX等技术相融合,通过一款普通的网络浏览器,既可以完成一些复杂的特定程序,又可以节省大量的资源,又可以节省大量的资源。由于视窗98/2000把浏览器技术移植到了操作系统中,所以这个架构现在已经是目前最受欢迎的应用程序架构了。
B/S架构,也就是浏览/伺服器(Browser/Server)架构,是指仅有一个伺服器(Server)被安装,而客户机则使用浏览(Browse)来执行该软件。这是因特网技术出现后, C/S架构的一种改变与完善。它充分运用日益完善的 WWW技术,并将各种 Script、 JavaScript、 ActiveX等 Script技术相融合,形成了一个崭新的体系结构技术。
2.4 Java语言
Java 最大的两个特点就是功能强大和简单易用。Java可以让程序员进行复杂的编程而不必为储存管理对象等问题所烦恼,把精力和时间更多的放在研发与设计上,极大地提高了开发者的工作效率和工作热情。

3 系统分析

3.1 可行性分析
线上考试系统主要目标是实现网上的相关信息管理服务。在确定了目标后,我们从以下四方面对能否实现本系统目标进行可行性分析[5]。
3.1.1 技术可行性
技术上的可操作性是项目建设顺利进行的一个关键因素,技术措施必须达到要求,方能使项目顺利进行。该方案使用了开放源码的代码,并使用 java等技术,对软件的设计具有适度的困难和对电脑的硬件需求。所有的技术都很容易使用。该项目具有技术上的可行性[6]。
3.1.2 操作可行性
当今社会,电脑已经是耳熟能详的存在了,绝大部分用户都可以通过电脑轻松操作本系统。由此可知,我们的管理系统对于绝大部分用户来说,操作是完全可行的,并不存在操作上的盲区[7]。
3.1.3 经济可行性
本系统所需要用到的所以的工具都是开源,不收费的,并且本系统因为不具有太过于复杂的结构,用户维护系统的费用也不高。所以,本系统的经济可行性是可行的。
3.1.4 法律可行性
此《学生手册》线上考试系统是自己设计的管理系统,具有很大的实际意义。因为无论是软件还是数据库,采用的都是开源代码,因此这个系统的开发和设计,并不存在侵权等问题,在法律上完全具有可行性。
综上所述,《学生手册》线上考试系统设计与实现在技术、经济、操作和法律上都具有很高的可行性,开发此程序是可行的[8]。
3.2 系统性能分析
3.2.1 系统安全性
线上考试管理制度必须由领导机构严格执行。具体要求如下:
(1)如果要使用线上考试系统,必须先注册才能进行登录。未获许可的使用者,不可以任意的方法,进入或浏览系统资讯及资料,因而本系统将会得到保护。
(2)在不同司法管辖区的具体实施。使用其他权限登录时,无法跳过此操作[9]。
(3)如果专门应用,该系统将包含许多必须保密的数据和信息。该系统存在系统漏洞,发布此信息将给用户造成重大损失。因此,我们充分保证了该规则和系统的发展趋势。
3.2.2 数据完整性
(1)必须对所有的数据进行详尽的记载,而该信息的内容不得为空白。
(2)各种资料的关联一定要恰当。
(3)在不同的档案中,同一资料资讯应该互相相符[10]。
3.3 系统功能分析
线上考试系统主要有管理员和学生、辅导员,三个功能模块:管理员模块、学生、辅导员模块。以下将对这三个功能的作用进行详细的剖析[11]。
管理员模块:管理员在系统中的是核心用户,管理员登录后,可以对后台系统进行管理。主要功能有:系统首页、个人中心、学生管理、辅导员管理、学生成绩管理、考试试卷管理、考试试题管理、系统管理、在线考试管理等功能。管理员用例如图3-1所示。

在这里插入图片描述

图3-1 管理员用例图

学生:学生进入系统可以对系统首页、个人中心、学生成绩管理等进行操作。学生用例如图3-2所示。
在这里插入图片描述

图3-2学生用例图

辅导员:辅导员进入系统可以对系统首页、个人中心、学生成绩管理、考试试题管理、考试试卷管理、在线考试管理等进行操作。辅导员用例如图3-3所示。
在这里插入图片描述

图3-3辅导员用例图

3.4 系统流程分析
3.4.1 数据开发流程
《学生手册》线上考试系统开发时,首先对此系统进行需求分析,进而对系统进行模块、编码等详细设计总体的设计规划,设计系统功能模块,数据库的选择等,本系统的开发流程如图3-4所示
在这里插入图片描述

图3-4系统开发流程图
3.4.2 用户登录流程
要想利用这个软件来进行系统的安全管理,首先需要登录到该软件中。如图3-5所示。

在这里插入图片描述

图3-5登录流程图
3.4.3 系统操作流程
用户登录系统时需要输入正确的正确的用户名和密码,数据库在进行匹配核实后匹配结果正确才能进入系统,若错误则提示用户名或密码错误,即无法登录。操作流程如图3-6所示。

在这里插入图片描述

图3-6 系统操作流程图
3.4.4 添加信息流程
管理员可以添加信息,用户添加可以自己权限内的信息,输入信息后,要想利用这个软件来进行系统的安全管理,首先需要登录到该软件中。添加信息流程如图3-7所示。
在这里插入图片描述

图3-7 添加信息流程图

3.4.5 修改信息流程

管理员可以修改信息,用户可以修改自己权限内的信息,首先进入修改信息界面,输入需要修改信息,在系统进行判定为正确和合规后修改成功,并将数据更新至数据库。信息不合法则修改失败,重新输入。修改信息流程图如图3-8所示。
在这里插入图片描述

图3-8 修改信息流程图
3.4.6 删除信息流程
管理员可以删除信息,点击删除按钮,系统会提示是否删除信息,点击确定,则信息被删除,数据库中的信息随之删除,删除信息流程图如图3-9所示。
在这里插入图片描述

图3-9 删除信息流程图

4 系统设计

4.1 系统概要
在对该方法进行了系统的解析之后,进行了一个包括了整体和细节的记性系统的设计。整体的设计仅仅是一个整体的方案,通过整体的方案,我们可以将整个体系中的某些部分分割开来,比如文件,文档,数据等等。经过整体的规划,我们可以将这些软件的各个部分,都分成了不同的部分。不过这仅仅是一种初步的分类,并未实际实施。
总体来说,这是一个初步的方案,也是一个工程。我们可以进行多种方案的综合,在比较中,从性能、成本、效益三方面进行比较,最后得出最佳的产品,选用好的总体设计能够减少成本,提高学校效益,从这一点来讲,整体设计非常重要的。
《学生手册》线上考试系统工作原理图如图4-1所示:
在这里插入图片描述

图4-1 系统工作原理图

4.2 系统结构设计
构图是系统的体系结构,体系结构是体系结构体系的一部分,体系结构体系是体系结构体系的重要组成部分。《学生手册》线上考试系统的整体结构设计如图4-2所示。
在这里插入图片描述

图4-2 系统整体架构图
4.3数据库设计
在电脑资讯系统中,以资料库为基础。当前计算机体系中最重要的是数据库。数据库的发展好坏,直接关系到整个系统的性能与运行效率。
4.3.1 数据库设计原则
利用 ER模式进行数据库的概念结构设计。E-R模型法的组成元素有:实体、属性、联系,E-R模型用E-R图表示,是一个关于工作环境中的事件的信息,而一个属性是关于物理特征的说明。在系统的设计过程中,资料库发挥了关键作用。下面设计出这几个关键实体的实体—关系图。
4.3.2 数据库实体
在一个资料模式中,一个被称作“实例”的实体,与真实的“事件”或者“物体”相匹配,可以与其它物体区分开来。例如,公司中的每个员工,家里中的每个家具。
本系统的E-R图如下图所示:
1、学生信息实体图如图4-3所示:
在这里插入图片描述

图4-3学生信息实体图
2、考试试题实体图如图4-4所示:

在这里插入图片描述

图4-4考试试题实体图
3、辅导员信息实体图如图4-5所示:

在这里插入图片描述

图4-5辅导员信息实体图
4、学生成绩实体图如图4-6所示:
在这里插入图片描述

图4-6学生成绩实体图

4.3.3 数据库表设计
《学生手册》线上考试系统有一个内部数据库。对于数据库系统设计一般基于对我国现有学校数据库系统进行优化管理的操作系统。通常广泛采用的学校数据库资源管理软件系统主要类型包括mysqlserver、mysql、oracle等。该管理系统主要采用了mysql大型数据库资源管理软件。
下表将详细列出《学生手册》线上考试系统设计与实现的数据库中所有列表。每一份量表的设计成果列出数据库的表信息属于设计的一部分,下面介绍数据库中的各个表的详细信息。

表4-1:学生成绩
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键
主键

addtime timestamp 创建时间 CURRENT_TIMESTAMP
nianfen varchar 200 年份
xueqi varchar 200 学期
kemu varchar 200 科目
fenshu int 分数
banjipaiming varchar 200 班级排名
xuehao varchar 200 学号
xingming varchar 200 姓名
banji varchar 200 班级
fudaoyuanhao varchar 200 辅导员号
fudaoyuan varchar 200 辅导员
dengjishijian datetime 登记时间

表4-2:学生
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键
主键

addtime timestamp 创建时间 CURRENT_TIMESTAMP
xuehao varchar 200 学号
xingming varchar 200 姓名
mima varchar 200 密码
xingbie varchar 200 性别
shouji varchar 200 手机
banji varchar 200 班级

表4-3:用户表
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键
主键

username varchar 100 用户名
password varchar 100 密码
role varchar 100 角色 管理员
addtime timestamp 新增时间 CURRENT_TIMESTAMP

表4-4:token表
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键
主键

userid bigint 用户id
username varchar 100 用户名
tablename varchar 100 表名
role varchar 100 角色
token varchar 200 密码
addtime timestamp 新增时间 CURRENT_TIMESTAMP
expiratedtime timestamp 过期时间 CURRENT_TIMESTAMP

表4-5:通知公告
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键
主键

addtime timestamp 创建时间 CURRENT_TIMESTAMP
title varchar 200 标题
introduction longtext 4294967295 简介
picture longtext 4294967295 图片
content longtext 4294967295 内容

表4-6:辅导员
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键
主键

addtime timestamp 创建时间 CURRENT_TIMESTAMP
fudaoyuanhao varchar 200 辅导员号
mima varchar 200 密码
fudaoyuan varchar 200 辅导员
xingbie varchar 200 性别
zhicheng varchar 200 职称
dianhua varchar 200 电话
zhaopian longtext 4294967295 照片

表4-7:在线考试记录表
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键
主键

addtime timestamp 创建时间 CURRENT_TIMESTAMP
userid bigint 用户id
username varchar 200 用户名
paperid bigint 考试试卷id(外键)
papername varchar 200 考试试卷名称
questionid bigint 考试试题id(外键)
questionname varchar 200 考试试题名称
options longtext 4294967295 选项,json字符串
score bigint 分值 0
answer varchar 200 正确答案
analysis longtext 4294967295 答案解析
myscore bigint 考试试题得分 0
myanswer varchar 200 考生答案

表4-8:考试试题
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键
主键

addtime timestamp 创建时间 CURRENT_TIMESTAMP
paperid bigint 所属考试试卷id(外键)
papername varchar 200 考试试卷名称
questionname varchar 200 考试试题名称
options longtext 4294967295 选项,json字符串
score bigint 分值 0
answer varchar 200 正确答案
analysis longtext 4294967295 答案解析
type bigint 考试试题类型,0:单选题 1:多选题 2:判断题 3:填空题(暂不考虑多项填空) 0
sequence bigint 考试试题排序,值越大排越前面 100

表4-9:考试试卷表
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键
主键

addtime timestamp 创建时间 CURRENT_TIMESTAMP
name varchar 200 考试试卷名称
time int 在线考试时长(分钟)
status int 考试试卷状态 0

表4-10:配置文件
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键
主键

name varchar 100 配置参数名称
value varchar 100 配置参数值

4.4 系统时序图
对于系统设计的详细描述主要采用了时序图的方式,时序图描述了对象之间传递消息的时间顺序, 用来表示用例中的行为顺序, 是强调消息时间顺序的交互图; 时序图描述的事物: 时序图描述系统中类和类之间的交互, 将这些交互建模成消息交换, 时序图描述了类以及类之间的交换以完成的期望行为的消息, 时序图中每条消息都代表了类的一个操作或者引起状态机改变的触发事件。
4.4.1 注册时序图
注册时序图,如图4-1所示。
在这里插入图片描述

图4-1 注册时序图
4.4.2 登录时序图
登录时序图如图4-2所示。
在这里插入图片描述
图4-2 登录时序图
4.4.3 管理员修改用户信息时序图
管理员修改用户信息时序图如图4-3所示。
在这里插入图片描述
图4-3 管理员修改用户信息时序图
4.4.4 管理员管理系统信息时序图
管理员管理系统信息时序图如图4-4所示。
在这里插入图片描述

图4-4管理员管理系统信息时序图

5 系统的实现

5.1 基本任务
该系统的实施方式是指能精确地描绘要实施的对象,以便后续的代码可以按照系统的实际情况用编程的方式来写相应的软件。
系统实现的基本任务如下:
(1)模块的数据结构进行设计,在之前的需求分析、概要设计中更加明确地界定更加含糊的资料类型。
(2)更加精确地对每个模板进行了更加细致的算法设计,并对每个组件的处理过程进行了算法的说明。
(3)执行实体化的资料库。
(4)其他设计:有时候,还要考虑到系统的不同,如:输入/输出格式设计、代码设计、人机对话设计等。
(5)对系统的说明书进行编写。
(6)评审:审查程序中的规则和数据库的实体构造。
系统结构可分为具有三个不同功能的包的java源代码、系统的数据库文件、界面代码。java源代码中三个不同包分别为控制、逻辑、缩写层,分别控制也不同的程序具有不同的性质。有了他们就能对系统的数据进行增删改查,完成界面的显示和数据统计,产生随机数和属性文件的读取。定时器类、翻页工具类等,包含了日期转换、字符串处理、获取编译环境等信息。这些类极大地方便了Java编程,日常开发中,经常要用来这些类。
5.2 前台功能模块
当游客打开系统的网址后,首先看到的就是首页界面。在这里,游客能够看到《学生手册》线上考试系统的导航条显示首页、考试试卷、通知公告、后台管理、个人中心。系统首页界面如图5-1所示:
在这里插入图片描述

图5-1 系统首页界面

在系统首页点击中间的注册/登录按钮,然后页面跳转到注册登录界面,后来输入信息完成后,单击注册或者登录操作,如图5-2所示:

在这里插入图片描述
在这里插入图片描述

图5-2学生注册、学生登录界面

学生点考试试卷,在考试试卷页面查看考试试卷名称、在线考试时长(分钟)、考试试卷状态,如果有需要可以进行在线考试等操作;如图5-3所示:
在这里插入图片描述

图5-3考试试卷页面

在个人中心页面可以输入个人详细信息,进行信息更新操作,还可以对在线考试记录、错题本进行详细操作,如图5-4所示:
在这里插入图片描述

图5-4个人中心界面

5.3 管理员功能模块
管理员登录,通过登录页面填写用户名、密码、角色,点击登录,如图5-5所示。
在这里插入图片描述
图5-5管理员登录界面图

管理员登录进入《学生手册》线上考试系统可以对系统首页、个人中心、学生管理、辅导员管理、学生成绩管理、考试试卷管理、考试试题管理、系统管理、在线考试管理等功能,进行详细操作,如图5-6所示。
在这里插入图片描述

图5-6 管理员功能界面图

管理员点击学生管理,在学生管理页面中可以对学号、姓名、性别、手机、班级等信息,并可根据需要进行查询或者新增、删除学生信息等操作,如图5-7所示。
在这里插入图片描述

图5-7学生管理界面图

管理员点击辅导员管理,在辅导员管理页面中可以对辅导员号、辅导员、性别、职称、电话、照片等信息,并可根据需要进行查询或者新增、删除辅导员信息等操作,如图5-8所示。
在这里插入图片描述

图5-8辅导员管理界面图

管理员点击学生成绩管理,在学生成绩管理页面中可以对年份、学期、科目、分数、班级排名、学号、姓名、班级、辅导员号、辅导员、登记时间等信息,并可根据需要进行查询、新增、导出、统计报表或者删除学生成绩等操作,如图5-9所示。
在这里插入图片描述

图5-9学生成绩管理界面图

管理员点击考试试卷管理,在考试试卷管理页面中可以对考试试卷名称、在线考试时长(分钟)、考试试卷状态等信息,并可根据需要进行查询、新增或者删除考试试卷等操作,如图5-10所示。
在这里插入图片描述

图5-10考试试卷管理界面图

管理员点击考试试题管理,在考试试题管理页面中可以对考试试卷、考试试题名称、分值、答案、类型等信息,并可根据需要进行查询、新增、导出或者删除考试试题等操作,如图5-11所示。
在这里插入图片描述

图5-11考试试题管理界面图

管理员登录进入《学生手册》线上考试系统进行不同模块信息管理的总体流程图如图5-12所示。

在这里插入图片描述

图5-12管理员模块总体流程图

5.4 学生功能模块
学生点击后台管理,然后页面跳转到《学生手册》线上考试系统可以查看系统首页、个人中心、学生成绩管理等内容,如图5-13所示。
在这里插入图片描述

图5-13学生功能界面图

学生功能模块操作流程图如图5-14所示:
在这里插入图片描述

图5-14学生功能模块操作流程图

5.5 辅导员功能模块
在系统首页点击中间的注册/登录按钮,然后页面跳转到注册登录界面,后来输入信息完成后,单击注册或者登录操作,如图5-15所示:

在这里插入图片描述

图5-15辅导员注册、辅导员登录界面

辅导员登录进入《学生手册》线上考试系统可以查看系统首页、个人中心、学生成绩管理、考试试题管理、考试试卷管理、在线考试管理等内容,如图5-16所示。
在这里插入图片描述

图5-16辅导员功能界面图

辅导员功能模块操作流程图如图5-17所示:
在这里插入图片描述

图5-17辅导员功能模块操作流程图

6 系统测试

6.1 测试环境
《学生手册》线上考试系统的测试环境如表6-1所示。
表6-1 测试环境信息表
分类 名称 版本
操作系统 Windows 7
数据库 MySQL 8.0
浏览器 Chrome 87.0.4280.88
6.2 测试目的
进行软件测试主要是为了验证产品或者系统是否完成了实现功能,测试能够防止系统出现错误,还能降低开发成本减少不必要的花销,其次测试的好处包括防止错误、降低开发成本和提高性能[12]。其次,通过软件的检测可以对项目的安全性进行鉴别。向开发人员提供软件测试的反馈,并为项目的安全性评价提供必要的资料。此外,软件的检测保证在正式发布之前能够满足在线要求。在每一个开发过程中不断跟踪和对软件的测试。还有,软件测试还能保证系统到达预期的标准,从而能够尽快上线。
在本系统中,主要测试前台和后台,分别对系统的不同模块进行测试,比如用户登录等功能是否实现,实现过程中是否出现问题等。是否能够处理不同的数据。前台主要测试:用户界面的实现和不同界面的交互情况,后台主要测试系统经过管理后前后台链接是否顺畅,前台界面是否及时更新,更新是有误[13]。
6.3 测试概述
1.测试的原则
(1)测试应该以用户的需要为基础。从用户的观点来考虑,最大的问题是软件不能达到用户的预期。有时候,软件产品的测试结果非常完美,但却不是客户最终想要的产品,那么软件产品的开发就是失败的,而测试工作也是没有任何意义的。因此测试应依照客户的需求配置环境,并且按照客户的使用习惯进行测试并评价结果。
(2)尽早测试。由于软件开发过程中的各种不同的环节都会出现问题,所以要及早进行测试,将软件的检测工作渗透到整个软件的整个寿命过程,使测试者可以及早地察觉并防止这些缺陷。减少了 bug修理费用。
(3)穷尽测试是不可能的。因为受时间和财力的制约,无法实现所有不同的输入和输出的综合测试,测试者能够基于测试的风险和轻重缓急等来决定测试的重点,由此来进行测试,并在测试成本、风险和收益间找到一个平衡点。
这是因为测试者不能按时进行测试案例的升级,也可能是因为他们太了解测试案例和目标而导致的。
2.测试的方法
测试方法主要有人工测试和机器测试两种测试方法。
(1)人工测试
人工测试又称代码复审,包括个人复查、走查、会审三种方法。
(2)机器测试
计算机检测有两种方式:黑盒测试和白盒测试。黑盒测试:从外观上找出它的缺点和错误。黑盒测试是在编程接口上进行的,它仅仅是为了检验样品的执行情况,而不是根据要求规范的要求进行;白盒测试:对软件的内在构造进行了剖析,即在编程接口上进行了试验,其目的仅仅在于检验样品的执行情况,而不能满足要求规范的要求,检测来寻找问题。
在最终的检测中,本研究采取了将后黑盒子检测与白盒子检测相融合的方式。黑箱试验是为了对系统的输入、输出性能进行测试,以发现其性能上的误差和潜在的不足。白箱试验的目的是为了检测程序和程序的运行路线,从而找出运行中的问题。该系统有两种方式:单位试验和综合试验。
6.4 单元测试
6.4.1 注册测试
在对注册模块进行测试时,先键入用户名和密码等信息,再按下注册键测试是否能正常注册系统。如果信息填写错误,能否弹出弹框,用来提示用户何处输入错误。
注册测试用例如下表所示。
表6-2注册测试用例
测试模块 用户注册模块测试
测试目的 测试当注册信息输入不符合要求时,系统是否能进行相应处理并给出提示。
测试方法 黑盒测试
测试数据 1不输入用户名和密码,直接点击注册。
2输入未注册过的用户名。例如:qwer
3输入正确用户名,两次密码不一样。例如:用户名qwerty、密码 0001,确认密码1111
预期结果 1 界面不跳转,弹出对话框,提示用户输入必填项。
2界面跳转,弹出对话框,提示用户注册成功。
3界面不跳转,弹出对话框,提示两次密码不一致。
实际结果 与预期结果相同。
结论 注册模块实现成功。
6.4.2 登录测试
登录模块需要测试的功能有:输入登录名和密码,点击“登录”按钮,如果信息添加正确,是否正常进入系统首页。如果信息填写错误,能否弹出弹框,提示用户信息输入有误。登录测试用例如下表所示。
表6-3登录测试用例
测试模块 用户登录模块测试
测试目的 测试当登录信息输入不符合要求时,系统是否能进行相应处理并给出提示。
测试方法 黑盒测试
测试数据 1不输入用户名和密码,直接点击登录。
2输入未注册过的用户名。例如:qwertyu
3输入正确用户名,错误密码。例如:用户名qwertyu、密码 000
4输入正确用户名,正确匹配密码。例如:用户名qwertyu、密码 111
预期结果 1 界面不跳转,弹出对话框,提示用户输入必填项。
2界面不跳转,弹出对话框,提示用户当前用户名尚未注册。
3界面不跳转,弹出对话框,提示用户密码错误。
4界面实现跳转,登录功能正常进行。
实际结果 与预期结果相同。
结论 登录模块实现成功。
6.5 集成测试
集成测试的方案主要如下所述:
(1)在完成安装部署后,将该系统移植到其他电脑,并可以顺利地运行该系统。
(2)用户信息管理模块综合测试,新增一个新的使用者 qq,指定一个普通的角色,查看普通角色的特权,并储存设定。作为 qqq登录,以了解所具有的权利。
(3)根据《学生手册》线上考试系统设计与实现的具体设计和实施,采用多种角色的方式,对各个模块的性能进行检测,并检测各个模块之间的逻辑功是否正确。
通过实验证明,该开发的系统能够满足线上考试程序和基础需求。

结 论

《学生手册》线上考试系统设计与实现是一款公平、包容、易操作的系统,基本上能满足使用者的需求,也符合本人的初始发展目的与发展方向。本文主要研究了 java语言和 MySQL等技术时的应用,它们都具有自己的优势,使其在实际应用中可以实现功能的稳定,同时也可以实现学生的各种需要。在具体的系统要求和功能模块的具体分析之后,进行了有针对性的设计,最终经过了测试,使整个系统可以正常工作,该《学生手册》线上考试系统设计完成。
在这个《学生手册》线上考试系统设计与实现的过程中,我参照了许多有关的案例,互相学习,互相借鉴。目前已逐渐改进,但仍存在许多缺陷,需要今后继续研究。在设计过程中我遇到了很多困难,包括知识上和技术上,同时由于长时间没有进行独立开发工作,编码熟练度有了明显的下降,一些常用的函数和编码技巧也变得生疏,但好在我及时做出了学习,查阅各种资料,进行广泛的钻研,多做请教,依靠互联网和书籍不断吸取知识,完善自己,最终在师生的协助下,成功完成了该系统。
我认为此系统还是有很多优点的,首先系统结构清晰,易于理解。设计合理,符合学生习惯和人机交互要求,能给用户带来很好的使用体验。代码简洁,注释全面,易于后期的管理和维护,代码健壮,鲁棒性高,适合高校和大学生使用。但同时,也存在部分内容设计不合理,有待改进的情况,我会不断学习。

参考文献

[1] 张继东.Mysql数据库基于java的访问技术[J/OL].电子技术与软件工程,2019,(15):169(2019-08-03).
[2] 李春燕,李根.基于java语言的网络信息用户平台设计[J/OL].电子技术与软件工程,2021,(20):9(2021-10-26).
[3]王浩.基于java语言的在线技能评测系统的设计与实现[J].数字技术与应用,2020,(12):171-172.
[4]王金龙,张静.基于java+Mysql的高校慕课(MOOC)用户系统设计[J].通讯世界,2021,(20):276-277.
[5]潘国荣.基于java+JavaBean+Servlet实现模式的增删改模块的设计与实现[J].信息通信,2020,(08):101-103.
[6]葛建霞.《java动态网页设计》小区失物招领网站中项目用户法的应用研究[J].宿州教育学院学报,2020,20(04):160-161.
[7]曾晰,舒坚.基于java的养老院管理信息系统的设计与实现[J].信息通信,2019,(09):122-124.
[8]傅峰. 基于移动平台的饲养交流系统的设计[J]. 电子设计工程,2020,24(09):66-68+71.
[9]李丹. 派遣信息网络管理平台设计与实现[J]. 软件导刊,2020,15(03):97-98.
[10]付昕. 基于B/S调度信息管理系统的实现[J].山东省农业管理干部学院学报, 2019, 27(4):166-168.
[11] 黄艳峰. 在Java语言中实施“案例医学会网站管理系统”的研究与探索[J]. 电脑知识与技术, 2019, 6(5):1148-1149.
[12] 赵钢. java Servlet+EJB的Web模式应用研究[J]. 电子设计工程,2019, 21(13):47-49.
[13] 肖英. 解决java/Servlet开发中的中文乱码问题[J]. 科技传播, 2021, (1)11-25.
[14] Hsiao I H, Sosnovsky S, Brusilovsky P. Guiding students to the right questions: adaptive navigation support in an e-learning system for Java programming[J]. Journal of Computer Assisted Learning, 2019, 26(4):270-283.
[15]Xue Qingshui,Hou Zongyang,Ma Haifeng,Zhu Haozhi,Ju Xingzhong,Sun Yue. Housing rental system based on blockchain Technology[J]. Journal of Physics: Conference Series,2021,1948(1) .

致 谢

大学的学习生活在这个季节将结束,但是在我的生命这仅仅只是一个逗号,我将面对另一个新的环境开始。通过这次毕业设计的整个开发过程,从需求分析到具体功能实现,再到最终测试和维护的理解有了很大的进步,让我对系统开发有了更深刻的认识,对我个人的实践能力和解决问题的能力,都有了很大的帮助。这是这次毕业设计最大的收获。
首先要感谢我的指导老师,他在论文写作上,给予了我各种无私的帮助,治学严谨,严格要求,使我获得了很大的收获。老师深厚的理论知识和丰富的实践经验,都深深的影响到我,在这方面,我谨表示衷心的感谢。
其次,我还要对所有的老师和同学表示感谢,他们在我学习的过程中,都积极的提供了很多帮助,无论是专业知识,还是实践操作技能,也能够让我在论文写作中,遇到的一些难题迎刃而解。
最后,对阅读和评审本论文的各位老师表示衷心的感谢!

  • 0
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
概要设计 1.系统简介 学生信息管理系统,简称SIMS,是一款为学校提供全面的学生信息管理服务的软件。该系统可以方便地记录学生的个人信息,包括姓名、性别、年龄、联系方式、家庭住址等,同时也可以记录学生的课程信息、考试成绩、奖惩记录等。 2.系统功能 (1)学生信息管理:实现学生基本信息的录入、修改、查询、删除等操作。 (2)课程管理:实现课程信息的录入、修改、查询、删除等操作。 (3)成绩管理:实现成绩信息的录入、修改、查询、删除等操作。 (4)奖惩管理:实现奖惩记录的录入、修改、查询、删除等操作。 (5)用户管理:实现用户信息的录入、修改、查询、删除等操作。 (6)权限管理:实现用户权限的分配、查询、删除等操作。 3.系统架构 该系统采用B/S架构,由客户端和服务器两部分组成。客户端采用web页面实现,通过浏览器访问服务器,服务器采用JavaEE框架实现,提供数据存储、业务逻辑处理等功能。 4.数据库设计 系统数据库采用MySQL实现,包括以下表: (1)学生表(student):包含学生基本信息。 (2)课程表(course):包含课程信息。 (3)成绩表(score):包含学生课程成绩信息。 (4)奖惩表(reward):包含学生奖惩记录信息。 (5)用户表(user):包含系统用户信息。 (6)权限表(permission):包含用户权限信息。 详细设计 1.用户登录模块 (1)输入用户名和密码。 (2)验证用户名和密码是否正确。 (3)如果验证成功,跳转到主页面;如果验证失败,提示错误信息。 2.学生信息管理模块 (1)学生信息录入:输入学生基本信息,包括姓名、性别、年龄、联系方式、家庭住址等。 (2)学生信息修改:根据学生ID查询学生信息,可修改学生的个人信息。 (3)学生信息查询:输入学生姓名、学号等查询学生信息。 (4)学生信息删除:根据学生ID删除学生信息。 3.课程管理模块 (1)课程信息录入:输入课程名称、课程编号、学分等信息。 (2)课程信息修改:根据课程ID查询课程信息,可修改课程的基本信息。 (3)课程信息查询:输入课程名称、课程编号等查询课程信息。 (4)课程信息删除:根据课程ID删除课程信息。 4.成绩管理模块 (1)成绩信息录入:输入学生ID、课程ID、成绩等信息。 (2)成绩信息修改:根据学生ID和课程ID查询成绩信息,可修改成绩。 (3)成绩信息查询:输入学生姓名、课程名称等查询成绩信息。 (4)成绩信息删除:根据学生ID和课程ID删除成绩信息。 5.奖惩管理模块 (1)奖惩记录录入:输入学生ID、奖惩类型、奖惩原因等信息。 (2)奖惩记录修改:根据学生ID和奖惩记录ID查询奖惩记录信息,可修改奖惩记录。 (3)奖惩记录查询:输入学生姓名、奖惩类型等查询奖惩记录信息。 (4)奖惩记录删除:根据学生ID和奖惩记录ID删除奖惩记录信息。 6.用户权限管理模块 (1)用户信息录入:输入用户名、密码、用户类型等信息。 (2)用户信息修改:根据用户ID查询用户信息,可修改用户的基本信息。 (3)用户信息查询:输入用户名查询用户信息。 (4)用户信息删除:根据用户ID删除用户信息。 7.用户权限管理模块 (1)权限信息录入:输入权限名称、权限描述等信息。 (2)权限信息修改:根据权限ID查询权限信息,可修改权限的基本信息。 (3)权限信息查询:输入权限名称查询权限信息。 (4)权限信息删除:根据权限ID删除权限信息。 8.系统安全管理模块 (1)用户登录安全:使用MD5加密算法加密密码,确保用户密码安全。 (2)权限控制:根据用户类型分配不同的权限,确保用户只能访问其具有权限的模块。 (3)数据安全:使用MySQL数据库存储数据,确保数据安全可靠。 以上是学生信息管理系统的概要设计及详细设计,该系统可以方便地记录学生的个人信息、课程信息、考试成绩、奖惩记录等。同时,该系统采用B/S架构,由客户端和服务器两部分组成,并且采用MySQL数据库存储数据,保证了数据的安全性和可靠性。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值