团队项目第二周 - 需求规格说明书 - 天冷记得穿秋裤队

团队项目第二周 - 需求规格说明书 - 天冷记得穿秋裤队

队员姓名 学号
陈俊旭(组长) 3116004630
夏瓦克提·木合塔尔 3116004658
张婷(副组长) 3216004672
周方源 3215004673

随着人民日益增加的资源获取需求与资源节点不足的矛盾日益增加,为了提升单机下载速度,咱们团队打算实现一个具备离线下载功能的下载器,功能相似于百度云盘的离线下载。用户能够将下载连接添加进下载器中,下载器离线下载完毕后能够取回文件。如下是针对第一周的初步设计,给出的更进一步的详细的需求分析。css

 

需求规格说明书

基本需求

  • 支持单用户单文件的离线下载
  • 支持删除离线文件
  • 简单的命令行界面

面向用户分析:对于一款主打离线下载的下载器来讲,最核心的功能就是离线下载。用户须要的是可以下载到文件,而且为了隐私能够删除掉文件前端

功能性分析:提供下载器最基本的功能,即下载。基本需求里面的支持下载功能能够将用户的下载连接上传到服务器,再将服务器下载的结果返回给用户;用户下载完毕后能够选择删除本身的离线记录;能够经过命令简单的控制整个下载流程,包括选择文件存取路径等等git

技术需求:须要经过aiar2解决服务器与客户端之间文件的传输问题;须要支持简单的命令行输入控制chrome

 

高级需求

  • 支持单用户多文件的离线下载
  • 支持查看文件离线下载进度
  • 提供Chrome的扩展程序界面
  • 支持文件上传

面向用户分析:不少状况下用户并不仅是下载一个文件,他们还须要同时下载多个文件,而且须要知道本身的下载任务还有多久结束,所以但愿有一个进度条和剩余时间方便管理下载。大多数用户并不会用命令行下载文件,这对于大多数人来讲十分不友好,他们但愿有一个轻量级的下载工具;有时候用户还但愿经过下载器保存一些文件,所以须要用户上传安全

需求性分析:当用户多任务的离线下载是目前全部下载器支持的特性,并且对于下载器来讲是刚需;更加友好的下载页面既能够方便用户下载,也能够方便用户对下载进行管理,是最直观的留存用户的手段服务器

技术需求:须要解决多文件同时下载的并发问题;须要利用 js 和 css 开发一个 extension;须要对下载流进行额外的控制,如增长一个控制流告诉客户端下载信息网络

 

进阶需求

  • 支持多用户多文件同时下载
  • 对于离线的视频文件能够在线观看
  • 更加严格的系统安全控制(如隔离有害文件等)
  • 更加安全的文件保存策略(如多级备份等)

面向用户分析:用户在理想视频的过程当中,相比于将视频下载后再在本地打开观看,更但愿可以直接观看视频;并且用户对于文件下载的隐私很是在乎,但愿更好的保护本身的下载信息;用户还但愿下载器能彻底地保护他们的信息,而不被泄露或者遭受破坏架构

需求性分析:增长多用户支持符合当今下载器的现状,能够更加方便地对每一个用户的下载文件进行管理和控制;对于服务器来讲安全相当重要,所以不只须要抵抗来自服务器外的侵略,还要隔离来自用户下载的有害文件的攻击并发

技术需求:须要解决多用户访问服务器的端口问题;须要对服务器的硬盘进行分区保护;须要支持简单的用户管理工具

 

系统进一步阐释

  • 真实性
    • 目前市场的同类软件有:迅雷,百度网盘下载等。每一个网络用户都有文件下载和上传的需求。
  • 可用性
    • 咱们团队的文件离线下载器力求在达到目前市场基本文件下载器功能的同时,达到文件下载管理和文件下载云存储等方面的友好使用程度。
    • 做为一款轻量级的文件离线下载器,用户在拥有基本的上传和下载文件的基本功能的同时,可以不被服务端限制下载速度(好比迅雷下载的限速现象,普通用户只有在开通会员才能达到最大速度上传),而咱们团队的项目致力于实现每一个用户不进行限速,下速度只取决于用户的带宽,从而解决现在用户对现今市场下载软件诸如此类作法的不满。
  • 价值性
    • 对用户来讲,能够极大提高下载体验;用户将下载任务上传至服务器端后,由服务器负责下载文件,用户能够关闭电脑或者进行其它做业,当服务器下载完毕后再拉下来,这样子能够充分利用用户宽带,由于传统的下载节点通常会限制下载速度,而咱们的SmellyCat离线下载器并不会。
    • 对提供下载的网站来讲,能够分流下载流量,避免对服务器形成过大负载;在没有离线下载器以前,下载网站是与用户创建一对一的链接,须要给每一个用户分配必定的下载资源,容易形成服务器负载过大。而当用户使用离线下载后,用户是从咱们SmellyCat下载资源,咱们再经过必定的策略集中访问下载网站,避免多个用户对于同一文件的屡次下载。
    • 对运营商来讲,能够更有效地进行流量控制和拥塞控制;因为咱们的SmellyCat集中处理了用户的下载请求,可使得网络中下载的密集度下降,减轻了运营商的压力。
  • 有情怀
    • 咱们实在是看透了某雷某度云盘的离线下载限制,所以很努力地想要开发一个真正为用户下载体验着想的离线下载器。咱们但愿将这个项目开源,不只是为了集思广益,更是为了让社区用户知道咱们的透明实现过程,而不是暗箱操做偷偷修改下载速度。
    • 此外,咱们开发完服务端离线版本后,将可能进一步开发客户端离线器,顾名思义就是用户能够选择贡献本身的宽带,以提升整个社区的下载速度。

 

项目相关

项目码云地址SmellyCat

预期用户数量:因为下载器对服务器性能要求较高,所以第一个版本预期支持最多50

 

团队计划

issues列表

将团队的任务计划添加到码云的团队项目issues里面 (√)

 

原有安排

时间 任务进度
第6周 1.团队组队,团队博客 (√)
2.团队介绍、成员展现、角色分配、选题肯定 (√)
3.制定团队计划安排,团队贡献分的规定 (√)
第7周 1.需求规格说明书
2.原型设计,队员估计任务难度并学习必要的技术
3.编码规范完成、平台环境搭建完成、初步架构搭建
第8周 1.原型改进(给目标用户展示原型,并进一步理解需求)
2.架构设计,WBS, 团队成员估计各自任务所需时间
3.测试计划
第9周 1. 团队项目Alpha任务分配计划
2. 连续7天的Alpha敏捷冲刺,7 篇 每日Scrum Meeting博客+代码提交
第10周 1.用户反馈+测试计划改进
2. 团队Alpha阶段我的总结
3. 团队项目Alpha博客:发布说明、测试报告、展现博客、项目管理
第11周 1. 团队项目Alpha博客:过后分析
2. 每一个团队有一人必须离开,本身寻找下一个接纳本身的团队。团队发博客宣布离队和接纳的成员。
第12周 1. 团队项目Beta任务分配计划,介绍新成员
2. 连续7天的Beta敏捷冲刺,7 篇 每日Scrum Meeting博客+代码提交
第13周 1. 团队项目Beta博客:发布说明、测试报告、展现博客
2. 团队Beta阶段我的总结
第14周 1. 团队项目Beta博客:过后分析, 宣布每人的贡献分
第15周 1.团队整个阶段总结,分析用户数据,整理文档,保证之后的团队能接手。

 

校订后的安排

时间 任务进度
第6周 1.团队组队,团队博客 (√)
2.团队介绍、成员展现、角色分配、选题肯定 (√)
3.制定团队计划安排,团队贡献分的规定 (√)
第7周 1.需求规格说明书 (√)
2.原型设计,队员估计任务难度并学习必要的技术 (√)
3.编码规范完成、平台环境搭建完成、初步架构搭建 (√)
第8周 1.原型改进(给目标用户展示原型,并进一步理解需求)
2.架构设计,WBS, 团队成员估计各自任务所需时间
3.测试计划
第9周 1. 团队项目Alpha任务分配计划
2. 连续7天的Alpha敏捷冲刺,7 篇 每日Scrum Meeting博客+代码提交
第10周 1.用户反馈+测试计划改进
2. 团队Alpha阶段我的总结
3. 团队项目Alpha博客:发布说明、测试报告、展现博客、项目管理
第11周 1. 团队项目Alpha博客:过后分析
2. 每一个团队有一人必须离开,本身寻找下一个接纳本身的团队。团队发博客宣布离队和接纳的成员。
第12周 1. 团队项目Beta任务分配计划,介绍新成员
2. 连续7天的Beta敏捷冲刺,7 篇 每日Scrum Meeting博客+代码提交
第13周 1. 团队项目Beta博客:发布说明、测试报告、展现博客
2. 团队Beta阶段我的总结
第14周 1. 团队项目Beta博客:过后分析, 宣布每人的贡献分
第15周 1.团队整个阶段总结,分析用户数据,整理文档,保证之后的团队能接手。

 

矫正计算方法

因为第六周和第七周给出有充足的时间进行系统设计和需求分析,这两周的小组成员均可以按照计划稳步推动,所以能够完成原有计划表给出的安排,本周暂时不须要对计划表进行矫正

 

其余

团队分工

队员姓名 分工
陈俊旭 开发服务端的下载模块,向前端提供文件下载和管理的接口
夏瓦克提·木合塔尔 测试前端插件是否符合用户习惯,是否能正常下载文件,并提交反馈报告
张婷 开发chrome插件模块,负责向用户提供管理界面,而且支持友好的交互体验
周方源 协助张婷同窗进行前端开发,及时处理组员间的讨论纠纷

 

完成状况

队员姓名 完成状况
陈俊旭 初步完成需求分析
夏瓦克提·木合塔尔 初步完成需求分析
张婷 正在学习chrome插件开发知识
周方源 初步完成需求分析

 

感想

陈俊旭: 咱们分析了整个项目应该如何下手,虽然过程当中你们都有分歧,可是PM的带领下你们都能回到理智的讨论中,但愿你们能进一步努力

夏瓦克提·木合塔尔:做为测试人员前期的工做很少,主要是参与需求的讨论,在讨论过程当中能知道其余同窗是怎么想的

张婷:在需求肯定完成后我就开始着手学习相关知识,能够说明确的需求真的能够缩短学习的周期,由于更加清楚肯定须要什么技术

周方源:认识到做为一名PM真的须要对项目有很好的把控, 一方面是避免小组成员无心义的讨论,另外一方面是能够发散你们的思惟, 作出你们都满意的产品

相关文章
相关标签/搜索