Title: An Approach to Task Modelling for User Interface Design
1An Approach to Task Modelling for User Interface
Design
- Costin Pribeanu
- National Institute for Research and Development
in Informatics, Bucuresti, Romania - E-mail pribeanu_at_ici.ro
2Content
- Introduction
- Related work
- Model-based design
- Using CTT for task representation
- The application domain model
- Mapping application functions onto user tasks
- Using the task model to filter data model
elements - Task modeling
- Layers in task decomposition
- Decomposition at operational level
- Conclusion
3Introduction
- Model-based design of user interfaces
- addressing methodological aspects models,
methods and tools - capturing design knowledge
- contributing models user, task, domain,
- interface models presentation and dialog
- task-based design task model is the key model
- Motivation and objectives
- answering the mapping problem relationships
between models - presenting a layered approach to task modeling
- exploiting the information contained in the
domain model - deriving the presentation from the task model
4The mapping problem
- Key problem in model-based approaches
- model transformation from abstract to concrete
level - relationships between different models
- Related work
- Clerck et al. (2004) preserving consistency
between models - Florins Vanderdonckt (2004) graceful usability
degradation - Limburg Vanderdonckt (2004) description
language tools - Aspects to consider
- the model type (e.g. domain, task, platform )
- the hierarchical structure of each model
- the progression level along the development cycle
5Tools for task representation
- Concur Task Tree (CTT) notation
- Graphical task representation
- Abstract Application Interaction User Cooperative
- Temporal operators between sibling tasks
- Choice T1 T2
- Order independency T1 T2
- Interleaving T1 T2
- Synchronization T1 T2
- Enabling T1 gtgt T2
- Enabling with info pass T1 gtgt T2
- Disabling T1 gt T2
- Suspend / resume T1 gt T2
- Optional (unary) T1
- Iteration (unary) T1
6Application functions
- Application domain model
- concepts related to the domain of target
applications - application functions and data model
- Application functions
- high level functions corresponding to bussiness
goals - carried on by user tasks
- Example data management in a trade company
Functional goal
7Data model
- Data model elements
- Domain objects (entities)
- Attributes
- Relationships between objects (and roles)
- Model representation
- ERA formalism (Entity-Relationship-Attribute)
- DB-MAIN tool
- graphical representation of data model elements
- expressive for roles and cardinalities
- output capabilities (SQL and XML)
8Data model elements
Object
Relationship
Role
Object attribute
Cardinality
Relationship attribute
create table ORDER ( ID_ORD char(10) not
null, Order_Id -- Index attribute not
implemented -- not null, Order_No numeric(6)
not null, Order_Date date not null,
Delivery_Date date not null, Pay_Mode
char(1) not null, Order_Value numeric(9,2)
not null, constraint ID primary key
(ID_ORD))
9Data model representation
10Centrality of elements
- Central domain objects
- Targetted by the user task
- Central relationships
- Relationships of central objects
- Helps the user to understand the information
displayed - Relevant roles - cardinality
- Reveals repetitive tasks
- Helps in task decomposition
- The task model is filtering for relevance (UI
design) data model elements - Orders 1-N products
11Task modeling
- Task model
- goal hierarchy, tasks, temporal constraints
- Activity theory
- Activity motivation
- Actions (tasks in HCI) goal
- Operations (actions in HCI) operational
conditions - Operational conditions
- Variations in using the same interaction object
- actions
- Variations in the platform
- operational goals related to a given context of
use
12Task decomposition
- Layers in task modeling
- Functional planning
- Operational
- Criteria for task decomposition
- Functional same business goal (functional)
- Semantic targetting same domain object or
operation onto it (both) - Object used using same external or interaction
object (operational) - User and work same user and role, similar work
(cooperative) - Temporal specific temporal constraint (both)
13Functional layer
- Planning (functional) goals
- Specified during early task analysis
- Starting with high level business goals
(application functions) - Unit tasks
- what to do
Functional goal
Unit task
14Operational layer
- Operational goals
- Specified during user interface design
- Starting with unit tasks
- Basic tasks
- depend on a given platform
- how to do it
- Basic task types
- Information control
- Function control
Unit task
Basic tasks
15Unit task decomposition
- Hierarchy of unit tasks
- Invoke the execution of another unit task
- Operational task structures
- Suggest AIO grouping in a task-based approach
Unit task
Unit task
Basic tasks
16Conclusion
- Task-based approach
- Starting with the task model
- Decomposition levels
- Functional task level
- resulting from mapping application functions onto
user tasks - Unit task level
- leaves in the functional-planning layer
- mapped onto AIO configuration
- Basic task level
- leaves in the operational level
- carried on with AIO