Upgrade to Pro — share decks privately, control downloads, hide ads and more …

CSC486 Lecture 06

CSC486 Lecture 06

Human-Computer Interaction
Nielsen Heuristics
(202501)

Javier Gonzalez-Sanchez

January 27, 2025
Tweet

More Decks by Javier Gonzalez-Sanchez

Other Decks in Programming

Transcript

  1. Dr. Javier Gonzalez-Sanchez [email protected] www.javiergs.info o ffi ce: 14 -227

    CSC 486 Human-Computer Interaction Lecture 06. Nielsen Heuristics
  2. HCI in Software Development • Improves user s a tisf

    a ction • Incre a ses a doption a nd retention r a tes 6
  3. Lifecycle Requirements An a lysis • Underst a nd user

    needs through surveys, interviews, a nd observ a tions • Cre a te user person a s a nd scen a rios Design Ph a se • Develop wirefr a mes a nd prototypes Implement a tion Ph a se • Coll a bor a te between developers a nd designers • Ensure a dherence to HCI principles a nd Heuristics Testing a nd Deployment • Perform us a bility a nd a ccessibility testing • G a ther feedb a ck for continuous improvement 7
  4. Heuristics • De f inition: bro a d rules of

    thumb a nd not speci f ic guidelines. • https://www.nngroup.com/ a rticles/ten-us a bility-heuristics 8
  5. Definition The design should always keep users informed about what

    is going on, through appropriate feedback within a reasonable amount of time. Visibility of System Status Jakob’s Heuristic “You Are Here” maps Interactive mall maps have to show people where they currently are, to help them understand where to go next. Checkout flow Multistep processes show users which steps they’ve completed, they’re currently working on, and what comes next. 1 Knowing what the current system status is can help users learn the outcome of their prior interactions and determine next steps. Predictible interactions create trust in the product as well as the brand. ∙ Tip: Communicate clearly to users what the system’s state is — no action with consequences to users should be taken without informing them. ∙ Tip: Present feedback to the user as quickly as possible. ∙ Tip: Build trust through open and continuous communication. www.nngroup.com/articles/visibility-system-status/ 3 Info Shipping Payment Review Pay now 2 Phone tap Touchscreen UIs need to reassure users that their taps have an effect — often through visual change or haptic feedback. 3 2 1 1 1 $43.23
  6. Automobile Definition The design should speak the users' language. Use

    words, phrases, and concepts familiar to the user, rather than internal jargon. Follow real-world conventions, making information appear in a natural and logical order. Match between System and the Real World Jakob’s Heuristic Stovetop controls When stovetop controls match the layout of heating elements, users can quickly understand which control maps to each heating element. “Car” vs. “automobile” If users think about this object as a “car,” use that as the label instead. 2 The language you should use depends very much on your specific users. ∙ Tip: Ensure users can understand meaning without having to go look up a word’s definition. ∙ Tip: Never assume your understanding of words or concepts will match those of your users. ∙ Tip: User research will help you uncover your users' familiar terminology, as well as their mental models around important concepts. www.nngroup.com/articles/match-system-real-world/ Shopping cart icon A shopping cart icon is easily recognizable because that feature serves the same purpose as its real-life counterpart. 3 Shopping Cart Check Out 2 3 2 1 Car 3 2 1
  7. Definition Users often perform actions by mistake. They need a

    clearly marked "emergency exit" to leave the unwanted action without having to go through an extended process. User Control and Freedom Jakob’s Heuristic Exit sign Digital spaces need quick “emergency” exits, just like physical spaces do. Undo and redo These functions give users freedom because they don’t have worry about their actions — everything is easily reversible. 3 When it's easy for people to back out of a process or undo an action, it fosters a sense of freedom and confidence. Exits allow users to remain in control of the system and avoid getting stuck and feeling frustrated. ∙ Tip: Support Undo and Redo. ∙ Tip: Show a clear way to exit the current interaction, like a "Cancel" button. ∙ Tip: Make sure the exit is clearly labeled and discoverable. www.nngroup.com/articles/user-control-and-freedom 2 Cancel button Users shouldn’t have to commit to a process once it’s started — they should be able to easily cancel and abandon. Cancel Delete Photo 3 Untitled document 1 3 2 1 Undo Redo
  8. Definition Users should not have to wonder whether different words,

    situations, or actions mean the same thing. Follow platform and industry conventions. Consistency and Standards Jakob’s Heuristic Check-in counter Check-in counters are usually located at the front of hotels. This consistency meets customers’ expectations. Design system Using elements from the same design system across the product lines lowers the learning curve of users. 4 Jakob's Law states that people spend most of their time on products other than yours. Failing to maintain consistency may increase the users' cognitive load by forcing them to learn something new. ∙ Tip: Improve learnability by maintaining both types of consistency: internal and external. ∙ Tip: Maintain consistency within a single product or a family of products (internal consistency). ∙ Tip: Follow established industry conventions (external consistency). www.nngroup.com/articles/consistency-and-standards/ 3 Notifications A standardized notification design provides a similar but distinguishable look and feel for different app pop-ups. 1 2 CHECK IN 12:34 3 2 1 #F0557B #D51D50 #35151D Light Reg Med #4F2330 #FFFFFF Colors Typography Components Aa Aa Aa Bold Aa Button Button Button Button
  9. Definition Good error messages are important, but the best designs

    carefully prevent problems from occuring in the first place. Either eliminate error-prone conditions, or check for them and present users with a confirmation option before they commit to the action. Error Prevention Jakob’s Heuristic Guard rails Guard rails on curvy mountain roads prevent drivers from falling off of cliffs. Airline confirmation The confirmation page before checking out on airline websites gives users another chance to review the flight details. 5 There are two types of errors: slips and mistakes. Mistakes are conscious errors based on a mismatch between the user’s mental model and the design. Slips are unconscious errors caused by inattention. www.nngroup.com/articles/slips/ Date selection on calendar Offer good defaults and set boundaries when people book services by dates. Grey out unavailable options. ∙ Tip: Prioritize your effort: Prevent high-cost errors first, then little frustrations. ∙ Tip: Avoid slips by providing helpful constraints and good defaults. ∙ Tip: Prevent mistakes by removing memory burdens, supporting undo, and warning your users. Review Flights and Pay Confirm Booking 2 7 23 24 25 26 20 21 22 17 18 19 Nov 17 – Nov 26 3 1 3 2 1
  10. Definition Minimize the user's memory load by making elements, actions,

    and options visible. The user should not have to remember information from one part of the interface to another. Information required to use the design should be visible or easily retrievable when needed. Recognition Rather Than Recall Jakob’s Heuristic Lisbon People are more likely to correctly answer the question “Is Lisbon the capital of Portugal?” rather than “What’s the capital of Portugal?” Comparison table Comparison tables list key differences so that users don’t need to remember them to make comparisons. 6 Humans have limited short-term memories. Interfaces that promote recognition reduce the amount of cognitive effort required from users. ∙ Tip: Let people recognize information in the interface, rather than having to remember (“recall”) it. ∙ Tip: Offer help in-context, instead of giving users a long tutorial to memorize. ∙ Tip: Reduce the information that users have to remember. www.nngroup.com/articles/recognition-and-recall/ 2 Search Search queries are presented together with the results as a reference. The Lion King 3 iPad Pro 12.9-in. (4th gen) iPad Air (3rd gen) iPad (7th gen) 1 Search results 3 2 1
  11. Definition Shortcuts — hidden from novice users — may speed

    up the interaction for the expert user such that the design can cater to both inexperienced and experienced users. Allow users to tailor frequent actions. Flexibility and Efficiency of Use Jakob’s Heuristic Shortcuts Regular routes are listed on maps, but locals with more knowledge of the area can take shortcuts. Keyboard shortcut Keyboard shortcuts for complex products can help expert users finish their tasks more efficiently. 7 Flexible processes can be carried out in different ways, so that people can pick whichever method works for them. ∙ Tip: Provide accelerators like keyboard shortcuts and touch gestures. ∙ Tip: Provide personalization by tailoring content and functionality for individual users. ∙ Tip: Allow for customization, so users can make selections about how they want the product to work. www.nngroup.com/articles/flexibility-efficiency-heuristic Tap to like Social apps allow two ways to like posts. Experienced users can tap to like because it speeds up their browsing. 3 C V 2 1 3 2 1
  12. Definition Interfaces should not contain information which is irrelevant or

    rarely needed. Every extra unit of information in an interface competes with the relevant units of information and diminishes their relative visibility. Aesthetic and Minimalist Design Jakob’s Heuristic Ornate vs. simple teapot Excessive decorative elements can interfere with usability. Communicate, don’t decorate Over-decoration can cause distraction and make it harder for people to get the core information they need. 8 This doesn't mean you have to use a flat design — it's about making sure you're keeping the content and visual design focused on the essentials. Ensure that the visual elements of the UI support the user's primary goals. ∙ Tip: Keep the content and visual design of UI focus on the essentials. ∙ Tip: Don't let unnecessary elements distract users from the information they really need. ∙ Tip: Prioritize the content and features to support primary goals. www.nngroup.com/articles/aesthetic-and-minimalist-design/ Messy vs organized UI Messy UI increases the interaction cost for users to find their desired content; Organized UI lowers the cost. DOn't decorate COMMUNICATE, 2 3 3 One of our favorite slogans 3 2 1 1
  13. Definition Error messages should be expressed in plain language (no

    error codes), precisely indicate the problem, and constructively suggest a solution. Help Users Recognize, Diagnose, and Recover from Errors Jakob’s Heuristic Wrong way sign Wrong-way signs on the road remind drivers that they are heading in the wrong direction and ask them to stop. Internet connection error Good internet connection error pages show what happened and constructively instruct users on how to fix the problem. 9 Error messages should be presented with visual treatments that will help users notice and recognize them. ∙ Tip: Use traditional error message visuals, like bold, red text. ∙ Tip: Tell users what went wrong in language they will understand — avoid technical jargon. ∙ Tip: Offer users a solution, like a shortcut that can solve the error immediately. www.nngroup.com/articles/error-message-guidelines/ No search results Provide useful help when people encounter search-result pages returning zero results, such as popular topics. 2 WRONG WAY 1 There is no Internet connection Try: No results for “Teddy bear” You might try 3 3 2 1
  14. Help and Documentation Jakob’s Heuristic Airport information center Information kiosks

    at airports are easily recognizable and solve customers' problems in context and immediately. Frequently asked questions Good frequently-asked-question pages anticipate and provide the helpful information that users might need. 10 Help and documentation content should be easy to search and focused on the user's task. Keep it concise, and list concrete steps that need to be carried out. ∙ Tip: Ensure that the help documentation is easy to search. ∙ Tip: Whenever possible, present the documentation in-context right at the moment that the user requires it. ∙ Tip: List concrete steps to be carried out. www.nngroup.com/articles/help-and-documentation/ Information icon Information icons reveal tooltips to explain jargon when users touch or hover over them, which provides contextual help. 2 Definition It’s best if the design doesn’t need any additional explanation. However, it may be necessary to provide documentation to help users understand how to complete their tasks. i 1 Frequently Asked Questions 3 3 2 1
  15. Let’s Apply This 1. Visibility of system st a tus:

    2. Use l a ngu a ge, icons, a nd met a phors f a mili a r to users 3. Designing intuitive work f lows a nd v a lid a ting user input. Ex a mple: Dis a ble a “Connect” button if a lre a dy connected. 5, 9. Provide cle a r error mess a ges a nd o ff er solutions. Ex a mple: “Connection lost. Ple a se connect a g a in.” 20
  16. Part 1. Publisher (only testing purposes) 28 1. Create a

    program in Java that read your data_file
  17. Part 1. Publisher (only testing purposes) 29 2. Follow the

    Publisher example and make this program to “Publish” a line every 10 seconds. Customize your topic and clientID
  18. Part 2. Subscriber (this will be part of your app)

    30 1. Create a program in Java that subscribes to your published data.
  19. Part 2. Subscriber (this will be part of your app)

    31 2. Follow the example of the Subscriber code.
  20. Part 2. Subscriber (this will be part of your app)

    32 3. Every item received, store it in a data structure. When the data structure reaches 1000 values clean it (delete them all).
  21. CSC 509 Software Engineering Javier Gonzalez-Sanchez, Ph.D. [email protected] Fall 2024

    Copyright. These slides can only be used as study material for the class CSC509 at Cal Poly. They cannot be distributed or used for another purpose.