1

If I have a page with multiple panels or widgets, which get data from different REST calls and one of them fails,

  • a) is it better to show an error message inside just the panel(inline error message), and continue to show other panel data? This way, user has access to as much data as possible?
  • b) show a dialog popup for the whole page.

What is best practice? I think a) is better than b). Some of the questions I have if i choose a)

  • Say I have 3 panels and all three calls fail (server down).. check this scenario and show an overall error? Or even in this case, each panel shows an error message (albeit they may be same error reason)?
  • Should each panel have a separate 'refresh' option? to retry? Or should I let the users do the browser refresh to retry?
  • In case of a dashboard with several widgets.. if the error is inlined inside a widget, the user may not even see it, unless he wants data from that widget.. Is that acceptable? Or should the user be made aware that some part of page did fail?
2
  • Is this a dashboard like layout, where it's still helpful for the user to see the data from the other modules on their own?
    – Mike M
    Sep 14, 2017 at 21:04
  • yes.. components show different data.. so if one fails, no reason to not show other components data. so should error be inline to that failed component? or popup on the page or top notification bar.. etc.. Sep 15, 2017 at 13:26

2 Answers 2

1

My two cents below:
a) is it better to show an error message inside just the panel(inline error message), and continue to show other panel data? This way, user has access to as much data as possible?

Yes, but instead of an error message, if there is no space, show an error icon. This icon can be big and cover the widget area prominently for user to understand it bailed. User can tap it to view its details.

b) show a dialog popup for the whole page.

Yes, this doesn't seem to be a good idea as user has to match the error with the widget.

What is best practice? I think a) is better than b). Some of the questions I have if i choose a)

Say I have 3 panels and all three calls fail (server down).. check this scenario and show an overall error? Or even in this case, each panel shows an error message (albeit they may be same error reason)?

Yes, its better to show a common (one) page load error than individual ones, when all some parts of widgets bail

Should each panel have a separate 'refresh' option? to retry? Or should I let the users do the browser refresh to retry?

While individual reloads for each widgets is tempting, it would be too much work for user to tap each one. Its better to keep one reload (the browser's) for reloading all items (if data is not a concern)

In case of a dashboard with several widgets.. if the error is inlined inside a widget, the user may not even see it, unless he wants data from that widget.. Is that acceptable? Or should the user be made aware that some part of page did fail?

Same as answer for a)

1
  • Thanks for your input. Within the component which failed, it has lots of space, since no data loaded, so nothing shown.. but i could show an icon with some text, icon would grab attention better. Sep 15, 2017 at 18:03
1

Let's think about that...

a) is it better to show an error message inside just the panel(inline error message), and continue to show other panel data? This way, user has access to as much data as possible?

If the loader data for each panel is asynchronous, I think that may not be a problem show the loaded data into panel without errors, and to show the error messages, use panel area can be a good solution because you are providing the information where the problem is happen. In another approach, imagine a stack of flash messages (when you need to show more than one error message) and the user looking to the messages and making relation with panels, wooowwww.. is too much!

b) show a dialog popup for the whole page.

Popups/Modals/Dialogs are good when you need total attention of the user or when this user need to take a decision. In this case, you can prevent the user from realizing the error or being unsatisfied by this, showing the other panels and including in the error message (in panel with error), that the application will make a new request of the information to the panel that presented error. (You will need to talk with your developers to get this).

What is best practice? I think a) is better than b). Some of the questions I have if i choose a)

For me: A + message stating that the application will request the information again

Say I have 3 panels and all three calls fail (server down).. check this scenario and show an overall error? Or even in this case, each panel shows an error message (albeit they may be same error reason)?

Maintain consistency of design. Use the same approach, ever.

Should each panel have a separate 'refresh' option? to retry? Or should I let the users do the browser refresh to retry?

May your developer can help you making new requests using ajax or another asynchronous way to automate this step.

In case of a dashboard with several widgets.. if the error is inlined inside a widget, the user may not even see it, unless he wants data from that widget.. Is that acceptable? Or should the user be made aware that some part of page did fail?

Bugs are bugs when they are seen. If the user not need the data, the bug will not be a bug. Avoid to say what is not necessary, and try to be "Cute" with your error messages, a good microcopy is very important!

I hope helped.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.