1. 程式人生 > >現代軟體工程講義 6 使用者調研

現代軟體工程講義 6 使用者調研

軟體開發的過程, 就是 “使用者最需要的東西” 在下面這一鏈條中傳送,轉換,實現,扭曲或丟失的過程。

使用者最需要的 >  

    使用者表達出來的 >

        軟體團隊能理解的 (老闆/PM) + 團隊的商業目標 >

            軟體團隊成員具體表達出來的 (PM 寫 spec) >

                在各種約束條件下, 具體執行表達出來的 (dev 寫程式碼) >

                    驗證通過的 (Test) >

                        通過各種渠道告訴目標使用者 (釋出/推廣) >

                            使用者終於能用上了,但是他們不滿意 >

                image ( 也許公司擅長三層架構,  因此鞦韆也要三層的 )

                                image ( PM 寫出了 spec )

                                                image  ( 開發人員根據 spec 寫出了功能 )

                                                                image  ( 測試人員最後同意釋出的軟體 )

和使用者想要的一樣麼? 不一樣.  使用者滿意嗎?  不滿意,  那使用者到底想要啥?  我們調查一下, 然後開始新的迴圈...

我們在開發軟體的時候,總想知道使用者到底想的是什麼,  對各種功能的偏好是什麼, 掌握這些資訊,我們就可以按部就班地去滿足使用者的需求。 大家可以靠直覺,靠老闆的命令,靠網際網路上傳來的各種資訊,靠拷貝其它軟體, 靠其它不靠譜的手段…  當然我們也可以靠一些經過實踐證明行之有效的辦法。 下面是幾種使用者調研 (User Study) 的方法:

        image

    找到一群目標使用者的代表來討論使用者想要什麼, 使用者對軟體的評價等等。 焦點小組是很常用的調研方法,它也有一些弱點:

  •     一群人在一起,往往大家會出於討好其他人的心理來發表意見,避免不一致的意見或衝突。
  •     討論者對於他們不熟悉的事物 (例如顛覆式的創新) 不能表達有價值的想法 - 在汽車出現之前, 我們找一幫馬車伕來暢想 “未來的交通工具”, 他們未必會貢獻很有價值的想法。
  •     討論的人群容易受到主持人有意或無意的影響。
  •     研究者往往從不同意見中挑選最符合自己想法的哪些,然後號稱這就是大家的共識。

2) 深入面談 (in-depth interview)

        image

    通過詳細的面談,廣泛而深入地瞭解使用者的背景,心理,需求等。這通常是一對一的採訪。這個方法好是好, 就是費人費時。

        image

    列出所希望的軟體有什麼樣的特點, 然後把這些特點歸類。在微軟亞洲研究院的時候,我們也曾做過“卡片排序” - 幾個不同背景的人聚在一起, 想象新軟體有什麼特點, 能解決自己的什麼痛苦, 或者有什麼好玩的地方, 把這些特點都寫在小卡片上, 一個主持人再把不同的卡片歸類, 討論, 進一步理清各種願望的關係。 從某種意義上來說, 這些卡片就是量化了的焦點小組的意見,這些卡片經過歸類/排序/定義等過程, 可以幫助我們更好地定義一個軟體的資訊架構,使用者的工作流程,軟體選單結構,網站的瀏覽路徑,各種內容的層次關係等。

4) 使用者調查問卷 (User Survey)

        image

    給使用者事先規定好的問題, 讓使用者回答。 我們在大街上碰到過不少,有時候你在瀏覽某個網站的時候,一個彈窗打斷了你的思路,它請你回答幾個問題。我們使用者在回答這類問題的時候,是否心不在焉,亂點一氣? 

    使用者調查問卷看似容易, 其實大有門道,下面是一些常見問題:

    a) 問題定義不準確, 例如: 你用哪一個搜尋引擎?  使用者可能提供多個合理的答案: 最近使用的; 最喜歡的但是未必最經常使用的 (例如最喜歡的搜尋引擎由於某種原因訪問不了); 為某一個領域而使用的 (例如查影象或英語單詞); 最近一週/一月/一年使用電搜尋引擎也會有不同。

定義不準確的問題會讓使用者困惑,  我們也許能收集到很多答案,但仍然無法準確瞭解使用者的想法。

    b) 使用了含糊的形容詞、副詞,來述時間、數量、頻率、價格等: 最近、有時、經常、偶爾、很少、很多、相當多、很貴、很便宜。這些詞語對不同使用者和在不同的語境中有不同的意義。

    c) 讓使用者花額外的努力來回答問題:  請問你全家平均每人每年下載多少手機應用軟體?  

    d) 問題帶有引導性的傾向:  使用者普遍認為, 搜尋引擎A 收錄了許多侵犯版權的資料而拒絕承認錯誤, 搜尋引擎B 則贏得使用者信任, 你會選擇A 或B?

    e) 問題涉及使用者隱私, 使用者所在公司的情況等。

使用者調查問卷的問題可以有下面的這些方式,  大家可以更加具體情況使用:

    a) 全開放式問題:  例如: 你對手機上的日程管理軟體的期望是: ________________  

        這種問題能讓使用者暢所欲言,但是比較難於整理和量化。

    b) 二項選擇題: 使用者只用回答 是/否 即可。  這類問題便於統計處理,分析也比較容易。但使用者沒有進一步闡明理由的機會,難以反映意見與程度的差別,瞭解的情況也不夠深入。

        這個型別還有一個變種, 就是在兩種選擇對比中只能選其中之一。

    c) 多項選擇題,大家在平時的考試中碰到多次。

    d) 順位選擇題: 您選擇手機背單詞軟體的主要考慮因素是 (按照優先順序填寫 1, 2, 3, … ): _ 詞彙量;  _ 能記錄進度; _ 能定製單詞表;  _ 能和PC 同步; _ 能支援4/6級等專門詞庫;  _ 能支援發音。

5) 使用者日誌研究 (User Diary Study)

        image

    要求使用者記錄自己日常工作或生活中和所用軟體相關的行為, 供以後分析。 使用者可以寫像日記體的文字描述,  也可以每天填表 (例如跟蹤自己每天飲食種類) 。 我個人理解,這時使用者調查在時間上的延長。 這要求使用者有很高的自律能力, 另外, 如何保護使用者的隱私也是一個問題。

6) 民族誌/人種學研究 (Ethnographic Study)

        image

    這個聽起來非常學術的方法其實可以解釋為 - 和目標使用者同吃同住同勞動。  例如,與其坐在辦公室裡想象如何給老年人設計手機, 不如去和老年人生活幾天,從生活中得到資料和體會。  這是一個論文例子

    人類學的使用者調查聽起來很高深, 其實未必 - 也許你一直生活在目標人群中, 只不過你對這些需求不夠敏感罷了。 在《the social network》 這部電影中, Mark 的一個同學問他, 你知道某某女生是不是有男朋友?  Mark 沉思一會, 不理會這個同學,徑直跑回宿舍,在 “thefacebook.com” 這個網站上實現 “你有朋友了麼”這一功能。

    一些有想法的大學生們都在象牙塔裡面指點江山, 激揚文字。  走到真實的世界中去, 你才會看到真實的需求, 下面是同學的頓悟:

我平時接觸的同學都是計算機專業的,我平時上的網站都geek味或hacker味十足。我幾乎從來不用qq,我從來不上百度貼吧,我從來不打遊戲,我不用360也不用任何防毒軟體,我不用hao123做主頁。我沒事看看google reader,我翻*牆上twitter和facebook,我常逛hacker news和quora,我樂於嘗試國外的各種新鮮酷站,我從來沒為軟體或服務付過費。

原來我並不瞭解海量中國使用者,原來真實的使用者並不是我想象的那樣。

以前我不理解為什麼360的裝機量那麼大,現在我懂了:1.海量使用者並不知道如何管理使用電腦,360那種傻瓜式的一鍵解決才是他們需要的,2.他們不想花錢,但是不會找什麼“破解版”,“序列號”,“註冊機”

以前我不理解為什麼hao123這麼“弱智”的網站能有這麼大影響,現在我懂了,我爸爸可以通過它非常輕鬆的到新浪上看新聞,但如果你讓他直接輸入網址的話,他肯定會輸入“xinlang.com”

以前我不理解為什麼有那麼多人願意為了qq上的虛擬形象付錢,現在我懂了,我表姐她們只要上網肯定掛qq,而且女孩都愛漂亮愛虛榮,她們不在乎花點錢打扮打扮自己。

我看過一些非計算機系的同學的電腦,大多凌亂不堪,檔案隨處亂放,軟體都是預設裝在了C盤,安裝的過程中還被捆綁了一堆流氓軟體,各種軟體都是開機啟動,沒有3分鐘根本開不開機……

     這是2013年一篇對中國三線城市數字生活的描述 ( 作者潘越飛), 算不算人類學調查的一種呢?

7) 軟體可用性研究 (Usability Study)

        image

    研究使用者在使用軟體的時候有哪些困難, 並如何改進軟體,讓軟體更好用。 常用的方法是請使用者來 微軟有專門的 User Study Studio, 經常招募目標使用者來做試驗,我也曾實地參觀過使用者使用新版本的Outlook (我們在單向玻璃窗後面)。 更多的團隊成員可以在事後看這些使用者調研的錄影。 調查人員通常讓被試者完成一些任務,例如:

在Excel 中, 你想把一個表格中的行和列互換,你怎麼能做到呢?

過年了你要想不少客戶都發送內容相似的賀年郵件, 但是客戶的名稱和地址都各不相同, 你怎麼用Word/Outlook 完成這個任務?

在Excel 軟體中, 你在看一些大的表格的時候,要來回移動,但是這樣表格的標題欄就看不到了,怎麼樣鎖定標題欄呢?

我印象很深的一點是 - 使用者在我們長長的選單中幽幽暗暗反反覆覆中尋找某個功能,我們在玻璃窗後面替他著急… 我們的介面離 “平平淡淡從從容容才是真” 差太遠了。

        image

    你的軟體展現了很多資訊, 也有很多互動的控制, 怎樣才能讓使用者容易找到看到你想讓他們看到的資訊,找到他們想使用的功能?  使用者看網頁上的眾多內容通常是什麼樣的規律?  一些研究發現了 F 模式.

        image 使用者通常瀏覽通欄標題, 然後目光沿著左側下行, 再平行瀏覽下面的子標題。如果你有重要內容希望使用者知道, 應該放在什麼地方呢?

9) 紙上模型調研 (Paper Prototype)

        image

    如果要把軟體做好了, 再去找使用者做調查, 未免太費時,並且修改的成本很高。能否快速地取得使用者的反饋?  這時不妨拿一些紙張模型, 讓使用者去使用, 得到反饋。 這種方法我沒有做過,但是聽上去不錯。這也是使用者參與式的設計 (Participatory Design)  的一個例子。另外,模型不一定要用紙, 用小木頭塊也行 - Palm Pilot 的創始人Jeff Hawkins 就用一塊小木板做得和設計中的實物一樣,他把它放在上衣口袋中, 時不時拿出來寫寫畫畫... 最後釋出的 Palm Pilot 及其系列產品開創了 PDA 這樣一個新行業。

        image

如果你已經有一些使用者在使用你的產品,你想對使用者介面做一些改進,但是又不知道到底有多少使用者會喜歡新的介面,怎麼辦? 

例如你的網站是兩列的佈局,但是你很想試一下三列的佈局方式, 就像題圖一樣。

例如你想用彈窗來促使使用者對某個重要資訊的作出反應, 是把彈窗放在右下角呢,還是放在螢幕中央?

這時候,你是找新的使用者去做一對一的深入調研,或者跑到大街上去發調查問卷?  為什麼不能讓你現有的使用者告訴你哪一種設計比較好呢? 這時候不妨考慮A/B Test.

A/B 測試看起來很簡單:

    1) 決定試驗哪兩種不同的UI, 以及衡量標準, 資料收集流程, 試驗執行時間, 人數

    2) 在技術上實現 A/B 測試 (通常在 5% – 10% 的使用者上執行試驗)

    3) 收集資料, 分析資料, 形成結論

很多網際網路公司都在用A/B 測試, 研究員們也在用這個方法做研究,  你去訪問它們的網站的時候, 有可能就是給它們做了試驗, 看 Amazon 和 Microsoft 的例子 (論文).

A/B 測試當然也有弱點: 

    a) 執行成本隨著時間的推移而變大,  增加網站運維的複雜度,對網站資料收集和資料探勘的能力也是一個考驗。

    b) 使用者的情緒反映你看不到,你只看到互動的行為, 但是互動的行為不是使用者的全部反饋。 (例如你看到使用者點選螢幕中央的廣告更多, 但是也許有更多的使用者咒罵螢幕中央的廣告)

    c) 要分清各種因素的關係,  例如,網站 “改版三列布局” 和 “使用者在網站停留時間” 之間是下面的哪一種關係?

            - 不相關, 當前收集到的資料只是隨機的

            - 相關, 但不是決定因素

            - 因果關係

    d) 用網站當前的使用者做實驗, 萬一引起巨大的反感, 使用者就真的流失了。

態度 : 行為    定性 : 定量

下圖表示了這些方法在 (態度 : 行為    定性 : 定量) 上的分野:

image

使用者有多種

我們說了這麼多使用者調研,  很多人假設評價軟體的就是購買軟體的,就是使用軟體的,但是未必。看下面的例子:

a) 你要寫一箇中學生學習英語的軟體,你找誰去做使用者調研?

    中學生 - 終端使用者
    家長 - 他們是要掏錢的人,他們不會每天都用軟體,有些人都不太會英語,但是他們也有需求
    學校老師 - 他們是有巨大影響力的人,他們說不定立下一道規矩,我們班級就用某某軟體! 

b) 你要寫一個企業管理軟體, 你要找誰去做使用者調研?

做過頭了會怎樣?

我們有這麼多各式各樣的工具, 網際網路給我們帶來了這麼多使用者和資料, 這是好事, 也有副作用。

世界上能訪問使用者資料, 並根據資料做分析和改進的公司, 大概 Google 是其中翹楚, 這種 data-centric 的做法做過了頭, 也有悲劇發生:

Douglas Bowman 曾經是Google 的視覺設計主管, 2009 年的一天, 他受不了了:

Yes, it's true that a team at Google couldn't decide between two blues, so they're testing 41 shades between each blue to see which one performs better.        I had a recent debate over whether a border should be 3, 4, or 5 pixels wide, and was asked to prove my case. I can't operate in an environment like that. I've grown tired of debating such   minuscule design decisions...

當你的公司要你用資料來證明 41 種藍色到底哪一種更好, 或者為一個邊欄寬度是3, 4, 或5 而爭執不休, 紛紛表示要拿資料來證明的時候, 你怎麼辦?