SlideShare a Scribd company logo
Design Pattern Libraries
User Experience Edmonton
@uxyeg
http://uxedmonton.com/
https://www.facebook.com/profile.php?id=59071219138
From Yahoo
Hi!
From Yahoo
Interaction Design Patterns
ď‚— Many different definitions for design
patterns
 We’ll be talking specifically about
interaction design patterns
From Yahoo
What is an Pattern?
ď‚— Component of functionality or style
that can be reused between solutions
ď‚— A way to describe how a design
element should look, act and be used
in a design
From Yahoo
What is an Pattern?
 “… Recurring solutions for common
problems”
ď‚— Problem:
â—¦ Users need to be able to get to the most
common areas of a site at any time.
ď‚— Solution:
â—¦ Global Navigation.
From Yahoo
Basic Elements of a Pattern
ď‚— A catchy name and a brief description
ď‚— The problem you are trying to solve.
ď‚— When this pattern should be
implemented.
ď‚— How to implement the pattern
ď‚— A visual or interactive example
From Yahoo
A Catchy Name & Description
From Yahoo! Design Pattern Library
http://developer.yahoo.com/ypatterns/social/objects/collecting/tag/cloud.html
Problem to solve
From Yahoo! Design Pattern Library
http://developer.yahoo.com/ypatterns/social/objects/collecting/tag/cloud.html
ď‚— One or two sentences
ď‚— Sum up what the problem is
When to use
From Yahoo! Design Pattern Library
http://developer.yahoo.com/ypatterns/social/objects/collecting/tag/cloud.html
ď‚— List the conditions that this pattern
should be used in
What’s the solution
From Yahoo! Design Pattern Library
http://developer.yahoo.com/ypatterns/social/objects/collecting/tag/cloud.html
ď‚— Description of the solution
ď‚— How to implement it
Why use this pattern
From Yahoo! Design Pattern Library
http://developer.yahoo.com/ypatterns/social/objects/collecting/tag/cloud.html
ď‚— Justification for use
Visual/Interactive Example
From Wikipedia http://en.wikipedia.org/wiki/List_of_legendary_creatures
ď‚— Show is better than tell
Full Pattern
From Wikipedia http://en.wikipedia.org/wiki/List_of_legendary_creatures
Many, Many, Many Patterns
From Wikipedia http://en.wikipedia.org/wiki/List_of_legendary_creatures
ď‚— Hundreds and hundreds of possible
patterns
ď‚— Simple to complex
ď‚— Simple
â—¦ Global navigation, Hyperlinks, Text
boxes, Radio buttons
ď‚— Complex
â—¦ Rich mouse-overs, carousels, drawers
Interaction Patterns: Content-
Rich Mouseover (or click)
From Yahoo
Interaction Patterns: The Non-
Exhaustive List
ď‚— Dual function buttons
ď‚— Builders
ď‚— Smart Menus
ď‚— Multi-Level Undo
ď‚— Sandbox
ď‚— Inspector
ď‚— In-Page Tabs
ď‚— Content-Rich Mouse-overs
ď‚— Drawer
ď‚— Inline Actions
ď‚— Side-by-side Comparisons
ď‚— Filtered Hierarchies
ď‚— Multi-Attribute Table Filtering
ď‚— Tree Table
ď‚— Column Filtering
ď‚— Sort
ď‚— Filter
ď‚— Customize Data Table Display
ď‚— Attribute-Based Search
ď‚— Search Forms
ď‚— Context Search
ď‚— Attribute Results Refinement
ď‚— Results Volume Control
ď‚— Completion Suggestion
ď‚— Visual Preview
ď‚— Save for Later
ď‚— Builders
ď‚— Guide Me
ď‚— Header Segment
ď‚— Interactive Visualizations
ď‚— Dashboards
ď‚— Composite System Messages
ď‚— In-Context Help
ď‚— Guide Me
ď‚— Rate
ď‚— Promote
ď‚— Status
ď‚— Follow
From Yahoo
Why Patterns are Good for
Complexity
 Stop reinventing the wheel – leverage
shared knowledge
ď‚— Smaller chunks make design seem
less overwhelming
ď‚— Creates a common language for
discussion
From Yahoo
Patterns are Good for Users!
ď‚— Users feel safe/like familiar things
â—¦ Cars have the same basic elements for
the dashboards.
ď‚— Easier to learn a system
ď‚— Lowers barriers to adoption
From Yahoo
Pattern Libraries
ď‚— How we actually organize patterns
ď‚— Make it simpler to navigate through
patterns
 Shouldn’t use patterns just because
ď‚— Design should be a top-down process
From Yahoo
Use Patterns
ď‚— Behaviors, tasks and activities users
perform independent of technology.
â—¦ How do users act
ď‚— Offer clues to applying interaction
pattern
From Yahoo
Use Patterns: An Example List
ď‚— Navigating Large Data Sets
ď‚— Searching
ď‚— Entering Data
ď‚— Information at a Glance
ď‚— Guidance/Help
ď‚— Social Interactions
ď‚— Commerce
From Yahoo
Interaction Patterns: The Non-
Exhaustive List
ď‚— Dual function buttons
ď‚— Builders
ď‚— Smart Menus
ď‚— Multi-Level Undo
ď‚— Sandbox
ď‚— Inspector
ď‚— In-Page Tabs
ď‚— Content-Rich Mouse-overs
ď‚— Drawer
ď‚— Inline Actions
ď‚— Side-by-side Comparisons
ď‚— Filtered Hierarchies
ď‚— Multi-Attribute Table Filtering
ď‚— Tree Table
ď‚— Column Filtering
ď‚— Sort
ď‚— Filter
ď‚— Customize Data Table Display
ď‚— Attribute-Based Search
ď‚— Search Forms
ď‚— Context Search
ď‚— Attribute Results Refinement
ď‚— Results Volume Control
ď‚— Completion Suggestion
ď‚— Visual Preview
ď‚— Save for Later
ď‚— Builders
ď‚— Guide Me
ď‚— Header Segment
ď‚— Interactive Visualizations
ď‚— Dashboards
ď‚— Composite System Messages
ď‚— In-Context Help
ď‚— Guide Me
ď‚— Rate
ď‚— Promote
ď‚— Status
ď‚— Follow
From Yahoo
THECOMBINED POWER OF
USE AND INTERACTION
PATTERNS
ď‚— Cyclic
â—¦ Dual function buttons
â—¦ Builders
ď‚— Exploration
â—¦ Forgiveness
ď‚– Smart Menus
ď‚– Multi-Level Undo
ď‚– Sandbox
â—¦ Revealing Meta Data
ď‚– Inspector
ď‚– In-Page Tabs
ď‚– Content-Rich Mouse-
overs
ď‚– Drawer
ď‚– Inline Actions
ď‚– Side-by-side
Comparisons
ď‚— Navigating Large Data
Sets
â—¦ Filtered Hierarchies
â—¦ Multi-Attribute Table
Filtering
â—¦ Tree Table
â—¦ Column Filtering
â—¦ Sort
â—¦ Filter
â—¦ Customize Data Table
Display
ď‚— Targeted Searching
â—¦ Attribute-Based Search
â—¦ Search Forms
â—¦ Context Search
â—¦ Attribute Results
Refinement
â—¦ Results Volume Control
ď‚— Entering/Editing Data
â—¦ Completion Suggestion
â—¦ Visual Preview
â—¦ Save for Later
â—¦ Builders
â—¦ Guide Me
ď‚— Information at a
Glance
â—¦ Header Segment
â—¦ Interactive Visualizations
â—¦ Dashboards
ď‚— Guidance/Help
â—¦ Composite System
Messages
â—¦ In-Context Help
â—¦ Guide Me
ď‚— Community/Social
Interactions
â—¦ Rate
â—¦ Promote
â—¦ Status
â—¦ Follow
From Yahoo
Use Pattern Example
ď‚— You are opening a family cell phone
account online. You need to add other
people to the account:
Open
contact
window
Gather
Contact
Info
Enter
contact
information
Save
contact
window
Use Pattern Example
ď‚— You are opening a family cell phone
account online. You need to add other
people to the account:
Use Pattern:
Cyclic
Open
contact
window
Gather
Contact
Info
Enter
contact
information
Save
contact
window
From Yahoo
Use Pattern Example
ď‚— You are opening a family cell phone
account online. You need to add other
people to the account:
Use Pattern:
Cyclic
Open
contact
window
Gather
Contact
Info
Enter
contact
information
Save
contact
window
From Yahoo
Use Pattern:
Entering Data
What would a design look like for
a “cyclic pattern”?
ď‚— What do we know from our diagram?
â—¦ This is a repetitive behavior
ď‚— What might be of concern to user
about this activity?
◦ It’s boring
◦ It’s tedious
â—¦ User wants the process to be as quick as
possible
From Yahoo
What would a design look like for
a “Entering Data”?
ď‚— What might be of concern to user
about this activity?
â—¦ Entering data correctly
â—¦ Entering data quickly
From Yahoo
What patterns can help us?
ď‚— Cyclic
â—¦ Wizard
â—¦ Next/Previous Buttons
â—¦ Progress bars
ď‚— Entering Data
â—¦ Field validation
â—¦ Drop downs
â—¦ Help text
From Yahoo
What patterns can help us?
From Yahoo
Progress Bar
Next Previous Buttons
Wizard
Field Validation
Help text
How do these types of patterns
fit together?
User’s Goal:
Find blue hiking
shoe, size 11
Pattern of Use:
Searching
Interaction
Pattern:
Attributes-Based
Search
Interaction
Pattern
Customized
From Yahoo
Benefits of Identifying Use
Patterns
ď‚— Tools for comprehension
â—¦ Focus on the design problem before
working out a solution
ď‚— Aid in connecting the dots between
research data and design
ď‚— Use and Interaction Patterns speed up
design process
From Yahoo
The Dark Side of Patterns
ď‚— Misapplication
ď‚— People stop believing that
testing is necessary
ď‚— Misconceptions
◦ “Patterns stop us from being innovative”
ď‚– Patterns running stale is a huge problem, new
implementations of patterns need to be
constantly developed and improved.
From Yahoo
Should you bother building
your own library?
From Yahoo
Free Tools!
ď‚— Yahoo! Pattern Library
(http://developer.yahoo.com/ypatterns)
ď‚— UI Patterns (http://ui-patterns.com/)
ď‚— Patternry (http://patternry.com/)
ď‚— Quince (http://quince.infragistics.com)
From Yahoo
Free Tools!
ď‚— The Good
â—¦ Great for design inspiration
â—¦ Updated by a large community
â—¦ Most of the leg work has been done for
you
â—¦ Great for smaller organizations
From Yahoo
Free Tools!
ď‚— The Not-so Good
â—¦ Very simple
â—¦ Focus on basic patterns
â—¦ Limited examples
â—¦ Organizational issues
◦ Not “yours”
From Yahoo
Free Tools!
ď‚— The Not-so Good
â—¦ Very simple
â—¦ Focus on basic patterns
â—¦ Limited examples
â—¦ Organizational issues
◦ Not “yours”
From Yahoo
Why you should build your own
ď‚— Can organize them in whatever way
you want
â—¦ Use your own use patterns
ď‚— Customizable
â—¦ Use your own text
From Yahoo
Why you should build your own
ď‚— Great way to organize access to your
code
â—¦ Your patterns should contain as much
practical information possible
ď‚— Focal point for your past projects
ď‚— Patterns should include
â—¦ Links to wireframes/mockups
â—¦ Prototype code
â—¦ Links to your code base
â—¦ Ties to your past research
From Yahoo
Why you should build your own
ď‚— Style Guides
â—¦ Patterns can include
ď‚– Header styles
ď‚– Typography
ď‚– Backgrounds
 Other design decisions…
â—¦ Define and enforce style decisions
â—¦ More comprehensive than a simple style
guide
â—¦ More flexible and easier to update
From Yahoo
Why you should build your own
ď‚— Can be much more specific
(http://ux.mailchimp.com/patterns/tabl
es)
From Yahoo
Why you should build your own
ď‚— Reuse
 Don’t reinvent the wheel
ď‚— Learn from past successes and
failures
From Yahoo
Examples
Use Pattern Information at a Glance
Pattern Name Summary Calendar
What Problem Does this
Solve?
The user needs to quickly view a month's upcoming
events.
When to Use Pattern? * When there are less than 10 events to display
* Users will not need to filter or sort a list of events
* Users will need only a title or brief description of the
event
What's the Solution? 1. Present a small calendar control that consumes a
small area of the page
2. Display a month's upcoming events in abbreviated
form.
Why Use This Pattern? A roll-up calendar can be placed on a page that displays
upcoming events in an abbreviated form without
consuming too much real-estate.
Code Resources SharePoint - SharePoint MOSS 2007 Calendar Control
Wireframe Resources Visio - Visio Template Library
Prototypes HTML Prototype - HTML Prototype Library
From Yahoo
Building Your Own
ď‚— SharePoint, drupal or other
customizable team tools
ď‚— Patternry (http://patternry.com/)
â—¦ Built specifically for organizing design
patterns
â—¦ Great feature set
â—¦ Not cheap
From Yahoo
Building Your Own
ď‚— Form a committee
â—¦ Meet once a week or month
â—¦ Propose new patterns
â—¦ Review/edit old patterns
◦ Don’t let your patterns get stale
â—¦ Include developers, project managers,
designers and UX
From Yahoo
Questions?
From Yahoo
Exercise
ď‚— Look at this site, identify as many
patterns as possible
From Yahoo
http://www.study.cam.ac.uk/undergraduate/
courses/subjects.html
From Yahoo

More Related Content

PDF
Front-end Pattern Libraries
PDF
Style Guides, Pattern Libraries, Design Systems and other amenities.
PDF
Introduction to an UX tool _ Axure_Liz Xu
 
KEY
Prototyping with Axure for the web and beyond
PDF
Why wireframes-v2
PDF
Importance of Wireframes in Web Design
PDF
Modern UX, UI, and front-end tools
PDF
Sketch: Rapid Prototyping & Theme Design
Front-end Pattern Libraries
Style Guides, Pattern Libraries, Design Systems and other amenities.
Introduction to an UX tool _ Axure_Liz Xu
 
Prototyping with Axure for the web and beyond
Why wireframes-v2
Importance of Wireframes in Web Design
Modern UX, UI, and front-end tools
Sketch: Rapid Prototyping & Theme Design

What's hot (13)

PPSX
Axure for dummies, that don't even know they are
PPTX
Developing for the unknown lavacon
PDF
Design and Development Techniques for Accessibility: WordCamp Tampa 2015
PDF
Child Theme Frameworks
 
PDF
Introduction to Design
PPTX
How To Design A Wireframe For Website
PPT
RDVO - Building UX Pattern Libraries
PPT
Themer's roundtable
PPTX
Intro to Wireframing
PPT
UCD and low-fidelity prototyping
PDF
Layout and Wireframing
PPTX
HTML5 – the good, the bad, and the fun
PPTX
Alice Phieu - UI/UX For Developers
Axure for dummies, that don't even know they are
Developing for the unknown lavacon
Design and Development Techniques for Accessibility: WordCamp Tampa 2015
Child Theme Frameworks
 
Introduction to Design
How To Design A Wireframe For Website
RDVO - Building UX Pattern Libraries
Themer's roundtable
Intro to Wireframing
UCD and low-fidelity prototyping
Layout and Wireframing
HTML5 – the good, the bad, and the fun
Alice Phieu - UI/UX For Developers
Ad

Similar to UX Edmonton - Pattern Libraries (20)

PDF
Design Patterns Lw
PDF
Design Patterns: Defining and Sharing Web Design Languages
PPTX
Patterns of Interaction Description Including Aspects of Constraints
PDF
Patterns, Components, and Code, Oh My!
PPT
UPA2007 Designing Interfaces Jenifer Tidwell
 
PPT
UPA2007 Designing Interfaces Jenifer Tidwell
PDF
Computer Science application and Engineering
PDF
Design patterns elements of reusable object-oriented programming
PDF
Interaction Patterns In User Interfaces
PDF
Design Patterns Summer Course 2009-2010 - Session#1
PPTX
Design patterns Structural
PPT
Yui Design Patterns
PPTX
Android design patterns in mobile application development presentation
PDF
Introduction to Design Pattern
PDF
UI Design Patterns for the Web, Part 1
PPTX
design patterns in agile project development
PPT
Processes + Patterns
PPTX
Applying Patterns to Mobile Design
PPT
20090514 Wendling Dan Pecha Kucha Wikis
PPTX
Interaction design patterns
Design Patterns Lw
Design Patterns: Defining and Sharing Web Design Languages
Patterns of Interaction Description Including Aspects of Constraints
Patterns, Components, and Code, Oh My!
UPA2007 Designing Interfaces Jenifer Tidwell
 
UPA2007 Designing Interfaces Jenifer Tidwell
Computer Science application and Engineering
Design patterns elements of reusable object-oriented programming
Interaction Patterns In User Interfaces
Design Patterns Summer Course 2009-2010 - Session#1
Design patterns Structural
Yui Design Patterns
Android design patterns in mobile application development presentation
Introduction to Design Pattern
UI Design Patterns for the Web, Part 1
design patterns in agile project development
Processes + Patterns
Applying Patterns to Mobile Design
20090514 Wendling Dan Pecha Kucha Wikis
Interaction design patterns
Ad

Recently uploaded (20)

PDF
Interior Structure and Construction A1 NGYANQI
PDF
Trusted Executive Protection Services in Ontario — Discreet & Professional.pdf
PDF
BRANDBOOK-Presidential Award Scheme-Kenya-2023
PDF
Phone away, tabs closed: No multitasking
PPT
EGWHermeneuticsffgggggggggggggggggggggggggggggggg.ppt
PPT
WHY_R12 Uaafafafpgradeaffafafafaffff.ppt
PPTX
12. Community Pharmacy and How to organize it
PPTX
LITERATURE CASE STUDY DESIGN SEMESTER 5.pptx
PDF
GREEN BUILDING MATERIALS FOR SUISTAINABLE ARCHITECTURE AND BUILDING STUDY
PDF
The Advantages of Working With a Design-Build Studio
PPTX
Media And Information Literacy for Grade 12
DOCX
The story of the first moon landing.docx
 
PDF
SEVA- Fashion designing-Presentation.pdf
PPTX
Entrepreneur intro, origin, process, method
PPTX
Special finishes, classification and types, explanation
PPTX
AD Bungalow Case studies Sem 2.pptxvwewev
PPTX
ANATOMY OF ANTERIOR CHAMBER ANGLE AND GONIOSCOPY.pptx
PPTX
An introduction to AI in research and reference management
DOCX
actividad 20% informatica microsoft project
PPTX
HPE Aruba-master-icon-library_052722.pptx
Interior Structure and Construction A1 NGYANQI
Trusted Executive Protection Services in Ontario — Discreet & Professional.pdf
BRANDBOOK-Presidential Award Scheme-Kenya-2023
Phone away, tabs closed: No multitasking
EGWHermeneuticsffgggggggggggggggggggggggggggggggg.ppt
WHY_R12 Uaafafafpgradeaffafafafaffff.ppt
12. Community Pharmacy and How to organize it
LITERATURE CASE STUDY DESIGN SEMESTER 5.pptx
GREEN BUILDING MATERIALS FOR SUISTAINABLE ARCHITECTURE AND BUILDING STUDY
The Advantages of Working With a Design-Build Studio
Media And Information Literacy for Grade 12
The story of the first moon landing.docx
 
SEVA- Fashion designing-Presentation.pdf
Entrepreneur intro, origin, process, method
Special finishes, classification and types, explanation
AD Bungalow Case studies Sem 2.pptxvwewev
ANATOMY OF ANTERIOR CHAMBER ANGLE AND GONIOSCOPY.pptx
An introduction to AI in research and reference management
actividad 20% informatica microsoft project
HPE Aruba-master-icon-library_052722.pptx

UX Edmonton - Pattern Libraries

  • 1. Design Pattern Libraries User Experience Edmonton @uxyeg http://uxedmonton.com/ https://www.facebook.com/profile.php?id=59071219138 From Yahoo
  • 3. Interaction Design Patterns ď‚— Many different definitions for design patterns ď‚— We’ll be talking specifically about interaction design patterns From Yahoo
  • 4. What is an Pattern? ď‚— Component of functionality or style that can be reused between solutions ď‚— A way to describe how a design element should look, act and be used in a design From Yahoo
  • 5. What is an Pattern? ď‚— “… Recurring solutions for common problems” ď‚— Problem: â—¦ Users need to be able to get to the most common areas of a site at any time. ď‚— Solution: â—¦ Global Navigation. From Yahoo
  • 6. Basic Elements of a Pattern ď‚— A catchy name and a brief description ď‚— The problem you are trying to solve. ď‚— When this pattern should be implemented. ď‚— How to implement the pattern ď‚— A visual or interactive example From Yahoo
  • 7. A Catchy Name & Description From Yahoo! Design Pattern Library http://developer.yahoo.com/ypatterns/social/objects/collecting/tag/cloud.html
  • 8. Problem to solve From Yahoo! Design Pattern Library http://developer.yahoo.com/ypatterns/social/objects/collecting/tag/cloud.html ď‚— One or two sentences ď‚— Sum up what the problem is
  • 9. When to use From Yahoo! Design Pattern Library http://developer.yahoo.com/ypatterns/social/objects/collecting/tag/cloud.html ď‚— List the conditions that this pattern should be used in
  • 10. What’s the solution From Yahoo! Design Pattern Library http://developer.yahoo.com/ypatterns/social/objects/collecting/tag/cloud.html ď‚— Description of the solution ď‚— How to implement it
  • 11. Why use this pattern From Yahoo! Design Pattern Library http://developer.yahoo.com/ypatterns/social/objects/collecting/tag/cloud.html ď‚— Justification for use
  • 12. Visual/Interactive Example From Wikipedia http://en.wikipedia.org/wiki/List_of_legendary_creatures ď‚— Show is better than tell
  • 13. Full Pattern From Wikipedia http://en.wikipedia.org/wiki/List_of_legendary_creatures
  • 14. Many, Many, Many Patterns From Wikipedia http://en.wikipedia.org/wiki/List_of_legendary_creatures ď‚— Hundreds and hundreds of possible patterns ď‚— Simple to complex ď‚— Simple â—¦ Global navigation, Hyperlinks, Text boxes, Radio buttons ď‚— Complex â—¦ Rich mouse-overs, carousels, drawers
  • 15. Interaction Patterns: Content- Rich Mouseover (or click) From Yahoo
  • 16. Interaction Patterns: The Non- Exhaustive List ď‚— Dual function buttons ď‚— Builders ď‚— Smart Menus ď‚— Multi-Level Undo ď‚— Sandbox ď‚— Inspector ď‚— In-Page Tabs ď‚— Content-Rich Mouse-overs ď‚— Drawer ď‚— Inline Actions ď‚— Side-by-side Comparisons ď‚— Filtered Hierarchies ď‚— Multi-Attribute Table Filtering ď‚— Tree Table ď‚— Column Filtering ď‚— Sort ď‚— Filter ď‚— Customize Data Table Display ď‚— Attribute-Based Search ď‚— Search Forms ď‚— Context Search ď‚— Attribute Results Refinement ď‚— Results Volume Control ď‚— Completion Suggestion ď‚— Visual Preview ď‚— Save for Later ď‚— Builders ď‚— Guide Me ď‚— Header Segment ď‚— Interactive Visualizations ď‚— Dashboards ď‚— Composite System Messages ď‚— In-Context Help ď‚— Guide Me ď‚— Rate ď‚— Promote ď‚— Status ď‚— Follow From Yahoo
  • 17. Why Patterns are Good for Complexity ď‚— Stop reinventing the wheel – leverage shared knowledge ď‚— Smaller chunks make design seem less overwhelming ď‚— Creates a common language for discussion From Yahoo
  • 18. Patterns are Good for Users! ď‚— Users feel safe/like familiar things â—¦ Cars have the same basic elements for the dashboards. ď‚— Easier to learn a system ď‚— Lowers barriers to adoption From Yahoo
  • 19. Pattern Libraries ď‚— How we actually organize patterns ď‚— Make it simpler to navigate through patterns ď‚— Shouldn’t use patterns just because ď‚— Design should be a top-down process From Yahoo
  • 20. Use Patterns ď‚— Behaviors, tasks and activities users perform independent of technology. â—¦ How do users act ď‚— Offer clues to applying interaction pattern From Yahoo
  • 21. Use Patterns: An Example List ď‚— Navigating Large Data Sets ď‚— Searching ď‚— Entering Data ď‚— Information at a Glance ď‚— Guidance/Help ď‚— Social Interactions ď‚— Commerce From Yahoo
  • 22. Interaction Patterns: The Non- Exhaustive List ď‚— Dual function buttons ď‚— Builders ď‚— Smart Menus ď‚— Multi-Level Undo ď‚— Sandbox ď‚— Inspector ď‚— In-Page Tabs ď‚— Content-Rich Mouse-overs ď‚— Drawer ď‚— Inline Actions ď‚— Side-by-side Comparisons ď‚— Filtered Hierarchies ď‚— Multi-Attribute Table Filtering ď‚— Tree Table ď‚— Column Filtering ď‚— Sort ď‚— Filter ď‚— Customize Data Table Display ď‚— Attribute-Based Search ď‚— Search Forms ď‚— Context Search ď‚— Attribute Results Refinement ď‚— Results Volume Control ď‚— Completion Suggestion ď‚— Visual Preview ď‚— Save for Later ď‚— Builders ď‚— Guide Me ď‚— Header Segment ď‚— Interactive Visualizations ď‚— Dashboards ď‚— Composite System Messages ď‚— In-Context Help ď‚— Guide Me ď‚— Rate ď‚— Promote ď‚— Status ď‚— Follow From Yahoo
  • 23. THECOMBINED POWER OF USE AND INTERACTION PATTERNS ď‚— Cyclic â—¦ Dual function buttons â—¦ Builders ď‚— Exploration â—¦ Forgiveness ď‚– Smart Menus ď‚– Multi-Level Undo ď‚– Sandbox â—¦ Revealing Meta Data ď‚– Inspector ď‚– In-Page Tabs ď‚– Content-Rich Mouse- overs ď‚– Drawer ď‚– Inline Actions ď‚– Side-by-side Comparisons ď‚— Navigating Large Data Sets â—¦ Filtered Hierarchies â—¦ Multi-Attribute Table Filtering â—¦ Tree Table â—¦ Column Filtering â—¦ Sort â—¦ Filter â—¦ Customize Data Table Display ď‚— Targeted Searching â—¦ Attribute-Based Search â—¦ Search Forms â—¦ Context Search â—¦ Attribute Results Refinement â—¦ Results Volume Control ď‚— Entering/Editing Data â—¦ Completion Suggestion â—¦ Visual Preview â—¦ Save for Later â—¦ Builders â—¦ Guide Me ď‚— Information at a Glance â—¦ Header Segment â—¦ Interactive Visualizations â—¦ Dashboards ď‚— Guidance/Help â—¦ Composite System Messages â—¦ In-Context Help â—¦ Guide Me ď‚— Community/Social Interactions â—¦ Rate â—¦ Promote â—¦ Status â—¦ Follow From Yahoo
  • 24. Use Pattern Example ď‚— You are opening a family cell phone account online. You need to add other people to the account: Open contact window Gather Contact Info Enter contact information Save contact window
  • 25. Use Pattern Example ď‚— You are opening a family cell phone account online. You need to add other people to the account: Use Pattern: Cyclic Open contact window Gather Contact Info Enter contact information Save contact window From Yahoo
  • 26. Use Pattern Example ď‚— You are opening a family cell phone account online. You need to add other people to the account: Use Pattern: Cyclic Open contact window Gather Contact Info Enter contact information Save contact window From Yahoo Use Pattern: Entering Data
  • 27. What would a design look like for a “cyclic pattern”? ď‚— What do we know from our diagram? â—¦ This is a repetitive behavior ď‚— What might be of concern to user about this activity? â—¦ It’s boring â—¦ It’s tedious â—¦ User wants the process to be as quick as possible From Yahoo
  • 28. What would a design look like for a “Entering Data”? ď‚— What might be of concern to user about this activity? â—¦ Entering data correctly â—¦ Entering data quickly From Yahoo
  • 29. What patterns can help us? ď‚— Cyclic â—¦ Wizard â—¦ Next/Previous Buttons â—¦ Progress bars ď‚— Entering Data â—¦ Field validation â—¦ Drop downs â—¦ Help text From Yahoo
  • 30. What patterns can help us? From Yahoo Progress Bar Next Previous Buttons Wizard Field Validation Help text
  • 31. How do these types of patterns fit together? User’s Goal: Find blue hiking shoe, size 11 Pattern of Use: Searching Interaction Pattern: Attributes-Based Search Interaction Pattern Customized From Yahoo
  • 32. Benefits of Identifying Use Patterns ď‚— Tools for comprehension â—¦ Focus on the design problem before working out a solution ď‚— Aid in connecting the dots between research data and design ď‚— Use and Interaction Patterns speed up design process From Yahoo
  • 33. The Dark Side of Patterns ď‚— Misapplication ď‚— People stop believing that testing is necessary ď‚— Misconceptions â—¦ “Patterns stop us from being innovative” ď‚– Patterns running stale is a huge problem, new implementations of patterns need to be constantly developed and improved. From Yahoo
  • 34. Should you bother building your own library? From Yahoo
  • 35. Free Tools! ď‚— Yahoo! Pattern Library (http://developer.yahoo.com/ypatterns) ď‚— UI Patterns (http://ui-patterns.com/) ď‚— Patternry (http://patternry.com/) ď‚— Quince (http://quince.infragistics.com) From Yahoo
  • 36. Free Tools! ď‚— The Good â—¦ Great for design inspiration â—¦ Updated by a large community â—¦ Most of the leg work has been done for you â—¦ Great for smaller organizations From Yahoo
  • 37. Free Tools! ď‚— The Not-so Good â—¦ Very simple â—¦ Focus on basic patterns â—¦ Limited examples â—¦ Organizational issues â—¦ Not “yours” From Yahoo
  • 38. Free Tools! ď‚— The Not-so Good â—¦ Very simple â—¦ Focus on basic patterns â—¦ Limited examples â—¦ Organizational issues â—¦ Not “yours” From Yahoo
  • 39. Why you should build your own ď‚— Can organize them in whatever way you want â—¦ Use your own use patterns ď‚— Customizable â—¦ Use your own text From Yahoo
  • 40. Why you should build your own ď‚— Great way to organize access to your code â—¦ Your patterns should contain as much practical information possible ď‚— Focal point for your past projects ď‚— Patterns should include â—¦ Links to wireframes/mockups â—¦ Prototype code â—¦ Links to your code base â—¦ Ties to your past research From Yahoo
  • 41. Why you should build your own ď‚— Style Guides â—¦ Patterns can include ď‚– Header styles ď‚– Typography ď‚– Backgrounds ď‚– Other design decisions… â—¦ Define and enforce style decisions â—¦ More comprehensive than a simple style guide â—¦ More flexible and easier to update From Yahoo
  • 42. Why you should build your own ď‚— Can be much more specific (http://ux.mailchimp.com/patterns/tabl es) From Yahoo
  • 43. Why you should build your own ď‚— Reuse ď‚— Don’t reinvent the wheel ď‚— Learn from past successes and failures From Yahoo
  • 44. Examples Use Pattern Information at a Glance Pattern Name Summary Calendar What Problem Does this Solve? The user needs to quickly view a month's upcoming events. When to Use Pattern? * When there are less than 10 events to display * Users will not need to filter or sort a list of events * Users will need only a title or brief description of the event What's the Solution? 1. Present a small calendar control that consumes a small area of the page 2. Display a month's upcoming events in abbreviated form. Why Use This Pattern? A roll-up calendar can be placed on a page that displays upcoming events in an abbreviated form without consuming too much real-estate. Code Resources SharePoint - SharePoint MOSS 2007 Calendar Control Wireframe Resources Visio - Visio Template Library Prototypes HTML Prototype - HTML Prototype Library From Yahoo
  • 45. Building Your Own ď‚— SharePoint, drupal or other customizable team tools ď‚— Patternry (http://patternry.com/) â—¦ Built specifically for organizing design patterns â—¦ Great feature set â—¦ Not cheap From Yahoo
  • 46. Building Your Own ď‚— Form a committee â—¦ Meet once a week or month â—¦ Propose new patterns â—¦ Review/edit old patterns â—¦ Don’t let your patterns get stale â—¦ Include developers, project managers, designers and UX From Yahoo
  • 48. Exercise ď‚— Look at this site, identify as many patterns as possible From Yahoo http://www.study.cam.ac.uk/undergraduate/ courses/subjects.html