1 / 27

Responsiveness Bloopers

Responsiveness Bloopers. BJ Hardage & Isaac Bailey. Responsiveness Bloopers. BJ Hardage & Isaac Bailey. Responsiveness Bloopers. BJ Hardage & Isaac Bailey. Responsiveness Bloopers. BJ Hardage & Isaac Bailey. Responsiveness Bloopers. BJ Hardage & Isaac Bailey.

jael
Download Presentation

Responsiveness Bloopers

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Responsiveness Bloopers BJ Hardage & Isaac Bailey

  2. Responsiveness Bloopers BJ Hardage & Isaac Bailey

  3. Responsiveness Bloopers BJ Hardage & Isaac Bailey

  4. Responsiveness Bloopers BJ Hardage & Isaac Bailey

  5. Responsiveness Bloopers BJ Hardage & Isaac Bailey

  6. Introduction - Responsiveness • Not performance or speed • Lets you know instantly that your actions were received • Lets you estimate how long lengthy computations will take • Frees you to do other things while waiting • Manages queued events intelligently • Performs housekeeping and low-priority tasks in the background • Makes use of idle time to anticipate future requests

  7. Bloopers • 64: Pointer doesn’t keep up with the users movements • 65: Text editor doesn’t keep up with users keystrokes • 66: Buttons don’t acknowledge mouse clicks immediately • 67: Menus, sliders, and scrollbars that lag behind users movements • 68: Moving and sizing doesn’t keep up with users actions • 69: Applications that become unresponsive while doing background work

  8. Bloopers continued • 70: Software that ignores all user input until it finishes the current function • 71: Applications that don’t give busy indicators • 72: Windows that ignore user input while they repaint irrelevant areas • 73: Websites that are loaded with images and are not viewable without high speed internet • 74: Printers and fax machines that cease all operations when out of paper or ink • 75: Software that doesn’t use idle time for background processes

  9. Reasonsfor poor responsiveness

  10. The facts about responsiveness are not widely known • UI designers rarely consider responsiveness during design • Programmers equate responsiveness with performance • Programmers treat user input like machine input

  11. Question • Is it ok to ignore user input in any circumstance? • Yes • Unnecessary • Irrelevant • Can’t be done on time • Waste time and resources

  12. The facts about responsiveness are not widely known • UI designers rarely consider responsiveness during design • Programmers equate responsiveness with performance • Programmers treat user input like machine input • Developers use simple, naive implementations • GUI software tools, components, and platforms are inadequate • Managers hire GUI programmers who lack the required skill

  13. Question • Why don’t managers hire people with responsiveness knowledge? • They don’t think it’s important • Knowledge of multithreading is required • Expensive

  14. Design principles

  15. Responsiveness is not the same thing as performance • Processing resources are always limited • The UI is a real-time interface • All delays are not equal; the software need not do everything immediately • 0.1 second – the limit for perception of cause-and-effect between events • 1 second – the limit for displaying busy indicators or progress bars • 10 seconds – the amount of time people are willing to spend setting up an operation and starting it

  16. The software need not do tasks in the order in which they were requested • The software need not do everything it was asked to do • Human users are not computer programs

  17. Techniques

  18. Question • Are all progress indicators created equal? • No • Some give better estimates at when the task will be completed • Although, any progress indicator is better than none

  19. Timely feedback • Acknowledge user input immediately • Provide busy indicators and progress indicators • Some busy indicators are more helpful than others

  20. Timely feedback continued • Progress indicators can be approximate • Display important information first • Fake heavyweight computations

  21. Parallel problem solution • Offload non-time-critical work • Work ahead

  22. Queue optimization • Nonsequential input processing • Flush tasks that have become useless

  23. Dynamic time management • Monitor event queue; adjust strategy if not keeping up with the user • Monitor time compliance; decrease quality or quantity of work to keep up • Predict completion time; decide how to perform the task • Predict time compliance; negotiate quality or whether to do the task at all

  24. Questions?

  25. Thank you for listening

  26. You’re beautiful

More Related