R.I.T S. Ludi/R. Kuehl p. 1 R I T Software Engineering How Do We - - PowerPoint PPT Presentation

r i t
SMART_READER_LITE
LIVE PREVIEW

R.I.T S. Ludi/R. Kuehl p. 1 R I T Software Engineering How Do We - - PowerPoint PPT Presentation

Website Design Small Screen Design Responsive Design R.I.T S. Ludi/R. Kuehl p. 1 R I T Software Engineering How Do We Really Use the Web? Do users carefully read or scan and click ? Facts of life: We dont read pages, we scan


slide-1
SLIDE 1
  • S. Ludi/R. Kuehl
  • p. 1

R I T

Software Engineering

R.I.T

Website Design Small Screen Design Responsive Design

slide-2
SLIDE 2
  • S. Ludi/R. Kuehl
  • p. 2

R I T

Software Engineering

R.I.T

 Do users carefully read or scan and click?  Facts of life:

 We don’t read pages, we scan them  We don’t make optimal choices, we choose the first reasonable option

  • Little downside for wrong guesses

 We muddle through without always understanding how things work

How Do We Really Use the Web?

slide-3
SLIDE 3
  • S. Ludi/R. Kuehl
  • p. 3

R I T

Software Engineering

R.I.T

 Browsing

 Versus the real world – no sense of scale, direction, or location

 Searching - users are really not that good at forming effective queries  So help the user find the desired page

 Auto complete  Auto suggest to disambiguate  Suggest keywords

Browse or Search?

slide-4
SLIDE 4
  • S. Ludi/R. Kuehl
  • p. 4

R I T

Software Engineering

R.I.T

 Informational sites:

 Balance display density of useful information with learnability for infrequent users  Full screen content with good page navigation

 Transactional sites

 Properties of informational sites plus functional behaviors  Efficient structured navigation based on an “information architecture” page content organization

 Web application sites:

 Desktop-like more complex applications  “Views” more than “pages” – not a “document” metaphor  Asynchronous server communications

Site Evolution

slide-5
SLIDE 5
  • S. Ludi/R. Kuehl
  • p. 5

R I T

Software Engineering

R.I.T

Current landscape …  HTML5 + CSS3 + JavaScript to build a wide array of sophisticated “rich Internet applications”  Reusable GitHub based open source UI components; e.g., Bootstrap, jQuery  Modern browsers efficiently process HTML and JavaScript  Widely accepted design conventions and patterns have evolved

 Good foundational design principles still apply!

Designing for the Web

W3Schools Web Tutorials

slide-6
SLIDE 6
  • S. Ludi/R. Kuehl
  • p. 6

R I T

Software Engineering

R.I.T

Some Web Design Guidelines

Home Page Page Layout Navigation Information Presentation

  • Sites value and

purpose

  • Positive first

impression

  • Limit to one

screen

  • Keep it simple
  • Access to site’s

major features

  • Consistent

grid – visual hierarchy, element alignment

  • Header and

footer boundaries

  • Page navigation supports

associative information architecture

  • Primary(global) sections at top,

secondary(local) on left, “utilities” at bottom

  • A way to search
  • Page and link names match
  • Navigation markers (e.g.,

breadcrumbs)

  • No dead end pages
  • List of contents for long scrollable

pages

  • Good link affordances
  • Simple

background images for readability

  • Distinguish

important images from aesthetics

  • Have clear

and useful reasons for using multimedia

slide-7
SLIDE 7
  • S. Ludi/R. Kuehl
  • p. 7

R I T

Software Engineering

R.I.T

Typical Page Layout

Site ID Local Navigation Search Page Name Sections

slide-8
SLIDE 8
  • S. Ludi/R. Kuehl
  • p. 8

R I T

Software Engineering

R.I.T

 What are they – single [long] scrollable page with associated client side code for server side data access  More appropriate for smaller sites  Claim is simpler user navigation and understanding, simpler design, deployment, and maintenance  However …

 May be more complex – e.g., may have to duplicate in code existing browser services such as history for back button refresh  May be performance tradeoffs – initial load latency, variable client performance  More code means more opportunity for bugs  Less effective search engine optimization

Single Page Web APPs

slide-9
SLIDE 9
  • S. Ludi/R. Kuehl
  • p. 9

R I T

Software Engineering

R.I.T

Usability and Small Screens

SE444

slide-10
SLIDE 10
  • S. Ludi/R. Kuehl
  • p. 10

R I T

Software Engineering

R.I.T

iPhone Android

slide-11
SLIDE 11
  • S. Ludi/R. Kuehl
  • p. 11

R I T

Software Engineering

R.I.T

“The phrase ‘mobile usability’ is pretty much an oxymoron. It's neither easy nor pleasant to use the Web on mobile devices.” “designing for mobile is hard” “It’s not enough that a site will display, can the user get things done?”

Jacob Nielsen, useit website

slide-12
SLIDE 12
  • S. Ludi/R. Kuehl
  • p. 12

R I T

Software Engineering

R.I.T

 We will focus on consumer mobile devices such as smartphones and tablets  However, there is another large category of embedded devices to be considered as well  Design guidelines apply equally to those devices with more constraints such as safety

Small Screens

GPS Digital Camera Airplane Control

slide-13
SLIDE 13
  • S. Ludi/R. Kuehl
  • p. 13

R I T

Software Engineering

R.I.T

 Small screens (inherent)  Awkward input (“fat finger syndrome”)  Network performance and reliability, especially for downloads (but getting better)  Mis-designed websites – designed for the desktop just makes it worse (but getting better)

Mobile Usability Problems (Opportunities)

slide-14
SLIDE 14
  • S. Ludi/R. Kuehl
  • p. 14

R I T

Software Engineering

R.I.T

Small Screen Design Guidelines

Screen Layout Navigation Information Presentation

  • To preserve screen real

estate …

  • Use transparency; e.g.,

widgets

  • Vertical or horizontal

screen navigation

  • Use images sparingly
  • Minimize use of

footers, breadcrumbs, progress indicators, menu bars

  • Most frequently used

controls at bottom

  • Consider the physical feel –

ergonomics,

  • The use of the (one) hand –

fingers

  • Finger tip target size guides

(e.g., iPhone 44 pixels)

  • Limit navigational hierarchy,

especially global to contextual transition

  • Apply Fitt’s Law: large
  • bjects for navigation (touch)

versus hypertext

  • Apply screen layout design

patterns; E.g….

  • Carousels
  • Stacks
  • Lists
  • ….
  • Rapid serial presentation of

text, important information first (progressive disclosure);

  • Minimize extended scrolling
  • r paging
  • Optimize
  • 14pt fonts
  • Organize text with

headings

  • Minimize search to avoid

complex data entry (voice

  • kay)
slide-15
SLIDE 15
  • S. Ludi/R. Kuehl
  • p. 15

R I T

Software Engineering

R.I.T

Responsive Design for Web Applications

slide-16
SLIDE 16
  • S. Ludi/R. Kuehl
  • p. 16

R I T

Software Engineering

R.I.T

 Mobile web access is ubiquitous  One interface design does not fit all screens for optimal user interaction

 Mobile users may have different needs from desktop users

 So why not make designs flexible to dynamically match the screen environment?

What is the Problem?

slide-17
SLIDE 17
  • S. Ludi/R. Kuehl
  • p. 17

R I T

Software Engineering

R.I.T

 Web App

 Develop once, lower support costs  Cross device platform support  Dependent on a network connection  May be functional limitations

 Native app

 More expensive to develop and support  Not portable  Better performance and security  Use local hardware  Better UX?  App store distribution

 Hybrid app? Native app accesses website data

Web App vs. Native App?

slide-18
SLIDE 18
  • S. Ludi/R. Kuehl
  • p. 18

R I T

Software Engineering

R.I.T

 Create a single website that works effectively

  • n the desktop as well as mobile devices

 Responsive websites reorganize themselves automatically according to the device displaying them

 Desktops/laptops get the full experience – video, images, animation  Smartphones get a simplified experience that works quickly – app-like  Tablets – something in between

Responsive Web Design

slide-19
SLIDE 19
  • S. Ludi/R. Kuehl
  • p. 19

R I T

Software Engineering

R.I.T

 More than altering the layout based on viewport* size  Invert the process of web design

 Design for the smallest viewport first  Progressively enhance the design and content for larger viewports

* Viewport is display area versus physical screen size

Responsive Web Design

slide-20
SLIDE 20
  • S. Ludi/R. Kuehl
  • p. 20

R I T

Software Engineering

R.I.T

Responsive Design Example

iPhone iPad Desktop browser

http://www.andthewinnerisnt.com/ Check out the CSS File – look for @media

slide-21
SLIDE 21
  • S. Ludi/R. Kuehl
  • p. 21

R I T

Software Engineering

R.I.T

Responsive Design Guidelines

Group similar devices by screen size/media type to establish target size “breakpoints” for design For each media type, identify unique properties and shared properties that will vary by value (e.g. font size) Design adaptive layouts – e.g., large menu bar on the desktop, dropdown menu on smartphone Use “fluid grids” - proportional layouts scaled by screen dimensions (scale factor) Tailor the amount and type of content by screen size Use CSS3 (@media query) and HTML5 encoding

slide-22
SLIDE 22
  • S. Ludi/R. Kuehl
  • p. 22

R I T

Software Engineering

R.I.T

 CSS3 “@media” query – query “screen” as media type with screen properties such as size and resolution

 All following style sheet rules apply to that media type  Substitute different layout commands or a tailored CSS file  Scale to match device screen resolution and size  Transform screen layout – e.g., number of columns of content  Adjust object size such as for links (Fitt’s Law)  Adjust typography – e.g., font size, line width and length

Cascading Style Sheet (CSS) Media Queries

@media print { body { font-size: 10pt } } @media screen { body { font-size: 13px } } @media screen, print { body { line-height: 1.2 }

https://www.w3schools.com/css/css3_mediaqueries.asp

slide-23
SLIDE 23
  • S. Ludi/R. Kuehl
  • p. 23

R I T

Software Engineering

R.I.T

 @Media rule. What happens?

CSS Media Query Example

slide-24
SLIDE 24
  • S. Ludi/R. Kuehl
  • p. 24

R I T

Software Engineering

R.I.T

Smartphones Portrait and Landscape @media only screen and (min-device-width : 320px) and (max-device-width : 480px) { ... } Landscape @media only screen and (min-width : 321px) { ... } Portrait @media only screen and (max-width : 320px) { ... } Tablets, Surfaces, iPads Portrait and landscape @media only screen and (min-device-width : 768px) and (max-device-width : 1024px) { ... } Landscape @media only screen and (min-device-width : 768px) and (max-device-width : 1024px) and (orientation : landscape) { ... } Portrait @media only screen and (min-device-width : 768px) and (max-device-width : 1024px) and (orientation : portrait) { ... }} Desktops, laptops, larger screens @media only screen and (min-width : 1224px) { ... } Large screen @media only screen and (min-width : 1824px) { ... }

CSS Media Queries for Popular Form Factors

slide-25
SLIDE 25
  • S. Ludi/R. Kuehl
  • p. 25

R I T

Software Engineering

R.I.T

 Graceful degradation – design for modern browsers but assure a useful experience on older browsers  Progressive enhancement – start with standard markup for all browsers and enhance the experience for more capable browsers – recommended

 Modernizr – open source JavaScript library that feature tests a browser’s capabilities  Polyfill – downloadable code that provides capabilities missing from the native browser (e.g., HTML5 features)

Gotcha – Cross Browser

Compatibility and/or Obsolescence

slide-26
SLIDE 26
  • S. Ludi/R. Kuehl
  • p. 26

R I T

Software Engineering

R.I.T

 “Research-Based Web Design & Usability Guidelines”, U.S. Department of Health and Human Services; www.usability.gov  “Don’t Make Me Think”, Steve Krug  “Designing for Conversion; Evaluating decision making through HFI’s PET DesignTM”, Mona Patel  “About Face”, Cooper, Reimann

Web App References

slide-27
SLIDE 27
  • S. Ludi/R. Kuehl
  • p. 27

R I T

Software Engineering

R.I.T

 Lari Kärkkäinen and Jari Laarni, ”Designing for Small Display Screens”, NordiCHI, October 19- 23, 2002  uxmatters.com: Usability for Mobile Devices  Josh Clark, Tapworthy – Designing Great iPhone Apps, O’Reilly Media, 2010  Alan Cooper, Robert Reimann, et al, “About Face”, Wiley, 2014

Mobil App References

slide-28
SLIDE 28
  • S. Ludi/R. Kuehl
  • p. 28

R I T

Software Engineering

R.I.T

 Marcotte, Ethan (May 25, 2010). "Responsive web design". A List Apart  Foster, Aidan. http://responsivedesign.ca/blog/responsive-web- design-what-is-it-and-why-should-i-care  Frain, Ben, Responsive Web Design with HTML5 and CSS3 (eBook)

Responsive Design References