軟件產品案例分析
第一部分 調研,評測
評測:
下載並使用,描述最簡單直觀的個人第一次上手體驗。
使用困難,我搞不清楚 https://devcloud.huaweicloud.com/home 和 https://console.huaweicloud.com/devcloud 的區別,前者的入口又幾乎不可見,在「華為雲」上找了半天發現這上面的「軟件開發雲」不是需要的那個東西。
功能基本可用,是各種軟件和服務的大雜燴,例如 teambition、Github 等。有自己的一些亮點和缺點,但大而雜,學習曲線長而陡,新手要么啃一個又一個視頻教程,要么看幾十面的 PDF 教程才有辦法弄清楚和用好整個系統,似乎缺少一個可索引的友好的文檔網站(或者我沒看到/華為雲沒向我推薦)。
按照描述的 bug 定義,找出幾個功能性的比較嚴重的 bug。至少兩個。用專業的語言描述(每個 bug 不少於 40 字),如有必要,可以配圖.
bug(feature?)和體驗不好的地方實在太多,我只截圖和列出以下的部分,按體驗先后順序排序。
注冊過程:
注冊密碼最大長度過小,對於使用密碼軟件自動生成密碼的用戶來說是災難;
特殊字符是什么???;
限制太低,「a12345」這種簡單密碼也可以作為一個極高安全要求的企業用戶的密碼。

導航欄圖標和按鈕不平齊,可能是整個圖片放上去,沒有考慮 padding。另外找不到任何方式把需要的服務放進「收藏」中:

web 領取新用戶禮包時,新建項目后各個彈窗都不自動關閉和跳轉:

軟件開發雲首頁 iframe.js 無法加載,服務器 503 錯誤:

進入某項目直接導致瀏覽器卡死並報 Crash:

關閉卡死標簽后重新進入,依舊 js 503 和大量 warning,似乎是 js 運行時間太久了:

各處的輸入框輸入內容限制較大,別家 emoji 都可以到處使用,而這里不支持αβ這些字母和更多特殊字符:

添加工作項中,我不明白優先級和重要程度有什么需要區分的,難道非常重要的工作項可能優先級很低?:

添加工作項完成后花了大概2秒才加載出來。
軟件各處大量按鈕只是圖標,鼠標放上去也沒有提醒,看不懂的話只能猜功能,然后謹慎地不敢按:

創建詞條按鈕無效,無任何提示(簡單而黑盒的 bug,完全無法用到專業語言的 40 個字描述):

代碼倉庫中自動創建的 license 不自動填充 year 和 fullname,這將需要二次 commit,而 Github 是支持的:

不明白這個表格把文件列完后在下面顯示一行項目名的用意:

僅測試模塊有新手引導,而其他功能模塊沒有,體驗不統一:

你覺得為什么這個產品組的人沒有發現這些 bug?
可能的原因有:
- 需求分析不夠明了;
- 開發隨意;
- 缺乏測試;
- 缺乏反饋渠道;
- 開發周期短;
- 開發流程不細致有條理;
假設你們團隊需要開發這套系統,需要注意哪些方面 (架構、部署運維、微服務等)。
- 確定需求需要經過縝密分析;
- 專門的架構設計人員,進行大量調研和評估;
- 部署需要熟練准確,操作無誤;
- 24小時多地災備,出現問題實時熱切換;
- 開發人員需要考慮的不僅是可用,還應好用,例如 js 運行時間要短,防止瀏覽器可能的 Crash……;
采訪:
1.介紹采訪對象的背景和需求(他們有沒有用過這個 APP 或類似的 APP,除了現有的功能還有別的需求么)
背景:舍友。
需求:Github、Linux 環境的開發和編程等。
是否使用過或類似產品:否。
除了現有的功能還有別的需求:方便的 Linux 環境模擬測試。
2.讓采訪對象使用華為軟件開發雲(請上傳照片證明用戶的確正在使用,遠程采訪的同學請讓別人幫忙照相)

3.描述用戶使用這個產品的過程, 用戶的問題解決了么?軟件在數據量 / 界面 / 功能 / 准確度上各有什么優缺點?用戶體驗方面有問題么?
用戶的問題解決了么:沒有。
軟件在數據量 / 界面 / 功能 / 准確度上各有什么優缺點:
- 數據量較為豐富,但不清楚哪些數據對自己有用;
- 界面偏向現代化,不會用得很不舒服,但存在卡頓;
- 功能較為完善,但有的用不到,有的不會用,不能隱藏不需要的功能/快速獲取幫助;
- 准確度無評價;
用戶體驗方面有問題么:
- 學習曲線陡峭,短時間沒辦法掌握並精通;
- 存在卡頓問題;
4.用戶對產品有什么改進意見?
- 穩定高效是這類軟件的第一要求,而不是功能多寡;
- 入口實在難找,除了搜索引擎和書簽或者背下來,沒什么好辦法了;
5.結論:經過這么多工作,你一定有充分的理由給這個軟件下一個評價, 請選擇一個結論:
- 不推薦
第二部分 分析
使用此軟件的大部分功能,聯系第二部分的分析,估計這個項目做到這個程度大約需要多少時間(團隊人數 6 人左右,計算機大學畢業生,並有專業 UI 支持)。 分析這個軟件目前的優劣(和類似軟件相比),並推理出團隊在軟件工程方面可以提高的一個重要部分(具體建議)。
大約需要時間:六個月
優:
- 中文化;
- 免費;
- 功能豐富且集中;
劣:
- 國際化不夠;
- 不穩定;
- 用戶體驗不夠好;
- 對新手不夠友好;
- 功能間聯系不夠緊密;
- 功能還不夠精細;
建議:
增派測試和維護人員,把系統的穩定性和可用性提高一個等級。例如進行整體的代碼評估,進行全面的測試,並修復現有的 bug,提升用戶體驗。
根據理解和體驗,畫出整個軟件所有功能邏輯框圖,根據重要度標識出各模塊的重要度、完成度、出發點及效果;
數字為重要度,餅狀圖為完成度:

針對不同的維度評分,對用戶體驗方面、UI 界面美觀度、核心功能,分別打分。
滿分100分。
用戶體驗:55。
UI 界面美觀度:72。
核心功能:75。
第三部分 建議和規划
如果你是項目經理,如何提高從而在競爭中勝出?
需求分析:深度挖掘用戶需求,形成易用友好的功能分布;
開發把控:合理安排各個開發職位,努力做到相比競品開發得又快又好;
注重用戶反饋:建立豐富的反饋渠道,及時修復用戶關心的問題,增加期待的功能;
加強推廣:沒有用戶的產品再好也只能死在沙灘上;
目前市場上有什么樣的產品了?
禪道項目管理軟件、TeamLab、ProjectForge、Redmine、IBM Rational 等。
你要設計什么樣的功能?
一體化開發體驗:
- 開發者的高性能開發虛擬機/webIDE
- 團隊、任務管理與協作
- 內部文檔和用戶文檔管理
- 代碼托管,Git 系統
- 多角度多環境測試
- 多語言編譯
- 虛擬和真實環境部署
- 服務器管理
- 用戶反饋收集渠道
為何要做這個功能,而不是其他功能?
這些功能組成了開發者的「一體化開發體驗」,其他功能是冗余。
為什么用戶會用你的產品 / 功能?
集中高效的開發體驗,不需要到處注冊,到處有一個「團隊」,按整個流程開發下來十分愉悅。
你的創新在哪里?可以用 NABCD 分析。
Need:開發工具和技術多、復雜、不統一,各家有各自的標准和文檔,體驗良莠不齊,需要一站式開發,提高效率。
Approach:web 端全功能和移動端部分功能相結合的方式。
Benefit:統一的開發體驗,沒有那么多的賬號和各種問題,完善的團隊管理,從需求撰寫、代碼產生到用戶反饋一路包辦。
Competition:競品只有上述部分的功能,或者界面不夠精美、不夠易用。
Delivery:各大熱門開發者論壇宣傳,用戶口碑推廣等。
如果你來領導這個團隊,會有什么不一樣?
- 監督機制完善;
- 質量把控嚴格;
- 團隊高效、凝聚力強;
如果你的團隊有 5 個人, 4 個月的時間,你作為項目經理,應該如何配置角色(開發,測試,美工等等)?
一個開發、一個開發/架構設計、一個開發/部署/維護、一個開發/測試、一個美工。
描述你的團隊在 16 周期間每周都要做什么,才能在第 16 周如期發布軟件,大小里程碑績點設定。
| 周 | 事項 |
|---|---|
| 1 | 需求分析、架構設計、編寫文檔 |
| 2-3 | 開發虛擬機/webIDE 開發 |
| 3-4 | 團隊、任務管理與協作開發 |
| 5-6 | 代碼托管,Git 系統開發 |
| 7-8 | 測試功能開發 |
| 8-9 | 多語言編譯功能開發 |
| 10 | 部署功能開發 |
| 11 | 服務器管理功能開發 |
| 12 | 用戶反饋收集功能開發 |
| 13 | 開發收尾工作,部署項目 |
| 14-15 | 內測,聽取意見,修正 |
| 16 | 最后完整測試與修正,宣傳與發布 |
分析 16 周后你所完成的項目上線需要哪些配套設備 (服務器、帶寬、數據庫需求數量與配置) 。
應用服務器配置:2 核 2G * 12
后端服務器配置:16 核 64G * 4
關系型數據庫數量:12(備份 4)
緩存數據庫數量:6(備份 2)
網站安全性:WAF、DDOS
