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

What's hot

Don Norman "Design of everyday things" - UX Book Club
Don Norman "Design of everyday things" - UX Book ClubDon Norman "Design of everyday things" - UX Book Club
Don Norman "Design of everyday things" - UX Book Club
Wojciech Staszczyk
 
User centered Design
User centered DesignUser centered Design
User centered Design
Shalini Shingari
 
User interface-design
User interface-designUser interface-design
User interface-design
DarkHorse Technologies Pvt Ltd
 
Accessible UX: Beyond the checklist to great experiences
Accessible UX: Beyond the checklist to great experiencesAccessible UX: Beyond the checklist to great experiences
Accessible UX: Beyond the checklist to great experiences
Whitney Quesenbery
 
Good/Bad Web Design
Good/Bad Web DesignGood/Bad Web Design
Good/Bad Web Design
Yaowaluck Promdee
 
Introduction To Web Accessibility
Introduction To Web AccessibilityIntroduction To Web Accessibility
Introduction To Web Accessibility
Steven Swafford
 
Chapter 7 design rules
Chapter 7 design rulesChapter 7 design rules
Chapter 7 design rules
MLG College of Learning, Inc
 
10 Usability Heuristics explained
10 Usability Heuristics explained10 Usability Heuristics explained
10 Usability Heuristics explained
Craft Design
 
Design System & Atomic Design
Design System & Atomic DesignDesign System & Atomic Design
Design System & Atomic Design
Vani Jain
 
10 user centered design
10 user centered design10 user centered design
10 user centered design
Lilia Sfaxi
 
User Experience 3: User Experience, Usability and Accessibility
User Experience 3: User Experience, Usability and AccessibilityUser Experience 3: User Experience, Usability and Accessibility
User Experience 3: User Experience, Usability and Accessibility
Marc Miquel
 
Understanding Web Accessibility
Understanding Web AccessibilityUnderstanding Web Accessibility
Understanding Web Accessibility
Andrea Dubravsky
 
Vertical Slicing
Vertical SlicingVertical Slicing
Design process evaluating interactive_designs
Design process  evaluating interactive_designsDesign process  evaluating interactive_designs
Design process evaluating interactive_designs
Preeti Mishra
 
What Is Interaction Design
What Is Interaction DesignWhat Is Interaction Design
What Is Interaction Design
Graeme Smith
 
User Centered Design
User Centered DesignUser Centered Design
User Centered Design
Mithilesh Mandal
 
USER INTERFACE DESIGN PPT
USER INTERFACE DESIGN PPTUSER INTERFACE DESIGN PPT
USER INTERFACE DESIGN PPT
vicci4041
 
Human Computer Interaction Chapter 2 Interaction and Interaction Design Basi...
Human Computer Interaction Chapter 2  Interaction and Interaction Design Basi...Human Computer Interaction Chapter 2  Interaction and Interaction Design Basi...
Human Computer Interaction Chapter 2 Interaction and Interaction Design Basi...
VijiPriya Jeyamani
 
User Interface Testing. What is UI Testing and Why it is so important?
User Interface Testing. What is UI Testing and Why it is so important?User Interface Testing. What is UI Testing and Why it is so important?
User Interface Testing. What is UI Testing and Why it is so important?
Maveryx
 
What Is Accessibility Testing?
What Is Accessibility Testing?What Is Accessibility Testing?
What Is Accessibility Testing?
QA InfoTech
 

What's hot (20)

Don Norman "Design of everyday things" - UX Book Club
Don Norman "Design of everyday things" - UX Book ClubDon Norman "Design of everyday things" - UX Book Club
Don Norman "Design of everyday things" - UX Book Club
 
User centered Design
User centered DesignUser centered Design
User centered Design
 
User interface-design
User interface-designUser interface-design
User interface-design
 
Accessible UX: Beyond the checklist to great experiences
Accessible UX: Beyond the checklist to great experiencesAccessible UX: Beyond the checklist to great experiences
Accessible UX: Beyond the checklist to great experiences
 
Good/Bad Web Design
Good/Bad Web DesignGood/Bad Web Design
Good/Bad Web Design
 
Introduction To Web Accessibility
Introduction To Web AccessibilityIntroduction To Web Accessibility
Introduction To Web Accessibility
 
Chapter 7 design rules
Chapter 7 design rulesChapter 7 design rules
Chapter 7 design rules
 
10 Usability Heuristics explained
10 Usability Heuristics explained10 Usability Heuristics explained
10 Usability Heuristics explained
 
Design System & Atomic Design
Design System & Atomic DesignDesign System & Atomic Design
Design System & Atomic Design
 
10 user centered design
10 user centered design10 user centered design
10 user centered design
 
User Experience 3: User Experience, Usability and Accessibility
User Experience 3: User Experience, Usability and AccessibilityUser Experience 3: User Experience, Usability and Accessibility
User Experience 3: User Experience, Usability and Accessibility
 
Understanding Web Accessibility
Understanding Web AccessibilityUnderstanding Web Accessibility
Understanding Web Accessibility
 
Vertical Slicing
Vertical SlicingVertical Slicing
Vertical Slicing
 
Design process evaluating interactive_designs
Design process  evaluating interactive_designsDesign process  evaluating interactive_designs
Design process evaluating interactive_designs
 
What Is Interaction Design
What Is Interaction DesignWhat Is Interaction Design
What Is Interaction Design
 
User Centered Design
User Centered DesignUser Centered Design
User Centered Design
 
USER INTERFACE DESIGN PPT
USER INTERFACE DESIGN PPTUSER INTERFACE DESIGN PPT
USER INTERFACE DESIGN PPT
 
Human Computer Interaction Chapter 2 Interaction and Interaction Design Basi...
Human Computer Interaction Chapter 2  Interaction and Interaction Design Basi...Human Computer Interaction Chapter 2  Interaction and Interaction Design Basi...
Human Computer Interaction Chapter 2 Interaction and Interaction Design Basi...
 
User Interface Testing. What is UI Testing and Why it is so important?
User Interface Testing. What is UI Testing and Why it is so important?User Interface Testing. What is UI Testing and Why it is so important?
User Interface Testing. What is UI Testing and Why it is so important?
 
What Is Accessibility Testing?
What Is Accessibility Testing?What Is Accessibility Testing?
What Is Accessibility Testing?
 

Viewers also liked

[2015/2016] Modern development paradigms
[2015/2016] Modern development paradigms[2015/2016] Modern development paradigms
[2015/2016] Modern development paradigms
Ivano Malavolta
 
UI design for mobile apps
UI design for mobile appsUI design for mobile apps
UI design for mobile apps
Ivano Malavolta
 
[2015/2016] HTML5 and CSS3 Refresher
[2015/2016] HTML5 and CSS3 Refresher[2015/2016] HTML5 and CSS3 Refresher
[2015/2016] HTML5 and CSS3 Refresher
Ivano Malavolta
 
Web-based Hybrid Mobile Apps: State of the Practice and Research opportunitie...
Web-based Hybrid Mobile Apps: State of the Practice and Research opportunitie...Web-based Hybrid Mobile Apps: State of the Practice and Research opportunitie...
Web-based Hybrid Mobile Apps: State of the Practice and Research opportunitie...
Ivano Malavolta
 
[2015/2016] User experience design of mobil apps
[2015/2016] User experience design of mobil apps[2015/2016] User experience design of mobil apps
[2015/2016] User experience design of mobil apps
Ivano Malavolta
 
[2015/2016] Mobile thinking
[2015/2016] Mobile thinking[2015/2016] Mobile thinking
[2015/2016] Mobile thinking
Ivano Malavolta
 
[2015/2016] Apache Cordova
[2015/2016] Apache Cordova[2015/2016] Apache Cordova
[2015/2016] Apache Cordova
Ivano Malavolta
 
iPad AAC
iPad AACiPad AAC
iPad AAC
Kate Ahern
 
Lublin Startup Festival - Mobile Architecture Design Patterns
Lublin Startup Festival - Mobile Architecture Design PatternsLublin Startup Festival - Mobile Architecture Design Patterns
Lublin Startup Festival - Mobile Architecture Design Patterns
Karol Szmaj
 
Understanding mobile design patterns
Understanding mobile design patternsUnderstanding mobile design patterns
Understanding mobile design patterns
Erik Larsson
 
Web services and mobile architecture
Web services and mobile architectureWeb services and mobile architecture
Web services and mobile architecture
Dimple Chandra
 
PhoneGap: Accessing Device Capabilities
PhoneGap: Accessing Device CapabilitiesPhoneGap: Accessing Device Capabilities
PhoneGap: Accessing Device Capabilities
Ivano Malavolta
 
Apache Cordova APIs version 4.3.0
Apache Cordova APIs version 4.3.0 Apache Cordova APIs version 4.3.0
Apache Cordova APIs version 4.3.0
Ivano Malavolta
 
Backbone.js
Backbone.jsBackbone.js
Backbone.js
Ivano Malavolta
 
Mobile Apps Development: Technological strategies and Monetization
Mobile Apps Development: Technological strategies and MonetizationMobile Apps Development: Technological strategies and Monetization
Mobile Apps Development: Technological strategies and Monetization
Ivano Malavolta
 
Local data storage for mobile apps
Local data storage for mobile appsLocal data storage for mobile apps
Local data storage for mobile apps
Ivano Malavolta
 
The Mobile ecosystem, Context & Strategies
The Mobile ecosystem, Context & StrategiesThe Mobile ecosystem, Context & Strategies
The Mobile ecosystem, Context & Strategies
Ivano Malavolta
 
Handlebars & Require JS
Handlebars  & Require JSHandlebars  & Require JS
Handlebars & Require JS
Ivano Malavolta
 
Mobile geolocation and mapping
Mobile geolocation and mappingMobile geolocation and mapping
Mobile geolocation and mapping
Ivano Malavolta
 
PhoneGap: Local Storage
PhoneGap: Local StoragePhoneGap: Local Storage
PhoneGap: Local Storage
Ivano Malavolta
 

Viewers also liked (20)

[2015/2016] Modern development paradigms
[2015/2016] Modern development paradigms[2015/2016] Modern development paradigms
[2015/2016] Modern development paradigms
 
UI design for mobile apps
UI design for mobile appsUI design for mobile apps
UI design for mobile apps
 
[2015/2016] HTML5 and CSS3 Refresher
[2015/2016] HTML5 and CSS3 Refresher[2015/2016] HTML5 and CSS3 Refresher
[2015/2016] HTML5 and CSS3 Refresher
 
Web-based Hybrid Mobile Apps: State of the Practice and Research opportunitie...
Web-based Hybrid Mobile Apps: State of the Practice and Research opportunitie...Web-based Hybrid Mobile Apps: State of the Practice and Research opportunitie...
Web-based Hybrid Mobile Apps: State of the Practice and Research opportunitie...
 
[2015/2016] User experience design of mobil apps
[2015/2016] User experience design of mobil apps[2015/2016] User experience design of mobil apps
[2015/2016] User experience design of mobil apps
 
[2015/2016] Mobile thinking
[2015/2016] Mobile thinking[2015/2016] Mobile thinking
[2015/2016] Mobile thinking
 
[2015/2016] Apache Cordova
[2015/2016] Apache Cordova[2015/2016] Apache Cordova
[2015/2016] Apache Cordova
 
iPad AAC
iPad AACiPad AAC
iPad AAC
 
Lublin Startup Festival - Mobile Architecture Design Patterns
Lublin Startup Festival - Mobile Architecture Design PatternsLublin Startup Festival - Mobile Architecture Design Patterns
Lublin Startup Festival - Mobile Architecture Design Patterns
 
Understanding mobile design patterns
Understanding mobile design patternsUnderstanding mobile design patterns
Understanding mobile design patterns
 
Web services and mobile architecture
Web services and mobile architectureWeb services and mobile architecture
Web services and mobile architecture
 
PhoneGap: Accessing Device Capabilities
PhoneGap: Accessing Device CapabilitiesPhoneGap: Accessing Device Capabilities
PhoneGap: Accessing Device Capabilities
 
Apache Cordova APIs version 4.3.0
Apache Cordova APIs version 4.3.0 Apache Cordova APIs version 4.3.0
Apache Cordova APIs version 4.3.0
 
Backbone.js
Backbone.jsBackbone.js
Backbone.js
 
Mobile Apps Development: Technological strategies and Monetization
Mobile Apps Development: Technological strategies and MonetizationMobile Apps Development: Technological strategies and Monetization
Mobile Apps Development: Technological strategies and Monetization
 
Local data storage for mobile apps
Local data storage for mobile appsLocal data storage for mobile apps
Local data storage for mobile apps
 
The Mobile ecosystem, Context & Strategies
The Mobile ecosystem, Context & StrategiesThe Mobile ecosystem, Context & Strategies
The Mobile ecosystem, Context & Strategies
 
Handlebars & Require JS
Handlebars  & Require JSHandlebars  & Require JS
Handlebars & Require JS
 
Mobile geolocation and mapping
Mobile geolocation and mappingMobile geolocation and mapping
Mobile geolocation and mapping
 
PhoneGap: Local Storage
PhoneGap: Local StoragePhoneGap: Local Storage
PhoneGap: Local Storage
 

Similar to Design patterns for mobile apps

Design patterns for mobile apps
Design patterns for mobile appsDesign patterns for mobile apps
Design patterns for mobile apps
Ivano Malavolta
 
Common Design Patterns for Mobile (part 2)
Common Design Patterns for Mobile (part 2)Common Design Patterns for Mobile (part 2)
Common Design Patterns for Mobile (part 2)
Ivano Malavolta
 
Application Design - Part 1
Application Design - Part 1Application Design - Part 1
Application Design - Part 1
Kelley Howell
 
UXD - A quick overview on what you need to work with your UX team
UXD - A quick overview on what you need to work with your UX team UXD - A quick overview on what you need to work with your UX team
UXD - A quick overview on what you need to work with your UX team
Guilherme Rodrigues
 
Design Like a Pro: Building Better HMI Navigation Schemes
Design Like a Pro: Building Better HMI Navigation SchemesDesign Like a Pro: Building Better HMI Navigation Schemes
Design Like a Pro: Building Better HMI Navigation Schemes
Inductive Automation
 
Design Like a Pro: Building Better HMI Navigation Schemes
Design Like a Pro: Building Better HMI Navigation SchemesDesign Like a Pro: Building Better HMI Navigation Schemes
Design Like a Pro: Building Better HMI Navigation Schemes
Inductive Automation
 
ui.ppt
ui.pptui.ppt
Visual guidance calgary user group
Visual guidance calgary user groupVisual guidance calgary user group
Visual guidance calgary user group
Berkovich Consulting
 
UX Edmonton - Pattern Libraries
UX Edmonton - Pattern LibrariesUX Edmonton - Pattern Libraries
UX Edmonton - Pattern Libraries
Robert Evans
 
Usability Workshop at Lillebaelt Academy
Usability Workshop at Lillebaelt AcademyUsability Workshop at Lillebaelt Academy
Usability Workshop at Lillebaelt Academy
Dániel Góré
 
Web Accessibility Top 10 - LCC (1/2 day workshop, August 2013)
Web Accessibility Top 10 - LCC (1/2 day workshop, August 2013)Web Accessibility Top 10 - LCC (1/2 day workshop, August 2013)
Web Accessibility Top 10 - LCC (1/2 day workshop, August 2013)
Carrie Anton
 
Ux gsg
Ux gsgUx gsg
Ux gsg
Lama K Banna
 
Usability and Salesforce - Dallas Salesforce.com User Group September 2011
Usability and Salesforce - Dallas Salesforce.com User Group September 2011Usability and Salesforce - Dallas Salesforce.com User Group September 2011
Usability and Salesforce - Dallas Salesforce.com User Group September 2011
Shell Black
 
Mobile Best Practices
Mobile Best PracticesMobile Best Practices
Mobile Best Practices
Pauly Ting
 
Effective course design
Effective course designEffective course design
Effective course design
WCET
 
Data and Consumer Product Development
Data and Consumer Product DevelopmentData and Consumer Product Development
Data and Consumer Product Development
Gaurav Bhalotia
 
Visual guidance for power bi toronto pbi tour (1)
Visual guidance for power bi toronto pbi tour (1)Visual guidance for power bi toronto pbi tour (1)
Visual guidance for power bi toronto pbi tour (1)
Berkovich Consulting
 
Designing the user experience
Designing the user experienceDesigning the user experience
Designing the user experience
Sean Donnelly BA MSc QFA
 
Week 8 & 10
Week 8 & 10Week 8 & 10
Week 8 & 10
Study Geek
 
Android UI Design Tips
Android UI Design TipsAndroid UI Design Tips
Android UI Design Tips
Luis Abreu
 

Similar to Design patterns for mobile apps (20)

Design patterns for mobile apps
Design patterns for mobile appsDesign patterns for mobile apps
Design patterns for mobile apps
 
Common Design Patterns for Mobile (part 2)
Common Design Patterns for Mobile (part 2)Common Design Patterns for Mobile (part 2)
Common Design Patterns for Mobile (part 2)
 
Application Design - Part 1
Application Design - Part 1Application Design - Part 1
Application Design - Part 1
 
UXD - A quick overview on what you need to work with your UX team
UXD - A quick overview on what you need to work with your UX team UXD - A quick overview on what you need to work with your UX team
UXD - A quick overview on what you need to work with your UX team
 
Design Like a Pro: Building Better HMI Navigation Schemes
Design Like a Pro: Building Better HMI Navigation SchemesDesign Like a Pro: Building Better HMI Navigation Schemes
Design Like a Pro: Building Better HMI Navigation Schemes
 
Design Like a Pro: Building Better HMI Navigation Schemes
Design Like a Pro: Building Better HMI Navigation SchemesDesign Like a Pro: Building Better HMI Navigation Schemes
Design Like a Pro: Building Better HMI Navigation Schemes
 
ui.ppt
ui.pptui.ppt
ui.ppt
 
Visual guidance calgary user group
Visual guidance calgary user groupVisual guidance calgary user group
Visual guidance calgary user group
 
UX Edmonton - Pattern Libraries
UX Edmonton - Pattern LibrariesUX Edmonton - Pattern Libraries
UX Edmonton - Pattern Libraries
 
Usability Workshop at Lillebaelt Academy
Usability Workshop at Lillebaelt AcademyUsability Workshop at Lillebaelt Academy
Usability Workshop at Lillebaelt Academy
 
Web Accessibility Top 10 - LCC (1/2 day workshop, August 2013)
Web Accessibility Top 10 - LCC (1/2 day workshop, August 2013)Web Accessibility Top 10 - LCC (1/2 day workshop, August 2013)
Web Accessibility Top 10 - LCC (1/2 day workshop, August 2013)
 
Ux gsg
Ux gsgUx gsg
Ux gsg
 
Usability and Salesforce - Dallas Salesforce.com User Group September 2011
Usability and Salesforce - Dallas Salesforce.com User Group September 2011Usability and Salesforce - Dallas Salesforce.com User Group September 2011
Usability and Salesforce - Dallas Salesforce.com User Group September 2011
 
Mobile Best Practices
Mobile Best PracticesMobile Best Practices
Mobile Best Practices
 
Effective course design
Effective course designEffective course design
Effective course design
 
Data and Consumer Product Development
Data and Consumer Product DevelopmentData and Consumer Product Development
Data and Consumer Product Development
 
Visual guidance for power bi toronto pbi tour (1)
Visual guidance for power bi toronto pbi tour (1)Visual guidance for power bi toronto pbi tour (1)
Visual guidance for power bi toronto pbi tour (1)
 
Designing the user experience
Designing the user experienceDesigning the user experience
Designing the user experience
 
Week 8 & 10
Week 8 & 10Week 8 & 10
Week 8 & 10
 
Android UI Design Tips
Android UI Design TipsAndroid UI Design Tips
Android UI Design Tips
 

More from Ivano Malavolta

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

More from Ivano Malavolta (20)

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

Recently uploaded

Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
SOFTTECHHUB
 
Communications Mining Series - Zero to Hero - Session 1
Communications Mining Series - Zero to Hero - Session 1Communications Mining Series - Zero to Hero - Session 1
Communications Mining Series - Zero to Hero - Session 1
DianaGray10
 
A tale of scale & speed: How the US Navy is enabling software delivery from l...
A tale of scale & speed: How the US Navy is enabling software delivery from l...A tale of scale & speed: How the US Navy is enabling software delivery from l...
A tale of scale & speed: How the US Navy is enabling software delivery from l...
sonjaschweigert1
 
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
Neo4j
 
Uni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems Copilot event_05062024_C.Vlachos.pdfUni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems S.M.S.A.
 
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
SOFTTECHHUB
 
Removing Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software FuzzingRemoving Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software Fuzzing
Aftab Hussain
 
20240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 202420240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 2024
Matthew Sinclair
 
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
James Anderson
 
Introducing Milvus Lite: Easy-to-Install, Easy-to-Use vector database for you...
Introducing Milvus Lite: Easy-to-Install, Easy-to-Use vector database for you...Introducing Milvus Lite: Easy-to-Install, Easy-to-Use vector database for you...
Introducing Milvus Lite: Easy-to-Install, Easy-to-Use vector database for you...
Zilliz
 
Pushing the limits of ePRTC: 100ns holdover for 100 days
Pushing the limits of ePRTC: 100ns holdover for 100 daysPushing the limits of ePRTC: 100ns holdover for 100 days
Pushing the limits of ePRTC: 100ns holdover for 100 days
Adtran
 
Artificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopmentArtificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopment
Octavian Nadolu
 
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
名前 です男
 
RESUME BUILDER APPLICATION Project for students
RESUME BUILDER APPLICATION Project for studentsRESUME BUILDER APPLICATION Project for students
RESUME BUILDER APPLICATION Project for students
KAMESHS29
 
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
Edge AI and Vision Alliance
 
Microsoft - Power Platform_G.Aspiotis.pdf
Microsoft - Power Platform_G.Aspiotis.pdfMicrosoft - Power Platform_G.Aspiotis.pdf
Microsoft - Power Platform_G.Aspiotis.pdf
Uni Systems S.M.S.A.
 
PCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase TeamPCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase Team
ControlCase
 
UiPath Test Automation using UiPath Test Suite series, part 6
UiPath Test Automation using UiPath Test Suite series, part 6UiPath Test Automation using UiPath Test Suite series, part 6
UiPath Test Automation using UiPath Test Suite series, part 6
DianaGray10
 
Building RAG with self-deployed Milvus vector database and Snowpark Container...
Building RAG with self-deployed Milvus vector database and Snowpark Container...Building RAG with self-deployed Milvus vector database and Snowpark Container...
Building RAG with self-deployed Milvus vector database and Snowpark Container...
Zilliz
 
How to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptxHow to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptx
danishmna97
 

Recently uploaded (20)

Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
 
Communications Mining Series - Zero to Hero - Session 1
Communications Mining Series - Zero to Hero - Session 1Communications Mining Series - Zero to Hero - Session 1
Communications Mining Series - Zero to Hero - Session 1
 
A tale of scale & speed: How the US Navy is enabling software delivery from l...
A tale of scale & speed: How the US Navy is enabling software delivery from l...A tale of scale & speed: How the US Navy is enabling software delivery from l...
A tale of scale & speed: How the US Navy is enabling software delivery from l...
 
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
 
Uni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems Copilot event_05062024_C.Vlachos.pdfUni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems Copilot event_05062024_C.Vlachos.pdf
 
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
 
Removing Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software FuzzingRemoving Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software Fuzzing
 
20240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 202420240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 2024
 
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
 
Introducing Milvus Lite: Easy-to-Install, Easy-to-Use vector database for you...
Introducing Milvus Lite: Easy-to-Install, Easy-to-Use vector database for you...Introducing Milvus Lite: Easy-to-Install, Easy-to-Use vector database for you...
Introducing Milvus Lite: Easy-to-Install, Easy-to-Use vector database for you...
 
Pushing the limits of ePRTC: 100ns holdover for 100 days
Pushing the limits of ePRTC: 100ns holdover for 100 daysPushing the limits of ePRTC: 100ns holdover for 100 days
Pushing the limits of ePRTC: 100ns holdover for 100 days
 
Artificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopmentArtificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopment
 
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
 
RESUME BUILDER APPLICATION Project for students
RESUME BUILDER APPLICATION Project for studentsRESUME BUILDER APPLICATION Project for students
RESUME BUILDER APPLICATION Project for students
 
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
 
Microsoft - Power Platform_G.Aspiotis.pdf
Microsoft - Power Platform_G.Aspiotis.pdfMicrosoft - Power Platform_G.Aspiotis.pdf
Microsoft - Power Platform_G.Aspiotis.pdf
 
PCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase TeamPCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase Team
 
UiPath Test Automation using UiPath Test Suite series, part 6
UiPath Test Automation using UiPath Test Suite series, part 6UiPath Test Automation using UiPath Test Suite series, part 6
UiPath Test Automation using UiPath Test Suite series, part 6
 
Building RAG with self-deployed Milvus vector database and Snowpark Container...
Building RAG with self-deployed Milvus vector database and Snowpark Container...Building RAG with self-deployed Milvus vector database and Snowpark Container...
Building RAG with self-deployed Milvus vector database and Snowpark Container...
 
How to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptxHow to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptx
 

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