手機應用程序的可用性研究數據的獲取、過濾、分析

最近看了一篇論文《A Methodology and Framework to Simplify Usability Analysisi of MobileApplications》,主要是介紹了一種基於android平臺的框架,方便手機應用開發者打log獲取用於可用性研究的數據(例如用戶在該應用上的行爲軌跡),然後將獲取的數據進行過濾,生成Graph進行分析。雖然還沒有進行手機應用開發,還是留着,以後說不定能用到。本篇文章在翻譯的同時對有用信息進行總結。

1.介紹

         由於手機的屏幕小,所以用傳統的可以用性研究方法:用攝影機錄像、眼動設備,都不顯示。本篇文章介紹了對移動平臺的可用性分析提供了一種方法論和框架。該篇文章主要是從開發者的角度,如何獲取進行可用性分析的數據,以及如何分析這些數據,從而改善產品的可用性。

2.移動應用的可用性評估

以下爲開發者執行的一組典型的任務:

(1)preparation:建立應用原型使得能夠記錄可用性評估需要的信息。由於移動平臺的多樣性,很難找到通用的一組API能夠用於執行這些logging任務。

(2)collection:確保系統能夠收集到需要的數據。

(3)extraction提取:提取collection階段的logged數據,移植這些數據到其他應用做後序分析。

(4)analysis:拿到extraction階段處理的信息分析系統的那個部分讓用戶在交互上有困難。

 

3.Evahealper框架:an aid to the Mobile ApplicationDeveloper

A:preparation階段:決定Log哪些信息

以下爲一些人提出一些可用性屬性(易學性、有效性,可記憶性等等)以及各種方式去度量這些屬性。可以發現,用的比較多的是“Time”,其他常用的右events(例如button clicks),navigation導航(經過哪些步驟達到目的地)。根據表中的信息可以找到必要的可用性度量:使用的UI組件,對應的行爲或event,行爲執行的時間等等。


B:Preparation和Collection階段:使用EvaLogger簡化logging

Preparation階段的一項任務是在application中添加必要的代碼使得能夠logging信息。爲了緩解該項任務,提供了一些API。


上面的Evalogger只支持使用Android平臺的應用,但是很容易拓展區支持其他平臺。以下展示如何使用這些方法:

startNewlogFile:創建一個新的log文件

log:在event listener中被調用。

logComment:用於log任何類型的unformatted消息。

Logs被存儲成CSV格式(逗號分隔值文件格式,通常是純文本文件),而不是XML,因爲XML需要添加tags去儲存信息,而CSV不需要,所以文件大小更小。

C:Extraction 階段:使用EvaWriter簡化log輸出的處理

EvaWriter用於處理log文件爲某種輸出格式,例如GraphMLS,GraphMLS是基於XML文件格式,用於表示圖。EvaWriter類可以簡單地拓展,提供其他輸出格式。EvaWriter包含方法PrintCSVDataAsGraphMLToFile,以CSV作爲輸入,將CSV文件轉換成GraphML格式。

D:Analysis階段,對Graphs的可用性分析

Graphs是一種數據結構,提供強大的representation幫助系統的分析和設計。使用graphs去可視化用戶交互而不是UML活動圖或狀態圖是因爲graphs很簡單;另一個優勢是graphs有現成的算法用於分析系統(graph traversal)

移動應用的用戶交互可以用嵌套的有向圖表示,每一個UI組件表示成圖中的節點,圖的邊對應用戶的行爲/轉移,箭頭表示行爲的方向。度量可用性、效率和可記憶性的一種方式是通過度量用戶完成任務的時間,使用有色的邊或不同的邊的長度可以可視化用戶從一個部分到另一個部分的時間。度量錯誤、效率、可記憶性的一種方式是記錄執行任務的步驟,使用圖上的邊的序列就可以達到這一目標。

Simplicity可以通過度量用戶爲完成某一目標所做的努力;另一個方法是學習移動應用的實際屏幕的當前設計,並且與輸出圖進行比較,檢查是否有的UI組件並沒有被用到,這些組件可以被拋棄以保持界面的簡單性。


E:EvaHelper 控制中心:引導開發者進行工具集成

集成之前提到的所有工具


4.Application Possibility for Future Work

該章討論方法論如何拓展。

A:通過自動化簡化Log代碼的插入

例如開發者可以直接在相關工具上選擇插入什麼樣的log代碼。

B:使用ASP(Aspect-Oriented Programming)將Logging那一塊分離

5.總結

在該篇論文中,我們討論了簡化收集可用性信息的任務,我們致力於幫助開發者在可用性演化的技術層面,包括收集可用性數據的準備階段;提取和規格化得到的數據,在該research中,我們強調了使用正確的工具,例如API和guideline去簡化開發者的任務;對提取的數據進行分析;最後提出了集成各種工具的control center。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章