SlideShare a Scribd company logo
Gran Sasso Science Institute
Ivano Malavolta
Design patterns for mobile apps
Roadmap
Navigation
Forms
Search, sort & filter
Tools
Invitations
Feedback & Affordance
Anti-Patterns
Navigation
•  How users move through the views
–  Springboard
–  Lists (Vertical, Infinite)
–  Cards
–  Tabs
–  Gallery (Grid)
–  Dashboard
–  Metaphor
–  Page Carousel
–  Image Carousel
–  Expanding Lists
–  Infinite Area
Springboard
•  Use a grid layout for items of equal importance, or an
irregular layout to emphasize some items more than others
•  Consider personalization and customization options
Lists
•  Works well for long lists with subtext
•  All internal screens should have a way for returning back
•  It can be “infinite”, it can have thumbnails
Cards
Definition
container that logically encapsulates
bits of information
Good for presenting similar objects
whose size or supported actions can
vary considerably
we can take advantage of animation
and movement
http://goo.gl/kB8GlW
Examples of cards
Tabs
•  Clearly differentiate the selected tab from the others
•  Use easy to recognize icons or icons with labels
Gallery (Grid)
•  Works best for frequently updated content that people want
to browse
Metaphor
•  Pages are modeled to reflect the application’s metaphor
•  Use the Metaphor pattern judiciously
Page carousel
•  Works best for navigating a small number of pages
•  Visual indicator to reflect the number of screens, and
current screen
•  Flick to navigate the carousel
Image Carousel
•  Works best for displaying fresh visual content, like articles,
products, and photos
•  Provide visual affordance, either with arrows, partial images,
or page indicators that more content can be accessed
Expanding Lists
•  Works best for progressively disclosing more details or
options for an object
Infinite Area
•  The entire data set can be considered to be a large, two-
dimensional graphic
•  The viewport shows only a small
subset of the whole data set
Can you compare these navigation designs?
Exercise
Roadmap
Navigation
Forms
Search, sort & filter
Tools
Invitations
Feedback & Affordance
Anti-Patterns
Forms
•  They are for data entry and configuration
–  Sign In
–  Registration
–  Check-in
–  Comments
–  Users Profile
–  Share
–  Empty Datasets
–  Multi-step
–  Settings
Sign In
•  Don’t innovate on the sign in screen
•  Provide a way to retrieve a forgotten password
•  Provide a way to login via social networks
Registration
•  Keep it short, preferably one screen
•  Register button well visible
Check-in
•  Keep it ultra-short
•  Design for speed, and efficiency
•  Eliminate unnecessary fields
•  Don’t show the map!
Comments
•  Invite user to leave comment
•  Always clarify what is being commented
•  Show other people’s comments over time
Timeline
•  Within the current hour, show as minutes ago
•  Within the current day, show the time as number of hours ago
•  Within the last two days, shown the day of the week, and the
time range, morning, afternoon, evening, night
•  Within the past week, show the day of the week
•  Within 12 months, show as mm/DD
•  Older than 12 months, show only the year
Users Profile
•  Put the badges in evidence
•  Show their contribution to the social network
•  Provide action controls
Share
•  Always keep track of past logins
•  Always provide an “off social” way to share (e.g., by email)
•  Remark what is being shared
Empty datasets
•  Avoid white-screens, explain why the dataset is empty
•  Call for action, only one!
•  Avoid error messages
Multi Step
•  Show the user where they are and where they can go
•  Eliminate unnecessary fields
•  Minimize the number of pages and steps
Settings
•  Put them inside the app
•  Clear and grouped
•  Easy to be understood
Roadmap
Navigation
Forms
Search, sort & filter
Tools
Invitations
Feedback & Affordance
Anti-Patterns
Search, Sort & Filter
•  Search
–  Explicit Search
–  Dynamic Search
–  Search form
–  Search Results
Explicit Search
•  Offer a clear button in the field
•  Provide an option to cancel the search
•  Use feedback to show the search is being performed
Dynamic Search
•  Automatically filters a given list of items
•  Works well for constrained data sets, like an address book or
personal media library
Search form
•  Minimize the number of input fields
•  Follow form design best practices (alignment, labels, size)
•  Use only when strictly needed
Search Results
•  Use live scroll instead of paging
•  Apply a reasonable default sort order
•  Call for action
Roadmap
Navigation
Forms
Search, sort & filter
Tools
Invitations
Feedback & Affordance
Anti-Patterns
Tools
•  Buttons & Controls
–  Toolbar
–  Contextual Tools
–  Inline Actions
–  Call to Action Buttons
–  Multi-state Button
–  Maps
Toolbar
•  Contain screen level actions, they are generally displayed at the
bottom of the screen
•  Choose icons that are easy to recognize, or use labels plus icons
Contextual Tools
•  If buttons are necessary, they should be displayed in
proximity to the actionable object
•  Choose a familiar icon or use a text label
Inline Actions
•  They should be in proximity to the actionable object
•  Choose a familiar icon or use a text label
•  Max 1 to 2 Inline Actions per object
Call to Action Buttons
•  Don’t hide the main call to action in a menu or disguise it as
an unrecognizable icon in a toolbar
•  Good contrast and clear label
Multi-state Button
•  Multi-State Buttons work well for a series of tightly correlated
actions that will to be performed in succession
Maps
•  Provide visible markers (avoiding “terrain-mode”)
•  Use as much screen as possible
•  Can be small if the location is not the main item
Roadmap
Navigation
Forms
Search, sort & filter
Tools
Invitations
Feedback & Affordance
Anti-Patterns
Invitations
•  Helpful tips displayed the first time a user launches an app
–  Dialog
–  Tip
–  Tour
–  Video
–  Transparency
–  1st Time Through
–  Persistent
Dialog
•  Keep dialog content short
•  make sure there is an alternate way to access instructions
from within the application
Tip
•  Place tips in proximity to the feature they refer to
•  keep the content short
•  remove the tip once interaction begins
Tour
•  A tour should highlight key features of the application,
preferably from a (user) goal perspective
•  Keep it short and visually engaging
Video
•  Demos should showcase key features or show how to use
the application
•  Common video features (stop, pause, volume controls, etc,...)
should be provided
Transparency
•  Transparencies are not meant to compensate for poor
screen designs!
•  Remove the Transparency once interaction begins
My
favourite
invitation!
1st time through
•  Clearly differentiate the invitation from other content with
images or other visual cues
Persistent
•  Keep it short
•  Clearly differentiate the invitation from other content with
images or other visual cues
Roadmap
Navigation
Forms
Search, sort & filter
Tools
Invitations
Feedback & Affordance
Anti-Patterns
Feedback & Affordance
•  Feedback
–  Errors
–  Confirmation
–  System Status
•  Affordance
–  Tap
–  Flick
–  Drag
Feedback: Errors
•  Use plain language that offers a solution for resolving the issue
•  make the error visible
•  use in-screen messaging instead of modal dialogs
Feedback: Confirmation
•  Provide confirmation when an action is taken
•  don’t break the user’s flow
Feedback: System Status
•  Provide feedback about the system’s status
•  Offer a cancel option for potentially lengthy operations
Affordance: Tap
•  Use common visual design techniques to indicate tappable
controls
•  Apply 3D effects judiciously
Affordance: Flick
•  Use a page indicator
•  show the edge of the next item
•  Avoid heavy weight scroll bars
Affordance: Drag
•  Use a recognizable icon for the handle
•  Consider using an invitation to let users know this feature is
available
Roadmap
Navigation
Forms
Search, sort & filter
Tools
Invitations
Feedback & Affordance
Anti-Patterns
Anti-Patterns
•  Common pitfalls to avoid
–  Novel Notions
–  Metaphor Mismatch
–  Idiot Boxes
–  Chart Junk
–  Oceans of Buttons
Novel Notions
•  If you are looking for a way to innovate with your application,
focus on your core features and offerings, but rely on best
practices for the interface design
•  If you design a custom control, rigorously test it and refine it to
make sure it is usable
Novel Notions Examples
Novel Notions Examples
Metaphor Mismatch
•  Consists in picking the wrong metaphor for the interface:
–  Control mismatch
–  Icon mismatch
–  Mental model mismatch
–  Gesture mismatch
Metaphor Mismatch Examples
Control
mismatch
Icon
mismatch
Mental model
mismatch
Gesture mismatch
Idiot Boxes
Avoid disrupting the workflow
only show a confirmation dialog when an irreparable
action is being taken (like a permanent delete)
Oceans of Buttons
•  Use standard patterns for displaying page level actions
•  Provide contextual tools for item level actions instead of repeating
the same button
•  Keep page level actions visually separate from navigational
elements
References
•  Screenshots from:
–  www.mobiledesignpatterngallery.com
–  pttrns.com
–  inspired-ui.com
–  mobile-patterns.com
get
inspired!
References
Google material design guidelines
http://www.google.com/design/spec/material-design
Exercises
•  Sketch down the wireframe of two views of your app
•  List for each view the applied design patterns and the
applied design decisions

More Related Content

PPT
Capturing Measurable Non Functional Requirements
PDF
Selenium WebDriver with C#
PPTX
White box & Black box testing
PDF
UI design for mobile apps
PDF
테스트수행사례 W통합보안솔루션
PPT
Chapter 13 software testing strategies
PDF
Responsive web design
PPTX
Selenium-Locators
Capturing Measurable Non Functional Requirements
Selenium WebDriver with C#
White box & Black box testing
UI design for mobile apps
테스트수행사례 W통합보안솔루션
Chapter 13 software testing strategies
Responsive web design
Selenium-Locators

What's hot (20)

PPTX
Requirements prioritization
PPTX
Creational pattern
PPTX
UML Class Diagram G-3-122139
PDF
Best practices for UI/UX in eCommerce
PPTX
Controls
PPTX
An Introduction to Unit Testing
PPTX
Google Optimize for testing and personalization
PDF
How to Implement Micro Frontend Architecture using Angular Framework
PPTX
Guide to Agile testing
PDF
Web Accessibility
PPT
SDLC or Software Development Life Cycle
PDF
Design Principles
PPT
PPTX
Software Testing Strategies
PDF
Transforming Your QA and Test Team
PDF
Особенности тестирования мобильных приложений (Android, iOS)
PDF
Don’t make me think
PDF
Design System & Atomic Design
PPT
android layouts
Requirements prioritization
Creational pattern
UML Class Diagram G-3-122139
Best practices for UI/UX in eCommerce
Controls
An Introduction to Unit Testing
Google Optimize for testing and personalization
How to Implement Micro Frontend Architecture using Angular Framework
Guide to Agile testing
Web Accessibility
SDLC or Software Development Life Cycle
Design Principles
Software Testing Strategies
Transforming Your QA and Test Team
Особенности тестирования мобильных приложений (Android, iOS)
Don’t make me think
Design System & Atomic Design
android layouts
Ad

Viewers also liked (20)

PDF
Design Patterns for mobile apps
PDF
[2015/2016] Modern development paradigms
PDF
UI design for mobile apps
PDF
[2015/2016] HTML5 and CSS3 Refresher
PDF
Web-based Hybrid Mobile Apps: State of the Practice and Research opportunitie...
PDF
[2015/2016] User experience design of mobil apps
PDF
[2015/2016] Mobile thinking
PDF
[2015/2016] Apache Cordova
PPTX
iPad AAC
PDF
Lublin Startup Festival - Mobile Architecture Design Patterns
PDF
Common Design Patterns for Mobile (part 1)
PDF
Understanding mobile design patterns
PPT
Web services and mobile architecture
PDF
PhoneGap: Accessing Device Capabilities
PDF
Apache Cordova APIs version 4.3.0
PDF
Backbone.js
PDF
Mobile Apps Development: Technological strategies and Monetization
PDF
Local data storage for mobile apps
PDF
The Mobile ecosystem, Context & Strategies
PDF
Handlebars & Require JS
Design Patterns for mobile apps
[2015/2016] Modern development paradigms
UI design for mobile apps
[2015/2016] HTML5 and CSS3 Refresher
Web-based Hybrid Mobile Apps: State of the Practice and Research opportunitie...
[2015/2016] User experience design of mobil apps
[2015/2016] Mobile thinking
[2015/2016] Apache Cordova
iPad AAC
Lublin Startup Festival - Mobile Architecture Design Patterns
Common Design Patterns for Mobile (part 1)
Understanding mobile design patterns
Web services and mobile architecture
PhoneGap: Accessing Device Capabilities
Apache Cordova APIs version 4.3.0
Backbone.js
Mobile Apps Development: Technological strategies and Monetization
Local data storage for mobile apps
The Mobile ecosystem, Context & Strategies
Handlebars & Require JS
Ad

Similar to Design patterns for mobile apps (20)

PDF
Design patterns for mobile apps
PDF
Common Design Patterns for Mobile (part 2)
PPTX
Android design patterns in mobile application development presentation
KEY
Android UI Design Tips
PPTX
Application Design - Part 3
PDF
Shift Remote FRONTEND: Smart Interface Design Patterns - Vitaly Friedman (Sma...
PDF
UI Design
KEY
Best Mobile UI Practices - FITC Mobile 2010
PDF
Overall presentation multiplatform_ux_patterns
PPTX
Application Design - Part 2
PPTX
What makes your app grouse - #appfest Sydney
PDF
Make better apps - Guide for Better UX
PDF
UX Masterclass at muru-D
PPTX
Application Design - Part 1
PPTX
Designing Windows 8 application - Microsoft Techdays 2013
PDF
Android android-ui-design-patterns
PDF
Android UI design Patter
PDF
Android UI Design Tips
KEY
Min Ahmed - Can help to build a successful mobile application
PDF
Tampa Bay UX - Scary UI 2
Design patterns for mobile apps
Common Design Patterns for Mobile (part 2)
Android design patterns in mobile application development presentation
Android UI Design Tips
Application Design - Part 3
Shift Remote FRONTEND: Smart Interface Design Patterns - Vitaly Friedman (Sma...
UI Design
Best Mobile UI Practices - FITC Mobile 2010
Overall presentation multiplatform_ux_patterns
Application Design - Part 2
What makes your app grouse - #appfest Sydney
Make better apps - Guide for Better UX
UX Masterclass at muru-D
Application Design - Part 1
Designing Windows 8 application - Microsoft Techdays 2013
Android android-ui-design-patterns
Android UI design Patter
Android UI Design Tips
Min Ahmed - Can help to build a successful mobile application
Tampa Bay UX - Scary UI 2

More from Ivano Malavolta (20)

PDF
On-Device or Remote? On the Energy Efficiency of Fetching LLM-Generated Conte...
PDF
Conducting Experiments on the Software Architecture of Robotic Systems (QRARS...
PDF
The H2020 experience
PDF
The Green Lab - Research cocktail @Vrije Universiteit Amsterdam (October 2020)
PDF
Software sustainability and Green IT
PDF
Navigation-aware and Personalized Prefetching of Network Requests in Android ...
PDF
How Maintainability Issues of Android Apps Evolve [ICSME 2018]
PDF
Collaborative Model-Driven Software Engineering: a Classification Framework a...
PDF
Experimenting on Mobile Apps Quality - a tale about Energy, Performance, and ...
PDF
Modeling objects interaction via UML sequence diagrams [Software Design] [Com...
PDF
Modeling behaviour via UML state machines [Software Design] [Computer Science...
PDF
Object-oriented design patterns in UML [Software Design] [Computer Science] [...
PDF
Structure modeling with UML [Software Design] [Computer Science] [Vrije Unive...
PDF
Requirements engineering with UML [Software Design] [Computer Science] [Vrije...
PDF
Modeling and abstraction, software development process [Software Design] [Com...
PDF
[2017/2018] Agile development
PDF
Reconstructing microservice-based architectures
PDF
[2017/2018] AADL - Architecture Analysis and Design Language
PDF
[2017/2018] Architectural languages
PDF
[2017/2018] Introduction to Software Architecture
On-Device or Remote? On the Energy Efficiency of Fetching LLM-Generated Conte...
Conducting Experiments on the Software Architecture of Robotic Systems (QRARS...
The H2020 experience
The Green Lab - Research cocktail @Vrije Universiteit Amsterdam (October 2020)
Software sustainability and Green IT
Navigation-aware and Personalized Prefetching of Network Requests in Android ...
How Maintainability Issues of Android Apps Evolve [ICSME 2018]
Collaborative Model-Driven Software Engineering: a Classification Framework a...
Experimenting on Mobile Apps Quality - a tale about Energy, Performance, and ...
Modeling objects interaction via UML sequence diagrams [Software Design] [Com...
Modeling behaviour via UML state machines [Software Design] [Computer Science...
Object-oriented design patterns in UML [Software Design] [Computer Science] [...
Structure modeling with UML [Software Design] [Computer Science] [Vrije Unive...
Requirements engineering with UML [Software Design] [Computer Science] [Vrije...
Modeling and abstraction, software development process [Software Design] [Com...
[2017/2018] Agile development
Reconstructing microservice-based architectures
[2017/2018] AADL - Architecture Analysis and Design Language
[2017/2018] Architectural languages
[2017/2018] Introduction to Software Architecture

Recently uploaded (20)

PDF
Electronic commerce courselecture one. Pdf
PDF
NewMind AI Weekly Chronicles - August'25 Week I
PPT
Teaching material agriculture food technology
PPTX
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
PPTX
Cloud computing and distributed systems.
PPTX
Digital-Transformation-Roadmap-for-Companies.pptx
PPTX
Understanding_Digital_Forensics_Presentation.pptx
PDF
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
PPTX
20250228 LYD VKU AI Blended-Learning.pptx
PDF
TokAI - TikTok AI Agent : The First AI Application That Analyzes 10,000+ Vira...
PDF
Dropbox Q2 2025 Financial Results & Investor Presentation
PDF
Modernizing your data center with Dell and AMD
PDF
Chapter 3 Spatial Domain Image Processing.pdf
PDF
Network Security Unit 5.pdf for BCA BBA.
PDF
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
PDF
Shreyas Phanse Resume: Experienced Backend Engineer | Java • Spring Boot • Ka...
PPTX
Big Data Technologies - Introduction.pptx
PDF
Empathic Computing: Creating Shared Understanding
PPT
“AI and Expert System Decision Support & Business Intelligence Systems”
PDF
Agricultural_Statistics_at_a_Glance_2022_0.pdf
Electronic commerce courselecture one. Pdf
NewMind AI Weekly Chronicles - August'25 Week I
Teaching material agriculture food technology
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
Cloud computing and distributed systems.
Digital-Transformation-Roadmap-for-Companies.pptx
Understanding_Digital_Forensics_Presentation.pptx
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
20250228 LYD VKU AI Blended-Learning.pptx
TokAI - TikTok AI Agent : The First AI Application That Analyzes 10,000+ Vira...
Dropbox Q2 2025 Financial Results & Investor Presentation
Modernizing your data center with Dell and AMD
Chapter 3 Spatial Domain Image Processing.pdf
Network Security Unit 5.pdf for BCA BBA.
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
Shreyas Phanse Resume: Experienced Backend Engineer | Java • Spring Boot • Ka...
Big Data Technologies - Introduction.pptx
Empathic Computing: Creating Shared Understanding
“AI and Expert System Decision Support & Business Intelligence Systems”
Agricultural_Statistics_at_a_Glance_2022_0.pdf

Design patterns for mobile apps

  • 1. Gran Sasso Science Institute Ivano Malavolta Design patterns for mobile apps
  • 2. Roadmap Navigation Forms Search, sort & filter Tools Invitations Feedback & Affordance Anti-Patterns
  • 3. Navigation •  How users move through the views –  Springboard –  Lists (Vertical, Infinite) –  Cards –  Tabs –  Gallery (Grid) –  Dashboard –  Metaphor –  Page Carousel –  Image Carousel –  Expanding Lists –  Infinite Area
  • 4. Springboard •  Use a grid layout for items of equal importance, or an irregular layout to emphasize some items more than others •  Consider personalization and customization options
  • 5. Lists •  Works well for long lists with subtext •  All internal screens should have a way for returning back •  It can be “infinite”, it can have thumbnails
  • 6. Cards Definition container that logically encapsulates bits of information Good for presenting similar objects whose size or supported actions can vary considerably we can take advantage of animation and movement http://goo.gl/kB8GlW
  • 8. Tabs •  Clearly differentiate the selected tab from the others •  Use easy to recognize icons or icons with labels
  • 9. Gallery (Grid) •  Works best for frequently updated content that people want to browse
  • 10. Metaphor •  Pages are modeled to reflect the application’s metaphor •  Use the Metaphor pattern judiciously
  • 11. Page carousel •  Works best for navigating a small number of pages •  Visual indicator to reflect the number of screens, and current screen •  Flick to navigate the carousel
  • 12. Image Carousel •  Works best for displaying fresh visual content, like articles, products, and photos •  Provide visual affordance, either with arrows, partial images, or page indicators that more content can be accessed
  • 13. Expanding Lists •  Works best for progressively disclosing more details or options for an object
  • 14. Infinite Area •  The entire data set can be considered to be a large, two- dimensional graphic •  The viewport shows only a small subset of the whole data set
  • 15. Can you compare these navigation designs? Exercise
  • 16. Roadmap Navigation Forms Search, sort & filter Tools Invitations Feedback & Affordance Anti-Patterns
  • 17. Forms •  They are for data entry and configuration –  Sign In –  Registration –  Check-in –  Comments –  Users Profile –  Share –  Empty Datasets –  Multi-step –  Settings
  • 18. Sign In •  Don’t innovate on the sign in screen •  Provide a way to retrieve a forgotten password •  Provide a way to login via social networks
  • 19. Registration •  Keep it short, preferably one screen •  Register button well visible
  • 20. Check-in •  Keep it ultra-short •  Design for speed, and efficiency •  Eliminate unnecessary fields •  Don’t show the map!
  • 21. Comments •  Invite user to leave comment •  Always clarify what is being commented •  Show other people’s comments over time
  • 22. Timeline •  Within the current hour, show as minutes ago •  Within the current day, show the time as number of hours ago •  Within the last two days, shown the day of the week, and the time range, morning, afternoon, evening, night •  Within the past week, show the day of the week •  Within 12 months, show as mm/DD •  Older than 12 months, show only the year
  • 23. Users Profile •  Put the badges in evidence •  Show their contribution to the social network •  Provide action controls
  • 24. Share •  Always keep track of past logins •  Always provide an “off social” way to share (e.g., by email) •  Remark what is being shared
  • 25. Empty datasets •  Avoid white-screens, explain why the dataset is empty •  Call for action, only one! •  Avoid error messages
  • 26. Multi Step •  Show the user where they are and where they can go •  Eliminate unnecessary fields •  Minimize the number of pages and steps
  • 27. Settings •  Put them inside the app •  Clear and grouped •  Easy to be understood
  • 28. Roadmap Navigation Forms Search, sort & filter Tools Invitations Feedback & Affordance Anti-Patterns
  • 29. Search, Sort & Filter •  Search –  Explicit Search –  Dynamic Search –  Search form –  Search Results
  • 30. Explicit Search •  Offer a clear button in the field •  Provide an option to cancel the search •  Use feedback to show the search is being performed
  • 31. Dynamic Search •  Automatically filters a given list of items •  Works well for constrained data sets, like an address book or personal media library
  • 32. Search form •  Minimize the number of input fields •  Follow form design best practices (alignment, labels, size) •  Use only when strictly needed
  • 33. Search Results •  Use live scroll instead of paging •  Apply a reasonable default sort order •  Call for action
  • 34. Roadmap Navigation Forms Search, sort & filter Tools Invitations Feedback & Affordance Anti-Patterns
  • 35. Tools •  Buttons & Controls –  Toolbar –  Contextual Tools –  Inline Actions –  Call to Action Buttons –  Multi-state Button –  Maps
  • 36. Toolbar •  Contain screen level actions, they are generally displayed at the bottom of the screen •  Choose icons that are easy to recognize, or use labels plus icons
  • 37. Contextual Tools •  If buttons are necessary, they should be displayed in proximity to the actionable object •  Choose a familiar icon or use a text label
  • 38. Inline Actions •  They should be in proximity to the actionable object •  Choose a familiar icon or use a text label •  Max 1 to 2 Inline Actions per object
  • 39. Call to Action Buttons •  Don’t hide the main call to action in a menu or disguise it as an unrecognizable icon in a toolbar •  Good contrast and clear label
  • 40. Multi-state Button •  Multi-State Buttons work well for a series of tightly correlated actions that will to be performed in succession
  • 41. Maps •  Provide visible markers (avoiding “terrain-mode”) •  Use as much screen as possible •  Can be small if the location is not the main item
  • 42. Roadmap Navigation Forms Search, sort & filter Tools Invitations Feedback & Affordance Anti-Patterns
  • 43. Invitations •  Helpful tips displayed the first time a user launches an app –  Dialog –  Tip –  Tour –  Video –  Transparency –  1st Time Through –  Persistent
  • 44. Dialog •  Keep dialog content short •  make sure there is an alternate way to access instructions from within the application
  • 45. Tip •  Place tips in proximity to the feature they refer to •  keep the content short •  remove the tip once interaction begins
  • 46. Tour •  A tour should highlight key features of the application, preferably from a (user) goal perspective •  Keep it short and visually engaging
  • 47. Video •  Demos should showcase key features or show how to use the application •  Common video features (stop, pause, volume controls, etc,...) should be provided
  • 48. Transparency •  Transparencies are not meant to compensate for poor screen designs! •  Remove the Transparency once interaction begins My favourite invitation!
  • 49. 1st time through •  Clearly differentiate the invitation from other content with images or other visual cues
  • 50. Persistent •  Keep it short •  Clearly differentiate the invitation from other content with images or other visual cues
  • 51. Roadmap Navigation Forms Search, sort & filter Tools Invitations Feedback & Affordance Anti-Patterns
  • 52. Feedback & Affordance •  Feedback –  Errors –  Confirmation –  System Status •  Affordance –  Tap –  Flick –  Drag
  • 53. Feedback: Errors •  Use plain language that offers a solution for resolving the issue •  make the error visible •  use in-screen messaging instead of modal dialogs
  • 54. Feedback: Confirmation •  Provide confirmation when an action is taken •  don’t break the user’s flow
  • 55. Feedback: System Status •  Provide feedback about the system’s status •  Offer a cancel option for potentially lengthy operations
  • 56. Affordance: Tap •  Use common visual design techniques to indicate tappable controls •  Apply 3D effects judiciously
  • 57. Affordance: Flick •  Use a page indicator •  show the edge of the next item •  Avoid heavy weight scroll bars
  • 58. Affordance: Drag •  Use a recognizable icon for the handle •  Consider using an invitation to let users know this feature is available
  • 59. Roadmap Navigation Forms Search, sort & filter Tools Invitations Feedback & Affordance Anti-Patterns
  • 60. Anti-Patterns •  Common pitfalls to avoid –  Novel Notions –  Metaphor Mismatch –  Idiot Boxes –  Chart Junk –  Oceans of Buttons
  • 61. Novel Notions •  If you are looking for a way to innovate with your application, focus on your core features and offerings, but rely on best practices for the interface design •  If you design a custom control, rigorously test it and refine it to make sure it is usable
  • 64. Metaphor Mismatch •  Consists in picking the wrong metaphor for the interface: –  Control mismatch –  Icon mismatch –  Mental model mismatch –  Gesture mismatch
  • 67. Idiot Boxes Avoid disrupting the workflow only show a confirmation dialog when an irreparable action is being taken (like a permanent delete)
  • 68. Oceans of Buttons •  Use standard patterns for displaying page level actions •  Provide contextual tools for item level actions instead of repeating the same button •  Keep page level actions visually separate from navigational elements
  • 69. References •  Screenshots from: –  www.mobiledesignpatterngallery.com –  pttrns.com –  inspired-ui.com –  mobile-patterns.com get inspired!
  • 70. References Google material design guidelines http://www.google.com/design/spec/material-design
  • 71. Exercises •  Sketch down the wireframe of two views of your app •  List for each view the applied design patterns and the applied design decisions