個人作業——軟體產品案例分析(華為軟體開發雲)
第一部分調研、評測
一、評測
1.第一次使用體驗:
功能多,主介面很簡潔。
對於新手而言,第一次接觸華為軟體開發雲,沒有註冊登入的話,就很難找到自己想要使用的工具,僅僅停留在華為軟體開發雲首頁,功能很多但是不知道自己要使用的是那個功能。首頁的選項點進去大都是一些服務之類的,或者是一些工具,我覺得它更像一個小的百度平臺,專門針對程式設計師的需要網羅一些工具或者資源,術業有專攻,針對各個方向提供資源,讓使用者自己選擇使用的工具,找自己需要的資源。
有一點是讓我使用起來特別輕鬆的,就是網頁版的沒有其他的廣告,使用起來特別愉悅,也沒有像其他網頁會彈出廣告,往往這種軟體會增加使用者對軟體的印象分。app和網頁版的同步很靈敏,在app上新增專案能在自動更新並顯示
2.功能性的比較嚴重的bug
(1)網頁版和app不能更改使用者名稱
(2)網頁版和app不能修改頭像
(3)app不能檢視個人資訊
(4)app中的待辦項不能新增
(5)同一個專案裡不能新增不同地區的人員(不是很清楚這麼設定有什麼用意)
(6)程式碼廣場裡的程式碼不能fork到自己的倉庫3.用專業的語言描述(每個bug 不少於 40字),如有必要,可以配圖.
(1)網頁版和app不能更改使用者名稱
1)症狀:點選使用者名稱沒有反應
2)程式錯誤:更改使用者名稱模組程式碼為空
(2)同一個專案裡不能新增不同地區的人員(不是很清楚這麼設定有什麼用意)
1)症狀:通過專案裡的掃碼新增專案人員,但是如果該人員和專案的建立人員不在同一個地區,就無法,加入該專案
4.你覺得為什麼這個產品組的人沒有發現這些bug?
我覺得有以下幾個原因:
關於app方面
(1)關於使用者方面的頭像、個人資訊還未完善
(2)也可能是設計人員覺得沒有必要在app裡顯示個人資訊
(3)app裡的待辦項是起備忘作用,還是提醒作用,功能不明確,也許是開發人員功能還未完善?
關於網頁方面
(1)同一個專案裡不能新增不同的人員,設計人員也許是考慮將一個人的工作地區劃分清楚,但是除了東北和華北地區,也許還有其他地區的工作,為什麼不考慮其他地區的工作?可能是設計人員考慮到行業的地區分佈而進行設計
5.假設你們團隊需要開發這套系統,需要注意哪些方面(架構、部署運維、微服務等)。
架構設計:
(1)考慮到使用者物件,根據物件需求,提出功能,且保證使用者易於使用
(2)考慮軟體開發後的維護問題,注意保證軟體的可擴充套件性
(3)穩定性和安全性,杜絕由於軟體效能導致資料丟失
部署運維:(1)相容性強
微服務:(1)考慮使用者是否真正需要
二、 使用者調研,軟體的使用者體驗
對華為軟體開發雲使用者的採訪
該使用者是一名計算機專業大三的學生,由於課程需要和開發需要,所以需要有一個app來進行對專案的管理
訪談語錄
Q:有沒有用過類似華為軟體開發雲的app?
A:用過github,也是能進行團隊合作開發和程式碼管理,其實有點類似個人中心中的功能,不過華為軟體開發雲中的功能更強大,使用也更直觀。
Q:除了華為軟體開發雲現有的功能,你覺得還需要有其他的功能嗎?
A:程式碼廣場的程式碼不能fork或關注,導致有時有找資料找不到,所以能不能有個功能把程式碼fork到開發雲的倉庫中
Q:在使用這個軟體過程中,你的問題是否解決了?
A:使用這個軟體,主要用於記錄開發過程,開發效率,程式碼管理,至於程式碼測試還有待體驗,不知道是否真正可行
Q:軟體在資料量/介面/功能/準確度上各有什麼優缺點?
A:軟體的資料量非常豐富,也可以很精準地搜尋到所需要的工具和資料,主介面簡介大方,條理明確,功能很強大。但是由於功能很多,所以在找一些功能時需要費點時間。
Q:使用者體驗方面有問題麼?
A:目前來說,就是找到某些功能比較不容易。
Q:使用者對產品有什麼改進意見?
A:針對不同類的使用角色,保留不同版本,比如學生,可能就不太需要首頁的資訊,而在工作中、企業中可以有首頁的服務板塊。
結論:經過這麼多工作,你一定有充分的理由給這個軟體下一個評價,請選擇一個結論:
推薦
第二部分 分析
參考 8.6 節 對工作的估計, 和14.1 節 軟體工程的質量
使用此軟體的大部分功能,聯絡第二部分的分析,估計這個專案做到這個程度大約需要多少時間(團隊人數6人左右,計算機大學畢業生,並有專業UI 支援)。 分析這個軟體目前的優劣(和類似軟體相比),並推理出團隊在軟體工程方面可以提高的一個重要部分(具體建議)。
這個軟體目前的優勢在於把一些功能綜合起來,比如完成效率圖,程式碼的儲存率,程式碼的bug,燃盡圖,貢獻量等的一些統計比較完善,以及制定的具體任務,相對於github來說功能比較齊全。這個專案的劣勢在於使用者的操作步驟太過繁瑣,有時候甚至都找不到使用入口在哪。
具體建議:改變一下功能的邏輯功能結構,儘量使使用者的操作步驟儘可能地少
根據理解和體驗,畫出整個軟體所有功能邏輯框圖,根據重要度標識出各模組的重要度、完成度、出發點及效果
(以下葉節點前的數字表示優先順序,數字越小,優先順序越高)
針對不同的維度評分 ,對使用者體驗方面、UI介面美觀度、核心功能,分別打分。
使用者體驗方面:70分
理由:因為功能較多,有的功能要找很久才能找到,主介面的功能比較多,有時候找使用者中心比較難找。
核心功能:90分
理由:功能確實很強大,而且很實用
UI介面美觀程度:60分
理由:有的地方介面不是那麼簡潔,比如使用者資訊介面
第三部分 建議和規劃
如果你是專案經理,如何提高從而在競爭中勝出?
(1)確定需求,明確分工,制定合理的每日工作計劃
(2)把抽象的目標轉化為可執行的、具體的、優美的設計
(3)建立並維護軟體的規格說明書,讓它成為軟體開發人員的準確指導
(4)通過各種途徑收集使用者反饋預期使用者新的需求,協調並決定各種需求的優先順序
(5)分析缺陷,及時改正
(6)跟進專案進展目前市場上有什麼樣的產品了?
像團隊協作的軟體有teambition,協作開發和儲存程式碼的有github。你要設計什麼樣的功能?
設計一個集github的協作開發,儲存程式碼功能,和Teambition的團隊實時交流以及日程制定為一體的軟體。- 為何要做這個功能,而不是其他功能?
每日的團隊開發並不是可以一直按計劃進行的,有時候會遇到某些障礙,無法進行開發,這時候可以在團隊裡進行實時交流,加快進度。每天釋出任務,可以讓開發者明確今天要完成的任務是什麼。 - 為什麼使用者會用你的產品/功能?
從一個使用者的角度來說,一個軟體只要滿足需求,而且操作簡單,符合平常的軟體操作習慣,那麼使用者就會採納。另一方面,在初步開發成型後,要讓客戶提前體驗,並且提出改進意見 - 你的創新在哪裡?可以用 NABCD 分析。
N:使用者需要一個可以進行實時討論程式碼,檔案,圖片並儲存程式碼的軟體
A:學習比較先進的技術,提高軟體效能
B:使用便捷
C:功能綜合
D:加大宣傳力度 - 如果你來領導這個團隊,會有什麼不一樣?
實時跟進專案進度,合理分配時間,平衡團隊內部 - 如果你的團隊有5個人, 4個月的時間,你作為專案經理,應該如何配置角色(開發,測試,美工等等)?
前兩週進行需求分析,並逐步完善需求分析文件。第三到第四周確定設計細節並確定需求分析文件,第2-3月兩個月進行編碼,第四個月進行測試
3個開發,1個人測試,1個人美工 - 描述你的團隊在16 週期間每週都要做什麼,才能在第16周如期釋出軟體,大小里程碑績點設定。
1-3周對使用者進行調研,完成使用者需求分析報告;4-6周進行原型的設計和資料的設計以及程式碼的規範化;7-11周進行前端和後端的編碼;12-14周完成前端與後端的對接以及bug修復;15-16周進行測試以及釋出。 **專案釋出後,有沒有考慮過專案該怎麼部署才能滿足需求。依據下圖*(某校教務處系統的部署)作為參考,分析16周後你所完成的專案上線需要哪些配套裝置(伺服器、頻寬、資料庫需求數量與配置)
。
網站安全性:DDOS、