Is it working? Did I do something wrong? Why aren’t the doors opening?
The button to open the doors of a “kystbanen” train I rode today has a very annoying design flaw: lack of feedback. I’ve used this type of train quite a lot, and many times I’ve seen people being confused and pressing the button multiple times to open the doors.

Now, let’s say that you have used this train before, so you know that the door takes a while to open and that you only need to press the button once. So you wait patiently. They take a while to open you know this. But after a while you will realize that it’s not opening. So you press it again and wait again. Did it work now? Yes. You’re out, 10 seconds later than you could have been and maybe slightly embarrassed that you didn’t know how to operate something as simple as a door and kept the 5 other people behind you waiting as well.
Why didn’t it open upon the first button press? Because button presses are only received after the doors have been unlocked. If you press the button when the train has stopped but before the doors are unlocked, you will have to press to button again.
The problem with this door opening design is lack of feedback. The passenger doesn’t know what’s going on.
Donald A. Norman writes about this in his book “Emotional Design” (my emphasis):
An important concept of understanding comes from feedback: a device has to give continual feedback so that a user knows that it is working, that any commands, button presses, or other requests have actually been received. This feedback can be as simple as the feel of the brake pedal when you depress it and the resultant slowing of the automobile or a brief light or flash or sound when you push something.

Now the dark ring in the button (as seen in the top picture with the yellow door) has some LEDs that lights up and show a green circle when the doors are “unlocked” and you will hear a beeping sound. So the designers thought of giving the passengers a cue when the button is ready to be pressed. That is at least something. And the button has a tactile feel, so you can feel that you’ve pressed the button. But there’s no feedback telling you if the button press is received and the doors are actually opening.
How could the system give better feedback? How would I have designed it differently? One way would simply have the doors open immediately with a delay of no more than one second. I’m sure that there are good reasons for the doors to take longer to open though, so let’s look at another solution.
A sound or a visual cue could provide feedback when the button press is received. For instance play a sound and let the LEDs light up in an animated circle like an AJAX type spinner
. Then you would have a clue that the doors were opening and you could relax and wait.
With this small design change, the passengers would be a little less annoyed, wait a little bit less and the trains could leave the stations a little sooner.
So the lesson is: let the user know what’s going on with the system they are using. Provide the necessary feedback.