BugPhobia准备篇章:Scrum Meeting工作分析篇
特别说明:此博客不计入正式开发过程的Scrum Meeting篇章,只是工作的基础分析
前端
王鹿鸣、钱林琛撰写初稿
能否前端完成一个页面后就能在本地跑起来进行测试?
能否在前端和后端完成对接后单页面式的进行测试
充分利用JS的能力,将页面尽可能动态化
- 主页面
- 头部菜单栏:移植到ReactJS,将登录和注册功能直接整合到菜单栏是最好的。
- 标签云及搜索栏移植:将标签云和搜索框整合到ReactJS中。
- 优化标签栏:移植并保证标签栏也能够点击,如果能在标签栏部分增加个性化推荐最好(后半部分不要求)
- 优化推荐栏:移植并保证推荐栏正常实现,用户能够通过Approve和Change按钮进行更换和确定
- 用户页面
- 移植Activity页面作为用户页面的主要页面。
- 重新整合Profile页面和Activity页面:将Activity页面设为主页面,调整用户关注的问题及推荐的问题到显著位置。
- Profile页面:将此前优化后的用户实体信息铺展在此页中,注意要关联用户的活跃状态(问答数、关注标签数等)
- Profile页面:优化用户的个性化推荐,保证推荐给用户的Tags能够较为显著展示出来
- Profile页面:重新布局Course和Question的推荐,尽可能简略反馈给用户
- Activity页面:将用户的全部活动状况以“消息”的方式反映在用户活动栏(类似空间、朋友圈那种模式即可)
- Activity页面:将用户关注的问题、回答、@、标签展示出来,注意增加(分页设计即不要一大堆内容直接push开来)
- Settings页面:同Profile页面的用户实体,
- Settings页面:增加【用户贡献】页面,贡献包括数据贡献(爬取数据,可选实现),资源贡献,回答数。
- 【用户贡献】页面:允许上传资源。
- 搜索结果展示页:
- 不再链接到原URL,尝试将问答对直接展示在我们的页面中。
- 无法搜索到结果时一定要返回一个未搜到相关内容的页面,而非“空”
- 对Like、Ask、Upload等功能按钮进行完善
- 搜索结果分页处理,而非大量内容直接直接铺陈开来(用户能够规定每页的显示数目)
- 对用户上传资源的文件名等进行搜索。
- 课程页面
- 课程页面进度暂且搁置,根据数据组的行动进行进一步的设计
- 问答页面
- 划分问答页面基本层次:提问页面和结果页面是否分离(不分离:QQ空间的做法;分离:stackoverflow的做法)
- 实现问答对的展示
- 实现回答问题
- 提问页面,允许用户提出问题。
- Robot页面
- 扩充知识库
- 给出基本的操作方法(示意图给出即可,类似功能规格说明书的模式)
- FeedBack页面
- 转移,放到显眼的部分,而非找半天找不到此页面
- 允许给评论添加标签(此标签由开发者规定:吐槽,评论,BUG反馈等类似标签)
后端
冯志睿、王文基撰写初稿
总体说明
对于后端的任务,我们可以从以下的几个角度来看:
角度1:模块角度
- 用户管理模块
- 基本信息
- 活动记录信息
- 记录收藏的标签、问题和课程等
- 针对用户记录的推荐
- 社交拓展信息
- 文件信息
- 搜索管理模块
- 问答管理模块
- 课程管理模块
- 扩展模块
角度2:前端和接口角度
针对前端任务列表和接口说明来看任务需求。
这两个角度前者可以说是从功能角度来看的,后者是从团队配合的依赖和需求角度出发的。这两个方面在决定任务的划分、分配和时间节点安排时都非常关键,下面将对任务进行细分,给出相关的难度系数(一个 “!” 大约3~6个小时),同时给出相应的理由,供PM参考决定时间节点的安排。
任务详细剖析
- Beta后端结构重设(!)
- 根据功能模块设计后端结构
- 将已有的各个子应用调整到新结构中的相应位置上面
- 给待开发的模块建立子应用
该任务的优先级是最高的,建议尽快安排该任务。因为后期的重构面积比较大,同时根据Alpha阶段的源码路径来看存在较大的“泥球”,所以重构很迫切。同时虽然该任务的技术细节基本没有,实际操作起来不存在bug问题,但是需要明确功能模块设计结构,从而明确各个后端开发者的负责区域,会让人有“选择困难症”的表现,还是建议讨论一下~
- 用户管理
- 后端对新架构的适应(!)
- 在后端给注册登录等补上验证(Alpha只做了前端验证,后端验证没有做全)
- 根据接口文档上面的接口要求将数据准备好
- 统一一下相关的代码(Alpha的有点乱)
- “Read Later”功能,就相当于收藏、喜欢、关注,同时做一个推荐(!!)
- 针对接口需求封装Json数据,并实现接口
- 需要对标签、对问答、对课程都设置相关操作
- 由于我们的系统用户基础数据不多,所以相当于“冷启动”,所以我们的数据分析不是建立在用户上,而是建立在内容上的相关性
- 根据用户的收藏和喜好,将相应的推荐内容找出来
- 社交网络第三方内容(!)
- Oauth第三方登录
- 一键分享推广(之间通过JS就可以完成,可推到QQ空间、微博、朋友圈、Facebook、Twitter、Linkin等等)
- 简化的百度文库形式(!!)
- 上传
- 对上传内容进行分类管理
- 后端对新架构的适应(!)
- 搜索管理
- 实现搜索结果信息的反馈(!)
- 将结果封装成接口对接数据
- 做好分类,因为问答数据、课程数据(站内和站外数据也会产生区别)等等都是来自不同的地方用不同的结构存储的,最好分别实现操作。
- 实现搜索结果信息的反馈(!)
- 问答管理
- 问答数据展示(!)
- 涉及0x0500-0x0510接口的功能实现
- 由于这些问题都是读取数据库的操作,所以直接放到一起完成
- 相关的数据库安排也在此任务项之下
- 操作数据处理(!!)
- 从0x0514(提问)后面的操作都需要对数据库进行插入和修改操作,所以作为一组。
- 需要有记录用户行为的数据库,需要与用户管理方面关联
- 需要有celery的学习安排
- 问答数据展示(!)
- 课程管理
- 接口数据的封装(!)
- 用户对于课程的操作(!)
- 扩展
- robot(!)
- 其实聊天返回的类型有很多种,Alpha只是将内容展示出来了,其实还有很多相关链接,这次都要展示出来。
- 根据功能方案完成数据库的类型需求分析
- robot(!)
大致的任务情况就是这样,具体时间安排其实还得看看每天有多少时间能够抽出来,以及编码效率问题
测试
李云涛撰写初稿
Beta阶段测试工作分类
Beta阶段在延续Alpha阶段测试计划的基础上稍有改进,主要测试任务分类如下:
从测试类型上,Beta阶段测试工作主要分为以下三种:
脚本型功能测试
用于持续测试各模块功能是否正确执行。主要方式是,使用脚本模拟用户正常使用时发出的各种请求,发送给网站,匹配返回结果于期望结果是否基本一致。由于功能尚处于添加阶段,因此脚本也将不断进行扩充。手工测试
人为测试功能实现是否正确,针对部分敏感功能进行白盒测试或灰盒测试。测试前端在不同平台上的显示是否正常以及对人的动作响应是否正常。脚本型安全性测试及性能测试
用于持续测试网络的健壮性和鲁棒性。对于安全测试中的sql注入,每天会使用sqlmap对所有注入点进行尝试注入,如有注入成功的情况则反馈bug。对于性能测试,使用load runner模拟用户的持续并行访问。本阶段测试暂时忽略跨站攻击的测试,但是在代码复审中会着重审核阻止跨站攻击的代码是否正确。Bug反馈机制
对于测出的Bug,执行如下反馈机制以保证修复的及时:
- 在测试出现Bug后,使用issue的方式将Bug反馈至github和team@osc
- 将Bug指派给响应组的开发人员进行修复
- 修复完成后创建新的任务重新测试,若测试不通过则继续反馈issue
BugPhobia准备篇章:Scrum Meeting工作分析篇的更多相关文章
- BugPhobia回顾篇章:团队Beta 阶段工作分析
0x00:序言 1 universe, 9 planets, 204 countries,809 islands, 7 seas, and i had the privilege to meet yo ...
- BugPhobia休息篇章:Beta阶段第IX次Scrum Meeting前奏
特别说明:此次Scrum Meeting不计入正式的Scrum Meeting,因此此次工作仅为第IX次Scrum Meeting的前奏,而笔者也首次采用休息篇章作为子命题 0x01 :Scrum ...
- BugPhobia开发篇章:Beta阶段第VII次Scrum Meeting
0x01 :Scrum Meeting基本摘要 Beta阶段第七次Scrum Meeting 敏捷开发起始时间 2015/12/19 00:00 A.M. 敏捷开发终止时间 2015/12/21 23 ...
- BugPhobia开发篇章:Beta阶段第X次Scrum Meeting
0x01 :Scrum Meeting基本摘要 Beta阶段第十次Scrum Meeting 敏捷开发起始时间 2015/12/29 00:00 A.M. 敏捷开发终止时间 2016/01/01 23 ...
- BugPhobia开发终结篇章:Beta阶段第XI次Scrum Meeting
0x01 :Scrum Meeting基本摘要 Beta阶段第十一次Scrum Meeting 敏捷开发起始时间 2015/01/06 00:00 A.M. 敏捷开发终止时间 2016/01/10 0 ...
- BugPhobia开发篇章:Beta阶段第IX次Scrum Meeting
0x01 :Scrum Meeting基本摘要 Beta阶段第九次Scrum Meeting 敏捷开发起始时间 2015/12/25 00:00 A.M. 敏捷开发终止时间 2015/12/28 23 ...
- BugPhobia开发篇章:Beta阶段第VIII次Scrum Meeting
0x01 :Scrum Meeting基本摘要 Beta阶段第八次Scrum Meeting 敏捷开发起始时间 2015/12/22 00:00 A.M. 敏捷开发终止时间 2015/12/22 23 ...
- BugPhobia开发篇章:Beta阶段第VI次Scrum Meeting
0x01 :Scrum Meeting基本摘要 Beta阶段第六次Scrum Meeting 敏捷开发起始时间 2015/12/18 00:00 A.M. 敏捷开发终止时间 2015/12/18 23 ...
- BugPhobia开发篇章:Beta阶段第V次Scrum Meeting
0x01 :Scrum Meeting基本摘要 Beta阶段第五次Scrum Meeting 敏捷开发起始时间 2015/12/17 00:00 A.M. 敏捷开发终止时间 2015/12/17 23 ...
随机推荐
- .net core 入坑经验 - 1、await async
已经有些日子没学习新知识了,心血来潮想试试core有多大变化和跨平台运行 所以现在就开始捣鼓,然而由于是从.net 4.0直接"跃升"到.net core 以及 asp.net m ...
- Django商城项目笔记No.6用户部分-注册接口-短信验证码实现celery异步
Django商城项目笔记No.4用户部分-注册接口-短信验证码实现celery异步 接上一篇,如何解决前后端请求跨域问题? 首先想一下,为什么图片验证码请求的也是后端的api.meiduo.site: ...
- PhpStorm破解版及使用教程
本文引自网络,仅供本人学习使用之用,感谢网友的分享 PhpStorm PhpStorm 是 JetBrains 公司开发的一款商业的 PHP 集成开发工具,旨在提高用户效率,可深刻理解用户的编码,提 ...
- Linux命令——文件和目录管理
Linux命令--文件和目录管理 基本命令 命令ls 作用:显示目录下的文件和文件夹 说明:默认显示当前目录,可跟路径参数 参数:-a,显示隐藏目录 参数:-l,显示文件权限 参数:-d,显示文件最后 ...
- Docker技术入门与实战 第二版-学习笔记-9-Docker Compose 项目-3-Django项目实例
使用 Django 我们现在将使用 Compose 配置并运行一个 Django/PostgreSQL 应用.在此之前,先确保 Compose 已经安装. 1.通过编辑 Dockerfile文件来指定 ...
- Oracle RMAN 恢复数据库到不同主机(二)
我们在recover database时报一个错误: RMAN-06054: media recovery requesting unknown archived log for thread 1 w ...
- python 通过shutil实现文件后缀名判断及复制
In [18]: for file in os.listdir('.'): ...: if os.path.splitext(file)[1] == '.html': ...: print(file) ...
- HDU 4857 逃生(反向建边的拓扑排序+贪心思想)
逃生 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submissi ...
- 解决Win10家庭版没有‘本地用户和组’问题
今天偶然发现我的win10系统是家庭版,并且没有本地用户和组. 处理方法:将系统升至为win10专业版,然后下载microKMS_v17.02.14做的激活.参考网站 1.打开运行窗口,输入 gped ...
- 使用Git进行协同开发
用了一段时间github,一直想用时间来对git的使用来做一段笔记,前段时间比较忙,现在沉下心来学习也是极好的. 很多项目开发会采用git这一优秀的分布式版本管理工具来进行项目版本管理.因为git的使 ...