Reading
- Adapting to Mobile Contexts with User-Interface Modeling
- Eisenstein, et al.
Outline
- 1. Introduction
- 2. MANNA: The Map ANNotation Assistant
- 3. The User Interface Model
- 4. Adaptation in mobile devices
- 4.1. The Abstract Interaction Object
- 4.2. Adapting to Interaction Constraints
- 4.2.1. Adaptive Interactor Selection
- 4.2.2. Selecting a Presentation Structure
- 4.2.3. Generating a Presentation Structure
- 4.3. Focusing on Contexts of Use
- 5. Future Work
- 6. Related Work
- 7. Conclusion
Notes
- Introduction
- Mobile computing poses several challenges for UI design and development
- Interactive applications and their UIs must run on many different computing platforms
- Mobile computing platforms have unique and challenging input and output constraints
- UI should be designed to accommodate and take advantage of varying contexts suited for mobile devices
- Mobile computing increases probability of environment or contextual change while user is carrying out task
- Mobile computing requires UIs be sensitive to:
- Platform – by having presentations that adapt to screen surface, color depth, screen resolution, and dialogs that adapt to network bandwidth
- Interaction – by having mechanisms that remember previously used interaction techniques, window sizes and locations, and respect user preferences for these presentations
- User – by adapting to user experience level, system and task experiences, skills, conventions, and preferences
- The challenges
- Cross-platform development can be resource-consuming and complex
- Cross-platform design difficult to coordinate and make consistent across different UIs due to difference in skills and experience members of design team
- Variations of contexts of use and different designs subject to several usability issues not aware by designers
- Goal: user interface modeling will be an essential component of any effective long term approach to developing UIs for mobile computing
- MANNA: The Map ANNotation Assistant
- About MANNA
- A multimedia application that must run on several platforms and utilized collaborative over the internet
- Target users: geologists, engineers, military personnel, etc.
- Annotations can include text, audio, video, virtual reality walk-through
- Scenario
- About:
- a geologist is dispatched to a remote northern California location to examine effects of a recent earthquake
- Desktop workstation
- Downloads existing maps and reports on area to prep for visit
- Few limiting UI development constraints
- Totally immobile
- Documents downloaded to laptop
- Laptop
- Not networked, so network connection commands disabled
- When examining video of site, UI switches to black-and-white and reduced frame rates to conserve battery power
- Preference for keyboard-friendly interactors over laptop touch pads
- Cell phone
- Receives message through MANNA system
- Map of region not displayed due to limited screen-space
- Instead shows geographical location, driving directions, and geologist’s current GPS position
- Palmtop computer
- Used to make notes on region
- Relies on touch pen for interaction, so double-clicks and right-clicks aren’t allowed
- Limited screen space means more conservative layout
- Post-investigation
- Prepares presentation in two formats
- Annotated walk-through on heads-up display (HUD)
- Too limited for textual input
- Speech-based interactors used instead
- Conventional presentation prepared on high-resolution large screen
- Final presentation, so no information added
- Important information placed near center and top for audience view
- The User Interface Model
- About above scenario
- Highly adaptive, context-sensitive, multi-platform user-interface
- Too difficult to realize with conventional UI-design
- About user-interface model
- Defined as a formal, declarative, implementation-neutral description of UI
- Expressed by a modeling language that should be:
- Declarative – comprehensible to humans, even if they are not familiar with software tools that support the language
- Formal – understood and analyzed by a software system
- Entirely platform independent
- To support each platform, must convert from modeling language to some kind of runnable program code (e.g., Swing, HTML)
- About MIMIC
- A comprehensive UI modeling language
- Meets criteria for user-interface model
- Model types
- Platform model
- describes the various computer systems that may run a UI
- includes information regarding UI's constraints by the platform
- Presentation model
- describes the visual appearance of the user interface
- includes information describing hierarchy of windows, widgets, stylistic choices, and widget selection/placement
- Task model
- a structured representation of the tasks that the software user may want to do
- hierarchically decomposed into subtasks
- Adaptation in Mobile Devices
- About adaptation
- when the user interface changes dynamically in response to a new context
- may occur at design time (i.e., automated design support) or at run time (i.e., dynamic UI)
- The abstract interaction object
- interaction object (widget)
- any element that allows users of an application to:
- visualize or manipulate information, or
- perform an interactive task
- from modeling perspective, atomic building blocks of a UI
- Concrete Interaction Objects (CIOs)
- interactors that are executable on some platform without additional processing
- not necessary to understand its implementation details
- doesn't depend on program code elsewhere in application
- Abstract Interaction Object (AIOs)
- not executable on any platform
- agnostic as to how it's implemented
- completely portable, but implementation must be found elsewhere in UI, or implicit in tool's design that interprets UI modeling language
- presentation model architecture
- similar to an object hierarchy
- AIOs
- each AIOs is the parent of several CIOs
- UI designer only needs to think in terms of desired AIOs
- CIOs
- each CIO mapped to some supported platform
- when UI model is interpreted, appropriate CIO is automatically rendered
- UI implementation
- AIOs are one piece for implementing same UI on several platforms
- each platform may pose special constraints
- need to implement customized UI for each platform
- Adapting to interaction constraints
- Interaction constraints
- one obvious constraint in mobile computing is display resolution
- screen adaptation is more difficult than other forms of adaption
- three parameters that contribute to display size in UI design
- size of individual interactors
- layout of the interactors in a window
- allocation of interactors among several windows
- Adaptive interactor selection
- two possible methods for accommodating screen resolution constraints by reducing size of interactors:
- simply shrink the interactors
- e.g., length of edit box reduced to minimum
- replace that interactor with smaller alternative
- e.g., Boolean checkbox replacing radio buttons due to less screen space
- also applicable to constraints other than screen resolution
- as number of constraints multiple, selecting appropriate interactors while respecting different constraint types simultaneously becomes problematic
- decision trees:
- can be useful mechanism for performing interactor selection while respecting several constraints
- many advantages
- require few computational resources
- easy for humans to read, write, and comprehend
- existing algorithms for learning decision trees from example data
- Selecting a presentation structure
- interactor-size parameters only provide limited flexibility in meeting screen-resolution constraint
- presentation structure - a grouping of the remaining two parameters
- layout of interactors within a window
- allocation of interactors between windows
- problem: selecting the appropriate presentation structure, given constraints of platform's afforded screen space
- goal: alternative presentation structures
- simplest solution: create mappings between each platform and appropriate presentation structure
- main drawback: static; no support if
- available screen resolution changes at run time, or
- new device with new screen resolution introduced
- more dynamic solution: build an intelligent mediator agent that dynamically selects the appropriate presentation model for each device
- Generating a presentation structure
- addition abstractions besides CIOs and AIOs for presentation model:
- 1) Logical Window (LW):
- any groupings of AIOs - a physical window, a subwindow area, a dialog box, or a panel
- a composite AIO
- physically constrained by user's screen
- 2) Presentation Unit (PU):
- a complete presentation environment required for carrying out a particular interactive task
- a composite LW
- displayed on screen simultaneously, alternatively, or some combination
- composed of at least one window called the main window
- hierarchy of presentation concepts (i.e., PU, LW, AIO) can construct automated design tool that generates several platform-optimized presentation models from platform-independent starting presentation model
- 1) Re-modeling LWs within a PU:
- the contents of initial LWs are redistributed into new LWs within sing PU
- basic operations
- ungrouping an LW into several smaller LWs
- grouping constants of several LWs into single, comprehensive LW
- moving AIOs from one LW to another
- 2) Re-modeling AIOs within a LW:
- according to existing constraints, contents of initial LW redistributed into new simple or composite AIOs
- no unambiguously successful algorithm for automatic generation of presentation structure based on these abstractions
- Focusing on contexts of use
- often, users do not want to accomplish same set of tasks on different devices
- e.g., PDA for entering annotations, desktop for viewing them
- solution: designer creates mappings between platforms and tasks
- tasks that are important should be repsented by AIOs that are easily accessible
- e.g., clicking on spot enters annotations on PDA, brings up regional information on desktop
- Conclusion
- complexity of mobile computing forces designers to accommodate variety of devices and contexts of use
- 1) As the basis for components of a design toolkit that allows designers to build several user-interfaces out of a single design idea.
- 2) By leading to the development of adaptive user-interfaces that adjust at run-time to support the necessary context of use.
- Claim: the use of abstract, platform-neutral, user-centered models to describe the UI greatly facilitates the development of consistent, usable multi-platform UIs for mobile devices
Comments
- To the best of my knowledge, there are at least five major mobile OSes: Android (Google), iOS (Apple), Windows Phone 7 (Microsoft), Symbian (Nokia), webOS (HP).
- Cross-platform design for all the major mobile OSes would be a huge pain, which explains why developers might flock to the most popular mobile OSes, which at this point would be Android and iOS.
- Paper describes creating modified interfaces suited for mobile devices, but makers of current smartphones and mobile OSes stress on providing a fuller desktop experience on smaller form factors.
0 comments:
Post a Comment