5

I'm wondering what the behavior should be for an interaction in which the user sends a query but the data reply takes several minutes (more time than in probable for the user to look at a loader or something...)

Any ideas / references?

  • 3
    Is the function blocking or non-blocking? Can it happen in the background while the user does other things? – Matt Obee Mar 16 '15 at 10:53
  • 1
    Non blocking, but the reply can take a significant amount of time (15 min.?) – Liya Mar 18 '15 at 7:24
5

There are several features you can use, which may be combined if appropriate:

  • Status bar. A status bar in the window can indicate that the process is underway or not. Ideally, the status bar will include a progress bar and/or percent done and/or estimated time remaining. If possible, place the status information in the corner of the window so the user can see it while using another mostly overlapping window (what they’re doing while they wait). Status bar usage design guidelines are in the Windows User Experience Interaction Guidelines.

  • Notifications. A notification from the task bar or similar ignorable and non-modal message can alert the user when the process finishes. Windows User Experience Interaction Guidelines also covers notifications. Notifications can be presented when the window that launched the process isn't in focus or even open.

  • Badging. Status information can be incorporated into the dock/task bar icon, indicating that a process is underway. Like notifications, this can provide feedback when the window that launched the process is out of focus. See "badging" in the OSX Human Interface Guidelines.

  • Animation and sound. Animation (e.g., flashing the task bar icon) and/or a “completion” sound can be used to alert the user when the process finishes, but only if the users should respond immediately (something at least as urgent as answering a phone). Even then, you probably want to provide users the option of suppressing the animation and sound.

  • Process management window. If the user can have multiple processes running at the same time, the UI can include a window that displays the detailed progress on every process, both underway and completed. It may also include controls to pause, restart, re-run, and cancel individual processes. Firefox has this in the form of a download management page that users can access from the download status bar (shown in the upper right of the window).

  • Progress message box. Ideally, the user can do other things in the app while the process is running asynchronously in the background. However, if this is not possible, then you can display a modal progress message box with a determinate or indeterminate progress bar. You should also somehow change the appearance of the underlying window or its dock/taskbar icon so the user can see the process is in progress even when all or most of the window is occluded (e.g., by dimming everything within). Both OSX and Windows guidelines cover progress bars.

  • Thank for the elaborate answer! your points are great, however I'm wondering how to communicate to the user that she has to come back and see a reply after a long period of time, she might not be looking at the browser anymore even. The action is non blocking so I like the idea or a process management window (maybe floating) – Liya Mar 18 '15 at 7:28
  • Ideally, you'd communicate the approximate time to run the process before the users even start it --that may impact whether they want to start it at that moment or not. If that's not technically feasible, the next best thing is to provide an approximation immediately or shortly after it starts. A progress bar can do that, although a reasonably accurate "time remaining" countdown is better. Badging and notifications can indicate when the user can return to the window when it's fully occluded. I don't know how or if they can be used for a web app in a browser. – Michael Zuschlag Mar 18 '15 at 12:12
  • As you said, she might not be on the browser as well, I would suggest having a notification center which shows info on next log in or even an email notifying the change of state (success/failure) of that action. – Sol Mar 18 '15 at 12:35

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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