Take the 2-minute tour ×
User Experience Stack Exchange is a question and answer site for user experience researchers and experts. It's 100% free, no registration required.

I have a form in which the user requests a report to the system by clicking the Send Report Request button. The system then produces scheduled reports according to the interval the user selected (Daily, Weekly, Monthly). The problem with this design is that there is no immediate feedback to the user after he pushes the button. I want to avoid a scenario in which the user clicks the button and says: "what now?" How can I achieve this? What are your recommendations for such a problem?

Scheduled Report Request (Label)
Report Name (Label) + Text Input
Interval (Label) + Listbox (Options: Daily, Weekly, Monthly)
Send Report Request (Button)
share|improve this question
2  
@RogerAttrill No need for sarcasm ;) You could just as easily edit the question and help improve it. –  Rahul Sep 20 '11 at 16:56
    
@Rahul - deleted my comment just before I saw yours pop up - I was hoping to prompt Felix into doing it, but you're right. –  Roger Attrill Sep 20 '11 at 16:59

3 Answers 3

up vote 27 down vote accepted

Disable the submit button as soon as it's been pressed and show a message (or similar) to indicate the action is being processed. Disabling the button prevents repeat clicking and feedback lets the user know that something is happening.

Sometimes it can seem a bit like the feedback comes back too quickly, and users can feel more comfortable if they see a busy spinner, even just for a second, before the success message appears, because it really looks like the system was busy doing something.

enter image description here

You might not need to say Thank you if this is a very frequent action or if your user's won't appreciate the nicety - just say Scheduling report...!

Make the message friendly and if there is some time between pressing the button and getting confirmation that the request has been handled, then give some indication of the length of time that might be involved.

If the request were to happen right away and could take a very long time, it might be a good idea to 'bank' or queue the request and either email the user or popup a notification when the report has finished (eg like the notification bars here on stack exchange) - and of course with a link to the output(s) that are queued. Amazon and PayPal do this when generating very long reports. Somehow they calculate whether the report can be done in a reasonable time or whether it needs this kind of queuing or notification.

share|improve this answer
    
+1 this is a pattern I've used successfully before, after our testing revealed that users (quite reasonably) expected feedback on pressing a button. It's simple, efficient and clear. –  Janel Sep 20 '11 at 11:01
    
When would the button be re-activated? How would that state look? because it would have to communicate the previous state... –  colmcq Sep 20 '11 at 14:52
    
Well presumably you'd reactivate the form if a) the page got refreshed, or b) if the user changed something on the form that means it's now a different report that is being prepared for schedule, or c) you have another button appear that says 'Schedule another report' - which maybe activates the button, removes the success message and perhaps puts focus back at the top of the form for the user to start again (it doesn't have to necessarily clear the form). This bit depends on context (which we don't have full details) and what's appropriate in the given scenario. –  Roger Attrill Sep 20 '11 at 15:10
    
thanks @RogerAttrill This is an excellent reccommendation! –  lamostreta Sep 21 '11 at 8:26
    
"Users can feel more comfortable if they see a busy spinner, even just for a second" - very good point! –  Ilari Kajaste Oct 26 '11 at 6:13

You could say something like: Thank you. An email confirming your selection has been sent to you containing an example report.

Then send them an email with a sample report. This is mostly so that there is some action that they can see, as well as an opportunity for them to see what they would be getting and decide if they want to change the frequency.

share|improve this answer

If I'm interpreting you correctly, this form lets the user replace any existing reports criteria and ask your application to change its behaviour starting immediately.

If this is the case, might I suggest you design and word your interface as a 'save preferences' form? Users understand the idea of saving behaviour settings without prompting an immediate response.

In this case, I'd make my button say not 'Submit', but 'Save', and after clicking, replace with the message "Settings saved successfully!".

share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

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