About HFI   Services   Clients   Training   UX Resources   Media Room  
             
 Go to...User Experience for a Better World   
Human Factors International Home
UX Resources
Bookmark and Share

Ask Eric: Questions & Answers

Each month Dr. Eric Schaffer answers selected questions on usable interface design. Recent Questions
Archived questions and answers about ...

Software Navigation and Interaction Design Challenges

October 19, 2007 – submitted by Tony Gullaci of Vancouver, Canada

Question: What would be the best method to show users that a table column is sortable.

Eric's response: This is one area that has become rather standardized. Make the header look like a raised button. Put a triangle (arrow) to the right of each button that indicates the sort order (ascending or descending). Clicking the header switches the sort order.

Top

September 19, 2007 – submitted by Shweta Shah of India

Question: Hi Eric, I am Shweta from India. Right now I am working on an existing Web interface for usability issues. In one page there is a table which uses 4 columns and multiple rows to select one option. They have used radio buttons on the right side of the page. Is there any other option other than radio buttons to select? Number of rows can be many in this case. Please suggest something to me.

Eric's response: If you are in a keyboard-primary interface, then consider a classic menu. Number the items and let the user type in the selected item's number. If you are in a mouse-primary interface, then consider an array of toggle buttons, where one item can be selected and shows as highlighted. Selecting a different items leaves only THAT selected item highlighted.

Radio buttons are OK for a mouse primary environment, but should be only a single column. They are also a bit slow as the target size is small.

Top

September 5, 2007 – submitted by Eric Gauvin of CT, USA

Question: I have a question about input field error messages. Has there been any research about the best way to present error messages based on multiple criteria. Let's say you have an input field that the system validates on 3 different criteria. I've seen examples of stacking up a separate message for each validation criteria, but my instinct is to compose one all-purpose message so it looks like fewer errors. However, that requires the user to figure out the part that specifically applies to them. What's the recommendation for that?

Eric's response: I have always found many problems with multiple error messages on a single entry. A single incorrect character can trigger dozens of error messages. It does not help to dump all these messages on the user. Just give the first one out. BUT, it is important to think carefully about the sequence of error checks. If you make the sequence logical the user is lead, step-by-step, to enter the right information.

Top

August 8, 2007 – submitted by Niraj Gorde of India

Question: I could not find the details on "factors affecting the usability of an online help or a context-sensitive help" anywhere on the Net.

Is it not important to make the online help more usable? I have found few factors as navigation, structure of help, TOC, links, search on help, screen shots and so on. Could you please let me know, where should I find more information and if possible could you please send me details for the same.

Thanks and regards.

Eric's response: The first insight is that HELP should be made unnecessary. A good user interface design minimizes and often eliminates the need for help.

Second, we need to understand what TYPES of information people need. This "gap analysis" is completed by comparing the skills and knowledge that the users have with the skills and knowledge of your application. So they may need to know typing, but if they already know how to type it is no issue. But if they don't understand a SKU code, then they will need SOME TYPE OF SUPPORT.

Now the question is WHAT type of support do they need. You can use paper documentation, online documentation, physical job aids, online job aids (help), or training. You must work out the best strategy.

This reminds me of the time an executive told me he was going to a paperless office and all instructions would be online. I asked him where he would put his system failure instructions. And he said ONLINE!

Once you determine IF you need help, and what type of content is needed you will find that there are different types of help possible. You have overall orientation help, page level help, field (or object) help. In some cases you will need help on every object, while in other cases you will only provide help where you know a good percentage of users will be struck (the latter is generally my preference).

With this in place you have rather typical issues of navigation (how you GET help of various kinds) and content development (good writing).

My best advice is to keep help to a minimum and make sure that what you DO provide is really helpful. I've seen examples like "SKU Help: Field where you enter the SKU code." This doesn't provide any help to the person who needs to know what SKU means. Rather than have tons of useless help, provide help on what people are really likely to need help on, and think through what they really are likely to need. Then you can test the application and see if more help is needed.

Top

August 6, 2007 – submitted by Naveen Prasad of India

Question: We are developing a user management module for a Web application. In the user search results page:

1) I am planning to provide a check box in all the rows of user 'Search Results' to select and delete the user. Is it correct?

2. If point no.1 is correct, after deleting the user, do I need to reload the 'Search Results' again?

3. If point no.1 is wrong, then, is it good to provide a delete button inside the user details page?

4. If point no.3 is correct, then if I click 'Delete User' button do I need to provide a confirmation message in the same page? And a back button to take me back to the 'Search Results' page or a alert message on click of 'OK' taking me back to the search result page?

Please advise me?

Eric's response: First of all you need to refer to your interface standards documentation. I think HFI should have created one for you guys by now. Would let you just look it up instead of keeping me up answering Ask Eric questions half the night.

The check box for multiple deletions is useful only if the user will need to often do multiple deletions. Otherwise you can just put a delete button on each line (a bit cluttered but easier), or allow deletion of the highlighted items. Once the deletion is complete you should show the list minus the items deleted, you can show a shortened list (not re-running the search) as a form of feedback.

However you handle your list, you should probably provide a delete button on the details page. When the user views it he/she might like to delete the item.

If the user will use the delete frequently, a confirmation will not help (except for accidental actuation) because the user will learn to reflexively confirm the deletion. So I would only provide a confirmation if deletion is unusual. Then you can return to the list screen with a feedback message shown in your standard feedback message area that confirms the deletion.

Top

June 21, 2007 – submitted by Christina Chang of St. Louis, MO

Question: I am often asked by engineers when to use buttons and when to use links. We have a screen where there is a table to do ePrescriptions. On each drug row, the drug name (2nd column from the left) is a link to the drug info. The 2nd last column on the right has an "Add Rx" link to add this Rx to process.

However, in our usability test, almost all users miss the "Add Rx" link, instead, they clicked on the drug name to try to add to process. To solve this problem, we propose to make the "Add Rx" a link button (with some 3D button effect to catch attention), but some folks disagree that having a button on each row make it look crowded. We haven't had a chance to test this design up to now. I guess this is the question I should have asked: When to use Button (html button), Link Button (CSS button) and Link?

Eric's response: Well no surprise a Certified Usability Analyst would be on the right track. But here is the solid rule.

If you are going to process something on the current page (e.g., calculate) then you MUST use a button. Never a link.

Otherwise GENERALLY you use a link to go to someplace (such as making the name of the drug a link and selecting it to see that record in detail). But if you are acting on the table (such as going to an "ADD" dialog) then the button is better. But certainly buttons are used to go places often and it is not a problem (e.g., a HOME button).

Top

June 21, 2007 – submitted by Melanie Weber of Ontario, Canada

Question: Our team is constantly debating the use the word "please" in error messages. For example "More than one Applicant exists for this application. Please edit the applicant type or remove the additional applicant(s)" vs. "More than one Applicant exists for this application. You can either edit the applicant type or remove the additional applicant(s)". What is your opinion on the use of "Please" within error messages?

Eric's response: Funny, I immediately looked at your country when I read the question. It matters. :)

In general I would avoid "Please". It contains no information, so it only clutters the instruction. It is also anthropomorphic, which means you are pretending that the computer is a person. But it will be pretty obvious to the user that the computer does not care and is not concerned.

HOWEVER, we have found in the UK that omitting "please" makes people feel like the application is rude. You might do a bit of testing to check if this is true in Canada. It could be. (Please let me know your findings!) At the same time in other cultures, like India, "please" is not normally used. Using "please" makes the interface seem oddly formal and stand-offish.

Top

April 2, 2007 – submitted by Mark Pawson of Calgary, Canada

Question: Is there a UI forum that you recommend where UI questions can be posted, such as this question and answer page, but with the ability to provide input from a variety of participants.

For example, I am presently redesigning a GUI interface where I am debating whether a feature (icon, button, menu item etc) should be greyed out when it does not apply, or should not even appear when it does not apply. What does the research show? Thanks.

Eric's response: I want to caution about discussion groups. Usability engineering is not a function of opinion. It is a research-based discipline with a foundation in at least 60 years of data. Arguing in a discussion group is not necessarily the best way to get questions resolved. Consider usability.gov, useit.com, or humanfactors.com (ah, well I guess you did find that). In fact the gray button question was just answered here recently.

Top

March 20, 2007 – submitted by Andy Rotering of MN, USA

Question: My question is in regards to enabling and disabling controls based on user selections. For example, if a feature can be enabled and disabled, how should the controls that configure this feature behave when the feature is disabled? Should we:

a) Disable the controls that control this feature and only enable them if they enable the feature (presumably the control to do this is on the same dialog)

b) Always keep all the controls enabled and if the user tries to interact with a control that only applies to this disabled feature, pop up a window that says something like "You're trying to configure feature XXXXX, would you like to enable this feature?"

As I write this, I am amazed at how much option (b) sounds like Clippy (of "It looks like you're writing a letter" fame).

Eric's response: First, I assume when you mean "disable" a control you mean that it is "greyed out." The advantage to greying out controls is that the user is presented with the controls that are available at any given time. This might seem nice. But the severe problem comes when the user thinks that a control SHOULD be available when it is greyed out. THEN there is a problem because there is no indication of what the user should do to activate the control. Unfortunately, there is no convention that tool tips appear for greyed out controls indicating what is needed to activate the control (would be good, I think). So the user is stuck. I would therefore generally like to see all controls enabled and an error message that describes why the control can not be activated. No need to make the message smarmy however.

Top

March 15, 2007 – submitted by Diane Albert of PA, USA

Question: I have a debate going with some programming colleagues – when you have action buttons such as "OK" and "Cancel" in a dialog box, what is the intended order? I had been placing the default button to the far right, figuring if I'm mousing through quickly, Fitt's law would give me a better target if it's along a barrier or in a corner. The programmers say because we read left to right, the default button should be on the left most of the row of buttons.

In addition, what happens if the default button changes from one screen to the next – the first one might be "OK", but the logical button for the second screen is "Cancel." Do you swap the buttons making the logical always in the same place, or do you keep them so that "OK" is always in the same place?

Eric's response: So the first thing is about Fitt's Law. Having the button on a border does NOTHING to change the calculation. You are probably thinking of the effect of a hard stop. So if you have a button and the cursor is stopped from leaving the target on some axis, then the size of the button becomes effectively infinite on that axis. But since the cursor will just move through the button, this is not true in the case you stated.

The first answer to that question is to follow standards. Microsoft created a rather strong standard of having the cancel button far right, and then other buttons to the left of that, with the default last. This is not a particularly good design. But Microsoft has a big footprint and some user populations have come to expect it.

If I was doing the design without a standard to worry about, I would probably put the default hard left. In this way the default is always leftmost and flows logically as the first item as the user goes down the screen. I would also put the CANCEL button far right, to get it out of the way, but give it a consistent position.

Top

© 1996-2010 Human Factors International, Inc. All rights reserved  |  Privacy Policy  |   rss feed