Design Patterns in Ubiquitous Computing by yaofenjin

VIEWS: 3 PAGES: 15

									Design Patterns    UbiComp Patterns   Evaluations




                  Design Patterns in
                  Ubiquitous Computing


                                                    Eric Chung
                                                    Jason I. Hong
                                                    Jimmy Lin
                                                    James A. Landay1
Design Patterns   UbiComp Patterns   Evaluations




                  Introduction to Design Patterns

              • Patterns are developed
                to communicate
                common problems and
                solutions for designers
                in a discipline
              • First introduced by
                Christopher Alexander
                and his colleagues in
                the field of architecture
                                                    2
Design Patterns    UbiComp Patterns   Evaluations




                               Beer Hall Example

              • Problem:
                  – Where can people
                    sing and drink, and
                    shout and drink,
                    and let go of their sorrows?
              • Solution:
                  – Somewhere in the community at least one big
                    place where a few hundred people can gather,
                    with beer and wine, music, and perhaps a half-
                    dozen activities, so that people are continuously
                    crisscrossing from one to another.                  3
Design Patterns     UbiComp Patterns   Evaluations




                  Design Patterns for Ubiquitous Computing
            • Help designers create higher-quality
              designs faster by developing a pattern
              language for UbiComp

            • Difficult to identify patterns because many
              design issues are still active areas of
              research

            • Difficult because certain problems do not
              have common solutions (have to resort to
              predictive patterns rather than descriptive)   4
Design Patterns     UbiComp Patterns   Evaluations




                                  Identifying Patterns
           • We developed a criteria for identifying patterns:
                  – Pattern should have at least one example in
                    research and one example in industry
           • A list of over 60 UbiComp patterns have been
             identified
           • Patterns are grouped into several important
             UbiComp themes (e.g., privacy)
           • A taxonomy of UbiComp applications is also
             important to consider

                                                                  5
    Design Patterns             UbiComp Patterns                 Evaluations




Themes                Infrastructure        Privacy                 Identification       Manageability     Personalization

High-level Patterns   Proxies for devices   Balance of Power        User Identity        Bootstrap         Ambiguity

                      Service Handoff
                                                      Chart of UbiComp Patterns
                                                             Anonymous
                                            Building Trust and         Information Base                    Learning &
                                            Credibility                                                    Remembering Users
                      Negotiation &                                 Pseudo-Identity
                      Resolution            Social Situation

                      Relying on Multiple   Purpose
                      Sources
                                            Appropriate Scope
                      Connections           of Access

                      Effective             Scope of Control
                      Deployment
                                            Appropriate Scope
                                            of Locality

                                            Scope of Time

                                            Partial
                                            Identification
Medium-level                                Privacy Zones           Active/Smart Floor   Defaulting        Bookmarks
Patterns
                                            Data access via         Active Badge         Fault Detection
                                            personalized
                                            devices

                                            Choice

                                            Access

                                            Notice
Low-Level Patterns                          Appropriate             Global Positioning                                         6
                                            Retention Time
    Design Patterns            UbiComp Patterns             Evaluations




Appropriate     Anticipation        Global Data        Discoverability    Capture and   Physical Space       Location-based
Levels of                                                                 Access                             Services
Attention

Natural
                                                   Chart of UbiComp Patterns
                                    Physical-Virtual Learnability Experience Weiser’s Devices                Finding
Interfaces      Context-            Associations                          Capture       (inch, foot, yard)   Locations
                Sensitive I/O                          Acceptance
Unobtrusive                         Point of                              Information   Touring              Tracking Users
Prompting       Active Teaching     Information        Practices &        Capture
                                                       Etiquettes
Subtle          Point of Action     Appropriate Rate
Reminders                           of Update

                                    Teleporting

                                    Ambiguity




                Follow- me          World Model                           Wearable
                Display                                                   Computer
                                    Active Map
                Proximity-Based
                Tracking            Proximity-Based
                                    Tracking




                Accelerators
                                                                                                                         7
Design Patterns   UbiComp Patterns   Evaluations




                                Applying Patterns
             • Exercise: Apply patterns to In/Out Board




                                                          8
Design Patterns    UbiComp Patterns   Evaluations




                                 Applying Patterns
             • Exercise: Apply patterns to In/Out Board
             • Identify some relevant themes and their
               patterns:
                  – Privacy: Appropriate Scope of Locality, Partial
                    Identification (might only show first names),
                    Choice, Access, Appropriate Retention Time
                  – Identification: Active Badge, Smart Floor
                  – Global Data: Active Map


                                                                      9
Design Patterns   UbiComp Patterns   Evaluations




                         Evaluating the Patterns
            • Perform an experiment
               – Conditions: create two groups, one with
                 patterns, one without
               – Task #1: ask the groups to evaluate an existing
                 design
               – Task #2: ask the groups to prototype a lo-fi
                 UbiComp app
               – Independent judges rate the quality of designs
               – Identify “shared language” used
               – Questionnaire on usefulness of patterns
                                                                   10
Design Patterns   UbiComp Patterns   Evaluations




                                Take-Away Ideas
             • Goal: identify design patterns for UbiComp in
               order to help designers form higher-quality
               designs faster and to develop a “shared language”
             • Design patterns for UbiComp are categorized at
               varying levels of abstraction underneath a set of
               main themes
             • Design patterns should be evaluated rigorously
             • The community is welcome to submit patterns to
               http://kettle.cs.berkeley.edu/ubicomp

                                                                   11
Thanks!
Any questions or comments?


http://kettle.cs.berkeley.edu/ubicomp




                                    12
Design Patterns   UbiComp Patterns   Evaluations




                       What does a pattern look like?
            • Design patterns typically range from 3-5 pages and provide
              general but descriptive methods for solving a particular
              problem
            • A sensitizing image is useful for easy identification
              of the pattern
            • Problems encountered may never be solved in an exact way
              and therefore design patterns are never too specific
            • A Background suggests how the pattern is useful and how it
              can be combined with other patterns
            • The Problem statement identifies a recurring problem in the
              discipline
            • The Solution statement identifies the common solutions and
              provides details, suggestions, and tradeoffs
                                                                            13
Design Patterns    UbiComp Patterns   Evaluations




                      Patterns in other Disciplines
             • In the mid-1990s, patterns became
               popularized in other disciplines such
               as Software Engineering, Web Site
               Design, and UI Design.

                  – Design of Sites, Douglas K. van
                    Duyne, James A. Landay, Jason I.
                    Hong

                  – Design Patterns, Erich Gamma,
                    Richard Helm, Ralph Johnson,
                    John Vlissides

                                                       14
Design Patterns       UbiComp Patterns     Evaluations




                                         UbiComp Genres

            • Most UbiComp applications can be classified under
              the following application genres:

                  –   Business (i.e. ParcTab)
                  –   Care and Maintenance (i.e. Context-Aware Clinics)
                  –   Collaboration (i.e. BlueBoard)
                  –   Education (i.e. Classroom 2000)
                  –   Emergency Response (i.e. Siren)
                  –   Fieldwork (i.e. FieldNote)
                  –   Guides (i.e. CyberGuide)
                  –   Laboratory (i.e. PlantCare)
                  –   Memory Aids (i.e. Personal Audio Loop)
                  –   Smart Homes (i.e. Georgia Tech’s Aware Home)
                  –   Smart Vehicles (i.e. Context-Aware GM)              15

								
To top