3

This question already has an answer here:

I have a synchronous process that is trigger by a user action and the process can take more than 10 minutes.

While it's being processed, the previous UI that user triggered from and the previous data displayed is blocked and the user cannot approach it.

Do you know of any references for a system that has this kind of behavior?

marked as duplicate by Madalina Taina, Shreyas Tripathy, Michael Lai Jul 30 at 4:58

This question has been asked before and already has an answer. If those answers do not fully address your question, please ask a new question.

  • 1
    Many, none of them good UX. The user has to be able to do something else, either in the system or outside it. Can they cancel the process? Can they know how much is left? Can they use other parts of the system in the meanwhile? Can they be notified (sound, push notification, email) once it has finished? – Aadaam Sep 30 '18 at 10:28
  • Hi Jane, thanks for your contribution to UXSE :) Do you have any screenshots or description of the interactions involved before and after? I think it will help the people in the community to suggest a better solution to your design challenge. – Michael Lai Oct 1 '18 at 0:30
2

One of the main tenets of user interface design, is that the user needs to feel in control, and mostly, that they are in control of their time.

There are basically the following ways of dealing with delays in a system:

  • block part of the UI
  • show estimate or progress
  • notify on results

The first is normally used for tasks running for less than about 10 seconds, the second for tasks running at most for a minute or two, and the last for tasks that run for more than a minute.

We tend to differentiate between active and passive waiting time, active being the user empowered to do something else.

Examples for long running tasks are found in torrent clients, or youtube video uploads. Most of these show progress, but also notify you when the task is finished.

Sometimes we don’t know how much a task is going to take, so we show progress by other means, this is the case of antivirus software, which tell you how much was already done, not how much is left. Some software tell you the number of elements already processed out of a total number of elements, even if the processing time for each element is uneven. A lot of applications try to guess the time required, often letting the user down when more time is actually needed (typical: youtube uploads standing on 95% for twice the time it took to reach 95%)

It is nevertheless advisable to:

  • tell the user a minimal estimate so they know they can have a coffee and cigarette break
  • give notification (audio, web notification, email) when the task is done
  • let them do as much as possible.

A way to do this would be to disable the window with a modal layer telling them that processing is in place, and it should take at least 10 minutes, so if it started at 8:43 PM, tell them results are not to be expected before 8:53 PM. Also, provide a way to close this window and focus on different parts of the user interface.

The UI elements leading to this window should tell them that processing is in place and when it is expected.

Some form of notification (at least, an audible “ding”) should be sent when the process was finished, with the UI elements changed, and some form of notification displayed in a designated screen area or method.

There was a wonderful series of articles by Denys Mishunov about time management in applications called “Why Performance Matters”, the last part being here:

https://www.smashingmagazine.com/2015/12/performance-matters-part-3-tolerance-management/

  • Thanks for the elaborated answer. 1. regarding the 10 seconds rule, its was mentioned many time in this forum and referenced to this seminal article "response times 3 important limits". Perceive response time (in seconds) instantaneous (0.1 – 0.2) immediate (0.5 – 1) longer (2-5) 2.The processing time is indeterminate and long, committing to a specif time lead to the framing effect link, if the time is longer the user will be disappointed. 3. Using sounds can be awkward in desktop if its not a game. – Jane Oct 4 '18 at 5:32
  • Ok, let’s frame it this way: if the processing time is long, the designer MUST strive to get developers make progress as visible as possible. Positive sound usage is recommended in this case, look at About Face from Alan Cooper or Facebook, or uTorrent... – Aadaam Oct 4 '18 at 10:19

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