大家好,我是帅气小伙,今天我要为大家介绍的是,我从大一开始做到现在的一个系统,因为这个系统我成为了一名合格的开发,但是非常可惜这个系统没有用起来,所以我想把它作为我的毕业设计再做一次重构,争取能把它交给学校。
以上是我之前做的,不过我觉得做得不好,原因是代码混乱,不好维护。
因此我要用Java重构它。
一、系统介绍
1.起因
每年高校都会组织教学督导听课的工作,主要形式是安排专门的人员(有一定职称的人员)去做教学质量评估(主要的形式是听课考察的方式),由于手动安排的工作量较大,而且难度较大,教学质量评估反馈不及时等问题,于是我们提出了这个这个系统。
2.解决的问题
快速生成学期听课计划(专门的算法)
及时推送听课安排(微信企业号)
优化教学质量评估流程(微信企业号)
3.系统角色
系统管理员:维护本系统的管理员
督导管理员:专门负责学期听课计划的管理员
督导:负责执行听课计划的,有一定高级职称的教师
教师:待评职称的教师
学生:参与学期教师评分
4.流程优化
传统的督导听课方式
A.学期初,督导管理员收集督导的空闲时间(空闲时间汇总)
B.按照”空闲时间汇总“,组建督导工作小组(教学质量评估小组最少2-3人)
C.按照督导工作小组的时间去安排这个时间点上课的教师
D.制作学期听课安排计划
E.公示和执行安排
F.每次教学质量评估活动完成后,需上交相关word文件
本系统流程
A.导入本学期的课程表
B.录入各督导员的空闲时间
C.导入本学院的教师和督导员
D.配置排课规则
起始周起始日、督导小组人数、每周听课次数、理论课占比例、周听课次数和日听课次数
E.导出听课安排计划并确认
F.定时通过微信通知督导员执行安排
G.在微信端填写资料,系统自动生成相关word文件
4.项目功能模块
1.系统管理
学院管理
一个大学有多个学院,每个学院都有自己的学期听课计划;
在微信企业号相对于一个部门,在网站后台添加的同时,同步更新到微信企业号的后台。
督导管理员分配
每个学院有不同的督导管理员;
在微信企业号中相当于一名成员,在网站后台添加的同时,同步更新到微信企业号的后台
接口管理
向外部提供本系统的所有API接口的格式
2.用户管理
主要用于管理教师的信息,账号,密码,职称,微信,手机号等
Excel模板导入,手动录入---------可同步到微信企业号的后台
微信录入-------------每位教师在关注本企业号后会进行2次认证,认证过程中要求填补相关信息
3.课程管理
课程表模板导入,不支持手动录入(手动录入容易出错)
支持微信查询课程相关信息,例如:
这周的某一天上课的有哪些教师在上课
当天自己有哪些课程要上
4.空闲时间管理
手动录入,提供方便的勾选方式
自动填补,督导也是教师,也有课程表,程序会按照哪些时间督导没有上课,而认为该名督导是有空的。
5.听课安排管理
自动排课(按照一定的条件,自动生成学期安排计划)
手动安排,简洁易用的界面
导出听课计划
定时发送听课安排/手动发送
6.听课反馈
微信反馈
每次通知督导员听课时,将发送一条消息,点开这条消息可以查看当前安排的时间,地点,课程,教师等相关消息,点击反馈按钮即可填写相关的反馈内容,提交后即可自动生成word文档等资料。
文件管理
供督导管理员整理每个学期的反馈文件,并支持在线下载,暂时不支持在线查看。
二、总体架构
Spring boot后台
框架:Spring boot 1.5.2+Spirng security+JPA+Swagger2+jsonwebtoken
全Json格式交互,用Spirng security保护接口,并做权限角色管理,以Swagger-ui作为接口文档,供前端查看和测试
集成微信企业号,用于消息推送和资源共享
Node Server
框架:vue.js+node.js+微信的前端框架
三、总结
这个系统,我前前后后,断断续续地做到了现在,其实真的不是能力不行,只是在做一些功能设计上,可能很容易被程序的思维限制了,在接触了那么多的技术过后,我觉得我能够再把这个系统做成功。欢迎大家私信我讨论一下这个系统的设计或者给我建议。我迫切的想知道在大学是否会有这样的需求。