【团队项目3】需求改进&系统设计
一、需求 & 原型改进
1、针对课堂讨论环节老师和其他组的问题及建议,对修改选题及需求进行修改
根据用户反馈,我们针对如下问题做了修改:
问题1:如何保证机构是否是官方的?平台是否有监管?
修改1:我们对管理员要求进行手机号绑定,以及进行实名验证。最后,机构创建时需要提供加盖机构公章的证明文件或者聘书等证明材料。机构的创建需要进行审核。
问题2:我如何快速找到自己经常关注的社团的活动信息?
修改2:增加关注功能,关注的机构的活动再列表中展示时,将获得显著星标的标识,能够一眼明显区分。
2、 修改完善上周提交的需求规格说明书
用户故事1:
闲得无聊,打开 iGDUT 小程序,看看活动墙有啥好玩的新活动。欸好像这个不错,于是点开查看详情,了解了活动信息之后,前往参加活动。
用户故事2:
我是学生会新媒体部门的干事。现在学生会举办了一个活动,想要宣传,但是推文的阅读量不是很高。我发现 iGDUT 上有一个活动墙,上面发布的活动好像都挺高的曝光量。于是我注册了机构,并且将活动推文一键导入进去,发布了出来,获得了较好的宣传效果。
二、系统设计
后台架构设计

小程序端,Web端(统称前端),发送请求到云端,云端维持一个Nginx反向代理模块,将接受到到的请求,进行分发到不同业务逻辑服务器,实现负载均衡,各个业务逻辑处理服务器模块接收到请求后,进行处理,调用数据库模块,实现数据持久化。
注册流程

机构负责人进入Web管理后端,注册身份,输入自己的学号,姓名等信息,Web端请求后端,将学号,姓名信息上传至云端
云端调用微信接口,生成唯一的序列号的二维码,并对应前端传入的学号,姓名,存进数据库模块(序列号表),设置二维码状态
用户扫描二维码进入小程序端,选择绑定 iGDUT 小程序用户,小程序端将序列号以及小程序端的用户信息(学号,姓名)上传至云端
云端根据小程序端上传的信息,查询系列号表,进行比对验证Web端与小程序端绑定的用户信息是否一致,如果一致,修改二维码状态为已绑定,返回确认信息给小程序端,否则设置二维码状态为无效。
Web端轮询云端,二维码状态,当二维码状态绑定成功之后,用户可以选择注册,并将机构,手机号等信息上传至云端
进入注册流程的最后一步,云端根据序列号去序列号表查询到用户数据,并且将注册上传的机构名等信息,记录存进机构表以及用户表。
数据库ER图

各表信息:
① user_info:
Sno:学号
Sname:姓名
Phone:手机号
② institution:
Inst_id:机构ID
Inst_name:机构名
Super_Manager:超级管理员
Manager_1:管理员1
Manager_2:管理员2
Manager_3:管理员3
Manager_4:管理员4
Manager_5:管理员5
③ identifier:
iden_string:验证身份使用的标识字符串
status:二维码状态位,4种状态
④ content:
Inst_id:活动文章发布机构ID

登录流程:
① 在Web端点击登录,会弹出与小程序端相关的登陆二维码,二维码有唯一的不重复的验证标识字符串。
② 扫描二维码后,二维码的状态改变
③ 二维码返回学号、姓名等信息传进后台进行查询,验证是否该用户是否已经注册。
④ 若数据库中没有该用户信息,说明未注册账号,登陆失败。将登陆失败原因反馈给使用者,结束。
⑤ 若存在该用户信息,将与该用户信息对应的绑定机构(如广东工业大学学生会、广东工业大学红十字会等)弹出供用户选择要进行后续操作的相应机构。
⑥ 登录成功,结束。
前端架构设计
框架
采用 Vue.js 作为主要开发框架。
- 使用
iview作为 UI 框架 - 使用
sass作 CSS 预处理 - 使用
vuex作状态管理 - 使用
vue-router作路由控制 - 使用自动化工具
webpack对项目进行打包
目录结构


模块划分
| 模块概述 | 功能描述 | |
|---|---|---|
| 登录 | ||
| 注册 | ||
| 平台首页 | 1.展示用户基本信息(包括头像、所属机构); 2.展示滚动式公告栏 3.展示总体统计数据,包括昨日阅读量、新增人数、总用户数 |
|
| 活动管理 | 1.用户进入页面后即可查看已发布活动列表 2.用户可以发布活动 3.用户可以对已自行发布的活动进行修改、删除操作,点击修改按钮后跳转进入新页面 4.建立搜索功能 |
|
| 数据统计 | 1.统计已发布活动数以及阅读量 2.统计单篇活动阅读量 |
|
| 发布活动 | 1.为用户提供一个富文本编辑器,可供用户实时编辑活动内容、插入活动封面等 2.支持从微信公众号推文一键导入,生成专属活动内容。 |
|
| 修改活动 | 1.用户可在富文本编辑器直接编辑修改已发布活动内容 |

组件划分
公共组件
公共组件由于具有一次注册,全局使用的特点,所以主要是页面通用的组件。
- 页面底部(Footer)组件
页面组件
由于框架按功能划分模块,页面由模块组成,页内组件按模块进行分类。
三、 Alpha 任务分配计划
Alpha 阶段迭代冲刺计划甘特图

详细任务分配列表:
| 任务 | 工期 / d | 优先级 | 开发人员 |
|---|---|---|---|
| 开发登录页 | 1 | 高 | 莫少政 |
| 开发注册页 | 2 | 高 | 莫少政 |
| 开发登录功能(后台) | 1 | 高 | 余泽端,温治乾 |
| 开发注册功能(后台) | 1 | 高 | 余泽端,温治乾 |
| 开发 Web 端首页 | 1 | 高 | 黄思扬 |
| 开发内容管理页 | 1 | 中 | 黄思扬 |
| 开发账号详情页 | 1 | 低 | 黄思扬 |
| 开发图文编辑页 | 2 | 高 | 黄思扬 |
| 开发数据统计页 | 2 | 低 | 黄思扬 |
| 开发小程序活动列表页 | 1 | 高 | 莫少政 |
| 开发小程序活动详情页 | 1 | 高 | 莫少政 |
四、测试计划
4.1 测试计划
(1) 测试的总体策略和方法:
1) 静态方法,通过分析或检查源程序的文法、结构、过程、接口等来检查程序的正确性,而不运行测试程序
2) 动态方法,通过运行被测程序,检查运行结果与预期结果的差异,并分析运行效率和健壮性等性能,这种方法由三部分组成:构造测试实例、执行程序、分析程序的输出结果
3) 具体方法:
1 单元测试 检验软件基本组成单位的正确性
2 集成测试 检查软件单位之间的接口是否正确
3 系统测试 主要包括功能测试、界面测试、可靠性测试、易用性测试、性能测试
4 回归测试 在软件维护阶段,为了检测代码修改而引入的错误所进行的测试活动
(2) 测试日程安排:第11,12周前半段进行静态测试方法,第12,13周进行动态测试方法
(3) 质量目标:

(4)资源:项目相关人员:这次稳了团队;项目开发时间:3周,11-13周
(5)测试变量矩阵:
| 用户类型 | 屏幕分辨率 | 操作系统 | 浏览器 | |
|---|---|---|---|---|
| 数目 | 3 | 3 | 3 | 3 |
| 学生 | 1280x720 | 安卓7.0 | 谷歌浏览器 | |
| 老师 | 1920x1080 | 安卓8.0 | 火狐浏览器 | |
| 机构或组织管理人 | 1280×1024 | 安卓9.0 | 360极速浏览器 |
【团队项目3】需求改进&系统设计的更多相关文章
- 高级软件工程2017第5次作业—— 团队项目:需求改进&系统设计
Deadline:2017-10-23(周一) 21:00pm 注:以下内容参考 集大作业 1.评分规则: 按时交 - 有分,检查的项目包括后文的四个方面 需求&原型改进 - 20分 系统设计 ...
- 团队项目之需求改进&系统设计
小组:BLACK PANDA 需求&原型改进 20分 需求&原型改进: https://git.lug.ustc.edu.cn/black-panda/mblogs_plan/bl ...
- 【集美大学1411_助教博客】团队作业3——需求改进&系统设计 成绩
看到同学们越来越认真了,助教非常高兴.大家已经开始了alpha冲刺,请控制好进度.成功的关键就是不断迭代,不断迭代. 关于leangoo 我看到所有组的同学都已经开始使用leangoo,请大家把助教加 ...
- 【2017集美大学1412软工实践_助教博客】团队作业3——需求改进&系统设计 成绩公示
第三次团队作业成绩公布 题目 团队作业3: 需求改进&系统设计 团队成绩 成绩公示如下: 缩写 TD BZ GJ CJ SI WBS GS JG DB SS SJ CS DC Total 分值 ...
- 集美大学网络1413第七次作业成绩(团队三) --需求改进&系统设计
题目 团队作业3--需求改进&系统设计 团队作业3成绩 团队/分值 TD BZ GJ CJ SI WBS GS JG DB SS SJ CS DC 总分 1 0.25 0.75 1 0.5 ...
- 【1414软工助教】团队作业3——需求改进&系统设计 得分榜
题目 团队作业3--需求改进&系统设计 作业提交情况情况 本次作业所有团队都按时提交作业. 往期成绩 个人作业1:四则运算控制台 结对项目1:GUI 个人作业2:案例分析 结对项目2:单元测试 ...
- 【2017下集美大学软工1412班_助教博客】团队作业3——需求改进&系统设计团队成绩公示
作业要求 团队作业3--需求改进&系统设计 团队评分结果 Total QH BZ GJ MS SXX WBS SJ JG SJK JH NR CS PHILOSOPHER 需求改进&系 ...
- 团队作业三——需求改进&系统设计
需求改进&系统设计 一. 需求&原型改进 1. 针对课堂讨论环节老师和其他组的问题及建议,对修改选题及需求进行修改 老师及其他组的同学在课堂讨论时尚未提出问题及修改意见,但是课后我们有 ...
- 团队作业3——需求改进&系统设计
Deadline: 2017-4-21 22:00PM,以博客发表日期为准 评分基准: 按时交 - 有分,检查的项目包括后文的四个方面 需求&原型改进 系统设计 Alpha任务分配计划 测试计 ...
- 团队作业3_需求改进&系统设计
一.需求&原型改进 1.需求改进: (1)发现问题:通过发布问卷调查及收集整理的形式发现用户的新需求: (2)修改需求:考虑新增提醒用户未完成事件的功能. 附:用户调查问卷(如下) 调研途 ...
随机推荐
- Java中的“浅复制”与“深复制”
复制 将一个对象的引用复制给另一个对象,一共有三种方式.第一种方式是直接赋值,第二种方式是浅复制,第三种方式是深复制. 1.直接赋值 在Java中,A a1 = a2,这实际上复制的是引用,也就是说 ...
- 大话Git系列之初识版本控制系统(2)
本次接着上次的来介绍版本控制系统,这个讲到的将是Git与Github,说一下什么是Git,什么是GitHub?他们之间的关系是什么? 1.Git 是代码管理的工具 2.GitHub 是基于Git实现的 ...
- Python计算美国总统的身高并实现数据可视化
代码如下: import numpy as np import pandas as pd import matplotlib.pyplot as plt data=pd.read_csv('presi ...
- 个人项目开源之Django图书借阅系统源代码
Django写的模拟图书借阅系统源代码已开源到码云 源代码
- Access denied for user 'root@localhost' (using password:NO)问题的解决
错误详情: 使用pymysql连接数据库mysql,一直无法连接上, conn = pymysql.connect(host='localhost', port=3306, user='root', ...
- Mysql存储过程--大于十分钟执行
--存储过程 DELIMITER | DROP PROCEDURE IF EXISTS update_tatus | CREATE PROCEDURE update_status() BEGIN mi ...
- 安装docker并部署web项目
一.docker简介 1.docker定义:docker是一个用来装应用的容器,就像杯子可以装水,笔筒可以装笔,书包可以放书一样.你可以把“Hello World!”放到docker中,也可以把网站放 ...
- Linux之facl----设置文件访问控制列表(详解)
setfacl命令 是用来在命令行里设置ACL(访问控制列表) 选项 -b,--remove-all:删除所有扩展的acl规则,基本的acl规则(所有者,群组,其他)将被保留. -k,--remove ...
- Docker 运行一个Web应用
使用 docker 构建一个 web 应用程序. 我们将在docker容器中运行一个 Python Flask 应用来运行一个web应用 参数说明: -d:让容器在后台运行. -P:将容器内部使用的网 ...
- vue 指令和修饰符
1. v-textv-text主要用来更新textContent,可以等同于JS的text属性. <spanv-text="msg"></span> 这两者 ...