技术栈
后端:python
前端:vue.js+elementui
框架:django
Python版本:python3.7+
数据库:mysql5.7
数据库工具:Navicat
开发软件:PyCharm .本高校实验室管理系统采用python语言、MySQL数据库,基于vue框架进行开发设计,系统主要实现了管理员模块、教师模块以及学生模块三大部分,具体如下:
管理员模块:1、管理员登录 2、管理注册用户信息(教师、学生),包含学号/工号、密码、联系方式3、实验室资源管理(实验室的增删改查)4、掌握实验室分配使用情况(查看实验室是否被预订,查看实验室当前课程信息)5、管理任课教师的课程安排和学生的预订信息(审核预约信息)、管理计费系统(对学生个人实验室使用依据时长计费。合理即可);
教师模块:1、注册(工号、密码、联系方式)、登录(不需验证码)2、用户信息查看与修改3、查看空闲实验室4、预约某个实验室5、查看实验课程日程安排(自己预约过的实验室信息、课程信息(包括上课时间、课程名))6、处理学生反馈信息(学生给教师留言的信息)
学生模块:1、注册(工号、密码、联系方式)、登录(不需验证码)2、用户信息查看与修改3、查看空闲实验室和剩余机位数量。4、完成实验选课(选取任课老师预订的课程)5、反馈实验信息(给任课老师)6、预约实验(自己课外时间去实验的,要收费,预约一个机位)7、实验计时收费
数据库设计
本课题使用Python语言进行开发。基于web,代码层面的操作主要在PyCharm中进行,将系统所使用到的表以及数据存储到MySQL数据库中
使用说明
使用Navicat或者其它工具,在mysql中创建对应名称的数据库,并导入项目的sql文件;
使用PyCharm 导入项目,修改配置,运行项目;
将项目中config.ini配置文件中的数据库配置改为自己的配置,然后运行;
运行成功后,在浏览器中输入:http://localhost:8080/项目名
数据库物理结构设计
为数据库各个逻辑表设计合适的存储结构和存取方式。
系统实施
(1)需求分析,制作流程图
(2)通过HTML创建前端基础架构,CSS进行美化,JS动态响应。
(3)设计数据库表格,建立个表格之间的依赖关系,定义表的基本结构。
(4)设计逻辑代码,实现处理前端数据和返回响应数据,动态改变页面内容,将数据传递给数据库持久化保存。
(5)测试和改进。
1. 数据分析
数据库设计是指对于一个给定的应用环境,构造最优的数据库模式,建立数据库及其应用系统,使之能够有效的存储数据,满足各种用户的应用需求。数据库是计算机信息系统的基础。信息的收集、整理、存储、检索、更新、加工、统计和传播等操作必须在数据库管理系统的的支持下才能进行。目前,电脑系统的关键与核心部分就是数据库。数据库开发的优劣对整个系统的质量和速度有着直接影响。
2. 数据库概念结构设计
根据系统需求分析和数据分析,本系统主要涉及实体有:学生实体、教师实体、实验室实体、实验课程日程安排实体、课程实体、反馈实体。
利用工具(visio)画出实体关系图(E-R图)。
3. 数据库逻辑结构设计
根据数据库概念结构设计,转换为逻辑结构,设计学生表、教师表、实验室表、实验课程日程安排表、课程表、反馈表。
为学生、教师和管理员分别设计不同的视图。
4.
目 录
第1章 绪论 1
1.1 课题背景 1
1.2 课题意义 1
1.3 研究内容 2
第2章 开发环境与技术 3
2.1 MYSQL数据库 3
2.2 python语言 3
2.4 vue框架 4
2.5 B/S架构 5
第3章 系统分析 7
3.1 可行性分析 7
3.1.1 技术可行性 7
3.1.2 经济可行性 7
3.1.3 操作可行性 7
3.2 系统流程 8
3.2.1 操作流程 8
3.2.2 登录流程 8
3.2.3 删除信息流程 9
3.2.4 添加信息流程 10
3.3 性能需求 10
3.4 功能需求 11
第4章 系统设计 15
4.1 设计原则 15
4.2 功能结构设计 16
4.3 数据库设计 18
4.3.1 数据库概念设计 18
4.3.2 数据库物理设计 21
第5章 系统实现 26
5.1 管理员功能实现 26
5.1.1 实验室管理 26
5.1.2 实验课程管理 26
5.1.3 学生预约管理 27
5.1.4 教师管理 27
5.1.5 学生管理 28
5.2 教师功能实现 28
5.2.1 预约实验室 28
5.2.2 实验选课管理 29
5.2.3 学生反馈管理 29
5.3 学生功能实现 30
5.3.1 预约实验室 30
5.3.2 学生预约管理 30
5.3.3 学生选课 31
5.3.4 实验选课管理 31
5.3.5 学生反馈管理 32
第6章 系统测试 33
6.1 测试的任务 33
6.2 测试的目标 33
6.3 测试方案 34
6.4 功能测试 35
6.4.1 登录功能测试 36
6.4.2 修改密码功能测试 36
6.5 测试结果 37
结 论 38
致 谢 39
参考文献 40