Not directly software related, I wonder about UX design in public transit busses.
In Germany, some time ago there was a simple system in public transit busses: If the bus was quite empty, and no one waiting at a stop, one had to push a button (of many spread throughout the car) to make a bell ring, and a sign light in the front saying 'WAGEN HÄLT' (literaly: 'car stops'). The driver and all passengers then knew the bus would stop at the next stop.
The system is still used today, only the sign reads 'STOP' now.
However, there are long buses, with three door units. In the old days, the driver would have to check by rear mirrors which doors to open, or just opened them all.
About 10 years ago, a system was employed with a small box beside the rear doors that has a knob too. Pressing the knob would activate the usual
STOP sign and bell, but light a sign
WAGEN HÄLT at the box too. If light, the door would open upon the next stop, otherwise usually not. The driver doesn't have to check the mirrors anymore. The box was akward, as the text suggested it to resemble the
STOP sign mechanism, while it clearly does not.
Now today, there is a new box, reading the word
FAHRGASTWUNSCH, meaning 'passenger request'. The box also has a
WAGEN HÄLT light, but now synchronized to the main
STOP light. If pressing the button, it does the same as the old box: Activate
STOP if not already, and request the door to open. Additionally, the text
TÜR ÖFFNEN ('open doors') lights up, with an arrow pointing at the button. It also lights up if the bus actually stops, but the door is still closed. While this is describing the buttons function at stop correct, it is wrong while driving, as it motivates to press the button to open, but actually it confirms the button was already pressed, and the door would open without further action needed.
I wonder if this systems are this misleading by error, or by cause? Are there psychological considerations, that allow these UIs to perform better for the means of efficient bus traffic, even if they seem wrong to the user?