模块三 作业
前言
词汇表
1. 业务背景
随着学校的规模的不断扩大,学生数量的增加,需要处理的信息也日趋增大。不仅花费大量的教师资源,
处理效率也十分低下。
为提高学生管理的管理水平,优化资源,尽可能降低管理成本成为学生管理的新课题,学生管理系统是从
学生管理现状出发,根据学生管理的新要求进行开发设计的,它需要解决学生信息管理数据信息量大修改
不方便,对一系列数据进行分析时花费时间长等问题,帮助学生管理人员有效管理学生信息。
因此学生信息管理系统可以通过系统规范化地管理、科学性统计和快速查询、修改、增加、删除等,提高
信息的准确度以及日常管理的工作效率。
本系统主要是应用于学生各类信息的管理,总体任务是实现学生信息关系的系统化、规范化、自动化,其
主要任务是统计学生各类信息进行日常管理,如查询、修改、增加、删除、以及学生选课、成绩的查询等
功能设计的管理系统。
2. 约束和限制
必须在 2021.10.1 号完成
成本不能超过 50 万
数据库采用 Mysql
开发语言 Java
部署环境 Linux
3. 总体架构
3.1 架构分析
1.高性能:在校学生数量几万人,基本不会有高并发场景,所以没有高性能要求。
2.高可用:学生的资料数据比较重要,不能出现数据丢失,需要保证数据的高可用。
3.可扩展:业务需求比较复杂,需要对业务进行拆分降低复杂度,易扩展
4.成本:因为受到资金影响,所以尽量使用开源免费方案
5.安全:数据一般是学生、教师以及一些其他资料,安全性不是很重要,但是也需要保证重要数据不被窃取。
3.2 总体架构
1)将服务拆分成学生子系统、课程子系统、权限子系统 ,降低服务的复杂度,同时保证可扩展更容易。
2)数据库采用主备方案,主库将数据同步到备库,用来备份。
3)采用 Nginx 做反向代理服务
4. 详细设计
4.1 核心功能
4.2 关键设计
高可用:MySQL 采用主备模式防止数据丢失
可扩展:将系统分为学生子系统,课程子系统,权限子系统 降低复杂度,易扩展
4.3 设计规范
应用使用 Spring Boot 开发
Mysql 使用 Innodb 存储引擎
Web 容器 Tomcat
数据协议 json
传输协议 http
5. 质量设计
增加可视化后台管理
收集运行指标,做监控管理
在安全方面,防止 SQL 注入、 xss 攻击
6. 演进规划
一期: 学生子系统,课程子系统、权限子系统开发
二期:监控管理
评论