模块三作业
外包学生管理系统详细架构设计
前言
本文是外包学生管理系统详细架构设计文档,用于指导外包学生管理系统的后续的开发,测试与日常营运
词汇表
无
1. 业务背景
随着学校的学生人数不断增多,学生进行选课越来越多样性,有必要提供一个针对学生管理的系统。
2. 约束和限制
数据库采用 mysql
前后端采用 json 交互
要有监控能力
3. 总体架构
3.1 架构分析
3.1.1 ,高性能
学生管理系统,主要是针对在校学生的信息与课程管理,大学是相对人数较多的,以每个学校 10W 人为最高值估算,数据量不算大,要求录入的信息数据不能丢失。
高性能:数据不能丢失,学生信息与课程信息等不能丢失。
3.2 总体架构
架构同 3.1
架构分为学生管理,课程管理,权限管理,
学生管理分为学生个人档案信息管理,学生的学籍管理,选课管理等
课程管理分为课程信息管理,课程与学生的选课等
权限管理分为登录安全认证管理,管理员权限管理,学生权限管理等。
4. 详细设计
[必选,描述核心场景或者流程的实现机制]
4.1 核心功能
[必选,描述核心场景或者流程的实现机制,对应 4R 架构中的 Rule,每个核心场景一个小节]
[样例:
4.1.1 消息发送流程
4.1.2 消息消费流程
]
[技巧:使用系统序列图来描述 Rule,跟项目开发中写设计文档一样的写法]
4.1.1 学生管理:
学生信息管理,系统提供学生可以查看自已的学籍信息,自已选的课程信息,自已的考试成绩等
4.1.2 课程管理
课程管理 对所有本校的课程进行展示,介绍,教课老师的介绍等,可提供学生进行选课功能等
4.2 关键设计
学生的信息录入,课程录入成功后提供展示,针对错误信息可修改。数据入库如果失败,要求整条信息回滚。针对学生,老师,管理员进行身份验证,提供不同的权限。权限由管理员统一管理。
4.3 设计规范
1 使用 spring boot 开发,
2 MySQL 使用 Innodb 存储引擎
3 连接池使用 druid
4 使用 redis 缓存
5. 质量设计
可测试性,相关接口的测试必须返回有意义的信息,异常需要提供不同的提示,传送到前端的提示必须是转义过的。
可维护性 ,提供本系统的操作手册,运维人员可操作手册进行相应的维护工作。
6. 演进规划
6.1 一期:数据主表设计,服务端实现三个子管理的功能研发,提供可调用接口,前端基于原型图实现与服务端的交互。
6.2 二期:系统管理员进行权限分配。进行功能测试。
版权声明: 本文为 InfoQ 作者【novoer】的原创文章。
原文链接:【http://xie.infoq.cn/article/540ef3edacbb06793555f3d98】。未经作者许可,禁止转载。
评论