天天看點

英語學習APP的案例分析

英語學習APP的案例分析

很多同學有誤解,軟體工程課是否就是理論課?或者是幾個牛人拼命寫代碼,其他人打醬油的課?要不然就是學習一個程式語言,搞一個職業教育訓練的課?都不對,軟體工程有理論,有實踐,更重要的是分析,思辨,總結。在課程中,自己組織團隊寫一個軟體,然後分析,的确是學習軟體工程的一個好方法;但我們也可以從别人的成功/失敗中學到很多。

我們生活中很多時候要和軟體打交道,大家上課開小差時候玩的手機遊戲,買火車票的網站,互相聯系用的微信、QQ,等等都是軟體,都很值得分析。你為何成為它們的使用者?它們的團隊做對了什麼,做錯了什麼?如果你來做,會做得更好麼?

通過各種案例分析,評測,辯論,總結,我們就能看到軟體工程的原則在實踐中的種種展現,學好軟體工程,幫助我們在實踐中做得更好。

産品

請下載下傳必應詞典,PC、Mac、iOS或Android用戶端都有,不要說你找不到!

第一部分 調研, 評測

(軟體的bug,功能評測,黑箱測試, 第8章 使用者調研, 12 章 軟體的使用者體驗)

  1. 下載下傳并使用,描述最簡單直覺的個人第一次上手體驗。

   感覺界面挺不錯的,一些基本功能都能很快發現,操作也挺簡單,推薦的句子和圖檔都挺漂亮,不過推薦的内容過多,浪費流量.

  2. 按照《建構之法》13.1節描述的 bug 定義, 找出幾個功能性的比較嚴重的 bug,至少2個。

  在一個英文句子中,點選其中的一個英文單詞時有時候不會顯示中文意思,例:

英語學習APP的案例分析
英語學習APP的案例分析

拍照翻譯時會出現亂碼:

英語學習APP的案例分析

  3.用專業的語言描述 (每個bug 不少于 40字),如有必要, 可以配圖。

  4.相信每個同學的朋友中一定有人需要用這樣的軟體, 選擇一個朋友(使用者)進行采訪,并加以記載。

 提示: 采訪提要

  5.1. 介紹采訪對象的背景和需求(他們為何要學英語,查詞典和用法,還有别的需求麼)

  閱讀英文文章時用于查單詞,複習英語單詞,背誦英語四級詞彙等.

     5.2. 讓采訪對象使用10 – 30 分鐘該APP的功能 (請上傳照片證明使用者的确正在使用, 遠端采訪的同學請讓别人幫忙照相)

英語學習APP的案例分析

    5.3. 描述使用者使用這個産品的過程,使用者的問題解決了麼?軟體在資料量/界面/功能/準确度上各有什麼優缺點?使用者體驗方面有問題麼?

  界面挺不錯的,聯想詞彙挺不錯的,不過還有一些問題,有些詞彙沒有顯示意思,推薦内容過多,不聯網的話一些單詞查不到,感覺一般.

  5.4. 使用者對産品有什麼改進意見?

  希望能減少推薦内容或者自己選擇喜歡的内容.

  5.5. 結論:經過這麼多工作,你一定有充分的理由給這個軟體下一個評價:

    • 非常不推薦
    • 不推薦
    • 一般
    • 好,不錯
    • 非常推薦

第二部分 分析

(參考《建構之法》 8.6 節 對工作的估計, 和14.1 節 軟體工程的品質)

  1. 使用此軟體的所有功能 (包括背單詞, 單詞挑戰,口語練習等), 聯系第二部分的分析, 估計這個項目做到這個程度大約需要多少時間 (團隊人數6 人左右, 計算機大學畢業生, 并有專業UI 支援)。

  可能需要10天.

  2.分析這個軟體目前的優劣 (和類似軟體相比,至少對比2款軟體), 推理出這個軟體團隊在軟體工程方面可以提高的重要方面 (具體建議)。要求把對比的結果列出一個表格,對比每個軟體各自的優點和缺點。

優點 缺點
必應詞典 畫面挺不錯的,可以用拍照功能自動識别單詞 推薦内容過多,有些單詞沒解釋
有道詞典 單詞挺全的 推薦過多
金山詞霸 單詞全,内容豐富,有許多詞典 使用不友善

  3.[附加題]根據了解和體驗,畫出整個軟體所有功能邏輯框圖,根據重要度辨別出各子產品的重要度、完成度、出發點及效果;

  4.[附加題]針對不同的次元評分,對使用者體驗方面、UI界面美觀度、核心功能,分别打分(能給出更詳細的評分更優)。

第三部分 建議和規劃

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

  1. 如果你是項目經理,如何提高進而在競争中勝出?

  減少一些不必要的功能,對一些功能比如四級詞彙設定不用聯網就能使用,推薦内容可以由使用者自由選擇需不需要,減少不必要的廣告.

  2.目前市場上有什麼樣的産品了?

  有道字典:使用的人較多,查單詞功能比較強大.  

  金山詞霸:内容豐富,有牛津詞典

  3.你要設計什麼樣的功能?

  掃描和自動比對功能,增加一個養成加冒險的遊戲功能,每個使用者可以有一個角色,通過冒險(認單詞,翻譯單詞等)等一些其它功能使角色成長.

  4.為何要做這個功能,而不是其他功能?

  吸引使用者,友善使用者使用.

  5.為什麼使用者會用你的産品/功能?

  有意思,能滿足使用者需求.

  6.你的創新在哪裡? 請使用 NABCD 分析(http://www.cnblogs.com/xinz/archive/2010/12/01/1893323.html).

  增加了遊戲功能.

  7.如果你來上司這個團隊,會有什麼不一樣?

  我會更加注重使用者的需求來開發功能

  8.如果你的團隊有5個人, 4個月的時間,你作為項目經理,應該如何配置角色(開發,測試,美工等等)?

半個月 市場需求調研 1人
一個半月 軟體開發 2人
軟體測試并改動
美工

  9.描述你的團隊在16 周期間每周都要做什麼,才能在第16周如期釋出軟體,大小裡程碑績點設定.

2周
1周 團隊讨論決定軟體功能 5人
7周 3人
軟體測試
3周 測試使用并修改
上一篇: 個人總結