SlideShare a Scribd company logo
1 of 107
Download to read offline
Application GUI Design
Notes From a Tizen Toolkit Developer
Tom Hacohen
Samsung Electronics Open Source Group
tom@osg.samsung.com
@TomHacohen
What does it do?
Essential features
What does it do?
Essential features
Nice to have features
What does it do?
Essential features
Nice to have features
Niche features (<1% of the users)
What does it do?
Essential features
Nice to have features
Niche features (<1% of the users)
Remove all the non-essential features
Who is it for?
CLI power users? Designers?
Who is it for?
CLI power users? Designers?
Target environment
Who is it for?
CLI power users? Designers?
Target environment
Common demographics
Who is it for?
CLI power users? Designers?
Target environment
Common demographics
Application speciļ¬c classiļ¬cations
Who is it for?
CLI power users? Designers?
Target environment
Common demographics
Application speciļ¬c classiļ¬cations
Userbase = you
KISS
Adapt feature list according to your audience
KISS
Adapt feature list according to your audience
Keep focus on the more important features
KISS
Adapt feature list according to your audience
Keep focus on the more important features
Avoid creating complex UIs
KISS
Adapt feature list according to your audience
Keep focus on the more important features
Avoid creating complex UIs
Keep option lists (combo box) short, simple and
in a sensible order
Have a rough sketch
Make a general storyboard sketch
Have a rough sketch
Make a general storyboard sketch
Have all the major interactions and features there
Have a rough sketch
Make a general storyboard sketch
Have all the major interactions and features there
Can be really rough ā€“ itā€™s more about the purpose of the ā€œpagesā€
Have a rough sketch
Make a general storyboard sketch
Have all the major interactions and features there
Can be really rough ā€“ itā€™s more about the purpose of the ā€œpagesā€
Have a rough sketch
Make a general storyboard sketch
Have all the major interactions and features there
Can be really rough ā€“ itā€™s more about the purpose of the ā€œpagesā€
Stick to the basics
Donā€™t bother with colour ā€“ harder and will be added later
Stick to the basics
Donā€™t bother with colour ā€“ harder and will be added later
Do not customise available widgets/patterns unless there really is no other way
Stick to the basics
Donā€™t bother with colour ā€“ harder and will be added later
Do not customise available widgets/patterns unless there really is no other way
Develop it around the content ā€“ content is king
I meant it! KISS. . .
Be purposefully simple
I meant it! KISS. . .
Be purposefully simple
Skeuomorphs are almost always bad
I meant it! KISS. . .
Be purposefully simple
Skeuomorphs are almost always bad
Be consistent (easier when simple)
I meant it! KISS. . .
Be purposefully simple
Skeuomorphs are almost always bad
Be consistent (easier when simple)
Make it simple for your users ā€“ donā€™t create new
usage patterns, and adhere to common ones
I meant it! KISS. . .
Be purposefully simple
Skeuomorphs are almost always bad
Be consistent (easier when simple)
Make it simple for your users ā€“ donā€™t create new
usage patterns, and adhere to common ones
Common (all?) usage patterns should be easily
available
I meant it! KISS. . .
Be purposefully simple
Skeuomorphs are almost always bad
Be consistent (easier when simple)
Make it simple for your users ā€“ donā€™t create new
usage patterns, and adhere to common ones
Common (all?) usage patterns should be easily
available
Rest should be revealed as needed
I meant it! KISS. . .
Be purposefully simple
Skeuomorphs are almost always bad
Be consistent (easier when simple)
Make it simple for your users ā€“ donā€™t create new
usage patterns, and adhere to common ones
Common (all?) usage patterns should be easily
available
Rest should be revealed as needed
Make self-documenting applications
Spacing
Choose a baseline unit size (e.g. 8px)
Spacing
Choose a baseline unit size (e.g. 8px)
Align everything to that baseline size
Spacing
Choose a baseline unit size (e.g. 8px)
Align everything to that baseline size
Use a small set of spacing alternatives (e.g. 2, 3
and 6 units)
Spacing
Choose a baseline unit size (e.g. 8px)
Align everything to that baseline size
Use a small set of spacing alternatives (e.g. 2, 3
and 6 units)
Make sure touch-targets are spaced enough
Spacing
Choose a baseline unit size (e.g. 8px)
Align everything to that baseline size
Use a small set of spacing alternatives (e.g. 2, 3
and 6 units)
Make sure touch-targets are spaced enough
Counter example
Spacing
Choose a baseline unit size (e.g. 8px)
Align everything to that baseline size
Use a small set of spacing alternatives (e.g. 2, 3
and 6 units)
Make sure touch-targets are spaced enough
Counter example
Be generous, but donā€™t overdo it (donā€™t waste my
screen estate)
Spacing
Choose a baseline unit size (e.g. 8px)
Align everything to that baseline size
Use a small set of spacing alternatives (e.g. 2, 3
and 6 units)
Make sure touch-targets are spaced enough
Counter example
Be generous, but donā€™t overdo it (donā€™t waste my
screen estate)
Counter example
Spacing
Choose a baseline unit size (e.g. 8px)
Align everything to that baseline size
Use a small set of spacing alternatives (e.g. 2, 3
and 6 units)
Make sure touch-targets are spaced enough
Counter example
Be generous, but donā€™t overdo it (donā€™t waste my
screen estate)
Counter example
Give back space when possible
Organization
Content should be at the front of the stage
Organization
Content should be at the front of the stage
Important functionality in key positions
Organization
Content should be at the front of the stage
Important functionality in key positions
Make the hierarchy of information clear
Organization
Content should be at the front of the stage
Important functionality in key positions
Make the hierarchy of information clear
Associate related elements
Organization
Content should be at the front of the stage
Important functionality in key positions
Make the hierarchy of information clear
Associate related elements
Help directing the userā€™s focus
Icons and images
Use known icons on buttons
Icons and images
Use known icons on buttons
Donā€™t use a known icon for something other than
intended
Icons and images
Use known icons on buttons
Donā€™t use a known icon for something other than
intended
Use rich graphics when appropriate (cover-art,
mood graphics, etc.)
Icons and images
Use known icons on buttons
Donā€™t use a known icon for something other than
intended
Use rich graphics when appropriate (cover-art,
mood graphics, etc.)
Donā€™t overshadow content
Icons and images
Use known icons on buttons
Donā€™t use a known icon for something other than
intended
Use rich graphics when appropriate (cover-art,
mood graphics, etc.)
Donā€™t overshadow content
Donā€™t use ugly graphics
Icons and images
Use known icons on buttons
Donā€™t use a known icon for something other than
intended
Use rich graphics when appropriate (cover-art,
mood graphics, etc.)
Donā€™t overshadow content
Donā€™t use ugly graphics
Have consistent sizing
Typography
Use a readable font size
Text should be big and readable for everyone
Typography
Use a readable font size
Space up your text
Typography
Use a readable font size
Space up your text
Use text attributes (e.g. bold and size) to make
text more or less prominent
Typography
Use a readable font size
Space up your text
Use text attributes (e.g. bold and size) to make
text more or less prominent
Use a small set of fonts (probably one)
Overlaying text on images
Just put it on (bad)
Overlaying text on images
Just put it on (bad)
Black/colour/white-wash the whole image to
make text readable
Overlaying text on images
Just put it on (bad)
Black/colour/white-wash the whole image to
make text readable
Add translucent background to the text
Overlaying text on images
Just put it on (bad)
Black/colour/white-wash the whole image to
make text readable
Add translucent background to the text
Add a translucent gradient (i.e. partial
black/white-wash) so your text area is handled
Overlaying text on images
Just put it on (bad)
Black/colour/white-wash the whole image to
make text readable
Add translucent background to the text
Add a translucent gradient (i.e. partial
black/white-wash) so your text area is handled
Use a big font with a shadow and on outline
Colour
Option 1 (easier): keep the interface b&w and
use colour to direct focus
Colour
Option 1 (easier): keep the interface b&w and
use colour to direct focus
Option 2: Choose a palette of 2 diļ¬€erent hues
and use diļ¬€erent shades
Colour
Option 1 (easier): keep the interface b&w and
use colour to direct focus
Option 2: Choose a palette of 2 diļ¬€erent hues
and use diļ¬€erent shades
I almost always tint my greys (and not use black)
Colour
Option 1 (easier): keep the interface b&w and
use colour to direct focus
Option 2: Choose a palette of 2 diļ¬€erent hues
and use diļ¬€erent shades
I almost always tint my greys (and not use black)
Find a good palette online
Colour
Option 1 (easier): keep the interface b&w and
use colour to direct focus
Option 2: Choose a palette of 2 diļ¬€erent hues
and use diļ¬€erent shades
I almost always tint my greys (and not use black)
Find a good palette online
Use HSL/HSV rather RGB when choosing colours
Colour
Option 1 (easier): keep the interface b&w and
use colour to direct focus
Option 2: Choose a palette of 2 diļ¬€erent hues
and use diļ¬€erent shades
I almost always tint my greys (and not use black)
Find a good palette online
Use HSL/HSV rather RGB when choosing colours
Be aware of cultural diļ¬€erences
Mimic what works
Compare to other applications you/users like better using what weā€™ve covered
Mimic what works
Compare to other applications you/users like better using what weā€™ve covered
Mimic whatā€™s good there (e.g. do you need more spacing?)
Mimic what works
Compare to other applications you/users like better using what weā€™ve covered
Mimic whatā€™s good there (e.g. do you need more spacing?)
Itā€™s usually easier to mimic than to design from scratch
Mimic what works
Compare to other applications you/users like better using what weā€™ve covered
Mimic whatā€™s good there (e.g. do you need more spacing?)
Itā€™s usually easier to mimic than to design from scratch
Donā€™t mimic the bad things (i.e. use them as excuse)
Mimic what works
Compare to other applications you/users like better using what weā€™ve covered
Mimic whatā€™s good there (e.g. do you need more spacing?)
Itā€™s usually easier to mimic than to design from scratch
Donā€™t mimic the bad things (i.e. use them as excuse)
Donā€™t copy, learn. . .
User experience tips
Consistent behaviour (with the platform and within the application)
User experience tips
Consistent behaviour (with the platform and within the application)
Start instantly and lazy load in the background
User experience tips
Consistent behaviour (with the platform and within the application)
Start instantly and lazy load in the background
Everything should take a small amount of clicks
User experience tips
Consistent behaviour (with the platform and within the application)
Start instantly and lazy load in the background
Everything should take a small amount of clicks
Discoverable UI (easy to ļ¬gure out how to do things)
More user experience tips
Make it hard to make mistakes
More user experience tips
Make it hard to make mistakes
Counter example
More user experience tips
Make it hard to make mistakes
Counter example
Avoid interruptions
More user experience tips
Make it hard to make mistakes
Counter example
Avoid interruptions
Sort long lists in a predictable, sensible order
More user experience tips
Make it hard to make mistakes
Counter example
Avoid interruptions
Sort long lists in a predictable, sensible order
If your users do something and expect something
to happen, it probably should happen
Material design (Google)
Highly talked about cross device design guidelines
Material design (Google)
Highly talked about cross device design guidelines
A fairly good Android adoption rate
Material design (Google)
Highly talked about cross device design guidelines
A fairly good Android adoption rate
I personally donā€™t like animations that slow users
down
Material design (Google)
Highly talked about cross device design guidelines
A fairly good Android adoption rate
I personally donā€™t like animations that slow users
down
Concepts are good, itā€™s implementations that are
not always good
Material design (Google)
Highly talked about cross device design guidelines
A fairly good Android adoption rate
I personally donā€™t like animations that slow users
down
Concepts are good, itā€™s implementations that are
not always good
It doesnā€™t feel like they care about low-end and
power consumption
iOS (Apple)
Old style: horrible skeuomorphism
iOS (Apple)
Old style: horrible skeuomorphism
New style: very simple and clean, sometimes
confusing
iOS (Apple)
Old style: horrible skeuomorphism
New style: very simple and clean, sometimes
confusing
Flat and easy to theme
iOS (Apple)
Old style: horrible skeuomorphism
New style: very simple and clean, sometimes
confusing
Flat and easy to theme
Usually not very discoverable
iOS (Apple)
Old style: horrible skeuomorphism
New style: very simple and clean, sometimes
confusing
Flat and easy to theme
Usually not very discoverable
Good general guidelines
Tizen
Designed for low resolution devices
Tizen
Designed for low resolution devices
Focus on content and user needs
Tizen
Designed for low resolution devices
Focus on content and user needs
Frugal with screen estate
Tizen
Designed for low resolution devices
Focus on content and user needs
Frugal with screen estate
Tries to make applications consistent (encourages
a ļ¬xed colour theme)
Tizen
Designed for low resolution devices
Focus on content and user needs
Frugal with screen estate
Tries to make applications consistent (encourages
a ļ¬xed colour theme)
Make interaction simple and easy
Tizen
Designed for low resolution devices
Focus on content and user needs
Frugal with screen estate
Tries to make applications consistent (encourages
a ļ¬xed colour theme)
Make interaction simple and easy
Aims to support user customisation
Tizen
Designed for low resolution devices
Focus on content and user needs
Frugal with screen estate
Tries to make applications consistent (encourages
a ļ¬xed colour theme)
Make interaction simple and easy
Aims to support user customisation
Flat and ā€œfunā€ design
Know your toolkit
Trying to pixel match a design across toolkits is a bad idea
Know your toolkit
Trying to pixel match a design across toolkits is a bad idea
Know what takes a performance hit on your toolkit
Know your toolkit
Trying to pixel match a design across toolkits is a bad idea
Know what takes a performance hit on your toolkit
Check out the toolkitā€™s common patterns, those are usually best for performance and
users
Easy takeaways
Itā€™s like API design, it should be simple, self-documenting, consistent and have a
familiar feeling
Easy takeaways
Itā€™s like API design, it should be simple, self-documenting, consistent and have a
familiar feeling
Start with black and white, donā€™t colour unless you need it
Easy takeaways
Itā€™s like API design, it should be simple, self-documenting, consistent and have a
familiar feeling
Start with black and white, donā€™t colour unless you need it
Saturate your greys and almost never use black
Easy takeaways
Itā€™s like API design, it should be simple, self-documenting, consistent and have a
familiar feeling
Start with black and white, donā€™t colour unless you need it
Saturate your greys and almost never use black
Add spacing and make your text bigger
Easy takeaways
Itā€™s like API design, it should be simple, self-documenting, consistent and have a
familiar feeling
Start with black and white, donā€™t colour unless you need it
Saturate your greys and almost never use black
Add spacing and make your text bigger
Use common patterns (and take inspiration from the best)
Easy takeaways
Itā€™s like API design, it should be simple, self-documenting, consistent and have a
familiar feeling
Start with black and white, donā€™t colour unless you need it
Saturate your greys and almost never use black
Add spacing and make your text bigger
Use common patterns (and take inspiration from the best)
Pay the design some thought (from the start)
Easy takeaways
Itā€™s like API design, it should be simple, self-documenting, consistent and have a
familiar feeling
Start with black and white, donā€™t colour unless you need it
Saturate your greys and almost never use black
Add spacing and make your text bigger
Use common patterns (and take inspiration from the best)
Pay the design some thought (from the start)
KISS
Questions?
Tom Hacohen
tom@osg.samsung.com
http://stosb.com
@TomHacohen
Page 11, flight-deck.jpg
Page 15, twitter-sketch.jpg
Page 23, purposefully-simple.png
Page ??, skeuomorph.jpg
Page ??, self-documenting.png
Page ??, layout-baseline-align.png
Page ??, layout-spacing-alternatives.png
Page 58, direct-attention.png
Page ??, imagery-mood.png
Page ??, bad-blurry.png
Page ??, multiple-fonts.png
Page 53, text-overlay-bad.jpg
Page ??, two-colours.png
Page ??, palette.png
Page ??, colour-culture.jpg
Page ??, colour-culture.jpg
Page 73, repo-delete-confirmation.png
Page ??, interrupt-programmer.jpg
Page 78, material.png
Page 83, ios6v7.jpg
Page 88, tizen.png
Page ??, info-hierarchy.png

More Related Content

What's hot

Image Editing for Beginners - Training Handout
Image Editing for Beginners - Training HandoutImage Editing for Beginners - Training Handout
Image Editing for Beginners - Training HandoutTeresa Beary
Ā 
PowerPoint Tips: Utilizing the Cropping Tool
PowerPoint Tips: Utilizing the Cropping Tool PowerPoint Tips: Utilizing the Cropping Tool
PowerPoint Tips: Utilizing the Cropping Tool Al Bonner
Ā 
Rule for creating power point slide
Rule for creating power point slideRule for creating power point slide
Rule for creating power point slideMd. Mashiur Rahman
Ā 
Pop up design process
Pop up design processPop up design process
Pop up design processAthi Prem
Ā 
Photoshop
PhotoshopPhotoshop
PhotoshopRajesh S
Ā 
Adobe Illustrator - Creating the Poster
Adobe Illustrator - Creating the PosterAdobe Illustrator - Creating the Poster
Adobe Illustrator - Creating the PosterTimothy F McKenna
Ā 
Icon assignment
Icon assignmentIcon assignment
Icon assignmentrobinb83
Ā 
TDC 2014 - Trilha Mobile - Material design
TDC 2014 - Trilha Mobile - Material designTDC 2014 - Trilha Mobile - Material design
TDC 2014 - Trilha Mobile - Material designJackson F. de A. Mafra
Ā 
Android Design Integration
Android Design IntegrationAndroid Design Integration
Android Design IntegrationEvgeny Belyaev
Ā 
How to use the photoshop pen tool to edit e commerce images
How to use the photoshop pen tool to edit e commerce imagesHow to use the photoshop pen tool to edit e commerce images
How to use the photoshop pen tool to edit e commerce imagesClipping Path Arts
Ā 
Top Graphic Designing Hacks to Make You a Designing Pro Today
Top Graphic Designing Hacks to Make You a Designing Pro Today Top Graphic Designing Hacks to Make You a Designing Pro Today
Top Graphic Designing Hacks to Make You a Designing Pro Today Ravi Bhadauria
Ā 
Introduction to adobe Photoshop
Introduction to adobe PhotoshopIntroduction to adobe Photoshop
Introduction to adobe PhotoshopChristopherEsteban2
Ā 
Game Design 2: Lecture 10 - UI Layout
Game Design 2: Lecture 10 - UI LayoutGame Design 2: Lecture 10 - UI Layout
Game Design 2: Lecture 10 - UI LayoutDavid Farrell
Ā 

What's hot (16)

Image Editing for Beginners - Training Handout
Image Editing for Beginners - Training HandoutImage Editing for Beginners - Training Handout
Image Editing for Beginners - Training Handout
Ā 
PowerPoint Tips: Utilizing the Cropping Tool
PowerPoint Tips: Utilizing the Cropping Tool PowerPoint Tips: Utilizing the Cropping Tool
PowerPoint Tips: Utilizing the Cropping Tool
Ā 
Presentation
PresentationPresentation
Presentation
Ā 
Rule for creating power point slide
Rule for creating power point slideRule for creating power point slide
Rule for creating power point slide
Ā 
Pop up design process
Pop up design processPop up design process
Pop up design process
Ā 
Photoshop
PhotoshopPhotoshop
Photoshop
Ā 
Presentation
PresentationPresentation
Presentation
Ā 
Adobe Illustrator - Creating the Poster
Adobe Illustrator - Creating the PosterAdobe Illustrator - Creating the Poster
Adobe Illustrator - Creating the Poster
Ā 
Icon assignment
Icon assignmentIcon assignment
Icon assignment
Ā 
Photoshop
PhotoshopPhotoshop
Photoshop
Ā 
TDC 2014 - Trilha Mobile - Material design
TDC 2014 - Trilha Mobile - Material designTDC 2014 - Trilha Mobile - Material design
TDC 2014 - Trilha Mobile - Material design
Ā 
Android Design Integration
Android Design IntegrationAndroid Design Integration
Android Design Integration
Ā 
How to use the photoshop pen tool to edit e commerce images
How to use the photoshop pen tool to edit e commerce imagesHow to use the photoshop pen tool to edit e commerce images
How to use the photoshop pen tool to edit e commerce images
Ā 
Top Graphic Designing Hacks to Make You a Designing Pro Today
Top Graphic Designing Hacks to Make You a Designing Pro Today Top Graphic Designing Hacks to Make You a Designing Pro Today
Top Graphic Designing Hacks to Make You a Designing Pro Today
Ā 
Introduction to adobe Photoshop
Introduction to adobe PhotoshopIntroduction to adobe Photoshop
Introduction to adobe Photoshop
Ā 
Game Design 2: Lecture 10 - UI Layout
Game Design 2: Lecture 10 - UI LayoutGame Design 2: Lecture 10 - UI Layout
Game Design 2: Lecture 10 - UI Layout
Ā 

Viewers also liked

Enlightenment Foundation Libraries (Overview)
Enlightenment Foundation Libraries (Overview)Enlightenment Foundation Libraries (Overview)
Enlightenment Foundation Libraries (Overview)Samsung Open Source Group
Ā 
EFL: Scaling From the Embedded World to the Desktop
EFL: Scaling From the Embedded World to the DesktopEFL: Scaling From the Embedded World to the Desktop
EFL: Scaling From the Embedded World to the DesktopSamsung Open Source Group
Ā 
Enlightenment as Standalone Wayland Compositor
Enlightenment as Standalone Wayland CompositorEnlightenment as Standalone Wayland Compositor
Enlightenment as Standalone Wayland CompositorSamsung Open Source Group
Ā 
A Detailed Look at Cairo's OpenGL Spans Compositor Performance
A Detailed Look at Cairo's OpenGL Spans Compositor PerformanceA Detailed Look at Cairo's OpenGL Spans Compositor Performance
A Detailed Look at Cairo's OpenGL Spans Compositor PerformanceSamsung Open Source Group
Ā 
Gui application development guidelines
Gui application development guidelinesGui application development guidelines
Gui application development guidelinesLOUIS WAYNE
Ā 
Clang: More than just a C/C++ Compiler
Clang: More than just a C/C++ CompilerClang: More than just a C/C++ Compiler
Clang: More than just a C/C++ CompilerSamsung Open Source Group
Ā 
Use case diagram
Use case diagramUse case diagram
Use case diagramAre-u
Ā 
Activity diagram-UML diagram
Activity diagram-UML diagramActivity diagram-UML diagram
Activity diagram-UML diagramRamakant Soni
Ā 
Online shop system use case diagram report
Online shop system use case diagram reportOnline shop system use case diagram report
Online shop system use case diagram reportMahan Gheib Khah Mashak
Ā 
IoTivity for Automotive IoT Interoperability
IoTivity for Automotive IoT InteroperabilityIoTivity for Automotive IoT Interoperability
IoTivity for Automotive IoT InteroperabilitySamsung Open Source Group
Ā 
Online shopping system
Online shopping systemOnline shopping system
Online shopping systemNik_Panchal
Ā 
Online Shopping Presentation
Online Shopping PresentationOnline Shopping Presentation
Online Shopping Presentationamanda-schmid
Ā 
Online shopping report-6 month project
Online shopping report-6 month projectOnline shopping report-6 month project
Online shopping report-6 month projectGinne yoffe
Ā 
Activity Diagram
Activity DiagramActivity Diagram
Activity DiagramAshesh R
Ā 
Online shopping cart system file
Online shopping cart system fileOnline shopping cart system file
Online shopping cart system fileSunil Jaiswal
Ā 
Use Case Diagram
Use Case DiagramUse Case Diagram
Use Case DiagramAshesh R
Ā 
Online shopping presentation
Online shopping presentationOnline shopping presentation
Online shopping presentationpobr0702
Ā 

Viewers also liked (19)

Enlightenment Foundation Libraries (Overview)
Enlightenment Foundation Libraries (Overview)Enlightenment Foundation Libraries (Overview)
Enlightenment Foundation Libraries (Overview)
Ā 
Eo fosdem 15
Eo fosdem 15Eo fosdem 15
Eo fosdem 15
Ā 
EFL: Scaling From the Embedded World to the Desktop
EFL: Scaling From the Embedded World to the DesktopEFL: Scaling From the Embedded World to the Desktop
EFL: Scaling From the Embedded World to the Desktop
Ā 
Enlightenment as Standalone Wayland Compositor
Enlightenment as Standalone Wayland CompositorEnlightenment as Standalone Wayland Compositor
Enlightenment as Standalone Wayland Compositor
Ā 
A Detailed Look at Cairo's OpenGL Spans Compositor Performance
A Detailed Look at Cairo's OpenGL Spans Compositor PerformanceA Detailed Look at Cairo's OpenGL Spans Compositor Performance
A Detailed Look at Cairo's OpenGL Spans Compositor Performance
Ā 
Gui application development guidelines
Gui application development guidelinesGui application development guidelines
Gui application development guidelines
Ā 
Clang: More than just a C/C++ Compiler
Clang: More than just a C/C++ CompilerClang: More than just a C/C++ Compiler
Clang: More than just a C/C++ Compiler
Ā 
Use case diagram
Use case diagramUse case diagram
Use case diagram
Ā 
Activity diagram-UML diagram
Activity diagram-UML diagramActivity diagram-UML diagram
Activity diagram-UML diagram
Ā 
Online shop system use case diagram report
Online shop system use case diagram reportOnline shop system use case diagram report
Online shop system use case diagram report
Ā 
IoTivity for Automotive IoT Interoperability
IoTivity for Automotive IoT InteroperabilityIoTivity for Automotive IoT Interoperability
IoTivity for Automotive IoT Interoperability
Ā 
Use case-diagrams
Use case-diagramsUse case-diagrams
Use case-diagrams
Ā 
Online shopping system
Online shopping systemOnline shopping system
Online shopping system
Ā 
Online Shopping Presentation
Online Shopping PresentationOnline Shopping Presentation
Online Shopping Presentation
Ā 
Online shopping report-6 month project
Online shopping report-6 month projectOnline shopping report-6 month project
Online shopping report-6 month project
Ā 
Activity Diagram
Activity DiagramActivity Diagram
Activity Diagram
Ā 
Online shopping cart system file
Online shopping cart system fileOnline shopping cart system file
Online shopping cart system file
Ā 
Use Case Diagram
Use Case DiagramUse Case Diagram
Use Case Diagram
Ā 
Online shopping presentation
Online shopping presentationOnline shopping presentation
Online shopping presentation
Ā 

Similar to Application GUI Design

Application GUI Design - Notes from a Toolkit Developer
Application GUI Design - Notes from a Toolkit DeveloperApplication GUI Design - Notes from a Toolkit Developer
Application GUI Design - Notes from a Toolkit DeveloperSamsung Open Source Group
Ā 
How To Make Effective Presentation
How To Make Effective PresentationHow To Make Effective Presentation
How To Make Effective PresentationSalina Saharudin
Ā 
How To Make Effective Presentation
How To Make Effective PresentationHow To Make Effective Presentation
How To Make Effective Presentationdabinslc
Ā 
How to make effective presentation
How to make effective presentationHow to make effective presentation
How to make effective presentationSatyajeet Singh
Ā 
How To Make Effective Presentation(2)
How To Make Effective Presentation(2)How To Make Effective Presentation(2)
How To Make Effective Presentation(2)Landmark
Ā 
How To Make Effective Presentation 23836
How To Make Effective Presentation 23836How To Make Effective Presentation 23836
How To Make Effective Presentation 23836mjmartinezx
Ā 
How To Make Effective Presentation 23836
How To Make Effective Presentation 23836How To Make Effective Presentation 23836
How To Make Effective Presentation 23836pv_tavares
Ā 
7773153.ppt
7773153.ppt7773153.ppt
7773153.pptMFikri34
Ā 
UI UX Tips and Guidelines
UI UX Tips and GuidelinesUI UX Tips and Guidelines
UI UX Tips and GuidelinesMRD Official
Ā 
Persuading with Powerpoint
Persuading with PowerpointPersuading with Powerpoint
Persuading with PowerpointSeth Familian
Ā 
Delivering Effective Power Point Presentations
Delivering Effective Power Point PresentationsDelivering Effective Power Point Presentations
Delivering Effective Power Point PresentationsKhan Mohammad Mahmud Hasan
Ā 
Effective Powerpoint Presentations
Effective Powerpoint PresentationsEffective Powerpoint Presentations
Effective Powerpoint PresentationsGaurav Sawant
Ā 
Powerepoint effective presentation
Powerepoint effective presentationPowerepoint effective presentation
Powerepoint effective presentationBhim Upadhyaya
Ā 
Power point 2003 design principles v2009
Power point 2003 design principles v2009Power point 2003 design principles v2009
Power point 2003 design principles v2009914646279
Ā 
Effective Power Point
Effective Power PointEffective Power Point
Effective Power Pointguest45d3ba3
Ā 
Effective Power Point
Effective Power PointEffective Power Point
Effective Power Pointmroe
Ā 
Design for Accessibility
Design for AccessibilityDesign for Accessibility
Design for Accessibilityqixingz
Ā 
Powerpoint do's & don'ts
Powerpoint do's & don'tsPowerpoint do's & don'ts
Powerpoint do's & don'tssudarsansahu
Ā 

Similar to Application GUI Design (20)

Application GUI Design - Notes from a Toolkit Developer
Application GUI Design - Notes from a Toolkit DeveloperApplication GUI Design - Notes from a Toolkit Developer
Application GUI Design - Notes from a Toolkit Developer
Ā 
How To Make Effective Presentation
How To Make Effective PresentationHow To Make Effective Presentation
How To Make Effective Presentation
Ā 
How To Make an Executive Presentation 2011
How To Make an Executive Presentation 2011How To Make an Executive Presentation 2011
How To Make an Executive Presentation 2011
Ā 
How To Make Effective Presentation
How To Make Effective PresentationHow To Make Effective Presentation
How To Make Effective Presentation
Ā 
How to make effective presentation
How to make effective presentationHow to make effective presentation
How to make effective presentation
Ā 
How To Make Effective Presentation(2)
How To Make Effective Presentation(2)How To Make Effective Presentation(2)
How To Make Effective Presentation(2)
Ā 
How To Make Effective Presentation 23836
How To Make Effective Presentation 23836How To Make Effective Presentation 23836
How To Make Effective Presentation 23836
Ā 
How To Make Effective Presentation 23836
How To Make Effective Presentation 23836How To Make Effective Presentation 23836
How To Make Effective Presentation 23836
Ā 
7773153.ppt
7773153.ppt7773153.ppt
7773153.ppt
Ā 
UI UX Tips and Guidelines
UI UX Tips and GuidelinesUI UX Tips and Guidelines
UI UX Tips and Guidelines
Ā 
Visual aids
Visual aidsVisual aids
Visual aids
Ā 
Persuading with Powerpoint
Persuading with PowerpointPersuading with Powerpoint
Persuading with Powerpoint
Ā 
Delivering Effective Power Point Presentations
Delivering Effective Power Point PresentationsDelivering Effective Power Point Presentations
Delivering Effective Power Point Presentations
Ā 
Effective Powerpoint Presentations
Effective Powerpoint PresentationsEffective Powerpoint Presentations
Effective Powerpoint Presentations
Ā 
Powerepoint effective presentation
Powerepoint effective presentationPowerepoint effective presentation
Powerepoint effective presentation
Ā 
Power point 2003 design principles v2009
Power point 2003 design principles v2009Power point 2003 design principles v2009
Power point 2003 design principles v2009
Ā 
Effective Power Point
Effective Power PointEffective Power Point
Effective Power Point
Ā 
Effective Power Point
Effective Power PointEffective Power Point
Effective Power Point
Ā 
Design for Accessibility
Design for AccessibilityDesign for Accessibility
Design for Accessibility
Ā 
Powerpoint do's & don'ts
Powerpoint do's & don'tsPowerpoint do's & don'ts
Powerpoint do's & don'ts
Ā 

More from Samsung Open Source Group

The Complex IoT Equation (and FLOSS solutions)
The Complex IoT Equation (and FLOSS solutions)The Complex IoT Equation (and FLOSS solutions)
The Complex IoT Equation (and FLOSS solutions)Samsung Open Source Group
Ā 
Rapid SPi Device Driver Development over USB
Rapid SPi Device Driver Development over USBRapid SPi Device Driver Development over USB
Rapid SPi Device Driver Development over USBSamsung Open Source Group
Ā 
Tizen RT: A Lightweight RTOS Platform for Low-End IoT Devices
Tizen RT: A Lightweight RTOS Platform for Low-End IoT DevicesTizen RT: A Lightweight RTOS Platform for Low-End IoT Devices
Tizen RT: A Lightweight RTOS Platform for Low-End IoT DevicesSamsung Open Source Group
Ā 
IoTivity: Smart Home to Automotive and Beyond
IoTivity: Smart Home to Automotive and BeyondIoTivity: Smart Home to Automotive and Beyond
IoTivity: Smart Home to Automotive and BeyondSamsung Open Source Group
Ā 
IoTivity for Automotive: meta-ocf-automotive tutorial
IoTivity for Automotive: meta-ocf-automotive tutorialIoTivity for Automotive: meta-ocf-automotive tutorial
IoTivity for Automotive: meta-ocf-automotive tutorialSamsung Open Source Group
Ā 
Open Source Metrics to Inform Corporate Strategy
Open Source Metrics to Inform Corporate StrategyOpen Source Metrics to Inform Corporate Strategy
Open Source Metrics to Inform Corporate StrategySamsung Open Source Group
Ā 
JerryScript: An ultra-lighteweight JavaScript Engine for the Internet of Thin...
JerryScript: An ultra-lighteweight JavaScript Engine for the Internet of Thin...JerryScript: An ultra-lighteweight JavaScript Engine for the Internet of Thin...
JerryScript: An ultra-lighteweight JavaScript Engine for the Internet of Thin...Samsung Open Source Group
Ā 
Adding IEEE 802.15.4 and 6LoWPAN to an Embedded Linux Device
Adding IEEE 802.15.4 and 6LoWPAN to an Embedded Linux DeviceAdding IEEE 802.15.4 and 6LoWPAN to an Embedded Linux Device
Adding IEEE 802.15.4 and 6LoWPAN to an Embedded Linux DeviceSamsung Open Source Group
Ā 
IoT: From Arduino Microcontrollers to Tizen Products using IoTivity
IoT: From Arduino Microcontrollers to Tizen Products using IoTivityIoT: From Arduino Microcontrollers to Tizen Products using IoTivity
IoT: From Arduino Microcontrollers to Tizen Products using IoTivitySamsung Open Source Group
Ā 
Run Your Own 6LoWPAN Based IoT Network
Run Your Own 6LoWPAN Based IoT NetworkRun Your Own 6LoWPAN Based IoT Network
Run Your Own 6LoWPAN Based IoT NetworkSamsung Open Source Group
Ā 
Practical Guide to Run an IEEE 802.15.4 Network with 6LoWPAN Under Linux
Practical Guide to Run an IEEE 802.15.4 Network with 6LoWPAN Under LinuxPractical Guide to Run an IEEE 802.15.4 Network with 6LoWPAN Under Linux
Practical Guide to Run an IEEE 802.15.4 Network with 6LoWPAN Under LinuxSamsung Open Source Group
Ā 
IoTivity Tutorial: Prototyping IoT Devices on GNU/Linux
IoTivity Tutorial: Prototyping IoT Devices on GNU/LinuxIoTivity Tutorial: Prototyping IoT Devices on GNU/Linux
IoTivity Tutorial: Prototyping IoT Devices on GNU/LinuxSamsung Open Source Group
Ā 
JerryScript: An ultra-lighteweight JavaScript Engine for the Internet of Things
JerryScript: An ultra-lighteweight JavaScript Engine for the Internet of ThingsJerryScript: An ultra-lighteweight JavaScript Engine for the Internet of Things
JerryScript: An ultra-lighteweight JavaScript Engine for the Internet of ThingsSamsung Open Source Group
Ā 
Introduction to Linux-wpan and Potential Collaboration
Introduction to Linux-wpan and Potential CollaborationIntroduction to Linux-wpan and Potential Collaboration
Introduction to Linux-wpan and Potential CollaborationSamsung Open Source Group
Ā 

More from Samsung Open Source Group (20)

The Complex IoT Equation (and FLOSS solutions)
The Complex IoT Equation (and FLOSS solutions)The Complex IoT Equation (and FLOSS solutions)
The Complex IoT Equation (and FLOSS solutions)
Ā 
Easy IoT with JavaScript
Easy IoT with JavaScriptEasy IoT with JavaScript
Easy IoT with JavaScript
Ā 
Spawny: A New Approach to Logins
Spawny: A New Approach to LoginsSpawny: A New Approach to Logins
Spawny: A New Approach to Logins
Ā 
Rapid SPi Device Driver Development over USB
Rapid SPi Device Driver Development over USBRapid SPi Device Driver Development over USB
Rapid SPi Device Driver Development over USB
Ā 
Tizen RT: A Lightweight RTOS Platform for Low-End IoT Devices
Tizen RT: A Lightweight RTOS Platform for Low-End IoT DevicesTizen RT: A Lightweight RTOS Platform for Low-End IoT Devices
Tizen RT: A Lightweight RTOS Platform for Low-End IoT Devices
Ā 
IoTivity: Smart Home to Automotive and Beyond
IoTivity: Smart Home to Automotive and BeyondIoTivity: Smart Home to Automotive and Beyond
IoTivity: Smart Home to Automotive and Beyond
Ā 
IoTivity for Automotive: meta-ocf-automotive tutorial
IoTivity for Automotive: meta-ocf-automotive tutorialIoTivity for Automotive: meta-ocf-automotive tutorial
IoTivity for Automotive: meta-ocf-automotive tutorial
Ā 
GENIVI + OCF Cooperation
GENIVI + OCF CooperationGENIVI + OCF Cooperation
GENIVI + OCF Cooperation
Ā 
Framework for IoT Interoperability
Framework for IoT InteroperabilityFramework for IoT Interoperability
Framework for IoT Interoperability
Ā 
Open Source Metrics to Inform Corporate Strategy
Open Source Metrics to Inform Corporate StrategyOpen Source Metrics to Inform Corporate Strategy
Open Source Metrics to Inform Corporate Strategy
Ā 
JerryScript: An ultra-lighteweight JavaScript Engine for the Internet of Thin...
JerryScript: An ultra-lighteweight JavaScript Engine for the Internet of Thin...JerryScript: An ultra-lighteweight JavaScript Engine for the Internet of Thin...
JerryScript: An ultra-lighteweight JavaScript Engine for the Internet of Thin...
Ā 
Adding IEEE 802.15.4 and 6LoWPAN to an Embedded Linux Device
Adding IEEE 802.15.4 and 6LoWPAN to an Embedded Linux DeviceAdding IEEE 802.15.4 and 6LoWPAN to an Embedded Linux Device
Adding IEEE 802.15.4 and 6LoWPAN to an Embedded Linux Device
Ā 
IoTivity: From Devices to the Cloud
IoTivity: From Devices to the CloudIoTivity: From Devices to the Cloud
IoTivity: From Devices to the Cloud
Ā 
SOSCON 2016 JerryScript
SOSCON 2016 JerryScriptSOSCON 2016 JerryScript
SOSCON 2016 JerryScript
Ā 
IoT: From Arduino Microcontrollers to Tizen Products using IoTivity
IoT: From Arduino Microcontrollers to Tizen Products using IoTivityIoT: From Arduino Microcontrollers to Tizen Products using IoTivity
IoT: From Arduino Microcontrollers to Tizen Products using IoTivity
Ā 
Run Your Own 6LoWPAN Based IoT Network
Run Your Own 6LoWPAN Based IoT NetworkRun Your Own 6LoWPAN Based IoT Network
Run Your Own 6LoWPAN Based IoT Network
Ā 
Practical Guide to Run an IEEE 802.15.4 Network with 6LoWPAN Under Linux
Practical Guide to Run an IEEE 802.15.4 Network with 6LoWPAN Under LinuxPractical Guide to Run an IEEE 802.15.4 Network with 6LoWPAN Under Linux
Practical Guide to Run an IEEE 802.15.4 Network with 6LoWPAN Under Linux
Ā 
IoTivity Tutorial: Prototyping IoT Devices on GNU/Linux
IoTivity Tutorial: Prototyping IoT Devices on GNU/LinuxIoTivity Tutorial: Prototyping IoT Devices on GNU/Linux
IoTivity Tutorial: Prototyping IoT Devices on GNU/Linux
Ā 
JerryScript: An ultra-lighteweight JavaScript Engine for the Internet of Things
JerryScript: An ultra-lighteweight JavaScript Engine for the Internet of ThingsJerryScript: An ultra-lighteweight JavaScript Engine for the Internet of Things
JerryScript: An ultra-lighteweight JavaScript Engine for the Internet of Things
Ā 
Introduction to Linux-wpan and Potential Collaboration
Introduction to Linux-wpan and Potential CollaborationIntroduction to Linux-wpan and Potential Collaboration
Introduction to Linux-wpan and Potential Collaboration
Ā 

Recently uploaded

Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer DataAdobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer DataBradBedford3
Ā 
chapter--4-software-project-planning.ppt
chapter--4-software-project-planning.pptchapter--4-software-project-planning.ppt
chapter--4-software-project-planning.pptkotipi9215
Ā 
Unlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language ModelsUnlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language Modelsaagamshah0812
Ā 
Cloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStackCloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStackVICTOR MAESTRE RAMIREZ
Ā 
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdf
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdfThe Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdf
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdfkalichargn70th171
Ā 
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASEBATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASEOrtus Solutions, Corp
Ā 
Unit 1.1 Excite Part 1, class 9, cbse...
Unit 1.1 Excite Part 1, class 9, cbse...Unit 1.1 Excite Part 1, class 9, cbse...
Unit 1.1 Excite Part 1, class 9, cbse...aditisharan08
Ā 
Introduction to Decentralized Applications (dApps)
Introduction to Decentralized Applications (dApps)Introduction to Decentralized Applications (dApps)
Introduction to Decentralized Applications (dApps)Intelisync
Ā 
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...MyIntelliSource, Inc.
Ā 
Asset Management Software - Infographic
Asset Management Software - InfographicAsset Management Software - Infographic
Asset Management Software - InfographicHr365.us smith
Ā 
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfThe Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfkalichargn70th171
Ā 
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfLearn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfkalichargn70th171
Ā 
TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providermohitmore19
Ā 
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...ICS
Ā 
Building Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
Building Real-Time Data Pipelines: Stream & Batch Processing workshop SlideBuilding Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
Building Real-Time Data Pipelines: Stream & Batch Processing workshop SlideChristina Lin
Ā 
5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdfWave PLM
Ā 
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...harshavardhanraghave
Ā 
Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...OnePlan Solutions
Ā 

Recently uploaded (20)

Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer DataAdobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Ā 
chapter--4-software-project-planning.ppt
chapter--4-software-project-planning.pptchapter--4-software-project-planning.ppt
chapter--4-software-project-planning.ppt
Ā 
Unlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language ModelsUnlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language Models
Ā 
Cloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStackCloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStack
Ā 
Call Girls In Mukherjee Nagar šŸ“± 9999965857 šŸ¤© Delhi šŸ«¦ HOT AND SEXY VVIP šŸŽ SE...
Call Girls In Mukherjee Nagar šŸ“±  9999965857  šŸ¤© Delhi šŸ«¦ HOT AND SEXY VVIP šŸŽ SE...Call Girls In Mukherjee Nagar šŸ“±  9999965857  šŸ¤© Delhi šŸ«¦ HOT AND SEXY VVIP šŸŽ SE...
Call Girls In Mukherjee Nagar šŸ“± 9999965857 šŸ¤© Delhi šŸ«¦ HOT AND SEXY VVIP šŸŽ SE...
Ā 
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdf
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdfThe Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdf
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdf
Ā 
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASEBATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
Ā 
Unit 1.1 Excite Part 1, class 9, cbse...
Unit 1.1 Excite Part 1, class 9, cbse...Unit 1.1 Excite Part 1, class 9, cbse...
Unit 1.1 Excite Part 1, class 9, cbse...
Ā 
Introduction to Decentralized Applications (dApps)
Introduction to Decentralized Applications (dApps)Introduction to Decentralized Applications (dApps)
Introduction to Decentralized Applications (dApps)
Ā 
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Ā 
Asset Management Software - Infographic
Asset Management Software - InfographicAsset Management Software - Infographic
Asset Management Software - Infographic
Ā 
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfThe Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
Ā 
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfLearn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Ā 
TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service provider
Ā 
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
Ā 
Building Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
Building Real-Time Data Pipelines: Stream & Batch Processing workshop SlideBuilding Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
Building Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
Ā 
5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf
Ā 
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Ā 
Exploring iOS App Development: Simplifying the Process
Exploring iOS App Development: Simplifying the ProcessExploring iOS App Development: Simplifying the Process
Exploring iOS App Development: Simplifying the Process
Ā 
Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...
Ā 

Application GUI Design

  • 1. Application GUI Design Notes From a Tizen Toolkit Developer Tom Hacohen Samsung Electronics Open Source Group tom@osg.samsung.com @TomHacohen
  • 2. What does it do? Essential features
  • 3. What does it do? Essential features Nice to have features
  • 4. What does it do? Essential features Nice to have features Niche features (<1% of the users)
  • 5. What does it do? Essential features Nice to have features Niche features (<1% of the users) Remove all the non-essential features
  • 6. Who is it for? CLI power users? Designers?
  • 7. Who is it for? CLI power users? Designers? Target environment
  • 8. Who is it for? CLI power users? Designers? Target environment Common demographics
  • 9. Who is it for? CLI power users? Designers? Target environment Common demographics Application speciļ¬c classiļ¬cations
  • 10. Who is it for? CLI power users? Designers? Target environment Common demographics Application speciļ¬c classiļ¬cations Userbase = you
  • 11. KISS Adapt feature list according to your audience
  • 12. KISS Adapt feature list according to your audience Keep focus on the more important features
  • 13. KISS Adapt feature list according to your audience Keep focus on the more important features Avoid creating complex UIs
  • 14. KISS Adapt feature list according to your audience Keep focus on the more important features Avoid creating complex UIs Keep option lists (combo box) short, simple and in a sensible order
  • 15. Have a rough sketch Make a general storyboard sketch
  • 16. Have a rough sketch Make a general storyboard sketch Have all the major interactions and features there
  • 17. Have a rough sketch Make a general storyboard sketch Have all the major interactions and features there Can be really rough ā€“ itā€™s more about the purpose of the ā€œpagesā€
  • 18. Have a rough sketch Make a general storyboard sketch Have all the major interactions and features there Can be really rough ā€“ itā€™s more about the purpose of the ā€œpagesā€
  • 19. Have a rough sketch Make a general storyboard sketch Have all the major interactions and features there Can be really rough ā€“ itā€™s more about the purpose of the ā€œpagesā€
  • 20. Stick to the basics Donā€™t bother with colour ā€“ harder and will be added later
  • 21. Stick to the basics Donā€™t bother with colour ā€“ harder and will be added later Do not customise available widgets/patterns unless there really is no other way
  • 22. Stick to the basics Donā€™t bother with colour ā€“ harder and will be added later Do not customise available widgets/patterns unless there really is no other way Develop it around the content ā€“ content is king
  • 23. I meant it! KISS. . . Be purposefully simple
  • 24. I meant it! KISS. . . Be purposefully simple Skeuomorphs are almost always bad
  • 25. I meant it! KISS. . . Be purposefully simple Skeuomorphs are almost always bad Be consistent (easier when simple)
  • 26. I meant it! KISS. . . Be purposefully simple Skeuomorphs are almost always bad Be consistent (easier when simple) Make it simple for your users ā€“ donā€™t create new usage patterns, and adhere to common ones
  • 27. I meant it! KISS. . . Be purposefully simple Skeuomorphs are almost always bad Be consistent (easier when simple) Make it simple for your users ā€“ donā€™t create new usage patterns, and adhere to common ones Common (all?) usage patterns should be easily available
  • 28. I meant it! KISS. . . Be purposefully simple Skeuomorphs are almost always bad Be consistent (easier when simple) Make it simple for your users ā€“ donā€™t create new usage patterns, and adhere to common ones Common (all?) usage patterns should be easily available Rest should be revealed as needed
  • 29. I meant it! KISS. . . Be purposefully simple Skeuomorphs are almost always bad Be consistent (easier when simple) Make it simple for your users ā€“ donā€™t create new usage patterns, and adhere to common ones Common (all?) usage patterns should be easily available Rest should be revealed as needed Make self-documenting applications
  • 30. Spacing Choose a baseline unit size (e.g. 8px)
  • 31. Spacing Choose a baseline unit size (e.g. 8px) Align everything to that baseline size
  • 32. Spacing Choose a baseline unit size (e.g. 8px) Align everything to that baseline size Use a small set of spacing alternatives (e.g. 2, 3 and 6 units)
  • 33. Spacing Choose a baseline unit size (e.g. 8px) Align everything to that baseline size Use a small set of spacing alternatives (e.g. 2, 3 and 6 units) Make sure touch-targets are spaced enough
  • 34. Spacing Choose a baseline unit size (e.g. 8px) Align everything to that baseline size Use a small set of spacing alternatives (e.g. 2, 3 and 6 units) Make sure touch-targets are spaced enough Counter example
  • 35. Spacing Choose a baseline unit size (e.g. 8px) Align everything to that baseline size Use a small set of spacing alternatives (e.g. 2, 3 and 6 units) Make sure touch-targets are spaced enough Counter example Be generous, but donā€™t overdo it (donā€™t waste my screen estate)
  • 36. Spacing Choose a baseline unit size (e.g. 8px) Align everything to that baseline size Use a small set of spacing alternatives (e.g. 2, 3 and 6 units) Make sure touch-targets are spaced enough Counter example Be generous, but donā€™t overdo it (donā€™t waste my screen estate) Counter example
  • 37. Spacing Choose a baseline unit size (e.g. 8px) Align everything to that baseline size Use a small set of spacing alternatives (e.g. 2, 3 and 6 units) Make sure touch-targets are spaced enough Counter example Be generous, but donā€™t overdo it (donā€™t waste my screen estate) Counter example Give back space when possible
  • 38. Organization Content should be at the front of the stage
  • 39. Organization Content should be at the front of the stage Important functionality in key positions
  • 40. Organization Content should be at the front of the stage Important functionality in key positions Make the hierarchy of information clear
  • 41. Organization Content should be at the front of the stage Important functionality in key positions Make the hierarchy of information clear Associate related elements
  • 42. Organization Content should be at the front of the stage Important functionality in key positions Make the hierarchy of information clear Associate related elements Help directing the userā€™s focus
  • 43. Icons and images Use known icons on buttons
  • 44. Icons and images Use known icons on buttons Donā€™t use a known icon for something other than intended
  • 45. Icons and images Use known icons on buttons Donā€™t use a known icon for something other than intended Use rich graphics when appropriate (cover-art, mood graphics, etc.)
  • 46. Icons and images Use known icons on buttons Donā€™t use a known icon for something other than intended Use rich graphics when appropriate (cover-art, mood graphics, etc.) Donā€™t overshadow content
  • 47. Icons and images Use known icons on buttons Donā€™t use a known icon for something other than intended Use rich graphics when appropriate (cover-art, mood graphics, etc.) Donā€™t overshadow content Donā€™t use ugly graphics
  • 48. Icons and images Use known icons on buttons Donā€™t use a known icon for something other than intended Use rich graphics when appropriate (cover-art, mood graphics, etc.) Donā€™t overshadow content Donā€™t use ugly graphics Have consistent sizing
  • 49. Typography Use a readable font size Text should be big and readable for everyone
  • 50. Typography Use a readable font size Space up your text
  • 51. Typography Use a readable font size Space up your text Use text attributes (e.g. bold and size) to make text more or less prominent
  • 52. Typography Use a readable font size Space up your text Use text attributes (e.g. bold and size) to make text more or less prominent Use a small set of fonts (probably one)
  • 53. Overlaying text on images Just put it on (bad)
  • 54. Overlaying text on images Just put it on (bad) Black/colour/white-wash the whole image to make text readable
  • 55. Overlaying text on images Just put it on (bad) Black/colour/white-wash the whole image to make text readable Add translucent background to the text
  • 56. Overlaying text on images Just put it on (bad) Black/colour/white-wash the whole image to make text readable Add translucent background to the text Add a translucent gradient (i.e. partial black/white-wash) so your text area is handled
  • 57. Overlaying text on images Just put it on (bad) Black/colour/white-wash the whole image to make text readable Add translucent background to the text Add a translucent gradient (i.e. partial black/white-wash) so your text area is handled Use a big font with a shadow and on outline
  • 58. Colour Option 1 (easier): keep the interface b&w and use colour to direct focus
  • 59. Colour Option 1 (easier): keep the interface b&w and use colour to direct focus Option 2: Choose a palette of 2 diļ¬€erent hues and use diļ¬€erent shades
  • 60. Colour Option 1 (easier): keep the interface b&w and use colour to direct focus Option 2: Choose a palette of 2 diļ¬€erent hues and use diļ¬€erent shades I almost always tint my greys (and not use black)
  • 61. Colour Option 1 (easier): keep the interface b&w and use colour to direct focus Option 2: Choose a palette of 2 diļ¬€erent hues and use diļ¬€erent shades I almost always tint my greys (and not use black) Find a good palette online
  • 62. Colour Option 1 (easier): keep the interface b&w and use colour to direct focus Option 2: Choose a palette of 2 diļ¬€erent hues and use diļ¬€erent shades I almost always tint my greys (and not use black) Find a good palette online Use HSL/HSV rather RGB when choosing colours
  • 63. Colour Option 1 (easier): keep the interface b&w and use colour to direct focus Option 2: Choose a palette of 2 diļ¬€erent hues and use diļ¬€erent shades I almost always tint my greys (and not use black) Find a good palette online Use HSL/HSV rather RGB when choosing colours Be aware of cultural diļ¬€erences
  • 64. Mimic what works Compare to other applications you/users like better using what weā€™ve covered
  • 65. Mimic what works Compare to other applications you/users like better using what weā€™ve covered Mimic whatā€™s good there (e.g. do you need more spacing?)
  • 66. Mimic what works Compare to other applications you/users like better using what weā€™ve covered Mimic whatā€™s good there (e.g. do you need more spacing?) Itā€™s usually easier to mimic than to design from scratch
  • 67. Mimic what works Compare to other applications you/users like better using what weā€™ve covered Mimic whatā€™s good there (e.g. do you need more spacing?) Itā€™s usually easier to mimic than to design from scratch Donā€™t mimic the bad things (i.e. use them as excuse)
  • 68. Mimic what works Compare to other applications you/users like better using what weā€™ve covered Mimic whatā€™s good there (e.g. do you need more spacing?) Itā€™s usually easier to mimic than to design from scratch Donā€™t mimic the bad things (i.e. use them as excuse) Donā€™t copy, learn. . .
  • 69. User experience tips Consistent behaviour (with the platform and within the application)
  • 70. User experience tips Consistent behaviour (with the platform and within the application) Start instantly and lazy load in the background
  • 71. User experience tips Consistent behaviour (with the platform and within the application) Start instantly and lazy load in the background Everything should take a small amount of clicks
  • 72. User experience tips Consistent behaviour (with the platform and within the application) Start instantly and lazy load in the background Everything should take a small amount of clicks Discoverable UI (easy to ļ¬gure out how to do things)
  • 73. More user experience tips Make it hard to make mistakes
  • 74. More user experience tips Make it hard to make mistakes Counter example
  • 75. More user experience tips Make it hard to make mistakes Counter example Avoid interruptions
  • 76. More user experience tips Make it hard to make mistakes Counter example Avoid interruptions Sort long lists in a predictable, sensible order
  • 77. More user experience tips Make it hard to make mistakes Counter example Avoid interruptions Sort long lists in a predictable, sensible order If your users do something and expect something to happen, it probably should happen
  • 78. Material design (Google) Highly talked about cross device design guidelines
  • 79. Material design (Google) Highly talked about cross device design guidelines A fairly good Android adoption rate
  • 80. Material design (Google) Highly talked about cross device design guidelines A fairly good Android adoption rate I personally donā€™t like animations that slow users down
  • 81. Material design (Google) Highly talked about cross device design guidelines A fairly good Android adoption rate I personally donā€™t like animations that slow users down Concepts are good, itā€™s implementations that are not always good
  • 82. Material design (Google) Highly talked about cross device design guidelines A fairly good Android adoption rate I personally donā€™t like animations that slow users down Concepts are good, itā€™s implementations that are not always good It doesnā€™t feel like they care about low-end and power consumption
  • 83. iOS (Apple) Old style: horrible skeuomorphism
  • 84. iOS (Apple) Old style: horrible skeuomorphism New style: very simple and clean, sometimes confusing
  • 85. iOS (Apple) Old style: horrible skeuomorphism New style: very simple and clean, sometimes confusing Flat and easy to theme
  • 86. iOS (Apple) Old style: horrible skeuomorphism New style: very simple and clean, sometimes confusing Flat and easy to theme Usually not very discoverable
  • 87. iOS (Apple) Old style: horrible skeuomorphism New style: very simple and clean, sometimes confusing Flat and easy to theme Usually not very discoverable Good general guidelines
  • 88. Tizen Designed for low resolution devices
  • 89. Tizen Designed for low resolution devices Focus on content and user needs
  • 90. Tizen Designed for low resolution devices Focus on content and user needs Frugal with screen estate
  • 91. Tizen Designed for low resolution devices Focus on content and user needs Frugal with screen estate Tries to make applications consistent (encourages a ļ¬xed colour theme)
  • 92. Tizen Designed for low resolution devices Focus on content and user needs Frugal with screen estate Tries to make applications consistent (encourages a ļ¬xed colour theme) Make interaction simple and easy
  • 93. Tizen Designed for low resolution devices Focus on content and user needs Frugal with screen estate Tries to make applications consistent (encourages a ļ¬xed colour theme) Make interaction simple and easy Aims to support user customisation
  • 94. Tizen Designed for low resolution devices Focus on content and user needs Frugal with screen estate Tries to make applications consistent (encourages a ļ¬xed colour theme) Make interaction simple and easy Aims to support user customisation Flat and ā€œfunā€ design
  • 95. Know your toolkit Trying to pixel match a design across toolkits is a bad idea
  • 96. Know your toolkit Trying to pixel match a design across toolkits is a bad idea Know what takes a performance hit on your toolkit
  • 97. Know your toolkit Trying to pixel match a design across toolkits is a bad idea Know what takes a performance hit on your toolkit Check out the toolkitā€™s common patterns, those are usually best for performance and users
  • 98. Easy takeaways Itā€™s like API design, it should be simple, self-documenting, consistent and have a familiar feeling
  • 99. Easy takeaways Itā€™s like API design, it should be simple, self-documenting, consistent and have a familiar feeling Start with black and white, donā€™t colour unless you need it
  • 100. Easy takeaways Itā€™s like API design, it should be simple, self-documenting, consistent and have a familiar feeling Start with black and white, donā€™t colour unless you need it Saturate your greys and almost never use black
  • 101. Easy takeaways Itā€™s like API design, it should be simple, self-documenting, consistent and have a familiar feeling Start with black and white, donā€™t colour unless you need it Saturate your greys and almost never use black Add spacing and make your text bigger
  • 102. Easy takeaways Itā€™s like API design, it should be simple, self-documenting, consistent and have a familiar feeling Start with black and white, donā€™t colour unless you need it Saturate your greys and almost never use black Add spacing and make your text bigger Use common patterns (and take inspiration from the best)
  • 103. Easy takeaways Itā€™s like API design, it should be simple, self-documenting, consistent and have a familiar feeling Start with black and white, donā€™t colour unless you need it Saturate your greys and almost never use black Add spacing and make your text bigger Use common patterns (and take inspiration from the best) Pay the design some thought (from the start)
  • 104. Easy takeaways Itā€™s like API design, it should be simple, self-documenting, consistent and have a familiar feeling Start with black and white, donā€™t colour unless you need it Saturate your greys and almost never use black Add spacing and make your text bigger Use common patterns (and take inspiration from the best) Pay the design some thought (from the start) KISS
  • 106. Page 11, flight-deck.jpg Page 15, twitter-sketch.jpg Page 23, purposefully-simple.png Page ??, skeuomorph.jpg Page ??, self-documenting.png Page ??, layout-baseline-align.png Page ??, layout-spacing-alternatives.png Page 58, direct-attention.png
  • 107. Page ??, imagery-mood.png Page ??, bad-blurry.png Page ??, multiple-fonts.png Page 53, text-overlay-bad.jpg Page ??, two-colours.png Page ??, palette.png Page ??, colour-culture.jpg Page ??, colour-culture.jpg Page 73, repo-delete-confirmation.png Page ??, interrupt-programmer.jpg Page 78, material.png Page 83, ios6v7.jpg Page 88, tizen.png Page ??, info-hierarchy.png