军舰队——项目系统设计与数据库设计

这个作业属于哪个课程 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分析+表结构设计


系统安全和权限设计

  1. 后端操作数据库采用Django的ORM进行操作,防止SQL注入
  2. 使用JWT来进行登陆校验,有效保证安全性
  3. 微信小程序平台强制要求与后端的交互采用HTTPS形式,数据传输的安全性得到了保证
  4. 微信小程序平台利用白名单的形式限制了与后端交互的域名,一定程度上保证了数据来源合法性
  5. 用户输入数据的合法性通过前后端双重校验。前端主要采用关键词过滤,后端通过WAF(通用防御)、字符转义、关键位置严格过滤等方法来保证用户输入数据的合法性
  6. 严格要求后端代码的逻辑性,避免出现严重错误导致越权、数据泄露等安全问题
  7. 由于管理员的功能需要通过Web端实现,此时小程序用户的输入就极有可能导致XSS、CSRF等安全性问题,因此在后端验证用户输入数据时要考虑到各种情况,避免出现安全问题
  8. 用户权限分为普通用户和管理员用户,严格限制普通用户的权限,避免用户影响系统安全性
  9. 完善日志记录和数据备份,在出现意外情况时,能够快速定位问题、迅速修复漏洞、急速恢复运行

设计思路

需求分析评审问题及改进部分、过程

问题回答

  • 用户怎么匹配现实中的猫猫和小程序中的猫猫(假如两只猫猫长得很像)?

如果技术条件允许的话,可以先让用户拍照,利用图像识别技术来匹配。如果时间不够,仍然可以通过猫猫颜色、地域等因素
来判断。鉴于小程序是面向福州大学的,这样用户能够辨认猫猫的概率也很高。

  • 如果有你们的小程序有危险动物提醒,要怎么提醒用户和上传危险动物信息?

提醒功能就是小程序的预期功能之一,它能够在小程序首页的上方显示提醒信息。它提醒的内容主要是关注的猫猫的状况。
我们小程序的主要目标是细化到只关注猫猫的喂食信息。一般不会再提供危险的动物的信息。
但是如果有危险动物的信息的话,我们会根据你所在的地域提醒你此处有某某危险动物,请小心。至于新建危险动物的信息,新建按钮
和新建信息我们可能会放在科普区。

  • 目前的工作量(研发时间与编码行数)对于目前9个人而言,足够吗?

回答:我们的这个项目,除了展示的原型之外,还有一个网页端的管理员后台系统。单从目前内容上看,可能会觉得我们的编码量和学习量会比较少,可是组内大多人在代码方面基础较为薄弱,目前还需通过布置定期的学习任务来确保接下来的开发质量。此外,我们在设计小程序的时候,参考了很多小程序大赛的优秀作品,重点考虑了小程序的性能问题和使用情况,认为小程序还是要足够“轻”,不希望设计出来的小程序运行起来会很卡,所以优先周到地解决具体需求,原型设计留下增加功能的余地,运行情况足够理想再多加小功能提高用户体验,让小程序“小”而“精”。

改进部分和改进过程

  • 改进部分:
    • 1.首先我们改进了管理员端的功能。原本我们组的管理员界面非常简陋,但是在需求分析之后,我们决定
      制作一个管理员端的网页来管理小程序。
    • 2.其次我们对小程序的页面做了改进,增加了一个关注的悬浮球和一个新建猫猫档案的悬浮球,这会让用户使用小程序的时候
      更加方便快捷。
  • 改进过程:
    • 1.第一个改进 组长在开会的时候分配了组员来完成管理员端的网页,并且明确了管理员管理的部分有哪些(主要有猫猫资料的审核、讨论区帖子的管理等)。
      相信这个优化会让管理员管理起来更加便捷。
    • 2.第二个改进 我们首先调整了原型模型,这样开发的时侯可以依据原型模型来更好地开发。并且在开发的分工任务上也增加了悬浮球及点击页面的工作。

工作流程、组员分工、组员贡献度比例

工作流程

作业发布之后,首先组长组织线下会议,决定成员的分工,并且使用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

github团队仓库链接和相关文档下载链接

posted on 2020-11-08 20:29  军舰队  阅读(277)  评论(0)    收藏  举报