ADAPTATION

Aus DPWiki - The Design Pattern Wiki

Wechseln zu: Navigation, Suche

Inhaltsverzeichnis

Illustration

 The Adaptive News Server [1] spontaneously adapts its selection of news items on the basis of the user's reading behavior
vergrößern
The Adaptive News Server [1] spontaneously adapts its selection of news items on the basis of the user's reading behavior

Context

…you want to design your mobile application to flexibly adapt to the users needs and behavior - FLEXIBILITY.

Now you want to make the system automatically provide only the information that is really important for users and by that make the interface clear and easily usable.


Problem statement

How can the system know what information is important for a specific user and how can this knowledge be used to present this user a clear and easily usable interface?


Problem description with forces

Mobile devices are mostly used by a single person. This person - the user - has a specific behavior (interests, preferences, special tasks and context of usage), but also special requirements to the information that should be displayed on the mobile device.

"Normal" applications do not take advantage of this user knowledge but display a standard view that will be best for most users. For our specific user however, there might be information included that are either unimportant or unnecessary (e.g. if she is an expert user) or that are not understandable and too complicated (if she is a novice user).

Of course there is a possibility to let the user customize and individualize the system himself (see USER CUSTOMIZATION) but this requires user action, knowledge and time.

So there is a need for a system that automatically adapts to the specific user.

This adaptation, however, should consider some usability goals [2] to accomplish:

  • Predictability (the user needs to be able to predict what the system will do) <LI>Transparency (the user wants to understand to some degree why the system has made a particular adaptation or recommendation and how the system's adaptive mechanisms work) <LI>Controllability (the user wants some degree of control over the individual adaptations that the system makes and the general parameters that determine the systems adaptation) <LI>Unobtrusiveness (the system's adaptations should not lead to constant distraction even in the service of the above three goals) </UL>

    Examples

    Adaptation is used on different systems and for different purposes.

    Amazon [3] for example provides book recommendations when the user is logged in.

    vergrößern

    These recommendations are based on the user's behavior (what books did he buy in the past, what books did he look at) and are adapted frequently to this behavior.

    As shown in the opening picture, the Adaptive News Server (ANS), a service that delivers news, classifieds, entertainment information and advertisements to wireless devices, adapts its selection of news items on the basis of the user's reading behavior.

    In the Palm OS DateBook the time scale of the "day view" are adaptive.

    vergrößern
    vergrößern

    The scale automatically adapts to avoid scrolling by hiding unused time periods.

    Which items can be made adaptive was already described by Haaks [4] in 1992. They include:

      <LI>Synonym commands <LI>Default values (e.g. in forms) <LI>Support (active/passive, time, content/ detailedness) <LI>Interaction widgets (e.g. windows, pictograms, buttons, menus) <LI>Interaction initiative (novice/ expert) <LI>Limitation of functions (novice/ expert) <LI>Modification/ extension of functionalities (functional adaptation) <LI>Goal of adaptation: content/ function

    Solution

    Therefore:

    Make your application adaptive!

    There are several ways to automatically adapt your system to users[ ]:

      <LI>based on user's preferences and interests <LI>based on task requirements <LI>based on the user's environment and context <LI>based on technologies

    On a "personal" device like a handheld we can identify the user and use this information to make navigation, interaction and content presentation easier and more suitable for the specific user.

    So store information about specific users: what options they have chosen in the past, whether they are novice or expert, perhaps even age and gender.

    Tailor the display to show only functionality most likely to be used by the current user, but ensure there are mechanisms to get to other data if necessary.

    Always consider the usability goals for user-adaptive systems mentioned above!

    There are two main rules for this pattern: the default setting should display all the information users require and it should be easy for users to reset the software!


    Diagram

     General Schema of an user-adaptive system [6] Ovals: input or output; rectangles: processing methods; cylinder: stored information. Dotted arrows: use of information; solid arrows: production of results
    vergrößern
    General Schema of an user-adaptive system [6] Ovals: input or output; rectangles: processing methods; cylinder: stored information. Dotted arrows: use of information; solid arrows: production of results

    References

    This is a basic pattern and has no further references in this pattern language.


    Notes

    Parts of this pattern were adopted from the pattern "User Customization" by Charles Weir and James Noble [7].


    Literature and Links

      <LI>Pazzani, M. J. (2000): http://www.adaptiveinfo.com <LI>Jameson, A. (2002): Adaptive interfaces and agents. In J. A. Jacko & A. Sears (Eds.), Human−computer interaction handbook. Mahwah, NJ. Erlbaum. <LI>Amazon.com, Inc.; http://www.amazon.com in July 2003 <LI>Haaks, D. (1992): Anpassbare Informationssysteme, Verlag für Angewandte Psychologie, Stuttgart <LI>Oppermann, R. (2003): Software-Ergonomie (course slides). University of Koblenz-Landau, Institute for Computational Visualistics. <LI>Jameson, A. (2002): Designing Systems That Adapt to Their Users. Full-day tutorial presented at CHI 2002, Minneapolis, Minnesota, 20-25 April, 2002 <LI>Weir, C. and Noble, J. (2001): A window in your pocket - Some small patterns for user interfaces. In Proceedings of the European Conference on Pattern Languages of Program Design, EuroPloP 2001. The Hillside Group, Inc.


Persönliche Werkzeuge