軟件產品案例分析———華為軟件開發雲


一、題目背景:

同學多多少少經歷過一輪敏捷開發,對軟件工程的一系列工程流程及團隊內各個人員分工有了一定的了解。而實際企業的開發流程又是如何?華為軟件開發雲則是將華為近10年的軟件研發實踐及工具集一體的研發雲平台。對比你們團隊的開發流程與華為實際開發流程有何差別,孰贏孰弱?如果你來做會做的更好嗎?通過各種案例分析,評測,辯論,總結,我們就能看到軟件工程的原則在實踐中的種種體現。

二、分析內容:

1 . 第一部分 調研,評測

① 評測:

軟件的bug,功能評測,黑箱測試

下載並使用,描述最簡單直觀的個人第一次上手體驗。
按照描述的bug定義,找出幾個功能性的比較嚴重的bug。至少兩個。
用專業的語言描述(每個bug 不少於 40字),如有必要,可以配圖.
你覺得為什么這個產品組的人沒有發現這些bug?
假設你們團隊需要開發這套系統,需要注意哪些方面(架構、部署運維、微服務等)。

第一次上手體驗

界面簡潔、美觀,操作流暢,底部菜單欄的添加按鈕點擊事件的觸發效果體驗好。

bug

  • 無論是界面還是操作體驗上WEB端都完勝APP端,功能太多,使用過程中尚未發現太大的問題,以下為APP端bug。

  • 功能描述不明確,比如登陸時的東北區等區域代表的含義是什么,有什么作用,並沒有引導說明,可以在用戶首次使用APP時加以引導。

  • 進入具體項目頁面的不同操作之間切換不流暢,加載時的效果顯示讓人感覺很煩躁。(如下圖“全部”、“需求”、“任務”、“缺陷”之間的切換)

  • 創建項目后無法刪除。

  • 項目右側的紅心按鈕沒有實際功能?提示關注成功卻沒有相應的“關注”列表,意義何在?

  • “我的”界面無法修改頭像。

為什么產品組的人沒有發現這些bug?

  • 對產品的測試不夠全面或者說不夠細節。

  • 開發者和用戶的體驗和操作方式多少有區別,產品組的人心中對產品有默認的認識和定義,這會導致自身在使用產品的時候“理想化”,有先入為主的弊病,導致一些用戶使用時會遇到的bug沒被發現。

  • 如APP卡頓現象、不同子頁面間的切換不流暢問題,可能是發現但還沒改善?

② 采訪:

第8章 用戶調研,12章 軟件的用戶體驗

相信每個同學的朋友中一定有人需要用這樣的軟件,記載你對這位用戶的采訪。例如使用下面的采訪提要:
介紹采訪對象的背景和需求(他們有沒有用過這個APP或類似的APP,除了現有的功能還有別的需求么)
讓采訪對象使用華為軟件開發雲(請上傳照片證明用戶的確正在使用,遠程采訪的同學請讓別人幫忙照相)
描述用戶使用這個產品的過程, 用戶的問題解決了么?軟件在數據量/界面/功能/准確度上各有什么優缺點?用戶體驗方面有問題么?
用戶對產品有什么改進意見?
結論:經過這么多工作,你一定有充分的理由給這個軟件下一個評價,請選擇一個結論:
非常不推薦
不推薦
一般
推薦
非常推薦

  • 沒用過類似APP,但用過Github和Teambition,需要自動合並沖突文件的功能。

  • 沒解決。APP使用起來操作不流暢,對各項功能的使用方式不夠明確,界面相對良好。

  • 改進意見為優化性能,提高流暢度,對一些細節bug進行改進。

  • 一般

2 . 第二部分 分析

參考 8.6 節 對工作的估計,14.1 節 軟件工程的質量

使用此軟件的大部分功能,聯系第二部分的分析,估計這個項目做到這個程度大約需要多少時間(團隊人數6人左右,計算機大學畢業生,並有專業UI 支持)。 分析這個軟件目前的優劣(和類似軟件相比),並推理出團隊在軟件工程方面可以提高的一個重要部分(具體建議)。
     根據理解和體驗,畫出整個軟件所有功能邏輯框圖,根據重要度標識出各模塊的重要度、完成度、出發點及效果;
     針對不同的維度評分,對用戶體驗方面、UI界面美觀度、核心功能,分別打分。

  • 如果是按照全天候開發模式的話,我覺得這個項目做到這個程度大約需要兩個月以上的時間。

這個軟件目前的優劣

  • 優勢的話,最首要的是全中文支持吧。知名競爭對手較少,市場和前景還是有的。

  • 劣勢,競爭對手強大且知名度高(emmm。。不影響上一條的正確性)。如Github和Teambition,在不同維度上與此款軟件的功能性有重合,而前者的使用量和體驗都很好,對於該項目目前的開發程度來說,還有着很多需要改進和完善的地方(最主要的是操作體驗很暈?),競爭力小。

功能邏輯框圖

針對不同的維度評分(滿分10分)

  • 用戶體驗:6分(軟件定義為項目管理類,然而用戶的使用目的並沒有得到很好的滿足,這嚴重影響該軟件的必要性和實用性)

  • UI界面美觀度:7分(web端更加受欣賞,app端也不錯,但色調不是我喜歡的類型)

  • 核心功能:8分(在雲端進行項目管理、配置管理、代碼檢查、編譯構建、測試、部署、發布,對開發團隊來說功能很強大)

3 . 第三部分 建議和規划

參考《構建之法》第8章 功能的定位和優先級,第9章 項目經理

這個軟件有很多可以提高的部分。
如果你是項目經理,如何提高從而在競爭中勝出?
目前市場上有什么樣的產品了?
你要設計什么樣的功能?
為何要做這個功能,而不是其他功能?
為什么用戶會用你的產品/功能?
你的創新在哪里?可以用 NABCD 分析。
如果你來領導這個團隊,會有什么不一樣?
如果你的團隊有5個人, 4個月的時間,你作為項目經理,應該如何配置角色(開發,測試,美工等等)?
描述你的團隊在16 周期間每周都要做什么,才能在第16周如期發布軟件,大小里程碑績點設定。
項目發布后,有沒有考慮過項目該怎么部署才能滿足需求。依據下圖(某校教務處系統的部署)作為參考,分析16周后你所完成的項目上線需要哪些配套設備(服務器、帶寬、數據庫需求數量與配置) 。

  • 首先對於影響用戶體驗和功能實現的bug一定要解決,注重性能的優化。其次就是要多分析自己和市面已有的同類產品的競爭優勢,在宣傳推廣的時候把自身最明顯最有力的點放大,開拓市場,吸引用戶。

  • Github等

  • 在軟工實踐的過程中,我覺得Github有個不夠完善或者說不夠好的問題在於當團隊開發項目時有文件沖突的情況下,Github並不能足夠智能地合並,而是需要后期手動合並。如果能開發出針對這一問題的功能,我覺得會是一個很吸引用戶的點。

  • 因為這是自身實際需要的,也是市面上還未有(至少我還沒遇到過)的功能。

  • 因為百度上很多人在問這個問題。。

創新NABCD分析

  • N : 團隊開發普遍性需求。

  • A : 智能合並存在沖突的代碼。

  • B : 很大程度地減輕程序員的工作量和額外工作時間,能夠使程序員更加專注於開發,團隊合作也更加便捷愉快。

  • C : 同類產品尚未有此項功能,優勢顯而易見。

  • D : 我們會先讓身邊的人使用,並且對他們提出的問題進行改正。然后放在下載的平台上,提供給更多的人使用,正確對待他們可能提出的問題。

部署

  • 1 美工 3 開發 1 測試

  • 1-2周,需求分析,架構設定,UI初步模型。

  • 3-4周,數據庫、api等初步成型。

  • 5-13周,前后端開發,

  • 14-15周,測試項目,調試bug,用戶體驗分析和完善。

  • 16周,文案撰寫,發布軟件。

  • 對部署部分較不熟悉,主要認知為,用戶量大的情況下,要注意服務器負載和網絡並發、負載均衡等問題。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM