4

Software generally have means to detect errors, like catching exceptions, and these can be categorized :

  1. App cannot run, some prerequisite not met.
  2. App failed to start.
  3. App started but some parts aren't functional.
  4. Instant: User clicks something (expected for something to happen), but it didn't.
  5. Time consuming: User starts a task, but it fails in between.
  6. Everything works, but with some warnings.
  7. Something critical went wrong, app will crash.

Now, how shall one decide which error are to be notified, and which ones logged silently ?

user117
  • 223
  • 2
  • 7

1 Answers1

5

I think in general, show an error if:

  • The error is understandable by the user;
  • The user can mitigate the error by performing an action or changing their behaviour;
  • The error will have an immediate impact on the user's experience.

but don't show an error if:

  • The error is technical and only understandable by a developer;
  • The error can be resolved automatically;
  • The error won't have any noticeable impact on the user's session, or on their immediate task.

Microsoft covers error messages in the Windows User Experience Interaction Guidelines. It goes without saying that you should try to predict and prevent errors in the first place.

Matt Obee
  • 14,486
  • 4
  • 57
  • 63