views:

85

answers:

4

What techniques can I use to always display user friendly error messages? I guess I'm looking for programming, testing, and management techniques that produce user friendly messages.

+2  A: 

Not sure what you are aiming at, but if it is user friendly:

  • Speak the users language.
  • Don't surprise the user.
  • Provide clear exists if it is a dialog.
Felix Kling
+1  A: 

This is just one part of it, but I recommend using TDD (test driven development). Write tests that expose errors and make sure that the program responds in the correct fashion.

To put it another way, emphasize the importance of error messages by making them part of your user stories.

David James
I liked this answer the best as it says to make the error messages part of the "user stories". That way they are part of requirements, and don't get pushed to the side because of time constraints.
Zubair
+1  A: 
  • Always use human language, no tech speak (unless your audience is technically minded)
  • Always provide the user with an action to take, even if that action is go back
  • Always clearly seperate the error message from rest of the GUI e.g. modal popup window
  • If you are logging errors, always provide a reference number for the user to quote if there is a direct feedback mechanism
  • If the error occurs during a step-by-step process always preserve the previous selections
  • If the error is one of validation, clearly explain why the user input has failed validation, display the error message next to the invalid field (not all listed at the bottom) and set focus on the invalid field
Nick Allen - Tungle139
+2  A: 

In addition to the answers here, I always find that keeping your error messages "calm" is helpful. Don't frighten the user by saying in big caps "THERE WAS A CRITICAL ERROR AND THE PROGRAM MUST SHUT DOWN!" The user, especially if he is not tech savvy, will think that he did something wrong and will likely freak out.

Keep your messages calm, explain the situation, and provide the user with steps to take to either correct the issue or contact someone who can.

Aaron