劉偉,劉正捷
一種面向移動APP的半自動化可用性測試方法
劉偉,劉正捷
(大連海事大學,大連 116026)
建立一種半自動化可用性測試方法,為研究人員在使用傳統(tǒng)可用性測試方法識別移動APP可用性問題時所需成本過高的問題提供一種解決思路。使用數據采集工具CAUX,在用戶執(zhí)行測試任務的過程中以屏幕錄制的方式自動捕獲用戶行為數據。利用圖像對比技術從錄屏數據中提取實際的任務執(zhí)行序列,然后與預期的任務執(zhí)行序列進行對比,自動提取存在可用性問題的頁面和相關的用戶行為數據,并輸出一份問題頁面報告。根據報告內容可以快速確定可用性問題。最后以蝦米音樂作為案例進行對比實驗來驗證方法的可行性。使用該方法發(fā)現了傳統(tǒng)方法難以發(fā)現的絕大多數存在可用性問題的頁面及其可用性問題。該方法通過遠程自動捕獲和半自動分析用戶執(zhí)行測試任務時的錄屏數據,可以有效發(fā)現APP在日常使用環(huán)境中存在的可用性問題,從而降低了可用性測試成本,有助于新手研究人員的使用,并很好地推動產品的快速迭代。
可用性測試;移動APP;用戶行為分析;人機交互;用戶體驗;屏幕錄制
可用性在ISO 9241-11中被定義為“特定用戶在特定環(huán)境中使用產品以達到其有效性、效率和滿意度的特定目標的程度”[1],它是決定軟件產品成敗的關鍵因素[2]。隨著智能手機的普及,移動APP逐漸覆蓋到生活中各個場景,因此提高APP可用性的需求不斷增加[3]。可用性測試是在實踐中為了提高產品可用性而最常使用的方法之一[4]。但是可用性測試是一項復雜且昂貴的任務,在可用性測試期間,研究人員會觀察用戶的行為,測量各種指標,聽取用戶的評論,并根據收集到的材料來確定可用性問題[5-7]??捎眯詥栴}的發(fā)現取決于研究人員的經驗,其過程沒有明確的指導,并且需要花費大量的時間來進行人工的數據收集和分析,這些約束是軟件開發(fā)人員在提高軟件可用性時面臨的最重要的挑戰(zhàn)。另外可用性測試并不是一次性的過程,而是需要在軟件迭代設計中不斷重復該過程,因此在先前的研究中已經提出了輕量化分析的需求[4]。在本項研究中,通過自動采集和分析用戶在目標APP中執(zhí)行測試任務時的錄屏視頻,來提取存在的可用性問題,從而幫助研究人員快速識別這些問題,提高可用性測試的效率。
通過對可用性測試中的用戶數據進行自動化采集或處理,可以有效降低可用性測試的成本。根據數據來源的不同可以將現有工作方法分為兩類,分別是基于日志和基于視頻的方法?;谌罩镜姆椒ㄐ枰杉脩粼趫?zhí)行測試任務時的埋點日志,通過挖掘異常行為模式[8-9]或將行為路徑可視化[10]來觀察和發(fā)現存在可用性問題的地方。由于大多數移動APP無法獲取其源代碼,不能像web應用一樣通過向頁面插入腳本代碼的方式來獲取日志數據,所以基于日志的方法常應用于web應用。在人機交互領域,通過錄屏視頻和屏幕截圖來分析用戶交互和APP可用性是一種常見的方法[11-12]。為了方便研究人員分析錄屏視頻,Weichbroth等人[13]開發(fā)出回顧性視頻數據分析工具RVDA,研究人員可以使用該工具對視頻中的交互事件和可用性問題進行人工注釋,工具會自動為注釋的事件標記時間戳并以CSV文檔的形式導出,方便研究人員進行后續(xù)的分析而無需重復觀看視頻,但手動注釋視頻是一個費時的過程。Jeong等人[14]提出一種用戶行為可視化方法,利用圖像對比去除錄屏視頻中重復的幀,并將剩余的屏幕圖片以時間軸的形式呈現出來,使研究人員可以通過查看這些圖片序列來分析用戶行為,并發(fā)現其中的可用性問題。此方法可以使研究人員直觀地分析用戶行為,提高了分析效率,但仍需要人工查看并分析每一個圖片序列。
相關研究工作表明,通過采集和分析用戶執(zhí)行測試任務時的日志或錄屏數據,可以以較低的成本發(fā)現可用性問題。但是基于日志的方法需要研究人員具有一定的代碼基礎,且無法接觸大多數移動APP的源代碼,因此不能適用于所有APP?;谝曨l的方法雖然解決了這一問題,但已有的方法仍需要較高的人工成本來分析數據。目前缺少一種輕量化可用性的測試方法,對移動APP普遍適用并能自動識別存在的可用性問題。為解決上述問題,本文基于一款數據采集工具CAUX,以屏幕錄制的方式自動捕獲用戶執(zhí)行測試任務時的行為數據,然后采用圖像對比技術和序列對比算法對數據進行分析,自動提取出存在可用性問題的頁面和相關的用戶行為數據,并將結果生成一份問題頁面報告。研究人員根據報告內容可以快速識別出可用性問題。
本文提出方法共分為4個步驟:預期任務序列及基準圖片定義、用戶行為捕獲、用戶行為序列提取和可用性問題檢測。首先,研究人員根據完成每個測試任務所必須經過的頁面名稱定義預期的任務執(zhí)行序列,并截取APP中的關鍵頁面圖片作為基準圖片集;其次,使用CAUX工具自動采集用戶執(zhí)行每個測試任務時的錄屏視頻;再次,利用圖像對比技術將錄屏視頻中的幀圖片與基準圖片集進行對比,提取出由基準圖片名稱表示的用戶實際執(zhí)行任務的行為序列;最后,根據所提出的偏差計算方法對每個任務的用戶行為序列和預期任務序列進行對比分析,自動提取出與可用性問題相關的頁面和用戶行為數據,并形成問題頁面報告,研究人員根據報告內容可以確定可用性問題,見圖1。
圖1 方法的體系結構
圖2 可用性測試任務示例
圖3 存儲預期任務序列的文件示例
預期任務序列由2部分組成,即完成任務所必須經過的任務頁面名稱(如圖2中的頁面A,B和C)和預期用戶在每個任務頁面中停留時長的基準值,見圖2。頁面的預期停留時長由研究人員根據在頁面中用戶需要執(zhí)行的操作和常見頁面類型的一般規(guī)則來定義,例如人為因素指南規(guī)定了頁面響應時間的上限,以避免用戶失去耐心[15]。最后將定義好的預期任務序列寫在一個txt文件中,每一行由任務頁面的“預期停留時長(秒)+頁面名稱”組成,文件命名為“task+任務編號”,見圖3。
通過將錄屏視頻和基準圖片集進行對比,可以提取出由基準圖片標識的用戶行為序列?;鶞蕡D片較為集中的圖片包括以下2類頁面的截屏:(1)預期任務序列中的任務頁面;(2)在每個任務頁面中用戶可能會直接進入的非任務頁面,例如圖2中的頁面D、E和F。截取的基準圖片為進入上述頁面后第一個狀態(tài)的屏幕截圖。由于頁面中的部分內容會經常發(fā)生變化,所以為了提高用戶行為識別的準確度,需要為每張基準圖片定義唯一代表該頁面的矩形固定區(qū)域(每次進入該頁面,該區(qū)域的元素固定不變),在進行圖像對比時,只對圖片中的固定區(qū)域進行對比,見圖4。
CAUX是一種數據采集工具,由客戶端和服務器端2部分組成[16]。客戶端安裝運行在用戶手機上,但當前所能采集的數據僅包括網絡狀態(tài)、光照強度等情境數據,為CAUX增加了錄屏功能,從而使其可以采集APP中的用戶行為數據。使用CAUX采集用戶數據可以分為4個步驟,見圖5。
圖4 基準圖片及固定區(qū)域示例
1)研究人員設置指令。研究人員將APP名稱和要采集的數據類型寫進指令文件,然后將指令文件上傳到服務器。每條指令包含觸發(fā)條件和采集動作。以蝦米音樂為例,一條指令可以設置觸發(fā)條件為蝦米音樂前臺運行,采集動作為開啟錄屏和采集電量信息。
2)用戶查看并執(zhí)行任務。用戶查看測試任務,在CAUX中輸入自己的編號并啟動CAUX,進入目標APP執(zhí)行任務。
3)CAUX客戶端解析指令文件,自動采集數據。CAUX啟動后會從服務器下載并解析指令文件,循環(huán)監(jiān)聽情境信息,若滿足指令文件中的觸發(fā)條件,則執(zhí)行采集動作。
4)數據上傳。采集到的錄屏視頻和情境數據文件均以用戶編號和時間戳命名,并暫存在本地存儲器中。當用戶確認數據未涉及隱私后則通過CAUX通信模塊上傳至服務器。
圖5 使用CAUX采集用戶數據的流程
為了從錄屏視頻中提取用戶行為序列,利用圖像對比技術將視頻的幀序列與基準圖片集中進行對比,映射為由基準圖片標識的用戶行為序列。每個視頻的處理過程分為3個步驟:
1)預處理。首先將視頻讀取為幀序列,并依次將前后兩幀進行整張圖片的對比,去除相鄰且重復的幀,每一組重復幀只保留第一幀。
2)匹配基準圖片,并生成用戶行為序列。將剩余的每一幀圖片與基準圖片集中的圖片進行固定區(qū)域的對比(對比時先獲取基準圖片中固定區(qū)域的對角坐標,然后按坐標值截取兩張圖片中的對應區(qū)域進行對比),匹配到與該幀相同的基準圖片后,保存該幀的時間戳和對應基準圖片的名稱,并輸出到日志文件中。
3)日志去重。最后由于某些頁面中存在部分動態(tài)變化的元素(如動圖),導致用戶即使一直停留在這些頁面未進行操作,視頻中該頁面的幀圖片也會一直變化。因此第一步的預處理工作無法篩除掉這部分圖片,再經過固定區(qū)域的對比,會導致生成的日志文件中有同一頁面重復出現多條日志的情況,因此僅保留第一條最早的日志。
其中,使用的圖像對比算法為感知哈希算法。由于視頻名中包含該視頻的時間戳,先將視頻的時間戳賦值給第一幀,然后通過計算每一幀在視頻中經過的毫秒值,可以獲得每一幀圖片的時間戳。
每個任務視頻經過圖像對比都會生成一個txt格式的日志文件,并以“task+任務編號+用戶編號”進行命名。日志文件中的每條日志由“進入某個頁面時的時間戳+該頁面的名稱”組成,這些日志條目構成了用戶執(zhí)行該任務的行為序列,見圖6。
圖6 存儲用戶行為序列的文件示例
由于可用性問題的存在,導致用戶實際執(zhí)行任務時無法按照預期的任務路徑和任務時間來完成該任務,可能會出現邏輯和時間上的偏差。本文提出2種偏差計算方法來對用戶行為序列和預期任務序列進行對比和計算,識別出用戶行為序列中的2種偏差,并提取相關的問題頁面和操作數據。最后將計算的結果生成一份問題頁面報告,研究人員通過報告可以較為容易地發(fā)現其中的可用性問題。
2.4.1 提取問題頁面
邏輯偏差計算。將用戶在任務頁面中執(zhí)行的每個不符合預期的頁面跳轉視為一次邏輯偏差。在某個任務頁面中,將所有用戶出現的邏輯偏差總數定義為該頁面的邏輯偏差值。同時將統(tǒng)計每個任務頁面中出現邏輯偏差的人數、進入的非任務頁面及進入的次數。通過邏輯偏差計算來提取所有出現邏輯偏差的頁面和相關數據。每個任務的邏輯偏差計算算法見算法1。
算法1:邏輯偏差計算算法。
輸入:某任務預期任務序列文件路徑path1,存儲該任務所有用戶行為序列文件的文件夾路徑path2。
輸出:存儲該任務邏輯偏差對象的集合LDS。
步驟1:讀取預期任務的序列文件,為文件的每一行創(chuàng)建一個頁面對象,用來保存該行中的頁面名稱和預期停留時長,并創(chuàng)建集合S來存儲這些頁面對象,然后進入步驟2。
步驟2:從S中獲取前兩個頁面對象pre和next,并創(chuàng)建一個邏輯偏差對象logicDev,將pre賦值給logicDev的問題頁面變量,然后進入步驟3。
步驟3:按順序讀取一個用戶行為序列文件,如果讀取成功,則為文件的每一行創(chuàng)建一個頁面對象,用來保存該行中的頁面名稱和時間戳,并創(chuàng)建集合U來存儲這些頁面對象,然后進入步驟4;否則進入步驟5。
步驟4:從U中獲取與pre相鄰的下一個頁面對象,如果獲取成功,將非next的頁面添加到logicDev的非任務頁面變量中,使logicDev的邏輯偏差用戶數變量+1,然后銷毀集合U,進入步驟3;否則直接銷毀集合U,進入步驟3。
步驟5:如果logicDev的邏輯偏差用戶數大于0,則將其添加到集合LDS中;否則清空logicDev對象,進入步驟6。
步驟6:從S中獲取下一個頁面對象,如果獲取成功則將該頁面對象作為新的next,并將原來的next作為pre,然后進入步驟3;否則結束運算。
其中將logicDev定義為一個邏輯偏差對象,其包含4個成員變量:出現邏輯偏差的頁面、該頁面中出現邏輯偏差的人數、邏輯偏差值及用戶從該頁面進入的非任務頁面集合。
計算邏輯偏差的示例,見圖7。頁面A中的3名用戶執(zhí)行的跳轉操作全都符合預期路徑,未出現邏輯偏差;頁面B中有2名用戶出現了3次錯誤操作,因此頁面B存在邏輯偏差,出現偏差的用戶數為2,邏輯偏差值為3,進入的錯誤頁面為D和E。
時間偏差計算。如果用戶從一個任務頁面進入到下一個任務頁面所經歷的時間超過了為前一個頁面定義的預期停留時長,則視為一次時間偏差,見圖8。
對于一個存在時間偏差的任務頁面,應統(tǒng)計在該頁面出現時間偏差的用戶數,并計算這些用戶進入下一個任務頁面的平均跳轉時長,將平均跳轉時長與預期停留時長的差值定義為時間偏差值。通過時間偏差計算,來提取所有出現時間偏差的頁面和相關數據。每個任務的時間偏差計算過程見算法2。
算法2:時間偏差計算算法。
輸入:某任務預期任務序列文件路徑path1,存儲該任務所有的用戶行為序列文件的文件夾路徑path2。
輸出:存儲該任務時間偏差對象的集合TDS。
步驟1:讀取預期任務序列文件,為文件的每一行創(chuàng)建一個頁面對象,用來保存該行中的頁面名稱和預期停留時長,并創(chuàng)建集合S來存儲這些頁面對象,然后進入步驟2。
步驟2:遍歷S,為S中每個頁面對象創(chuàng)建一個時間偏差對象timeDev,并使timeDev的問題頁面變量存儲對應的頁面對象,將所有timeDev存儲到集合TDS中,然后進入步驟3。
步驟3:按順序讀取一個用戶行為序列文件,如果讀取成功,為文件的每一行創(chuàng)建一個頁面對象,用來保存該行中的頁面名稱和時間戳,并創(chuàng)建集合U來存儲這些頁面對象,然后進入步驟4;否則進入步驟9。
圖7 邏輯偏差計算結果示例
圖8 用戶在任務頁面間的跳轉時長示例
步驟4:從S中獲取前兩個頁面對象pre和next,令mark=–1,然后進入步驟5。
步驟5:如果pre的預期停留時長大于0,進入步驟6;否則進入步驟8。
步驟6:在U中從元素序號mark+1開始,按順序查找第一次出現且與pre和next頁面名稱相同的頁面對象,如果兩者都找到,則將兩個頁面對象的時間戳賦值給Time1和Time2,并將與next頁面名稱相同的頁面對象的元素序號賦值給mark,并進入步驟7;否則進入步驟8。
步驟7:計算Time2-Time1的值,如果大于pre的預期停留時長,則按照pre在S中的元素序號從TDS中找到相同序號的timeDev,并對其進行如下操作。將出現時間偏差的人數加1;將頁面跳轉的總時長加上Time2-Time1的值,然后進入步驟8;否則直接進入步驟8。
步驟8:從S中獲取下一個頁面對象,如果獲取成功則將該頁面對象作為新的next,將原來的next作為pre,并進入步驟5;否則銷毀集合U,進入步驟3。
步驟9:遍歷TDS中每個timeDev,如果timeDev的出現偏差用戶數大于0,則將其頁面跳轉總時間除以出現時間偏差人數的值作為平均跳轉時長,并將時間偏差值賦值為平均跳轉時長減問題頁面的預期停留時長;否則刪除這個timeDev。
將timeDev定義為一個時間偏差對象,其包含4個成員變量:問題頁面、該頁面出現時間偏差的用戶數、出現時間偏差的用戶在該頁面的跳轉總時長及時間偏差值。
計算時間偏差的示例:用戶從頁面C進入頁面F的過程中未出現時間偏差;從頁面F進入頁面G的過程中,有6名用戶超出了頁面F的預期停留時長,則認為這6名用戶的操作出現了時間偏差,并統(tǒng)計他們的總耗時為90 s,從而計算出平均跳轉時長為15 s,時間偏差值為平均跳轉時長減預期停留時長,即為9,見圖9。
問題頁面報告。將偏差計算的結果形成一份HTML文檔格式的問題頁面報告,便于研究人員查看和分析其中的可用性問題。報告中每一行都顯示一個存在可用性問題的頁面,將可用性問題表示為“存在可用性問題的頁面和對應頁面圖片+存在的偏差類型+出現偏差的用戶數+偏差值+問題描述”,并允許按任務號或偏差類型對問題進行篩選,見圖10。
圖9 時間偏差計算結果示例
圖10 問題頁面報告示例
2.4.2 確認可用性問題
通過兩種偏差計算方法提取出來的頁面,表示其存在用戶操作錯誤和操作時間過長的問題,會影響用戶完成任務的有效性和效率[17],預示著可用性問題的存在。
通過查看報告中的問題描述,可以大致判斷問題頁面中出現可用性問題的部分。因此可以借助一些公認的可用性準則(比如Nilsen十大可用性準則[18])來仔細分析整個問題頁面,其重點是在問題頁面中用戶應該進入的下一個任務頁面和進入的錯誤頁面的入口,從而判斷其是否滿足可用性準則,以確定可用性問題。例如對于通過計算邏輯偏差提取出來的頁面,應該關注其頁面元素設計是否符合用戶的認知或滿足一致性原則,尤其是所進入的錯誤頁面的入口,是否會誤導用戶或引起用戶的誤操作;通過計算時間偏差提取出來的頁面,應該關注頁面內容和元素的布局,判斷是否會因為頁面內容過于復雜而造成用戶的認知負擔,或由于入口不明顯導致用戶需要花費較多時間去查找或嘗試,而無法順利地進入目標頁面。
選取蝦米音樂APP作為實驗平臺進行了傳統(tǒng)的可用性測試。測試的同時使用CAUX工具收集數據,并使用方法對數據進行自動分析。最后通過對比和分析來驗證所提出方法的有效性。
根據艾媒咨詢2019年至2020年中國手機音樂客戶端的市場研究報告發(fā)現,在蝦米音樂的用戶中,30歲以下的青年用戶占比超過70%,因此招募了20名年齡在16~28歲、有音樂類APP使用經驗的用戶參與了本次實驗,男女比例為1∶1。
實驗開始前為蝦米音樂制定了7個測試任務并給出了每個任務的詳細描述,見表1。
由于測試參與者分布在不同地區(qū),且時間難以統(tǒng)一,無法將他們邀請到實驗室中進行測試,因此本次實驗通過遠程視頻會議的方式來進行可用性測試。3名測試人員分別作為主持人(1名)和觀察者(2名)參與了測試。主持人負責組織會議并給用戶發(fā)放任務,觀察者需要記錄用戶任務時間,觀察用戶的行為和表情,并對發(fā)現的問題進行記錄,同時也要記錄用戶的反饋意見。測試完成后,研究人員會根據觀察和記錄的情況對參與者進行訪談,對發(fā)現的可用性問題進行進一步確認并了解問題發(fā)生的原因。記錄了測試過程中出現的所有問題和反饋,并對數據進行分析和匯總,從11個頁面中提取出12個可用性問題,見圖11。
3.4.1 任務序列和基準圖片集
按照上文中的方法為7個任務定義了7個預期任務序列和69張基準圖片。為了提高用戶行為識別的準確度,為20名用戶出現的3種分辨率的手機屏幕各提供了一組基準圖片集。
3.4.2 數據采集
實驗開始前,需要遠程指導用戶完成CAUX的安裝和使用,并為每位用戶分配一個用戶ID。規(guī)定用戶每完成一個任務,需要關閉蝦米音樂,然后再執(zhí)行下一個任務。當用戶進入蝦米音樂時,CAUX會在后臺根據編寫的指令采集數據,見表2。采集的數據會暫存在本地存儲器,當用戶完成所有任務且確認內容不涉及隱私后,再將數據通過CAUX的通信模塊上傳至服務器。
3.4.3 數據分析
本次實驗共收集到20名用戶執(zhí)行測試任務時的140段錄屏視頻。采用基于圖片對比的自動化數據分析方法對視頻進行分析,分析步驟如下。
第一步:用戶行為序列提取。根據視頻文件名中的任務編號將視頻分組,基于圖像對比算法將錄屏視頻與基準圖片集進行對比,得到140個用戶行為序列文件。
表1 可用性測試任務
圖11 傳統(tǒng)方法發(fā)現的可用性問題
表2 數據采集指令
第二步:識別問題頁面。對比每個任務的預期任務序列和用戶行為序列,利用上文中提出的兩種偏差計算算法,計算每個任務頁面的偏差值。篩選掉個別用戶出現偏差的頁面,提取出10個存在邏輯偏差和7個存在時間偏差的問題頁面,見表3—4。完成偏差計算后,為問題頁面匹配相應的頁面圖片,并輸出HTML格式的問題頁面報告。
第三步:確定可用性問題。根據上文提出的方法,進一步分析問題頁面報告中的偏差計算結果,以識別可用性問題。
通過上述三步,來完成用戶數據分析,最終在頁面中發(fā)現了10個可用性問題,見圖12。
從提取的問題頁面及可用性問題、偏差值與可用性問題嚴重性的關系、研究成本這3個方面對實驗結果進行分析,以驗證所提出方法的有效性。
3.5.1 問題頁面及可用性問題
由上文可知,使用傳統(tǒng)方法共發(fā)現11個頁面中的12個可用性問題,而使用本文提出的方法識別出了10個頁面中的10個可用性問題,并且在本文所提出的方法中,用戶進入的錯誤頁面和操作時長也都在可用性問題報告中,并提到了導致出現可用性問題的原因。傳統(tǒng)方法發(fā)現的另外2個可用性問題為問題2和10,是用戶主動反饋的與滿意度相關的可用性問題,由于本文提出的方法目前無法采集和分析主觀的數據,所以未發(fā)現這兩個問題。
由此可知,本文所提出的方法可以有效地提取存在可用性問題的頁面,并且根據本文給出的問題頁面報告可以看出,對存在可用性問題的頁面進行分析,可以識別出除了與滿意度相關問題之外的大多數可用性問題。
3.5.2 偏差值與可用性問題的嚴重性
邀請3名可用性領域的專家,根據廣泛使用的Dumas提出的嚴重性等級來劃分標準[19],將使用本文提出的方法所得出的可用性問題分為一般、中等、重要和嚴重4個等級,然后列出問題頁面的偏差用戶數和偏差值,見表5。
通過表中列出的數據可以明顯發(fā)現,隨著在頁面中出現偏差的用戶數和偏差值的增加,問題的嚴重性等級也逐漸升高。因此可以根據出現偏差的用戶數和偏差值的大小來大致判斷頁面中可用性問題的嚴重性等級。
3.5.3 研究成本
時間成本:統(tǒng)計研究人員在實驗中的用時,見圖13。傳統(tǒng)方法需要研究人員參加每一場測試且每場測
試只允許1名用戶參加,此外需要人工對數據進行記錄和分析,共耗時45.5 h。CAUX工具采用C/S模式,支持多用戶同時參與測試,并可以對所采集的數據進行半自動化的分析,共耗時33 h,比傳統(tǒng)方法節(jié)約28%的時間。另外每增加一名用戶,使用傳統(tǒng)方法的研究人員都需要平均花費1.9 h去參與測試和分析數據,而使用本文提出的方法,研究人員僅需要平均花費1.1 h來進行測試前指導和半自動化的數據分析工作即可。因此,對于用戶和任務數量較多的可用性測試,本方法較傳統(tǒng)方法可以有效地降低時間成本。但由于使用本方法在對一款APP進行可用性測試前,必須花費時間進行基準圖片的采集和工具安裝調試等準備工作,所以對于用戶和任務數量較少的小規(guī)??捎眯詼y試,本方法不具備時間成本的優(yōu)勢。
表3 邏輯偏差計算結果
表5 可用性問題的嚴重性等級分類
圖13 研究人員在兩種方法中的用時對比
人力和物力成本:一場傳統(tǒng)的可用性測試需要3名測試人員和1名用戶參與,如果是遠程測試則需要4臺筆記本和1部智能手機;若在實驗室中進行測試則需要1個帶有測試間和觀察間的可用性實驗室、1~3臺電腦、1臺攝像機和1部智能手機,并需要用戶抽出較多時間花費在實驗室中。而本方法僅需要每名用戶使用1部智能手機完成測試,以及1名測試人員使用1臺電腦進行測試準備和數據分析即可。因此本文所提出的方法有效節(jié)省了人力和物力,避免了資源浪費。
本文提出了一種新的面向移動APP的輕量化可用性測試方法,基于一款情境感知工具,以屏幕錄制的方式自動采集用戶行為數據,并結合圖像對比技術和序列對比算法對數據進行半自動化分析,從而以較低的成本識別可用性問題。本次實驗招募了20名用戶并使用一款真實的APP進行了實驗,實驗結果表明,本方法不僅可以準確有效的識別可用性問題和劃分出問題的嚴重性等級,并且當測試產生的數據量較大時,本方法較傳統(tǒng)方法具有明顯的成本優(yōu)勢。此外,預期該方法會對移動APP中的用戶行為研究工作具有一定的參考價值。
但本文工作也存在幾點不足:首先由于所提出的方法在可用性測試前需要進行基準圖片的采集等準備工作,所以針對用戶和任務數量較少的小規(guī)模測試,本文所提出的方法較傳統(tǒng)方法花費的時間較多;其次無法對用戶的主觀數據進行收集,存在一定的局限性。后續(xù)將會進一步探索實現該方法的自動化。
[1] BEVAN N, CARTER J, EARTHY J, et al. New ISO Standards for Usability, Usability Reports and Usability Measures[C]. Toronto, Canada: International Conference on Human-computer Interaction. Springer, Cham, 2016.
[2] WEICHBROTH P. Delivering Usability in IT Products: Empirical Lessons from the Field[J]. International Journal of Software Engineering and Knowledge Engineering, 2018, 28(7): 1027-1045.
[3] INAL Y, HACALOGLU T. Users’ Behavioral Strategies Toward Mobile App Problems: Fight or Flight[C]. Tro-n--dheim, NORWAY: Conference on E-Business, E-Serv-ices and E-Society, Springer, Cham, 2019.
[4] FOLSTAD A, LAW E, HORNBK K. Analysis in Practical Usability Evaluation: a Survey Study[C]. Austin Texas USA: Proceedings of the SIGCHI Conference on Human Factors in Computing Systems, 2012.
[5] REEVES S. How UX Practitioners Produce Findings in Usability Testing[J]. ACM Transactions on Computer- Human Interaction (TOCHI), 2019, 26(1): 1-38.
[6] WEI Q, CHANG Z, CHENG Q. Usability Study of the Mobile Library App: An Example from Chongqing Uni-versity[J]. Library Hi Tech, 2015, 33(3): 340-355.
[7] WIDYANTI A, AINIZZAMANI S A Q. Usability Eval-u-a-tion of Online Transportation’ User Interface[C].Ba-n-dung, Indonesia: 2017 International Conference on Inf-ormation Technology Systems and Innovation (ICITSI), IEEE, 2017.
[8] DE SANTANA V F, BARANAUSKAS M C C. WELFIT: A Remote Evaluation Tool for Identifying Web Usage Patterns Through Client-side Logging[J]. International Journal of Human-Computer Studies, 2015, 76: 40-49.
[9] GRIGERA J, GARRIDO A, RIVERO J M, et al. Automatic Detection of Usability Smells in Web Applications [J]. International Journal of Human-Computer Studies, 2017, 97: 129-148.
[10] PATERNO F, SCHIAVONE A G, PITARDI P. Timelines for Mobile Web Usability Evaluation[C]. Bari Italy: Proceedings of the International Working Conference on Advanced Visual Interfaces (AVI ‘16), ACM, 2016.
[11] QIAN J, CHAPIN A, PAPOUTSAKI A, et al. Remotion: A Motion-Based Capture and Replay Platform of Mobile Device Interaction for Remote Usability Testing[J]. Proceedings of the ACM on Interactive, Mobile, Wearable and Ubiquitous Technologies, 2018, 2(2): 1-18.
[12] MCMILLAN D, MCGREGOR M, BROWN B. From in the Wild to in Vivo: Video Analysis of Mobile Device Use[C]. Copenhagen Denmark: Proceedings of the 17th International Conference on Human-Computer Interaction with Mobile Devices and Services (MobileHCI ‘15), ACM, 2015.
[13] WEICHBROTH P. A Mixed-methods Measurement and Evaluation Methodology for Mobile Application Usab-ility Studies[J]. Architecture, 2019, 43(44): 45.
[14] JEONG J, KIM N H, IN H P. GUI Information-based Interaction Logging and Visualization for Asynchronous Usability Testing[J]. Expert Systems with Applications, 2020: 113289.
[15] SHITKOVA M, HOLLER J, HEIDE T, et al. Towards Usability Guidelines for Mobile Websites and Applications[C]. Wirtschaftsinformatik, 2015.
[16] 韓立, 劉正捷. CAUXT: 幫助研究人員在感興趣的情境中采集用戶體驗數據[J]. 計算機科學, 2018, 45(7): 278-285.
HAN Li, LIU Zheng-jie. CAUXT: A Tool to Help User Experience Researchers Capture Users’ Experience Data in Context of Interest[J]. Computer Science, 2018, 45(7): 278-285.
[17] 周偉, 肖東娟, 鞏淼森. 電子病歷交互界面的可用性研究[J]. 包裝工程, 2018, 39(20): 248-252.
ZHOU Wei, XIAO Dong-juan, GONG Miao-sen. Usabi-lity of Interactive Interface of Electronic Medical Rec-ords[J]. Packaging Engineering, 2018, 39(20): 248-252.
[18] NIELSEN J. 10 Usability Heuristics for User Interface Design[J]. Nielsen Norman Group, 1995, 1(1).
[19] DU MAS J F, JOSEPH S, REDISH, et al. Evaluating Us-ability Throughout Design and Development[M]. USA Greenwood: A Practical Guide to Usability Testing, 1999.
A Semi-Automatic Usability Testing Method for Mobile APP
LIU Wei, LIU Zheng-jie
(Dalian Maritime University, Dalian 116026, China)
This paper aims to establish a semi-automated usability testing method to provide an idea for solving the problem of high cost when using traditional usability testing methods to identify the usability problems of mobile APP. The user behavior data is automatically captured in the process of users performing test tasks in the form of screen recording by a data acquisition tool CAUX. The actual task execution sequence is extracted from the recorded screen data, through image comparison technology. Then the pages and behavior data with usability problems are automatically extracted by comparing the actual and expected task execution sequence, and a report is generated. Based on the content of the report, usability problems can be quickly identified by researchers. Finally, a comparative experiment with Xiami Music as a case to verify the feasibility of the method. The results show that the majority of pages with usability problems and their usability issues that are difficult to find with traditional methods were discovered by using this method. The usability problems of APP in the daily use environment can be found by automatically capturing and semi-automatically analyzing the screen recording data when users perform test tasks, thereby reducing usability testing costs, benefiting novice researchers and promoting rapid iteration of products.
usability testing; mobile app; user behavior analysis; human-computer interaction; user experience; screen recording
TB472
A
1001-3563(2022)02-0122-10
10.19554/j.cnki.1001-3563.2022.02.016
2021-09-20
劉偉(1995—),男,濟南人,大連海事大學碩士生,主攻計算機科學與技術。
劉正捷(1958—),男,大連人,碩士,大連海事大學教授,主要研究方向為人機交互。