Date post: | 20-Jan-2016 |
Category: |
Documents |
Upload: | donald-mills |
View: | 217 times |
Download: | 0 times |
INTERaction TEMPlates TO COMponents (InterTempToCom)
CMPT 856
David Paquette
ConcurTaskTrees
User Task
Interaction Task
Application Task
Abstraction Task
DescriptionIcon
Types of Tasks
T1Connection
[ T1 ]Optional [ ]
T1 *Iterative *
SyntaxDescriptionIcon
Unary Operators
Temporal RelationsIcon Description Syntax
[] Choice T1 [] T2
|=| Order Independency T1 |=| T2
||| Concurrent T1 ||| T2
|[ ]| Concurrent with information exchange
T1 |[ ]| T2
[> Disabling T1 [> T2
|> Suspend/Resume T1 |> T2
>> Enabling T1 >> T2
[] >> Enabling with information exchange
T1 [] >> T2
ConcurTaskTrees
Task model of a user sending an e-mail
Repeating Sub-Trees
Interaction Templates
Model complex interface interactions commonly found in information systems
Parameterized CTT subtrees Inserted into large task models Customizable
Through parameters, or By hand
Defining Interaction Templates
Compact description of a CTT that can be customized through a set of parameters
Interaction Template Definition Language XML CTT description Embedded template statements
Defining Interaction Templates
XML CTT Description
<TaskModel NameTaskModelID=“C:\My Documents\...\cttLabAssistant.xml><Task Id=“Use Lab Assistant” …> <SubTask> <Task Id=“Enter Batch” …>…</Task> <Task Id=“Process Batch” …>…</Task> <Task Id=“Ship Batch” …>…</Task> </SubTask></Task></TaskModel>
Defining Interaction Templates
Defining a template and its options
<it:template name=“Data Table”> <it:options optionName=“optionType” … />
<Task Id=“Data Table” …> … </Task>
</it:template>
Option types include String, Integer, Boolean, and XML Files
Defining Interaction Templates
it:case chooses the first it:condition whose expression evaluates to true
Defining a template and its options
… <it:case> <it:condition expression=“$OS=Windows”> <Task Id=“Print Document” …> … </Task> </it:condition> </it:case>…
Defining Interaction Templates
it:foreach loops through each possible value for its single attribute
Defining a template and its options
… <it:foreach col=“$schema.element”> <Task Id=“Sort By $col.name” optional=“$col.optional…> … </Task> </it:foreach>…
Template Attributes/Elements
$attribName is replaced with a value Attribute value or XML element
Sub elements and attributes can also be referenced (eg. $schema.element.name)
Simulating Task Models
Calculate Enabled Task Sets
Calculate Initial State
Calculate State Transition Network
Simulating Interaction Templates
Interaction Templates can be simulated using concrete user interface components
=
Simulating Interaction Templates Enhanced Task Model Simulator takes in
XML CTT description and ETS/STN Establishes a socket connection with all
Interaction Template prototypes
Perform Task
Simulating Interaction Templates
When an Interaction Template is reached in simulation, a message is sent to the prototype
EnhancedTask ModelSimulator
InteractionTemplatePrototype
InteractionTemplatePrototype
InteractionTemplatePrototype
EnableDisable
Generating Prototypes
TfrmPrototype contains Basic functionality common to all
prototypes (communication with simulator) Specific adaptations based on it:options
TfrmPrototype TfrmDataTable
Inherits From
Enhanced Task Model Simulator
Conclusions
Interaction Template Definition Language Define templates through annotations?
Enhanced Task Model Simulator Simulate Interaction Templates using
concrete user interface components Currently, prototypes are manually built
Adapt to the options set in the template
INTERaction TEMPlates TO COMponents (InterTempToCom)