Upload
temima
View
38
Download
4
Tags:
Embed Size (px)
DESCRIPTION
Adaptive User Interface Modelling for Web-environments. T-121.900 – 15.10.2002 Antti Martikainen [email protected]. Contents. Requirements for Adaptation Device Independent UI Languages UI Models Model Mapping Conclusions. Scope. This presentation is not about - PowerPoint PPT Presentation
Citation preview
Adaptive User Interface Modelling for Web-environments
T-121.900 – 15.10.2002Antti Martikainen
Contents
• Requirements for Adaptation
• Device Independent UI Languages
• UI Models
• Model Mapping
• Conclusions
Scope
• This presentation is not about– Intelligence in adaptation– Adaptation based on users behaviour
• Rather it is about– Modelling principles to enable a single application
to adapt to different kinds of devices, and– Finding balance between usability requirements
and development times and maintenance costs
Screen resolutionWAP PDA Computer
48x48 256x364 1024x768
Adapting applications to devices
• Managing bi-directional interactions requires device specific adaptation to– Screen resolution– Connection speed– Different Markup languages– Rendering capabilities– Functional capabilities
Language/Device specific capabilities
• Visual rendering– Colours– Tables– Frames– Images
• Voice detection vs. Visual input• Scripting capabilities
– Javascript
• Style sheet usage– CSS (XSLT)
• …
The Common Multi-channel Delivery Mechanism
Database
HTML application PDA application WAP application
Device Independent UI languages
Device independent UIdescription
Transformationmodule
Database
PDA
WAP
VoiceSystem: "Masters Scores. Please select one of the following for player: Tiger Woods, David Duval, Phil Mickelson, Mark Calcavecchia..."User: "Tiger Woods."System: "Please select one of the following for Tiger Woods or say "all" to listen to all of available information: Player, Tournament Score, Round 1, Round 2, Round 3, Round 4."User: "Tournament Score."System: "The Tournament Score for Tiger Woods is 16 under."User: "Lookup."System: "What information would you like?"User: "Can I have the Round 3 score for Chris DiMarco?"System: "The Round 3 score for Chris DiMarco is 69. What information would you like?"User: "Goodbye."
Web browser
Windows CE
Examples of Device Independent UI languages
• UIML (User Interface Markup Language)– Does not allow implementing device specific
features
• MAXML (Multi-channel Access XML)– Engine implements device specific features
automatically designer cannot affect usability
Common Problems with Abstract Languages
• Applications built with abstract languages are either– Implemented to match the capabilities of the
“weakest” device (lacking required functionality), or
– Not usable, at least concerning some devices
User Interface Modelling systems
• UIM languages consist of models– Task– Presentation– Domain– Device– Dialogue– User
Task model
• Describes how users do their tasks in a certain application
• Contains the task structure, and the order and division of interactions between user and system
• Formal task descriptions should work as a device independent starting point for the UI
• Task model could support a more straight forward flow in realizing user requirements in the UI
Presentation model
• Represents the visual and auditory elements provided to the user by the user interface.
• Presentation elements give abstract tasks a concrete form
• May also contain stylistic properties, such as colours and font size
• Example:– Define that a persons name is shown in an input field
Domain model
• Defines the underlying objects that the user can indirectly see and manipulate through the user interface
• Commonly attached to (abstract) task elements to achieve UI code reuse
• Example:– A product has certain attributes; These
attributes are managed through certain actions
Device model
• Presents the capabilities, such as the used UI language, connection speeds and other properties of a device
• Example:– Can the device handle JavaScript?
• CC/PP– W3C standard for device capabilities– Incomplete
• does not define all necessary elements• does not say what UIM systems should do with device properties
Dialogue model
• A more concrete approach to task model
• Defines interactions in cases of technical forces
• Example:– How to implement a confirmation, when one
device is Javascript enabled and another is not?
User model
• Defines the attributes and roles of users • Can be used to provide a way to model UI
preferences for specific users or groups of users
• Examples:– Exclude a group of users from some task– Show all possible data attributes to company
management
Mapping problem
Task model
User modelDialogue model
Device model
Domain model
Presentation model
?
??
??
?
?
?
?
?
?
??
?
User model
PDA Web browser WAP browser
View
Subview 1
Subview 2
View
Subview 1
Subview 2
View
Subview 1
Subview 2Subview 3
property 1
Task elements
Task
Subtask 1
Subtask 2
Subtask 3
Domain elements
Domain object 1
Attribute1
Attribute2
Domain object 2
Attribute1
Attribute2
Role 2
Role 1
property 1 property 1
Communicator
Device profiles
PDA
WAP
Web
property 1
common
property 1
Opera
property 1
IE6 Netscape
Operation 1 Operation 1
Presentationmodels
Combining Separate Models
Location, available services etc...
Transforming the UI
Applicationdata &
mappedabstract UI
task model
presentationmodel
dialoguemodel
device model
user model
domain model
Adapteddevicespecificmarkup
UIengine
Devicespecific
renderingmodule
HTTP
Conclusions
• Model-based UI development strives for– Systematic and faster UI development with UI code reuse– Serving all existing devices
• Difficulties– How to proceed from abstract to concrete UIs without
compromising aesthetic design– Required models and mappings are not completely clear– Development tools are important (no commercial products)– New UI design methodology