人機互動中6種任務模型對比
任務分析是為任務建模服務,任務分析作為軟體設計必不可少的環節,是互動系統可用性的保障。任務分析是指對人們在實際執行任務過程中的資料進行收集和分析,其目的是深入理解使用者需要完成的目標、使用者執行任務的過程和環境;對任務分析中得到的資料進行結構化,邏輯化的組織是任務建模的過程;任務模型是任務分析和建模的產物。
目前任務分析和建模方法的研究主要分為三個部分:任務模型的描述能力和方法、任務建模形式化方法及開發工具、複雜動態環境中任務模型的組建機制。
1 HTA(hierarchical task analysis)
HTA(hierarchical task analysis
a) 目標( goal),是指完成任務後,使用者希望系統呈現的狀態;
b) 任務( task),是為了完成目標而執行的操作序列集合;
c) 計劃( plan),是指為了完成某個目標而預先設計好的子任務的執行條件和執行序列;
d) 操作( operation),是為了達到目標所做的具體活動。HTA 模型中所描述的任務之間的時序關係是在計劃中預先設計好的,包括順序、選擇和迴圈。
HTA
模型是一種結構化地描述任務與其子任務層次體系
2 GOMS(goal operator methods selectors)
1983
年Card 等人在《人機互動心理學》( The psychologyof human computer interaction)
a) 目標( goal) ,使用者執行任務想要實現的系統狀態;
b) 操作( operator) ,為了完成目標而執行的一系列基本活動,操作的型別有感知操作、認知操作、動機行為或者這幾種操作的結合,每個操作都有一個預定的執行時間;
c) 方法( method) ,是描述如何完成目標的過程,一個方法本質上來說是一個內部演算法,用來確定子目標序列及完成目標所需要的操作;
d) 選擇規則( selection rule) ,當完成同一目標有多種方法時,需要設定一種規則標準來判斷在何種使用情境中應該選擇什麼樣的方法。
GOMS 模型中所描述的任務之間的關係是通過選擇規則來表示的,只能表示相對較簡單的時序關係,包括順序、選擇、並行和迴圈關係。GOMS 模型是一種使用者的認知模型,主要用來描述任務在實踐過程中是如何執行的。它的基本思想是,首先確定目標,將目標進行分解,當完成同一目標的方法多於一種時,根據使用情境,通過選擇規則來選擇合適的方法,每種方法是通過一系列的操作序列集合來實現的。
3 TKS( task knowledge structure) 任務知識結構模型
TKS 元模型使用以下幾個概念元素來描述任務世界:
a) 角色( role) ,被定義為特定的一個任務集合,這個任務集合在特定的社會情境中充當個體職責的一部分,由個體來負責,一個個體可以承擔多個角色,或者一個角色可以由多個個體來承擔;
b) 目標( goal) ,當一個特定的任務執行後,使用者希望系統所呈現的狀態;
c) 計劃( plan) ,為了完成一個特定的目標而設定的可能的子任務序列;
d) 過程( procedure) ,是一個特殊的行為元素,是子任務的一部分,子任務中的多個過程根據不同的使用情況可以有不同的分組和順序,TKS 模型通過這種方式來表示策略,為了使過程能夠在合適的情景下選擇出正確的分組,在過程中需要包含選擇條件和選擇規則;
e) 行為( action)和物件( object) ,是任務分解的最底層,是組成過程的成分。在TKS 模型中任務之間的時序關係通過構造器( constructor) 中的符號和語義來表示,可以表示的任務關係有順序、選擇和迴圈關係。
TKS 模型假定一個人擁有的所有與任務相關的知識都在任務知識結構中,一個角色所需要執行的某一個特定的任務可以看做一個特定的TKS 儲存在任務知識結構當中,當執行與這個特定TKS 相關的任務時,它就會被啟用。
4 MAD方法分析描述( method analysis description,MAD) 模型
與HTA 模型相似,在概念元素中沒有計劃( plan) 元素,而多加了表示任務關係的構造器( constructor) 的概念。MAD 模型使用以下幾個概念元素來描述任務世界:
a) 任務( task) ,為了達到目標而執行的行為序列集合,在MAD模型中,一個任務有很多屬性,如名稱、目標等;
b) 行為( action),是指由系統或操作者所執行的活動;
c) 物件( object) ,是指行為操作的具體內容;
d) 構造器( constructor) ,描述了子任務之間的時序關係。
在MAD 模型中,構造器中表示的任務關係可以分為兩類: 同步操作( SEQ 為連續的任務,PAR為平行任務,SIM 為同時可以執行的任務) 和排序操作( ALT 兩者選其一的任務,LOOP 為迭代任務,OP 為選擇任務) 。為設計過程提供面向物件的任務模型。MAD 為設計過程提供了一種面向物件的任務分析方法。在MAD 中,有基本任務和複合任務兩種型別的任務。
5 GTA ( groupware task analysis) 模型
結合了其他的任務分析方法的特點,強調研究一個群體或一個組織的行為活動,而不是單個使用者。GTA 模型從以下幾個概念元素來描述任務世界:
a) 任務( task) ,GTA 模型關注工作動態方面的結構化,它把任務看做基本概念,把目標看做任務的基本屬性,任務結構是層次化的,複雜的任務可以根據不同的角色來劃分,任務單元或者基本任務可以進一步分解為使用者行為和系統操作;
b) 使用者行為( action) 和系統操作( system operation) ,是任務分解中的最小單元,位於任務層次的最底層;
c) 物件( object) ,在任務分析中,特定環境下與任務相關的每一件事情都可以定義為物件,它可以是客觀存在的事物,也可以是概念性( 非物質) 的事物,如訊息、口令密碼等;
d) 事件( event) ,在特定環境中能夠觸發任務執行的條件;
e) 代理( agent) ,通常情況下是指人( 個人或者團體) ,但在資訊科技的環境中,代理的執行者不僅僅是人類,可能是系統或者人類代理和機器代理的結合;
f) 角色( role) ,繼承了TKS 模型中的角色概念,是指特定的任務子集,通過選擇或者組織形式去劃分的操作者的類別,可以通過委託、授權或者在特定的情景中授權得到。
6 CTT( councer task tree) 模型
結合了基於模型使用者介面設計技術和人機互動形式化方法,為任務模型提供了豐富靈活、帶有語義的表示符號CTT 元模型使用以下幾個概念元素來描述任務世界:
a) 任務( task) ,為了達到使用者的目標而組織的一系列活動集合,依據任務的抽象層次和參與角色的不同,CTT 模型將任務分為抽象任務、使用者任務、互動任務和系統任務;
b) 行為( action) ,為了完成任務而進行的一系列操作;
c) 物件( object),是執行任務時行為操作的實體;
d) 角色( role) ,是指一個特定的任務集合以及集合中任務之間的關係;
e) 構造器( constructor),定義了同一層次子任務之間的關係。
CTT 模型定義了豐富的暫態關係,而且都有相應的圖形符號。所謂的暫態關係,是指在任務執行的任意某個時刻,對其子任務之間執行和結束順序以及相互間依賴關係的一種限定。
表1 幾種任務模型中概念元素的比較
模型 |
Task |
Goal |
Plan |
Operation/ Action |
Method |
Selection Rule |
Object |
Agent |
Role |
Constructor |
Procedure |
event |
HTA |
√ |
√ |
√ |
√ |
||||||||
GOMS |
√ |
√ |
√ |
√ |
√ |
√ |
√ |
|||||
TKS |
√ |
√ |
√ |
√ |
√ |
√ |
√ |
√ |
√ |
|||
MAD |
√ |
√ |
√ |
√ |
||||||||
GTA |
√ |
√ |
√ |
√ |
√ |
√ |
||||||
CTT |
√ |
√ |
√ |
√ |
√ |
任務是指為了完成特定的目標而執行的有序的活動集合
目標是指任務成功執行後,使用者希望系統呈現的狀態
操作/動作是指為了達到目標所做的具體的活動,是任務分解的最底層
物件是指在執行任務的過程中,操作的實體內容
語法的不同是指在不同的模型中,採用不同的詞彙表示相同的概念。表2從任務計劃、運作策略、最底層的任務分解層次和操作層次四個方面列出幾個任務模型在語法上的不同。從左到右表中各列的抽象層次依次降低。Task Planing列中這些概念元素經常在討論高階抽象層次的任務安排時使用; 而task tree leaves 和operational level 兩列則表明瞭如何將一個任務分解為最後的葉子節點。
表2 任務模型中主要的語法差別
模型 |
Task Planning |
Operationalization |
Task tree leaves |
Operational level |
HTA |
Plans |
Tasks |
||
GOMS |
Operator |
Methods/selection rule |
Unit tasks |
Operators |
TKS |
Plans Constructors |
Procedures |
Action |
|
MAD |
Constructors |
Pre-conditions Post-conditions |
Tasks |
|
GTA |
Constructors |
Basic tasks |
Actions/system operations |
|
CTT |
Operators |
Scenarios |
Basic tasks |
Actions |
表3 任務模型任務關係的比較
模型 |
Sequence |
Choice |
Iteration |
Concurrent |
Parallelism |
HTA |
√ |
√ |
√ |
||
GOMS |
√ |
√ |
|||
TKS |
√ |
√ |
√ |
||
MAD |
√ |
√ |
√ |
√ |
√ |
GTA |
√ |
√ |
√ |
||
CTT |
√ |
√ |
√ |
√ |
√ |
下面以CTT 模型中任務關係為例,介紹各個關係符號的表示和它們的語義[8]。
a) choice 選擇關係( T1 T2…TN)
任務T1,T2,…,TN處於被選擇狀態,一旦一個任務被選擇,其他任務處於不可用狀態,直到這個任務執行完成。
b) enabling 使能關係( T1 > T2 >…> TN)
任務T1,T2,…,TN按順序依次完成,只有T1完成後,T2才能執行; T2完成後,T3才能執行; 依此類推,最後執行TN。
c) enabling with information passing 帶資訊交換的使能關係( T1 > T2 >…> TN)
與使能關係相同,任務T1,T2,…,TN按順序依次完成,並且在此過程中帶有資訊的傳遞。
d) independent concurrent 併發關係( T1 | | | T2 | | |…| | | TN)
任務T1,T2,…,TN可以按任意順序執行,也可以同時執行,對執行順序沒有任何的限制。
e) concurrent 帶資訊交換的併發執行關係( T1 |[]| T2 |[]|…|[]| TN)
與併發關係相同,對任務T1,T2,…,TN的執行順序沒有任何的限制,並且在此過程中帶有資訊的交換,例如字處理軟體中,編輯文字時,滾動條可以瀏覽需要編輯的內容; 同樣,當瀏覽內容區域發生變化時,滾動條的位置也隨之變化,即兩個任務之間是相互配合的。
f) disabling 鈍化關係( T1[> T2[>…[> TN)
任務T1,T2,…,TN在執行時,如果後面的任務執行,則前一個任務將被禁用。如T1為填寫表格,T2為提交,一旦執行提交任務後,就不能再填寫表格了。
g) order Independence 順序獨立關係( T1 | = | T2 | = |…| = |TN)
任務T1,T2,…,TN可以按任意順序執行,但一個時間段執行一項任務,與併發關係的區別是任務不能同時執行,個任務必須在前一個任務完成以後才執行。
h) parallelism 平行關係( T1 | | T2 | |…| | TN)
任務T1,T2,…,TN可以在同一時間內一起執行。
i) suspend-Resume 中斷關係( T1 | > T2 | >…| TN)
任務T1,T2,…,TN在執行的過程中,任意一個任務可以打斷正在執行的任務先執行,當這個任務執行完畢後,被打斷的任務再接著執行。
j) iteration 迭代關係( T* )
任務T 可以連續地執行,直到滿足停止條件。