智慧校园管理系统设计文档
需求概述
首先要求该系统可以切换学生端和教师端、管理员端
- 学生端需求:
要求可以查看自己的课表、学期成绩、查询自己的考试、对教师进行评价、选课、查看自己的总学分、以及毕业学分要求、上传自己的个人信息等功能 - 教师端需求:
教师可以对学生成绩进行打分、安排课表、查询自己监考的考试、上传自己的个人信息、查询自己管理的班级信息等功能 - 管理员端需求:
管理员端要求能对教师和学生用户进行增删改查、以及对所有用户的个人信息进行增删改查、可以对考试进行安排、可以对专业以及班级进行增删改查
功能模块
- 登录模块:用户在登录页面进行登录,登录模块可以切换分为学生登录、教师登录、管理员登录
- 学生模块:学生模块应有成绩模块、课表模块、学分模块、考试模块、教师评价模块、选课模块、以及个人信息模块
- 教师模块:教师模块应有成绩模块、课表模块、考试模块、个人信息模块、班级模块
- 管理员模块:管理员模块应有用户管理模块、考试管理模块、班级管理模块、专业管理模块
程序结构图
学生模块功能:
- 成绩模块:要求学生能在此查询到自己的成绩,查询可以全部查询也可以分时间查询,如果学生选择了年份就会查询该年的全部成绩;如果学生选择了学期,就会查询,该学期的全部成绩;学生还可以根据合格与不合格来查询自己的查询,选择合格就会查询合格的成绩,选择不合格就会查询不合格的成绩
成绩模块程序流程图
2. 选课模块:要求学生可以在该模块完成选课功能,每位学生每学期的选课门数有限制;选课时如果该门课程容乃的学生人数已满,那么就不能再选这门课;选课模块只在固定时间开放,其他时间进入选课模块一律提示不在选课时间内然后跳回主页
选课模块程序流程图
3. 课表模块:学生可以在该模块查看自己本学期的课表
课表模块程序流程图
4. 学分模块:学生在这可以查看自己已经获得的学分,以及毕业所需的学分
学分模块程序流程图
5. 考试模块:学生可以在此查看自己的考试,具体的考试信息有——考场所在地、考试开始时间、考试科目、监考老师、考试持续时间、以及自己的座位号
考试模块程序流程图
6. 教师评价模块:教师评价模块只在固定时间开放,具体开放时间由管理员来决定,模块的功能为学生要在此能完成对教师的评价
教师评价模块程序流程图
- 个人信息模块:学生能在此完成个人信息的查看与修改
个人信息模块程序流程图
教师模块功能
- 成绩模块:教师能在此给自己所负责的学生进行期中成绩、期末成绩、学期总成绩的打分,教师也能看到自己所负责课程的学生的成绩
成绩模块程序流程图
2. 课表模块:教师可以在这里安排自己所教课程的上课时间,具体实现为教师先选择自己所教授的班级之一,然后会显示该班级已经安排好的课表,教师可以在课表的空余位置安排自己的上课时间。教师的添加课表功能也只会在固定时间开放,具体开放时间由管理员决定
课表模块程序流程图
3. 考试模块:教师可以在该模块查看自己负责监考的考试信息——考场所在地、考试开始时间、考试持续时间、考试科目、考试人数、具体的学生名单
考试模块程序流程图
4. 个人信息模块:教师在此能够查询已经修改自己的个人信息
个人信息模块程序流程图
5. 班级模块:教师能在这里查看自己所负责的班级信息,包括班级所属专业,班级名称,已经班级中学生的基本信息;学生的基本信息有:姓名、学号、性别、年龄、所属班级、联系方式
班级模块程序流程图
管理员模块功能
- 用户管理模块功能:系统自带一个超级管理员用户,后台系统不可对改用户进行修改与删除,超级管理员用户可以对全部用户进行增删改查操作,普通管理员与超级管理员用户的区别就是普通管理员无法对管理员用户进行操作,只能对学生和教师用户进行操作
用户管理模块程序流程图
2. 考试管理模块:管理员在这里可以安排考试,安排考试开始的时间,考试地点、持续时间、参加考试的学生、考试科目、监考老师
考试管理模块程序流程图
3. 班级管理模块功能:管理员用户可以在这对班级进行增删改查操作,可以对班级里的学生进行增删改查操作,可以对班级管理老师进行增删改查操作
班级管理模块程序流程图
4. 专业管理模块功能:对专业信息进行增删改查,对专业所属的学生和教师进行增删改查
专业管理模块程序流程图
数据表结构设计
学生表(students)
字段名 | 字段类型 | 字段长度 | 备注 |
---|---|---|---|
id | int | 主键 | |
username | varchar | 18 | 学生用户用来登录的用户名 |
password | varchar | 70 | 学生用户用来登录的密码 |
student_number | varchar | 20 | 学生的学号 |
student_name | varchar | 15 | 学生的姓名 |
sex | varchar | 6 | 学生的性别 |
idnumber | varchar | 40 | 身份证号 |
address | varchar | 40 | 学生的居住地 |
phone | varchar | 20 | 联系手机号 |
class_id | int | 学生所属的班级id | |
profession_id | int | 学生所属的专业id | |
entrancetime | datetime | 学生的入学时间 | |
status | int | 账号状态 | |
roles | varchar | 20 | 账号权限 |
created | datetime | 创建时间 | |
updated | datetime | 更新时间 |
教师表(teachers)
字段名 | 字段类型 | 字段长度 | 备注 |
---|---|---|---|
id | int | 主键 | |
username | varchar | 18 | 教师用户用来登录的用户名 |
password | varchar | 70 | 教师用户用来登录的密码 |
teacher_number | varchar | 20 | 教师的编号 |
teacher_name | varchar | 15 | 教师的姓名 |
sex | varchar | 6 | 教师的性别 |
idnumber | varchar | 40 | 身份证号 |
address | varchar | 40 | 教师的居住地 |
phone | varchar | 20 | 联系手机号 |
class_id | int | 教师所属的班级id | |
profession_id | int | 教师所属的专业id | |
entrancetime | datetime | 教师的就职时间 | |
status | int | 账号状态 | |
roles | varchar | 20 | 账号权限 |
created | datetime | 创建时间 | |
updated | datetime | 更新时间 |
管理员表(admins)
字段名 | 字段类型 | 字段长度 | 备注 |
---|---|---|---|
id | int | 主键 | |
username | varchar | 18 | 管理员用户用来登录的用户名 |
password | varchar | 70 | 管理员用户用来登录的密码 |
status | int | 账号状态 | |
created | datetime | 创建时间 | |
updated | datetime | 更新时间 |
管理员权限表(permissions)
字段名 | 字段类型 | 字段长度 | 备注 |
---|---|---|---|
id | int | 主键 | |
admin_id | int | 对应管理员表主键 | |
permission | varchar | 12 | 管理员权限,super是超级管理员,usual是普通管理员 |
课程表(courses)
字段名 | 字段类型 | 字段长度 | 备注 |
---|---|---|---|
id | int | 主键 | |
course_name | varchar | 30 | 课程名称 |
course_score | int | 课程学分 | |
created | datetime | 创建时间 | |
updated | datetime | 更新时间 |
学生课程表(stu_courses)
字段名 | 字段类型 | 字段长度 | 备注 |
---|---|---|---|
id | int | 主键 | |
stu_id | int | 逻辑外键与students表的id相对应 | |
course_id | int | 逻辑外键与courses表的id相对应 | |
start_year | varchar | 10 | 课程开始的年份 |
start_term | int | 课程开始的学期,如01是第一学期,02是第二学期 | |
start_time | varchar | 30 | 课程每周的开课时间,格式:1* 4-5/ 2* 1-2-3——意思是星期一的第四五节课,和星期二的第123节课 |
type | varchar | 20 | 课程类型,如必修课、选修课等 |
address | varchar | 20 | 上课地点 |
teacher_id | int | 逻辑外键与教师表的id相对应 | |
created | datetime | 创建时间 | |
updated | datetime | 更新时间 |
学生成绩表(stu_scroes)
字段名 | 字段类型 | 字段长度 | 备注 |
---|---|---|---|
id | int | 主键 | |
stu_id | int | 逻辑外键与students表的id相对应 | |
course_id | int | 逻辑外键与courses表的id相对应 | |
teacher_id | int | 逻辑外键与教师表的id相对应 | |
mid_scroe | int | 期中成绩 | |
end_scroe | int | 期末成绩 | |
usual_scroe | int | 平时成绩 | |
total_scroe | int | 总成绩 | |
created | datetime | 创建时间 | |
updated | datetime | 更新时间 |
选课表(select_courses)
字段名 | 字段类型 | 字段长度 | 备注 |
---|---|---|---|
id | int | 主键 | |
course_id | int | 逻辑外键与courses表的id相对应 | |
teacher_id | int | 逻辑外键与教师表的id相对应 | |
numbers | int | 课程的余量 | |
type | varchar | 20 | 课程类型 |
created | datetime | 创建时间 | |
updated | datetime | 更新时间 |
班级表(classes)
字段名 | 字段类型 | 字段长度 | 备注 |
---|---|---|---|
id | int | 主键 | |
classname | varchar | 25 | 班级名称 |
profession_id | int | 班级所属的专业id | |
created | datetime | 创建时间 | |
updated | datetime | 更新时间 |
专业表(professions)
字段名 | 字段类型 | 字段长度 | 备注 |
---|---|---|---|
id | int | 主键 | |
profession_name | varchar | 25 | 专业名称 |
created | datetime | 创建时间 | |
updated | datetime | 更新时间 |
考试安排表(examarranges)
字段名 | 字段类型 | 字段长度 | 备注 |
---|---|---|---|
id | int | 主键 | |
course_id | int | 关联课程表,获取考试科目 | |
address | varchar | 40 | 考试地点 |
starttime | datetime | 开始时间 | |
duration | int | 持续时间(minute) | |
created | datetime | 创建时间 | |
updated | datetime | 更新时间 |
学生考试表(stu_exam)
字段名 | 字段类型 | 字段长度 | 备注 |
---|---|---|---|
id | int | 主键 | |
exam_id | int | 关联考试表的主键 | |
student_id | int | 关联学生表的主键 | |
number | int | 学生座位号 | |
created | datetime | 创建时间 | |
updated | datetime | 更新时间 |
教师考试表(teacher_exam)
字段名 | 字段类型 | 字段长度 | 备注 |
---|---|---|---|
id | int | 主键 | |
exam_id | int | 关联考试表的主键 | |
teacher_id | int | 关联教师表的主键 | |
created | datetime | 创建时间 | |
updated | datetime | 更新时间 |
教师评价表(teacher_evaluations)
字段名 | 字段类型 | 字段长度 | 备注 |
---|---|---|---|
id | int | 主键 | |
teacher_id | int | 关联教师表的主键 | |
student_id | int | 关联学生表的主键 | |
evaluation | text | 学生的评价内容 | |
grade | vchar | 4 | 学生评价等级分为A、B、C、D |
year | vchar | 5 | 评价的日期年份 |
term | int | 评价的学期,01是第一个学期,02是第二个学期 | |
created | datetime | 创建时间 | |
updated | datetime | 更新时间 |
系统时间表(system_times)
字段名 | 字段类型 | 字段长度 | 备注 |
---|---|---|---|
id | int | 主键 | |
model_name | varchar | 20 | 模块名称 |
start_time | datetime | 开始时间 | |
end_time | datetime | 结束时间 | |
created | datetime | 创建时间 | |
updated | datetime | 更新时间 |
本系统需要设置时间的模块有select_model(选课模块)、evaluate_model(教师评价模块)、coure_model(教师的课表设置模块)
学分表(credits)
字段名 | 字段类型 | 字段长度 | 备注 |
---|---|---|---|
id | int | 主键 | |
student_id | int | 与学生表主键相连 | |
have_credit | int | 已修学分 | |
graduate_credit | int | 毕业所需总学分 | |
created | datetime | 创建时间 | |
updated | datetime | 更新时间 |
右侧菜单表(right_menu)
字段名 | 字段类型 | 字段长度 | 备注 |
---|---|---|---|
id | int | 主键 | |
name | varchar | 40 | 菜单名称 |
parent_id | int | 父级菜单id | |
path | varchar | 50 | 前端路由的路径 |
level | int | 菜单级别 | |
model | varchar | 30 | 所属的模块 |
created | datetime | 创建时间 | |
updated | datetime | 更新时间 |
智慧校园管理系统设计文档相关推荐
- 基于java与mssql的合同管理系统设计文档_合同管理系统的设计与实现
合同管理系统的设计与实现 合同管理系统的设计与实现 摘 要 本文描述了一个基于web的同管理系统的开发过程,依据面向对象程序设计的开发理念,本系统选用Browser/Server(B/S)模式搭建,并 ...
- Java版——企业进销存管理系统设计文档+源码
进 销 存 管 理 系 统 项目成员: 学号 姓名 完成的工作 12601310211 后台编写 12601310212 数据库设计 12601310215 图片模块 12601310237 GUI界 ...
- 药品管理系统设计文档
需求分析 这个系统是帮助医护人员完成日常繁重窗口业务的工具.借助计算机系统,使他们凌乱的工作变得有条理,解脱他们需要记忆大量信息(药品的规格,价钱,疾病的名称与编码等)的困难.保证他们遵守某些规范,减 ...
- 教务管理及教材订购系统设计文档
教务管理及教材订购系统设计文档 目录 一.概述 1.1 开发背景 1.2 使用技术 1.3运行环境 1.4 设计目标 1.4.1权限管理 1.4.2信息管理 1.4.3选课管理 1.4.4 成绩管理 ...
- Tips--git bash管理本地文档的常用命令
git bash在管理本地文档中的常用命令 1. 序 2. 初始化本地仓库 3. 创建master主干支 4. 创建分支 5. 切换分支 6. 提交分支修改 7. 合并分支 8. GitLab 配置过 ...
- 工程监测管理平台、工程数据看板、工程总览、动态模型、数据分析、数据跟踪、建筑工地、数据报表、警点管控、现场记录、观测记录、测点管理、模型管理、文档管理、墙体下沉、成员管理、axure原型、产品原型
工程监测管理平台.工程数据看板.工程总览.动态模型.数据分析.数据跟踪.建筑工地.数据报表.警点管控.现场记录.观测记录.测点管理.模型管理.文档管理.墙体下沉.成员管理.axure原型.产品原型 ...
- Word控件Spire.Doc 【段落处理】教程(十二):如何在 C# 中管理 word 文档的分页
当我们要管理段落的分页时,我们可以直接插入分页符.但是后来我们可能会发现很难在分页符上方添加或删除文本,然后我们必须删除整个分页符.使用 Microsoft word,我们还可以使用段落对话框来管理 ...
- 智能媒体管理产品文档转换/预览功能介绍(1)---Cloud Native架构
一.导语 办公文档是每个人日常频繁使用的工具,ppt.word.xls.wps.pdf等为我们工作和生活带来了很多的便利,本文介绍在云计算和智能手机时代,基于 智能媒体管理 的新型Cloud Nati ...
- 实验2linux进程控制与通信,实验2 进程控制与通信管理word文档良心出品
<实验2 进程控制与通信管理word文档良心出品>由会员分享,可在线阅读,更多相关<实验2 进程控制与通信管理word文档良心出品(13页珍藏版)>请在人人文库网上搜索. 1. ...
最新文章
- 一个简单实用的,基于EF的三层架构
- 基于matlab的离散系统时域分析实验,《信号与系统》 实验一 信号的时域分析及Matlab实现...
- linux服务器性能监控命令汇总之free命令(四)
- 松下伺服esi文件_松下贴片机操作教程
- Linux基础-1.0共享文件夹创建
- mint-ui修改样式的小技巧
- 实验一 线性表的顺序存储与实现_【自考】数据结构中的线性表,期末不挂科指南,第2篇
- java getparameter 乱码_request.getParameter(“参数名”) 中文乱码解决方法
- C#LeetCode刷题之#874-模拟行走机器人​​​​​​​(Walking Robot Simulation)
- {转}Java 字符串分割三种方法
- 组策略最佳实践之“降龙十八掌”
- 精确的硬盘整数分区方法
- [笔记]3.软件代码中的BUG问题的一些记录
- DSP CCS5.5安装步骤
- Ubuntu窗口过大?按钮都点不到怎么办?
- 实现 EC20 4G模块PPP拨号上网
- php中composer require和composer require --dev的区别
- Python 使用can模块(记录稿)
- linux fflush函数,sleep函数和fflush函数
- 时序逻辑滞后一拍问题