写点什么

架构实战营 1 期第三模块作业

用户头像
五只羊
关注
发布于: 2 小时前

前言

本文是外包学生管理系统架构文档

词汇表

1. 业务背景

随着学校的规模的不断扩大,学生数量的增加,需要处理的信息也日趋增大。不仅花费大量的教师资源, 处理效率也十分低下。 为提高学生管理的管理水平,优化资源,尽可能降低管理成本成为学生管理的新课题,学生管理系统是从 学生管理现状出发,根据学生管理的新要求进行开发设计的,它需要解决学生信息管理数据信息量大修改 不方便,对一系列数据进行分析时花费时间长等问题,帮助学生管理人员有效管理学生信息。 因此学生信息管理系统可以通过系统规范化地管理、科学性统计和快速查询、修改、增加、删除等,提高 信息的准确度以及日常管理的工作效率。 本系统主要是应用于学生各类信息的管理,总体任务是实现学生信息关系的系统化、规范化、自动化,其 主要任务是统计学生各类信息进行日常管理,如查询、修改、增加、删除、以及学生选课、成绩的查询等 功能设计的管理系统。

2. 约束和限制

1. 系统登录:此功能面向所有用户角色,根据用户角色权限不一,功能权限也不一样。

 2. 账号分配:学生账号由系统生成,给定相应权限,可进行密码更改,无法对系统成绩评定等功能做出相应干 涉。教师账号由管理者(教务)通过系统生成,教师有对学生成绩评定和试卷评定的权限,同时兼容学生权 限。管理(教务)权限由系统固有账号,是系统 root 权限,对教师有分配管理权限,对数据有增加、修改、 删除、查询权限。

 3. 账号绑定:学生账号可通过第三方如:手机号码、微信等自行绑定,可实现账号自助找回等。

4. 组织管理层级:按学生实际情况划分归属。 例如:软件学院—数字传媒方向(专业)—软件 1306—苗雨 乔。

5. 文件上传/下载:此功能针对所有用户开放,学生可以将自己课堂笔记、日常作业等相关信息在线传输,教 师通过学生上传的相关作业、试卷信息进行相应评定,完成对学生平时成绩的评定。此功能一旦评定结束,所 有用户只有查询、浏览的权限,除管理员外其他用户没有对成绩修改的权限。

 6. 信息查询:此项功能包含课程查询(含课程体系、课时安排、课表、教师、教材等)、成绩查询、文件查 询

3. 总体架构

3.1 架构分析

对于最高只有几万学生的管理系统而言,不需要多高的性能,但如果消息丢失,维护起来是非常麻烦的事情,因此要求数据要高可用。因业务需求可变化,较复杂,在可扩展性方面有一定的要求。因为是学校自己管理,安全方面可以不多加考虑。

3.2 总体架构



1)为防止数据丢失,采用主备数据复制方式,包括一台主 mysql,和一台备 mysql。

2)采用 Nginx 服务器

3)将系统分为学生子系统,课程子系统,权限子系统。

4. 详细设计

4.1 核心功能


4.2 关键设计

信息存储在 MYSQL 中,一主一备两台 MYSQL 服务器,MYSQL 服务器之间复制消息以保证消息存储高可用

4.3 设计规范

5. 质量设计

三个独立子系统易于测试和维护,但在成本方面却增加了时间成本

6. 演进规划

根据学校能力,可降低成本,例如将 Nginx 服务器换成已有的 DNS 服务器,或将子系统集中到一个业务服务器中,降低时间成本。

 


用户头像

五只羊

关注

还未添加个人签名 2021.03.30 加入

还未添加个人简介

评论

发布
暂无评论
架构实战营1期第三模块作业