写点什么

模块三作业:外包学生管理系统架构文档

作者:dean
  • 2021 年 11 月 11 日
  • 本文字数:1547 字

    阅读完需:约 5 分钟

写出外包学生管理系统的架构文档

【作业要求】

1. 基于模块 1 第 5 课 P15 页的外包学生管理系统备选架构 1(见下 1 页),写出完整的架构设计文档;

2. 注意不是备选架构文档,而是最终落地的详细架构设计文档;

3. 无需考虑数据库表设计,因为表设计是方案设计阶段做的,不是架构设计阶段做的;

【提示】

1. 架构设计文档是完整的文档(Word 或者语雀文档之类的都可以),而不是 PPT;

2. 架构文档涵盖的内容请参考模块 3 第 4 课,细化架构设计参考模块 3 第 6 课;

3. 外包学生管理系统的业务请参考模块 1 第 5 课的课件;

4. 架构文档模板可以参考:架构实战营详细架构设计文档模板


前言

本文是 X 大学学生管理系统需求详细架构设计文档,用于指导学生管理系统后续的开发、测试和运维。


词汇表

Nginx:高性能的 HTTP 和反向代理 web 服务器

Mysql:关系型数据库管理系统


1. 业务背景

随着学校的规模的不断扩大,学生数量的增加,需要处理的信息也日趋增大。不仅花费大量的教师资源,处理效率也十分低下。

为提高学生管理的管理水平,优化资源,尽可能降低管理成本成为学生管理的新课题,学生管理系统是从学生管理现状出发,根据学生管理的新要求进行开发设计的,它需要解决学生信息管理数据信息量大修改不方便,对一系列数据进行分析时花费时间长等问题,帮助学生管理人员有效管理学生信息。

因此学生信息管理系统可以通过系统规范化地管理、科学性统计和快速查询、修改、增加、删除等,提高信息的准确度以及日常管理的工作效率。

本系统主要是应用于学生各类信息的管理,总体任务是实现学生信息关系的系统化、规范化、自动化,其主要任务是统计学生各类信息进行日常管理,如查询、修改、增加、删除、以及学生选课、成绩的查询等功能设计的管理系统。



2. 约束和限制

  1. 必须在 2022 年 1 月 31 日开学前完成

  2. 成本不能超过 30 万

  3. 尽可能保证数据安全


3. 总体架构

待补充:系统边界白盒图

3.1 架构分析


3.1.1 高可用

系统要保证一定的可靠性,数据不可完全丢失,在意外丢失部分数据后,可人工进行补录;

可容忍的宕机时间为小时级,学生时间相对充裕,偶尔宕机不会影响使用。

3.1.2 高性能

在校学生数量预计:大一至大四每级 5 千人,共 20000 人,研究生博士生共 7000 人,教职工人数 3000 人。

待完善,结论应该是高性能问题不存在

估算 TPS QPS


3.1.3 可扩展

为了后续业务需求的复杂度和变化性,需要在一定程度上满足可扩展性。

综合来看,学生管理系统需要满足数据高可用和功能需求可扩展。


3.2 总体架构



1)平台拆分为“学生子系统”、“课程子系统”、“权限子系统”三个模块,降低因为一台服务器故障对其他功能造成的影响

2)数据库使用 MySQL 主备方案,保证数据的安全,当主库宕机或损坏,切换到备机继续运行,并恢复主库。

3)使用 Nginx 将请求分发到相应的服务器

4)后续扩展功能只需要在相应的模块中添加补充或者新增模块。


4. 详细设计


4.1 核心功能


4.1.1 学生管理

待补充序列图

4.1.2 课程管理

待补充序列图

4.1.3 考试管理

待补充序列图

4.1.4 权限管理

待补充序列图

4.2 关键设计

  • 业务拆分成三个模块,利于以后平台复杂功能的扩展

  • 利用 Nginx 反向代理,将请求分发到相应的服务器,不影响其他模块功能及性能

  • 数据库采用主备存储,一定程度上保证了数据的可靠性,降低数据丢失的风险,当主库宕机,人工切换至备库。

  • 前后端基于 HTTP+JSON 进行数据交互


4.3 设计规范

  • 业务模块开发使用 Spring Boot + Mybatis

  • MySQL 使用 InnoDB 存储引擎

  • 数据传输使用 HTTP+JSON

5. 质量设计

5.1 可测试性设计

单元测试

5.2 可维护性设计

运维以人工为主

5.3 可观测性设计

操作日志查询

5.4 安全/成本设计

数据不完全丢失;

成本控制在 30W;


6. 演进规划

  • 6.1 项目一期

  • 完成“学生子系统”、“课程子系统”、“权限子系统”功能的开发、测试、上线

  • 6.2 项目二期

  • 上线运行后,根据实际运行情况进行功能调整、完善

  • 建立服务监测模块

发布于: 2021 年 11 月 11 日阅读数: 12
用户头像

dean

关注

还未添加个人签名 2019.11.06 加入

还未添加个人简介

评论

发布
暂无评论
模块三作业:外包学生管理系统架构文档