军舰队——项目系统设计与数据库设计
| 这个作业属于哪个课程 | https://edu.cnblogs.com/campus/fzu/SE2020 |
|---|---|
| 这个作业要求在哪里 | https://edu.cnblogs.com/campus/fzu/SE2020/homework/11447 |
| 这个作业的目标 | 项目系统设计与数据库设计;团队预期开发计划分工时间安排和分工安排 |
| 作业正文 | 系统设计说明;问题和改进;成员贡献度;github和文档链接 |
| 其他参考文献 | ... |
目录
团队项目的预期开发计划时间安排
| 日期安排 | 前端管理员端 | 前端(小程序端开发) | 后端 |
|---|---|---|---|
| 11.2(第10周) | 原型模型设计 | 原型模型设计 | 需求分析 |
| 11.8 | 实现登录接口 | 实现登录接口 | 后端实现登录接口(管理员、用户) |
| 11.9(第11周) | 新建猫猫(上传猫猫信息、图片等) | 首页查看猫猫地图及相应列表 | 猫猫信息录入、审核接口 |
| 11.11 | 审核猫猫 | 查看猫猫信息 | 喂食记录、用户反馈接口 |
| 11.14 | 用户反馈、完善之前的接口 | 查看喂食记录 | 帖子及其评论接口 |
| 11.17(第12周) | 增删改帖子、留言 | 查看帖子、留言 | 完善 |
团队项目的预期开发计划分工安排
| 前端(小程序端开发) | 前端(管理员端) | 后端 | 文档开发 | ppt开发 | 原型设计 |
|---|---|---|---|---|---|
| 应俊杰 登录 | 刘国强 | 陈龙辉 | 陈凯强 | 杨静 | 刘紫苑 |
| 陈凯强 前端-科普页面 | |||||
| 王延鹏 前端-档案-测试 | |||||
| 张雨晗 前端-个人界面 | |||||
| 涂仲科 前端-科普-测试 |
系统设计说明
体系结构设计+功能模块层次图


设计类图

ER分析+表结构设计


系统安全和权限设计
- 后端操作数据库采用Django的ORM进行操作,防止SQL注入
- 使用JWT来进行登陆校验,有效保证安全性
- 微信小程序平台强制要求与后端的交互采用HTTPS形式,数据传输的安全性得到了保证
- 微信小程序平台利用白名单的形式限制了与后端交互的域名,一定程度上保证了数据来源合法性
- 用户输入数据的合法性通过前后端双重校验。前端主要采用关键词过滤,后端通过WAF(通用防御)、字符转义、关键位置严格过滤等方法来保证用户输入数据的合法性
- 严格要求后端代码的逻辑性,避免出现严重错误导致越权、数据泄露等安全问题
- 由于管理员的功能需要通过Web端实现,此时小程序用户的输入就极有可能导致XSS、CSRF等安全性问题,因此在后端验证用户输入数据时要考虑到各种情况,避免出现安全问题
- 用户权限分为普通用户和管理员用户,严格限制普通用户的权限,避免用户影响系统安全性
- 完善日志记录和数据备份,在出现意外情况时,能够快速定位问题、迅速修复漏洞、急速恢复运行
设计思路
需求分析评审问题及改进部分、过程
问题回答
- 用户怎么匹配现实中的猫猫和小程序中的猫猫(假如两只猫猫长得很像)?
如果技术条件允许的话,可以先让用户拍照,利用图像识别技术来匹配。如果时间不够,仍然可以通过猫猫颜色、地域等因素
来判断。鉴于小程序是面向福州大学的,这样用户能够辨认猫猫的概率也很高。
- 如果有你们的小程序有危险动物提醒,要怎么提醒用户和上传危险动物信息?
提醒功能就是小程序的预期功能之一,它能够在小程序首页的上方显示提醒信息。它提醒的内容主要是关注的猫猫的状况。
我们小程序的主要目标是细化到只关注猫猫的喂食信息。一般不会再提供危险的动物的信息。
但是如果有危险动物的信息的话,我们会根据你所在的地域提醒你此处有某某危险动物,请小心。至于新建危险动物的信息,新建按钮
和新建信息我们可能会放在科普区。
- 目前的工作量(研发时间与编码行数)对于目前9个人而言,足够吗?
回答:我们的这个项目,除了展示的原型之外,还有一个网页端的管理员后台系统。单从目前内容上看,可能会觉得我们的编码量和学习量会比较少,可是组内大多人在代码方面基础较为薄弱,目前还需通过布置定期的学习任务来确保接下来的开发质量。此外,我们在设计小程序的时候,参考了很多小程序大赛的优秀作品,重点考虑了小程序的性能问题和使用情况,认为小程序还是要足够“轻”,不希望设计出来的小程序运行起来会很卡,所以优先周到地解决具体需求,原型设计留下增加功能的余地,运行情况足够理想再多加小功能提高用户体验,让小程序“小”而“精”。
改进部分和改进过程
- 改进部分:
- 1.首先我们改进了管理员端的功能。原本我们组的管理员界面非常简陋,但是在需求分析之后,我们决定
制作一个管理员端的网页来管理小程序。 - 2.其次我们对小程序的页面做了改进,增加了一个关注的悬浮球和一个新建猫猫档案的悬浮球,这会让用户使用小程序的时候
更加方便快捷。
- 1.首先我们改进了管理员端的功能。原本我们组的管理员界面非常简陋,但是在需求分析之后,我们决定
- 改进过程:
- 1.第一个改进 组长在开会的时候分配了组员来完成管理员端的网页,并且明确了管理员管理的部分有哪些(主要有猫猫资料的审核、讨论区帖子的管理等)。
相信这个优化会让管理员管理起来更加便捷。 - 2.第二个改进 我们首先调整了原型模型,这样开发的时侯可以依据原型模型来更好地开发。并且在开发的分工任务上也增加了悬浮球及点击页面的工作。
- 1.第一个改进 组长在开会的时候分配了组员来完成管理员端的网页,并且明确了管理员管理的部分有哪些(主要有猫猫资料的审核、讨论区帖子的管理等)。
工作流程、组员分工、组员贡献度比例
工作流程
作业发布之后,首先组长组织线下会议,决定成员的分工,并且使用Leangoo进度管理。
接下来的几天,成员完成自己的工作,有问题再群里面讨论沟通;并组织第二次线下会议,为周六的现场编程做准备。
最后在剩下来的几天,成员在线上讨论完善本次博客作业。
贡献表
| 学号 | 工作内容 | 贡献度 |
|---|---|---|
| 031802638 | 编写系统结构说明书 | 6.2 |
| 031802303 | 编写数据库设计说明书+ER图+类图 | 6.8 |
| 031801212 | 制作PPT | 5.2 |
| 031802530 | 写博客 | 5.4 |
| 031802322 | 团队讨论 | 4.3 |
| 031802302 | 数据库设计说明书 | 5.2 |
| 031802427 | 团队讨论 | 3.7 |
| 151803103 | 团队讨论 | 4.0 |
| 031802320 | 团队讨论 | 4.2 |
浙公网安备 33010602011771号