一 设计背景
1.1 课题现状
国家经济水平逐渐的提升,各行各业发展也稳步向前,其业务也繁多起来。慢慢的对其管理需求也要求提高,因此很多行业临着新的困难和机遇,现如今要怎么利用利于对自身发展需要的而且适用的种种技术来提升自身的经营、管理、服务已成为当代行业变革发展的重中之重。
铭城学校是一所历史悠久的校园,成立于2018年,现有教师20多人,学校管理人员3名。由于学校的规模在扩大,教务信息的管理逐渐曾多,其难度越来越大,原有的教务管理方式已经不能适应现阶段,现在要有一种新的管理方式或手段来对学校的教务信息进行管理,优秀的教务管理系统对铭城学校管理人员来说特别要紧。在今天信息的快速发展使得事务管理方面的计算机应用已经相当多,但是本校的教务管理还早其之前水平比之落后甚远,早就不能与当前发展相适应,当前一套便捷、计算机化的管理信息系统来代替落后的管理方式,最后实现学校教务管理的便捷化自动化,运用教务管理系统能规范对教务信息的管理,减少学校的教务繁琐,提高其效率。
1.2 课题意义
虽然当前市场相关系统有许多,很多还是有缺陷的,用计算机对学校人教务管理是个新的高效率管理方式,经济的大步向前,计算机对其管理的便捷高效人们随着接触与运用也逐渐认识到;随着学校的发展,学校教务信息的逐渐递增,学校的教务管理必须要重视,所以开发了一个高效便捷的教务管理系统对与学校有很大意义。
铭城学校教务管理的弊端是本课题的主要工作,由此原因而展开开发的教务管理系统,电脑的相关技术的使用针对教务内容处理,优点多于其他管理的方法。比如:方便快捷、高效率、低成本等,这些能提高管理效率。这样才能使其抓住时代的机遇,本着实用、高效、节约的原则,立足高效益,高起点、高标准,不断完善自己管理体制和运行机制,树立长远规划、务求施实、分布实施、保证重点、兼顾一般,充分利用现有资源合理整合现阶段的教务管理,加强学校的功能性建设推进学校的建设和教务管理工作,逐渐形成科学化、标准化、规划化的建设与教务管理为广大学子提供优良的学习环境与氛围进而为社会为祖国培养高素质高技术的人材,为社会出一份力,为祖国贡献一点绵薄的力量,为行业注入新鲜血液,推动我国的发展。这样既使该系统发挥了其该有的作用又为社会与人民做出了贡献所以开发这样一个管理系统对于学校对于社会都有很大意义。
铭城学校教务管理系统是JSP技术,MYSQL数据库,基于SSM框架开发而成。系统所用的系统开发环境如下表2-1所示。
表2-1系统开发环境
环境 | 版本 |
IntelliJ IDEA | IntelliJ IDEA 2021.1 x64 |
MySQL | MySQL-11.1.13 |
JDK | JDK-8.0 |
Tomcat | Tomcat-7.0 |
以下就是本系统使用的技术相关的介绍:
(1)JSP技术
使用了Java编程语言中jsp程序技术,该技术能够封装动态网页。然后使用tags和scriptlets,前端可以访问服务端的资源中的应用逻辑。网页分离逻辑与设计页面和显示jsp可以达到这种效果,对重复性高组件设计有不错的效果,使基于Web的应用程序开发设计更加便捷。铭城学校教务管理系统是使用jsp技术进行前段页面设计。
本教务管理系统基于B/S模式设计,采用SSM框架进行开发。
2.2.1 B/S模式
在三层体系结构的B/S(Browser/Server,浏览器/服务器结构)系统中,用户发送请求通过浏览器再网络传递在服务器上完成。大量工作需要服务器完成,数据库访问的过程以及程序执行的流程都将它完成。
SSM框架集是由Spring、SpringMVC和MyBatis这三个开源框架整合而成的。控制反转(IoC)和面向切面(AOP)框架组成spring;分离了控制器、模型对象、分派器,处理程序对象的角色,这个可以是程序更加灵活定制,这是SpringMVC的特点。MyBatis的作用SQL的查询以及存储流程还有高级映射秀的持久层的框架。
铭城学校根据自身特色及办学特点,为了更好地培养人才,提升学生综合能力以及核心竞争力,最终实现为社会输送大量高素质高技能的人才为主要目标。
本系统是基于铭城学校教务管理方面的需要来设计的管理系统,主要内容包括:学生模块、教师模块、管理员模块。
我的课表:学生可以查看自己的课表。
在线选课:学生可以在线选课或退课。
个人信息:学生可以修改自己的信息。
教学评估:学生可以对老师进行评价打分。
我的成绩:学生可以查看个人成绩信息。
我的课表:教师可以查看自己的课表,对学生的课程成绩进行打分。
个人信息:教师可以修改自己的信息。
退出系统:教师可以退出登陆。
教师管理:添加、查看、修改或删除管理员可以操作。
学生管理:添加、查看、修改或删除管理员可以操作。
班级管理:添加、查看、修改或删除管理员可以操作。
课程管理:添加、查看、修改或删除管理员可以操作。
个人信息:自己的信息管理员能够进行修改。
评价管理:教师的评价管理员可以进行删除操作。
本系统有以下几个性能要求:
- 响应时间(Response time):用户请求系统可以在4秒内反馈自行提取信息。数据库提取数据响应低于四秒且提取数据有相关格式,数据的更新和页面的反馈建议低于四秒;
(3)并发用户数(Concurrent users):支持多并发与高并发要求达到该性能;
(4)页面渲染:页面加载达到3秒以内并兼容多个浏览器。
基于SSM的铭城学校教务管理系统的设计与实现主要实现了教师模块,学生模块和管理员管理模块三大功能模块,系统的结构图如图4-1所示。
图4-1系统结构图
使用该系统必须首先登陆,确保系统安全性。登录流程图如图4-2所示。
图4-2 登录操作
首先在系统登录界面,点击按钮管理员登录进行操作,系统自动检查用户输入的相关登陆信息,验证成功进入管理员界面再进行相关操作。操作流程如图4-3所示。
图4-3 评估管理操作流程图
4.2.3学生查询课表功能操作流程
进入登录界面,用户输入相关登陆信息然后系统进行验证,验证成功进入学生操作页面,然后就行课表查询相关操作。学生查询课表操作流程如图4-4所示:
图4-4 学生查询课表操作流程图
4.2.4学生在线选课功能操作流程
进入登录界面,用户输入相关登陆信息然后系统进行验证,验证成功后,点击在线选课功能可以选择在线选课,选择选课或退课。学生在线选课操作流程如图4-5所示:
图4-5 学生在线选课操作流程图
4.2.5学生对教师教学评估功能操作流程
进入登录界面,用户输入相关登陆信息然后系统进行验证登录到学生操作页面,点击教学评估,选择教师进行评价。学生进行教学评估操作流程如图4-6所示
图4-6 学生教学评估操作流程图
4.2.6学生成绩查询功能操作流程
进入登录界面,用户输入相关登陆信息然后系统进行验证,登录到学生操作页面,点击我的成绩,选择成绩查看。学生查询成绩操作流程如图4-7所示:
图4-7学生成绩查询操作流程图
4.2.7教师打分功能操作流程
进入登录界面选择教室登陆,用户输入相关登陆信息然后系统进行验证成功后,登录到教师操作页面,点击我的课程,选择课程选择学生进行打分。教师打分操作流程如图4-8所示:
图4-8教师打分操作流程图
4.2.8教师管理功能操作流程
进入登录界面选择教室登陆,用户输入相关登陆信息然后系统进行验证成功后,进入管理员操作界面,点击教师管理,进行对教师信息增加、修改、删除。教师管理操作流程如图4-9所示:
图4-9教师管理操作流程图
4.2.9学生管理功能操作流程
进入登录界面选择教室登陆,用户输入相关登陆信息然后系统进行验证成功后,登录到管理员操作页面,点击学生管理,进行对学生信息增加、修改、删除。学生管理操作流程如图4-10所示
图4-10学生管理操作流程图
系统设计到这个阶段,可以协同用户参与设计,了解其需求,确保设计成果与用户要求符合。在概念模式的设计中,运用的是比较常见的E-R模型法。
E-R实体属性图在该系统中有6个,分别为学生信息实体属性图、班级信息实体属性图、教师信息实体属性图、学科信息实体属性图、专业信息实体属性图、评估信息实体属性图,下面进行详细介绍:
(1)学生信息实体属性图如图4-11所示。
图4-11学生信息实体属性图
(2)班级信息实体属性图如图4-12所示。
图4-12 班级信息实体属性图
(3)教师信息实体属性图如图4-13所示。
图4-13 教师信息实体属性图
(4)学科信息实体属性图如图4-14所示。
图4-14 学科信息实体属性图
(5)专业信息实体属性图如图4-15所示。
图4-15 专业信息实体属性图
(6)评估信息实体属性图如图4-16所示。
图4-16 评估信息实体属性图
系统数据使用MYSQL数据库进行储存,数据库表详情如下:
(1)班级信息表包括编号、班级name、班级id、等,具体详情如下表4-1所示。
表4-1 clazz班级信息表
列名 | 数据类型 | 长度 | 是否主键 | 是否可空 | 说明 |
id | int | 0 | 是 | 否 | 编号 |
clazz_name | varchar | 255 | 否 | 是 | 班级名 |
clazz_major_id | Int | 0 | 否 | 是 | 班级id |
(2)学生信息表包括id、学生id、学生name等字段,具体详情如下表4-2所示。
表4-2 student学生信息表
列名 | 数据类型 | 长度 | 是否主键 | 是否可空 | 说明 |
Id | int | 0 | 是 | 否 | 编号 |
student_num | varchar | 255 | 否 | 是 | 学生学号 |
student_name | varchar | 255 | 否 | 是 | 学生姓名 |
student_class_id | int | 0 | 否 | 是 | 学生班级id |
student_major_id | int | 0 | 否 | 是 | 学生科目id |
student_password | varchar | 255 | 否 | 是 | 学生密码 |
(3)教师信息表包括id、教师id、教师name等字段,具体详情如下表4-3所示。
表4-3 teacher教师信息表
列名 | 数据类型 | 长度 | 是否主键 | 是否可空 | 说明 |
Id | int | 0 | 是 | 否 | 编号 |
teacher_name | int | 0 | 否 | 是 | 教师编号 |
teacher_num | varchar | 255 | 否 | 是 | 教师姓名 |
teacher_major_id | varchar | 255 | 否 | 是 | 科目id |
teacher_password | varchar | 255 | 否 | 是 | 教师密码 |
(4)学科信息表包括id、学科id、学科name、学科老师人数等字段,具体详情如下表4-4所示。
表4-4 course学科信息表
列名 | 数据类型 | 长度 | 是否主键 | 是否可空 | 说明 |
Id | int | 11 | 是 | 否 | 编号 |
course_name | int | 11 | 否 | 是 | 学科名称 |
course_teacherid | varchar | 255 | 否 | 是 | 学科老师人数 |
course_weekday | Int | 0 | 否 | 是 | 工作日期 |
course_time | int | 20 | 否 | 是 | 工作时间 |
course_place | varchar | 255 | 否 | 是 | 上课位置 |
course_type | int | 0 | 否 | 是 | 科目类型 |
(5)专业信息表包括id、专业name等字段,具体详情如下表4-5所示。
表4-5 majori专业信息表
列名 | 数据类型 | 长度 | 是否主键 | 是否可空 | 说明 |
Id | int | 11 | 是 | 否 | 编号 |
major_name | varchar | 255 | 否 | 是 | 专业名称 |
(6)评估信息表包括id、name、sex、Birthdate等字段,具体详情如下表4-6所示。
表4-6 evaluate评估信息表
列名 | 数据类型 | 长度 | 是否主键 | 是否可空 | 说明 |
id | int | 0 | 是 | 否 | 编号 |
evaluate_teacherid | int | 0 | 否 | 是 | 老师评 |
evaluate_studentid | int | 0 | 否 | 是 | 学生评 |
evaluate_score | ivarcharnt | 255 | 否 | 是 | 评估分数 |
evaluate_comment | varchar | 255 | 否 | 是 | 意见 |
管理员验证成功正确的账号密码,系统登录界面展示如图5-1所示。
图5-1 系统登录界面图
主要代码如下:
在管理员的操作界面对教师的相关信息进行添加,删除,修改操作如图5-2所示。
图5-2教师管理界面图
主要代码如下:
在管理员的操作界面对学生的相关信息进行添加,删除,修改操作,其界面展示如图5-3所示。
图5-3 学生管理界面图
主要代码如下:
管理员可以对自己的详细信息进行修改,其界面展示如图5-5所示。
图5-4 个人信息管理界面图
主要代码如下:
在管理员的操作界面对课程的相关信息进行添加,删除,修改操作,其界面展示如图5-5所示。
图5-5 课程管理界面图
在管理员的操作界面对班级的相关信息进行添加,删除,修改操作,其界面展示如图5-6所示。
图5-6 班级管理界面图
主要代码如下:
在管理员的操作界面对教师的评进行删除操作,其界面展示如图5-7所示。
图5-7 评价管理界面图
主要代码如下:
系统迭代完会进行相关功能测试,这方面是非常有必要的,可以检测软件是否达到客户要求,通过测试才可以上线,提交给客户。一般测试方面包括:接口测试,负载测试,功能测试,兼容性测试等方面。
6.1 测试用例设计
本系统设计了12个测试用例,具体测试用例设计如下表6-1至6-12所示:
测试用例目标 | “登录”功能进行测试 | ||
用例的初始化 | 进入登录页面 | ||
测试结果评估标准 | 测试的步骤与期望结果一致 | ||
测试过程 | |||
编号 | 操作步骤与测试数据 | 期望结果 | 实际结果 |
student-01 | 进行学生登录密码输入操作 | 操作错误刷新页面或正确后进入学生个人页面 | 与期望结果一致 |
teacher-02 | 进行教师密码输入操作 | 操作错误刷新页面或正确后进入教师个人页面 | 与期望结果一致 |
Admin-03 | 进行管理员密码输入操作 | 操作错误刷新页面或正确后进入管理员管理页面 | 与期望结果一致 |
表6-2 “课表查询”功能测试用例
测试用例目标 | “课表查询”功能进行测试 | ||
用例的初始化 | 进入课表查询界面 | ||
测试结果评估标准 | 测试的步骤与期望结果一致 | ||
测试过程 | |||
编号 | 操作步骤与测试数据 | 期望结果 | 实际结果 |
Calzz-01 | 进行课表的查询和操作 | 所有操作都能成功显示或正确更新后台数据 | 与期望结果一致 |
表6-3 “个人信息”功能测试用例
测试用例目标 | “个人信息”功能进行测试 | ||
用例的初始化 | 进入个人信息界面 | ||
测试结果评估标准 | 测试的步骤与期望结果一致 | ||
测试过程 | |||
编号 | 操作步骤与测试数据 | 期望结果 | 实际结果 |
Me-01 | 进行个人信息的查询和修改 | 用户所有操作都能成功显示或正确更新后台数据 | 与期望结果一致 |
表6-4“学生评估教师”功能测试用例
测试用例目标 | “学生评估教师”功能进行测试 | ||
用例的初始化 | 进入学生评估教师界面 | ||
测试结果评估标准 | 测试的步骤与期望结果一致 | ||
测试过程 | |||
编号 | 操作步骤与测试数据 | 期望结果 | 实际结果 |
students-01 | 进行学生的评估教师操作 | 所有操作都能成功显示或正确更新后台数据 | 与期望结果一致 |
表6-5“在线选课”功能测试用例
测试用例目标 | “在线选课”功能进行测试 | ||
用例的初始化 | 进入在线选课界面 | ||
测试结果评估标准 | 测试的步骤与期望结果一致 | ||
测试过程 | |||
编号 | 操作步骤与测试数据 | 期望结果 | 实际结果 |
Clazzs-01 | 进行在线选课的增加、查询和退课操作 | 所有操作都能成功显示或正确更新后台数据 | 与期望结果一致 |
表6-6“个人成绩”功能测试用例
测试用例目标 | “个人成绩”功能进行测试 | ||
用例的初始化 | 进入个人成绩查询界面 | ||
测试结果评估标准 | 测试的步骤与期望结果一致 | ||
测试过程 | |||
编号 | 操作步骤与测试数据 | 期望结果 | 实际结果 |
me-01 | 进行我的成绩查询操作 | 所有操作都能成功显示或正确更新后台数据 | 与期望结果一致 |
表6-7“教师打分”功能测试用例
测试用例目标 | “教师打分”功能进行测试 | ||
用例的初始化 | 进入教师打分界面 | ||
测试结果评估标准 | 测试的步骤与期望结果一致 | ||
测试过程 | |||
编号 | 操作步骤与测试数据 | 期望结果 | 实际结果 |
Students-01 | 进行教师打分评分操作 | 所有操作都能成功显示或正确更新后台数据 | 与期望结果一致 |
表6-8“教师用户管理”功能测试用例
测试用例目标 | “教师用户管理”功能进行测试 | ||
用例的初始化 | 进入教师用户管理界面 | ||
测试结果评估标准 | 测试的步骤与期望结果一致 | ||
测试过程 | |||
编号 | 操作步骤与测试数据 | 期望结果 | 实际结果 |
teachers-01 | 进行教师用户的增加、查询和删除操作 | 所有操作都能成功显示或正确更新后台数据 | 与期望结果一致 |
表6-9“学生用户管理”功能测试用例
测试用例目标 | “学生用户管理”功能进行测试 | ||
用例的初始化 | 进入学生用户管理界面 | ||
测试结果评估标准 | 测试的步骤与期望结果一致 | ||
测试过程 | |||
编号 | 操作步骤与测试数据 | 期望结果 | 实际结果 |
students-01 | 进行学生用户的增加、查询和删除操作 | 所有操作都能成功显示或正确更新后台数据 | 与期望结果一致 |
表6-10“班级信息管理”功能测试用例
测试用例目标 | “班级信息管理”功能进行测试 | ||
用例的初始化 | 进入班级信息管理界面 | ||
测试结果评估标准 | 测试的步骤与期望结果一致 | ||
测试过程 | |||
编号 | 操作步骤与测试数据 | 期望结果 | 实际结果 |
class-01 | 进行班级信息的增加、查询和删除操作 | 所有操作都能成功显示或正确更新后台数据 | 与期望结果一致 |
表6-11“课程信息管理”功能测试用例
测试用例目标 | “课程信息管理”功能进行测试 | ||
用例的初始化 | 进入课程信息管理界面 | ||
测试结果评估标准 | 测试的步骤与期望结果一致 | ||
测试过程 | |||
编号 | 操作步骤与测试数据 | 期望结果 | 实际结果 |
course-01 | 进行课程信息的增加、查询和删除操作 | 所有操作都能成功显示或正确更新后台数据 | 与期望结果一致 |
表6-12“教师评估管理”功能测试用例
测试用例目标 | “教师评估管理”功能进行测试 | ||
用例的初始化 | 进入教师评估管理界面 | ||
测试结果评估标准 | 测试的步骤与期望结果一致 | ||
测试过程 | |||
编号 | 操作步骤与测试数据 | 期望结果 | 实际结果 |
teacherPG-01 | 进行教师评估的增加、查询和删除操作 | 所有操作都能成功显示或正确更新后台数据 | 与期望结果一致 |
6.2 测试结果
经过对测试结果进行分析,项目的设计与功能都达到预期要求可以进入到项目下一阶段。
建议:在项目功能方面达到了客户的要求,满足了当前的业务压力,但是随着系统运行后期会有相关性能方面缺陷以及别的方面调整,安全方面也要加强,需要更新优化,保证系统达到长久运行的要求。
- 学校的教务基本功能都实现了,选课,个人课表和成绩都能查询到给学生和教师带来很大的便利。
- 管理员可以更好的管理可实时更新课表、老师、学生的信息。
(1)本系统准备时间仓促其功能也不完善,后期我们会完善该系统更好提供服务与体验。
(2)本系统页面方面太过于简陋降低使用者的体验效果,后期会改进美化页面。
时间转眼流失,差不多将这个系统写好了,原本只想写个小网站。但是抱着负责任的心态,坚持把系统做好了,期间查阅了很多资料,运用到了学校学过的很多知识,使我对这些知识掌握更加踏实,对未来有了更好的规划,也使其在我职业道路上越走越远。其实在做这个系统之前,对知识掌握不够充分,现在做完了,让我把以前忘掉的那些知识都找回来了,也更加巩固了。做这个系统的时候,有很多知识,不是很懂,然后查阅了很多资料。在网上也查阅,去老师那边有咨询。虽然做这个系统期间遇到很多烦心事,但是也收获了很多知识。如果只是也就是我更开心,也有了继续做下去的动力,这个过程不仅培养了我的思维,锻炼了我的能力,也让我接触了很多东西。
其实我遇到问题的时候也特别的烦恼,然后就问同学,找老师和相关技术的人,嗯,然后通过他们的教学与他们讨论,也收获了很多东西。所以,也就成就了现在的这个系统。这个系统不是我一个人做出来的,是他们和我一起努力的,然后在此过程中。我也收获了很多,你也锻炼了我的代码能力。嗯。把我的思维更加开阔。我十分的感谢他们。后来开始设计这个系统的时候。我遇到很多问题,不知道怎么办,也非常的烦老让我睡觉都睡得不踏实,很多时间都在想这个问题怎么解决,然后为什么会发生这个问题?然后我就查阅了很多资料,问了很多人。然后把这个问题,记住以后不再发生这个问题,这个就像我的人生道路,总会遇到一些困难,但是不越过去的话,这个困难依然在,所以不能去逃避要要去接触并解决。这就像我们的人生道路,总会遇到不可避免的困难,逃避是永远逃避不了的,只能迎难而上去解决它。之后会有很大的成就感,以后就算遇到这个困难,也有经验去解决它。这也是人生必经之事。学习是一件永无止境的事情,只有不断的去学习不断的去进步,才会变得更加优秀。设计这个系统的时候有很多的知识我并没有用到。网上也学到了很多,所以学习对我来说是一件快乐的事情。 希望我以后也像今天这样去努力去好学,将这份精神永远保持下去。
[1]纪娟.基于B/S模式的教务管理系统的设计与实现[J],2018(04).
[2]王民川,郭欢.基于SQL的人事管理系统设计与实现[J].电脑编程技巧与维护,2018(05):64-66.
[3]纪娟,漆艺,雷莹.基于B/S模式的教务管理系统的设计与实现[J].智能计算机与应用,2018,6(02):58-61.
[4]郑力军,寇俊超,宿迎祯.基于WEB的人事管理系统设计[J].软件,2017,38(12):115-118.
[5]王卫,李天琦,汤伟,王海涛,施秀萍,杨铖. 基于JSP技术项目开发中中文乱码问题研究[J].电脑编程技巧与维护,2018(08):38-39.
[6]罗迪,云龙,杨姣.基于Spring+MyBatis的高校人事管理系统的设计与实现[J].数字技术与应用,2017(04):179-183.
[7]袁健美.基于JSP的B/S动态网站开发及数据库连接[J].计算机技术与发展,2017(06):29-31.
[8]王忠贤.基于WEB的校园教务系统的设计与实现[J].现代信息科技2019(17).
[9]林月姣.高校教务管理系统的设计与实现 [D].吉林大学,2017:6-12.
[10]刘杰,李学勇.教师课表的管理的系统实现与设计[N].信息与电脑,2018年第14期.