CS 422: UI Design and Programming

Slides:



Advertisements
Similar presentations
ITEC 1001 Tutorial 1 Using Common Features of Microsoft Office 2003.
Advertisements

 Use the Left and Right arrow keys or the Page Up and Page Down keys to move between the pages. You can also click on the pages to move forward.  To.
EXCEL Spreadsheet Basics
Microsoft Word 2010 Lesson 1: Introduction to Word.
Human Computer Interface. HCI and Designing the User Interface The user interface is a critical part of an information system -- it is what the users.
1 of 5 This document is for informational purposes only. MICROSOFT MAKES NO WARRANTIES, EXPRESS OR IMPLIED, IN THIS DOCUMENT. © 2007 Microsoft Corporation.
XP New Perspectives on Microsoft Office Word 2003 Tutorial 1 1 Microsoft Office Word 2003 Tutorial 1 – Creating a Document.
XP 1 Microsoft Office Word 2003 Tutorial 1 – Creating a Document.
XP 1 Using Common Features of Microsoft Office 2003 Rod Rodrigues.
XP Using Common Features of Microsoft Office Tutorial 1.
Key Applications Module Lesson 12 — Word Essentials
Exploring the Basics of Windows XP
Windows Basics: Desktop, Taskbar and Window
XP New Perspectives on Introducing Microsoft Office XP Tutorial 1 1 Introducing Microsoft Office XP Tutorial 1.
Microsoft Office Word 2003 Tutorial 1 Creating a Document.
1 Lesson 6 Exploring Microsoft Office 2007 Computer Literacy BASICS: A Comprehensive Guide to IC 3, 3 rd Edition Morrison / Wells.
Spring /6.831 User Interface Design and Implementation1 Lecture 3: Visibility.
Moodle (Course Management Systems). Assignments 1 Assignments are a refreshingly simple method for collecting student work. They are a simple and flexible.
Spring /6.831 User Interface Design and Implementation1 Lecture 5: Errors & User Control Make sure you’re registered for the right course!
IC 3 BASICS, Internet and Computing Core Certification Key Applications Lesson 10 Creating and Formatting an Excel Worksheet.
1 2 Lab 2: Organizing Your Work. 2 Competencies 3 After completing this lab, you will know how to: 1. Use Explorer to manage files. 2. Copy files. 3.
Object-Oriented Software Engineering Practical Software Development using UML and Java Chapter 7: Focusing on Users and Their Tasks.
Productivity Programs Common Features and Commands.
Key Applications Module Lesson 21 — Access Essentials
Diagnostic Pathfinder for Instructors. Diagnostic Pathfinder Local File vs. Database Normal operations Expert operations Admin operations.
XP New Perspectives on Windows 2000 Professional Windows 2000 Tutorial 2 1 Microsoft Windows 2000 Professional Tutorial 2 – Working With Files.
Lesson 1- The Basics.  In this lesson, you will learn how to: ◦ Start Excel. ◦ Open an existing workbook. ◦ Navigate within a workbook. ◦ Edit a worksheet.
Fall 2003Sylnovie Merchant, Ph.D. ACCESS Tutorial Note: The purpose of this tutorial is to provide an introduction to some of the functions of ACCESS in.
Getting Started with Word & Saving Guided Lesson.
Lesson 1 - Understanding the Word Window and Creating a New Document
The Excel model for information processing The Excel model is a grid of cells in which items of information are stored and processed. Any information that.
Fall UI Design and Implementation1 Lecture 15: Undo.
MICROSOFT WORD PRESENTATION. Word Processing  Software that is designed for the entry, editing, and printing of documents.  Windows Version = Microsoft.
Key Applications Module Lesson 12 — Word Essentials Computer Literacy BASICS.
Emdeon Office Batch Management Services This document provides detailed information on Batch Import Services and other Batch features.
Fundamentals of Windows Mouse n 4 Basic Operations: –Pointing –Clicking –Double Clicking –Dragging.
Getting Started with Microsoft Word
Lesson 11 Exploring Microsoft Office 2007
Word Lesson 1 STUDY GUIDE.
Microsoft Word 125 S. Clark St., 4th floor, Chicago, Illinois  Telephone  Fax
Practical Office 2007 Chapter 2
Getting Started with Microsoft Office 2007
Microsoft Excel.
The Desktop Screen image displayed when a PC starts up A metaphor
System Design Ashima Wadhwa.
CSC420 Actions and Commands.
Tutorial 1 – Creating a Document
Microsoft Word 2003 Illustrated Complete
Microsoft Windows 2000 Professional
Exploring the Basics of Windows XP
File Stream and Team Drives
Microsoft Windows 2000 Professional
Microsoft Word - Formatting Pages
Microsoft Excel All editions of Microsoft office.
Microsoft Word Text Basics.
Key Applications Module Lesson 12 — Word Essentials
Productivity Programs Common Features and Commands
New Perspectives on Windows XP
Word 2007 – Tips and Techniques
Creating Online Presentations
1 Word Processing Part I.
Key Applications Module Lesson 12 — Word Essentials
Exploring Microsoft Word 2003
Microsoft Office Illustrated Fundamentals
Microsoft Office Illustrated Fundamentals
Using Microsoft Outlook: Outlook Support Number
CMPE 280 Web UI Design and Development April 16 Class Meeting
Microsoft Office Word 2003 Lesson 1
Exploring Microsoft Word 2003
Presentation transcript:

CS 422: UI Design and Programming More on Safety

Next up GR5 is due on April 23. AS2 and RS2 are due on April 23. You are required to describe the feedback you got in your project discussion sessions, and how you incorporated it into your project. Students/groups who did not attend the project discussion on Apr 9 will be penalized. AS2 and RS2 are due on April 23. Final project presentations: April 23 to April 30. We will discuss details about the final exam during review, on 5/2.

Final project presentations: Overview Apr 23, Apr 25, and Apr 30. 6 groups per day. Schedule is up on the course page. All group members MUST be present on the date of their presentation. Designate 2 or 3 members of your group for the presentation. DO NOT divide the presentation among all 5 members of the group. Each group gets 10 minutes present. You will be cut off after that. I may ask questions after your presentation.

Final project presentations: setup We lost a lot of time during mid-term presentations due to logistical issues. This time, every group MUST send their presentation (a link or the slide deck or a zip that can run on a Windows machine) to TA Nina by 12pm of the day their presentation is scheduled. Do a video talk over of your full-fledged implementation. We won’t have time for a full demo in class.

Final project presentations: Content What to include? Problem space 2-3 example tasks from user analysis First iteration of the computer prototype Lessons learned from heuristic evaluation and next iterations Comment on aspects of your UI that adds to usability, aka learnability, safety, and efficiency. (include advanced concepts too.) Video demo of the final iteration and how it addresses the problem space

Final project presentations: Rubric Content (70%) Did you tell a good story? Did you tease out the UI design lessons learned from the work done in over the last half of the semester. Quality of work Quantity of work Presentation (30%) Quality of communication Quality of presentation Timeliness Flow of presentation Question (if asked)

Recap: Learnability

In last class, we discussed some advanced aspects of learnability Affordances Feedback Consistency

What core aspect of learnability is violated here What core aspect of learnability is violated here? (choose the best answer) Internal consistency External consistency Both of the above None of the above

Internal consistency External consistency Both of the above None of the above

What core aspect of learnability is violated here What core aspect of learnability is violated here? (choose the best answer) Internal consistency External consistency Both of the above None of the above

Why might the following hinder learnability? Consistency Affordances Feedback

Why might the following hinder learnability? Consistency Affordances Feedback

https://www.w3schools.com/bootstrap4/bootstrap_navs.asp

What kind of feedback is available here to communicate affordances? Low-level High-level

What kind of feedback is available here to communicate affordances? Low-level High-level

Locus of Attention Feedback Visibility Depends on Locus of Attention Spotlight of attention: attention focuses on one input channel (e.g. area of visual field) at a time Does the user’s locus of attention include: Caps Lock light on keyboard? Status bar? Menu bar? Mouse cursor?

Locus of Attention So when you’re thinking about how to make something important visible, you should think about where the user’s attention is likely to be focused – their document? The text cursor? The animated banner ads on the web site? Users who use keyboard shortcuts heavily may make mode errors – in this case, sending a keyboard command to the wrong application – because they aren’t attending to the state of the menu bar.

Visible Navigation State

Visible Model State Continuous visual representation of model What to visualize should be guided by the user’s tasks

Visible View State Selection highlight Selection handles Drag & drop mouse cursor Keyboard focus

Useless Feedback vs. Useful Feedback Feedback is important, but don’t overdo it. This dialog box demands a click from the user. Why? Does the interface need a pat on the back for finishing the conversion? It would be better to just skip on and show the resulting documentation.

Information Scent Information foraging theory claims that we ask similar questions when we’re collecting information: Where should I search? Which articles or paragraphs are worth reading? Have I exhausted this source, should I move on to the next search result or a different search? Users depend on visible cues to figure out how to achieve their goals with the least effort.

Information scent Humans gathering information can be modeled like animals gathering food. Constantly evaluating and making decisions to maximize information collected against cost of obtaining it An important part of information foraging is the decision about whether a hyperlink is worth following – i.e., does this smell good enough to eat? Users make this decision with relatively little information – sometimes only the words in the hyperlink itself, sometimes with some context around it

Give Good Information Scent A link should “smell” like the content it leads to. Hyperlinks in your interface – or in general, any kind of feature, including menu commands and toolbar buttons – should provide good, appropriate information scent.

Good & Bad Information Scent

Hierarchy of Exploration Costs Glance affordances, icons, short salient words Read description, keywords Hover or press cursor change, highlight, tooltip, submenu, preview Click through target page, dialog box, or mode Invoke feedback effect on the model state For the user, collecting information scent cues is done progressively, with steadily increasing cost.

Don’t overdo it.

An exception of overdoing information scent

Let’s revisit feedback and affordances in your application Where should you add more feedback? Where can you improve the affordances? Where are you giving useless feedback? How can we reduce the exploration cost by improving the information scent? Answers I will look for in your final presentations and GR5 submission.

More on Safety

When we discussed Safety last time: What are different kinds of Human Error? How can we prevent user errors when designing a UI? How to write helpful error messages?

Agenda User Control and Freedom Undo

User Control and Freedom Good interfaces are explorable. Recall that a major way users learn is by doing: poking around an interface, trying things out. An interface should encourage this kind of exploration, not only by making things more visible, but also by making the consequences of errors less severe. Users should be able to explore the interface without fear of being trapped in a corner.

Clearly Marked Exits Long operations should be cancelable All dialogs should have a cancel button

Wizard vs. Center Stage: Who’s in Control? The wizard design pattern is a familiar pattern for improving the learnability of a complex interaction, by structuring it as a step-by-step process, showing each step in a dialog box. Wizards are the conventional pattern for software installation. In a wizard, the system controls the dialog - it dictates the steps, the ordering of the steps, and what it asks for at each step.

Wizard vs. Center Stage: Who’s in Control? Contrast that with the center stage pattern, which lays out data objects in the main section of the window, and gives the user a set of tools for operating on the objects. In this case, the user controls the dialog, deciding which objects to select and which tools to pick up.

Wizard vs. Center Stage: Who’s in Control? Wizards clearly restrict the user’s freedom, but for complex, infrequently-done tasks (like installation), the tradeoff is often worth it. Note, however, that a good wizard has two key features: a Back button (for backing out of errors) and a Cancel button (for vetoing the operation entirely). So even though the wizard pattern puts the system in control of the details, the user still has supervisory control.

Other ways to provide user control Manual Overrides for Automatic Systems Never Ask Me Again Default app

User Control Over Data Data entered by the user should be editable by the user UI should give the power to: Create a data item Read it Update it Delete it No Arbitrary Limits on User-Defined Names

Undo If Cancel is the most common answer for user control over dialog, then Undo is the most common answer to user control over data. The first Mac applications supported only single-level undo - that is, you could undo the last command, but no farther. This was largely due to memory constraints, and modern desktop applications allow unlimited undo (or so much that it makes no difference given the current interface for Undo - nobody is going to press Ctrl-Z 1000 times, after all). But what can we do with smartphone apps? It’s mostly a do-over.

Forming a Mental Model of Undo Undo reverses the effect of an action But that leaves many questions: What stream of actions will be undone? How is the stream divided into undoable units? Which actions are undoable, and which are skipped? How much of the previous state is actually recovered by the undo? How far back in the stream can you undo? View vs. Model

What will be undone? Actions in this window (MS Word) or entire app (MS Excel) Actions in this text widget (Web browser) Just my actions, or everybody’s? (multiuser apps) Actions made by the computer MS Office AutoCorrect and AutoFormat are undoable, even though the user didn’t do them

How is the stream divided into units? Lexical Level Mouse clicks, key presses, mouse moves Nobody does it at this level Syntactic level Commands and button presses Semantic level Changes to application data structures (e.g. the result of an entire Format dialog This is the normal level Text entry is aggregated into a single action But other editing commands (like Backspace) and newlines interrupt the aggregation What about user-defined macros? Undo macro actions individually, or as a unit?

Which actions are undoable? User’s action stream may include many actions that are ignored by Undo Selection Keyboard focus Changing viewpoint (scrolling, zooming) Changing layout (opening palettes or sidebars, adjusting window sizes) UI customization (adding buttons to toolbars) So which actions does Undo actually undo? Some applications (web browsers, IDEs) have Undo/Redo for the editing stream, Back/Forward for the viewport stream

How much state is recovered? Even if the Undo stream doesn’t include all the view changes you make, how much of the view state will be restored when it reverses a model change? When you undo a text edit, for example, will the selection highlight be restored as well? Will the text cursor be put back where it was before the edit? If the text scrolls, will it be scrolled back to the same place?

How much state is recovered?

How far back can you undo? Often a limit on history size Used to be one action - now usually hundreds, or infinite! Does action stream persist across application sessions? Different files of the same application? If so, stream must be saved to file Microsoft Excel, despite being part of the same office suite, has a global action stream. Invoking Undo undoes actions from across all open Excel windows. Does it persist across File/Save?

Design Principles for Undo Visibility Aggregation Reversibility of the Undo itself Reserve it for model changes, not view changes Undo is not the only way to support reversibility

Design Principles for Undo: Visibility It’s very hard for users to predict what Undo will do. Faced with this unpredictability, a common strategy is to press Undo until you see the effect you want to reverse actually go away, or until you realize it’s gone too far without solving the problem (i.e., it’s reversed an older, still-desired effect). So visibility of Undo’s effects is a critical part of making it usable. Whenever Undo undoes a command, it should make sure that the effects of that have a visible change on the screen. If the user has changed the viewpoint (e.g. scrolling) since doing the command that is now being undone, the viewpoint should be changed back, so that it’s easy to see what was reversed.

Design Principles for Undo Aggregation The unit actions should correspond to chunks of the user’s interaction: whole typed words (or strings), complete dialogs, user-defined macros. Reversibility of the Undo itself Undo itself should be reversible, so that if you overshoot, you can come back. That’s what the Redo command is for. Another way to reverse an Undo is to manually issue the undone command again; a good undo mechanism should set up the conditions for this as well

Design Principles for Undo Reserve it for model changes, not view changes For consistency, reserve the Undo command for model changes. You can use other commands for view changes.

Undo is not the only way to support reversibility Keep in mind that you don’t necessarily need a command named “Undo” to support reversibility. There are other commands that move through other action streams (Back), and physical manipulations (like scrollbar dragging) support direct reversibility. Users may not even think of reaching for Undo if the rest of your interface makes it easy to reverse undesired changes. Undo is a form of backward error recovery, which fixes errors by going back in time. A more natural way of thinking is forward error recovery - using other commands to reverse the change. For example, to undo a Bold command by forward error recovery, you select the text again and toggle Bold off. If your interface supports forward error recovery as much as possible, then warts in the Undo model won’t hurt as much.

Next class Final Presentations