團隊項目第二週 - 需求規格說明書 - 天冷記得穿秋褲隊

團隊項目第二週 - 需求規格說明書 - 天冷記得穿秋褲隊

隊員姓名 學號
陳俊旭(組長) 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真的須要對項目有很好的把控, 一方面是避免小組成員無心義的討論,另外一方面是能夠發散你們的思惟, 作出你們都滿意的產品

相關文章
相關標籤/搜索