写点什么

模块三 - 外包学生管理系统架构

作者:小何
  • 2021 年 11 月 13 日
  • 本文字数:1647 字

    阅读完需:约 5 分钟

前言

本文是针对院校的外包学生管理系统详细架构设计文档,用于指导学生管理系统后续的开发、测试和运维

 

词汇表

     高可用:通常来描述一个系统经过专门的设计,从而减少停工时间,而保持其服务的高度可用性

     高性能:高并发,高吞吐量,低延时

     可扩展:用于处理大量的工作或更易轻松扩展,用于响应对网络,任务处理,数据库访问或文件系统资源需求的增加

    

1. 业务背景

 

随着学校的规模不断扩大,学生数量的增加,需要处理的信息也日趋增大,由此给学校对学生的管理方面造成了极大的不便:

1.   需要花费大量的教师资源,而且处理效率极其低下

2.   学生信息管理数据信息逐步增大,修改不方便

3.   针对学生数据信息分析花费时间太长

 

基于以上背景,我们需要从学生管理现状出发,根据学生管理的新要求进行开发设计,优化资源,尽可能降低管理成本,帮助学生管理管理人员有效的管理学生信息。

2. 约束和限制

     A:一期交付时间截止到 2022-01-15

     B:开发成本控制在 50w 以内

     C:尽量保证数据的可用性

 

3. 总体架构

3.1 架构分析

3.1.1 高可用

学校的教学并不完全依赖于系统,系统处于挂机状态其实对学校来说影响并不是很大,但是对于学生信息的丢失要求是比较严格的,所以整个系统并没有高可用要求,但是数据高可用这块需要考虑到

3.1.2 高性能

一个学校最多可能就几万个人,对于一个系统处理性能来说来说,性能要求并不会高

3.1.3 可扩展

系统的需求相对来说还是比较复杂的,多人合作开发,需要考虑扩展性

3.2 总体架构

 


4. 详细设计

4.1 核心功能

4.1.1 学生子系统

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

·         账号分配:学生账号由系统生成,给定相应权限,可进行密码更改。

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

·         组织管理层级:按学生实际情况划分归属

·         文件上传/下载:此功能针对所有用户开放,学生可以将自己课堂笔记、日常作业等相关信息在线传输。

·         信息查询:此项功能包含课程查询、成绩查询、文件查询。

4.1.2 课程子系统

·         课程录入:由管理员对相应课程体系进行录入,供学生、教师进行在线选择。

·         选课功能:学生可以在线对自己的课程体系进行选择,相对应的课程选择功能类比。

·         排课功能:此功能根据学生选定的课程和教学体系安排,对相应教师、教室、时间进行统一规划安排。

·         教材选择:此功能由教务统一管理,根据每门课程选定相应教材。

·         试卷区域分割:发起考试:期中的时候,教师可以创建一次考试。

·         平时成绩:此项功能包含学生平时所有相关成绩信息。

·         评分判定:教师使用系统对上传的试卷分割区域作出相应的评分。

4.1.3 权限子系统

·         系统使用者有学生、教师、管理员、辅导员。

·         学生、教师、辅导员可以注册、登录、修改自己的信息,但注册信息需要管理员审核通过。

·         学生只能查看自己的成绩,教师可以修改学生的成绩。

·         辅导员可以查看学生的信息,可以设置学生的奖惩信息。

·         教师可以上传考试试题,学生可以做题。

4.2 关键设计

学生信息要保证一定的高可用,数据库存储采用 MySQL 主备两台服务器,MySQL 服务之间通过复制以保证数据存储高可用。

 

4.3 设计规范

a)   采用前后端分离模式开发,restful+json 传输

b)   技术选型:springboot+mysql+vue

5. 质量设计

a)   可测试性:关键接口进行单元测试

b)   可维护性:部分接口提供内部访问机制,可进行内部变量修改

c)   可观测性:集成开源日志框架,后台管理进行监控

d)   成本:开发成本控制在 50w 以内

 

6. 演进规划

a)   一期:学生管理,权限管理

b)   二期:课程管理,考试管理

规划两期完成,一次性交付

用户头像

小何

关注

还未添加个人签名 2018.03.19 加入

还未添加个人简介

评论

发布
暂无评论
模块三-外包学生管理系统架构