I needed to make an appointment with a government agency that gives me a choice of three different days and locations.
The process seemed more straight-forward and much simpler than I expected, until I realized they were leaving out one critical piece of information that was really required to be presented first.
I don’t know if the person responsible was a county employee, or a project manager or programmer at the company paid to implement the sign-up form, but they all had a part to play.
The choices were Thursday, Friday, or Saturday, and San Mateo, Daly City, or South San Francisco. But no addresses were provided! I could make multiple appointments to overcome the limit imposed by another silly rule, but it wasn’t until I booked all the appointments that I was shown the address.
Without that critical piece of information, I had to determine which location and time were most convenient.
When I saw the address, I was frustrated. Why there? It’s out of the way and not at all convenient. (For me, but I bet it’s the most convenient for their personnel.)
Had I known the location in advance, I would have chosen a different time, or perhaps a different service altogether.
Software designers need to put themselves in the mindset of the ultimate end-user whenever they are asking for input, and ask themselves these questions:
- Is all the information I need to determine how to proceed available to me?
- Is anything confusing or in the wrong order?
- Am I having to remember what I did or read in a previous step before continuing?
- Am I having difficulty making a decision because I’m not sure what questions or steps have yet to come?
There are more things the software designer needs to be concerned with, of course, but they must never structure things in a way that makes the end-user wonder.