资煌麻辣烫——项目系统设计与数据库设计
软件工程 | https://edu.cnblogs.com/campus/zswxy/software-engineering-2017-1 |
---|---|
作业要求 | https://edu.cnblogs.com/campus/zswxy/software-engineering-2017-1/homework/10829 |
团队名称 | 资煌麻辣烫 |
作业目标 | 项目系统设计与数据库设计 |
作业正文 | |
参考文献 | 《系统设计说明书》《数据库设计说明书》 |
团队项目预期开发计划时间安排
此表设想计划,仅供参考,具体时间视具体完成情况而定
日期 | 预定目标 |
---|---|
4.18 | 项目设计 |
6.3-6.7 | 移动端界面设计 |
6.13-6.14 | 数据库设计 |
6.15-6.16 | 实现移动端后台 |
6.17-6.27 | 移动端功能设计与实现 |
6.28-6.30 | 后端的后台实现 |
7.1-7.3 | 后端的前台实现 |
7.4 | 登录授权实现 |
7.5 | 测试与修改 |
团队项目预期开发计划分工安排
成员 | 负责部分 |
---|---|
邹翰林 | 前端实现,部分团队任务 |
陈宣任 | 后期软件测试,部分团队任务 |
资煌 | 后台实现,部分团队任务 |
尹筝弈 | 博客园编写,部分团队任务 |
王颖 | 前端实现,部分团队任务 |
肖雨馨 | 前端实现,部分团队任务 |
邓畅伟 | 后台实现,部分团队任务 |
唐良秀 | 前端实现,部分团队任务 |
陈星捷 | 需求分析,部分团队任务 |
何亚男 | 前端实现,部分团队任务 |
胡雨婕 | 前端实现,部分团队任务 |
体系结构设计+功能模块层次图
体系结构设计采用MVVM框架
新版教务系统由用户模块和后台管理模块组成,用户模块由绑定教务、登录、查询信息、校园功能、反馈意见、个人信息6个功能组成,后台管理模块由更新数据、管理用户、管理界面、管理教务、管理校园5个功能组成。用户可通过查询信息功能查询成绩、课表、空教室、重修、绩点、CET成绩、作息时间,通过校园功能查看校园电话簿、校园新闻、全景校园、学校通知,通过反馈意见联系开发团队,反馈需求与希望以及给软件评分。后台管理员可以更新校园电话、查询重修等数据,增删改查用户,通过管理界面来管理轮播图和菜单项,通过管理教务来管理重修信息,还可以管理校园电话簿。
功能模块层次图
从学生角度,满足一名在校大学生在学校的一切基本需求,包括查询成绩、课表、空教室、绩点、重修、CET成绩、作息时间、校园电话簿,查看校园新闻、全景校园、学校通知,意见收集同校交友、学校信息的了解等日常需求;
从老师角度,老师可以发布教学信息以及考试成绩的通知,同时满足特殊情况下老师方便查询空教室进行调课等需求;
从学校管理者角度,可以更新数据,管理用户,管理公众号菜单,管理自动回复,管理界面图片,管理界面功能,管理信息通知发布;能有效了解到学生们的需求以及学生对上课的满意度和建议,同时能准确了解到各年级的学习情况。
设计类图
类描述:
整体说明:来描述使用该系统的类
返回统一消息的信息:code succeed message commoncode等等
操作说明:返回信息
功能类
整体说明:用户来实现的功能
操作说明:增删改查
继承描述
一般类:学生
特殊类:老师、管理员
依赖描述
学校通知管理类包含重修控制类,作息时间管理类。
ER分析+表结构设计
数据库ER图
表结构分析
系统安全和权限设计
可能存在的隐患
1.因为设计缺陷导致的意外行为:数据的丢失、用户数据的泄露、软件Bug的出现等
2.因为用户行为导致的错误情况:用户的恶意输入、越权访问或操作、恶意盗号等
针对方法
1.设计行为:
降低软件和接口的复杂性
提高软件的健壮性
2.用户行为:
最小化用户权限
重点对前端输入信息进行验证
对密码进行加密处理
提供身份信息识别功能
安全性设计
CSRF ( cross-site request forgery )跨站请求伪造
通过配置文件,设定限制请求域
SQL 注入
采用微信 OAuth2.0 授权登录,不存在SQL注入
本次作业完成情况
本次作业由组长按《系统设计说明书》的内容,对组员进行相应任务的分配
具体的任务分工以及完成情况如下
组员 | 任务 | 贡献度 |
---|---|---|
邹翰林 | “系统总体设计”部分 | 9% |
陈宣任 | “安全性设计”部分 | 7% |
资煌 | “程序模块设计”部分 | 9% |
尹筝弈 | “博客园编写” | 8% |
王颖 | “引言”部分 | 7% |
肖雨馨 | “程序模块设计”部分 | 9% |
邓畅伟 | “数据库设计”部分 | 18% |
唐良秀 | “系统总体设计”部分 | 9% |
陈星捷 | “安全性设计”部分 | 7% |
何亚男 | “系统总体设计”部分 | 9% |
胡雨婕 | “程序模块设计”部分 | 8% |