An Approach to Task Modeling for User Interface Design

advertisement
An Approach to Task Modelling
for User Interface Design
Costin Pribeanu
National Institute for Research and Development in
Informatics, Bucureşti, Romania
E-mail pribeanu@ici.ro
Content


Introduction
Related work



The application domain model



Mapping application functions onto user tasks
Using the task model to filter data model elements
Task modeling



Model-based design
Using CTT for task representation
Layers in task decomposition
Decomposition at operational level
Conclusion
Introduction

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
The mapping problem

Key problem in model-based approaches



Related work




model transformation from abstract to concrete level
relationships between different models
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
Tools for task representation


Concur Task Tree (CTT) notation
Graphical task representation
Abstract Application Interaction User Cooperative

Temporal operators between sibling tasks










Choice
Order independency
Interleaving
Synchronization
Enabling
Enabling with info pass
Disabling
Suspend / resume
Optional (unary)
Iteration (unary)
T1 [ ] T2
T1 ||| T2
T1 ||| T2
T1 |[]| T2
T1 >> T2
T1 [ ]>> T2
T1 [> T2
T1 |> T2
[T1]
T1*
Application functions

Application domain model



Application functions



concepts related to the domain of target applications
application functions and data model
high level functions corresponding to bussiness goals
carried on by user tasks
Example: data management in a trade company
Functional goal
Data 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)
Data model elements
Object
Relationship
Object
attribute
Role
Cardinality
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));
Relationship
attribute
Data model representation
Centrality of elements

Central domain objects


Central relationships



Relationships of central objects
Helps the user to understand the information displayed
Relevant roles - cardinality



Targetted by the user task
Reveals repetitive tasks
Helps in task decomposition
The task model is filtering for relevance (UI design)
data model elements

Orders 1-N products
Task modeling

Task model


Activity theory




goal hierarchy, tasks, temporal constraints
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
Task 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)
Functional 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
Operational layer

Operational goals



Starting with unit tasks
Basic tasks



Specified during user interface design
depend on a given platform
“how to do it “
Basic task types


Information control
Function control
Unit task
Basic tasks
Unit task decomposition

Hierarchy of unit tasks


Invoke the execution of another
unit task
Operational task structures

Suggest AIO grouping in a taskbased approach
Unit task
Unit task
Basic tasks
Conclusion

Task-based approach


Starting with the task model
Decomposition levels

Functional task level


Unit task level



resulting from mapping application functions onto user tasks
leaves in the functional-planning layer
mapped onto AIO configuration
Basic task level


leaves in the operational level
carried on with AIO
Download