User Experience Stack Exchange is a question and answer site for user experience researchers and experts. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

This is the feature I need:

Think of yourself as a part time employee. You are allowed to enter up to 2 time intervals to specify your availability for the day.

So there are 4 textboxes/timepicker.

  • Availability 1 start time
  • Availability 1 end time
  • Availability 2 start time
  • Availability 2 end time

I am thinking to guide the user to make a valid request,

  • All inputs except availability 1 start time is enabled
  • As availability 1 start time becomes valid, I enable availability 1 end time
  • When availability 1 pair is valid, I enable availability 2 start
  • When availability 2 start is valid, I enable availability 2 end
  • Same in reverse, if availability 1 end becomes invalid, availability 2 is disabled

But looking at this, it looks complex to develop and possibly confusing to the user. How would you go about this? Perhaps just have all inputs enabled, then show error messages?

This is made more complex as its a "realtime" app, so as inputs are changed and valid, they are saved. What might a user expect if availability 1 is cleared/invalid while availability 2 is still there? An error message is shown, but no save is made.

share|improve this question
What is the minimum shift duration for the part-time workers? Is there a fixed shift time period? Is there also a maximum number of hours they can work in a day? Thinking about these questions should help you with the controls and logic you can add to make things easier for the end-user. – Michael Lai Jul 31 '13 at 22:44

Try the following task flow.
enter image description here

Also I recommend to set default values for the time intervals based on user history. Otherwise the system will be perceived as dummy memoryless one.

share|improve this answer

Your Answer


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.