Like them or not, self-checkout machines are well and truly taking over the world. For the most part I find them quite tolerable, but they are deservedly not a technology with a reputation for good interaction design.
Of all the things that are wrong with the experience, I think Tesco's "traffic lights" system is by far the most broken. It's the sort of thing you'd expect to find as an example of "what not to do" in an interaction design textbook: take a universally well-understood visual metaphor such as traffic lights and twist it beyond all recognition. This annoys the crap out of me every time I go to a Tesco, so I'm just going to blog about it and hopefully get it out of my system.
Traffic Lights In The Real World
You're already familiar with the idea of traffic lights, but just for the sake of being thorough, let's quickly recap how they work.
Traffic lights turn green when the time has come for those watching them to begin moving again. And red is the opposite: time to stop. Even very young children understand how traffic lights work in the real world.
Traffic Lights In Tesco
It's easy to imagine why this must have seemed a good metaphor to the team designing the UI for Tesco's self-checkouts. So then, how did that team choose to apply the metaphor in terms of people moving through Tesco's checkout process?
Imagine you're designing this system. What's the most important use-case? It's the people waiting in the queue, trying to spot checkouts becoming available, right? So then, how do we get the message to these people? Is there a traffic light colour traditionally associated with the end of a period of waiting and the beginning of movement? It's green. Green. Green means "go".
Well, no, not according to the people who built this system. Those people apparently didn't think any of the colours were up to this task, so they simply decided not to use any of them and turn all the lights off to indicate that the checkout is available. At the very first hurdle the traffic light metaphor has been abandoned. Real world traffic lights only switch off entirely when they are broken, and incidentally, the ensuing traffic chaos looks a lot like the self-checkout queue in a Tesco.
Not only does this choice destroy any of the traffic light metaphor's helpful familiarity for those running the self-checkout gauntlet, but now you also have to try to spot the ones whose lights are off in order to pay for your stuff. This is harder than it sounds when there are a dozen or so other sets of traffic lights partying hard all around you. In some Tesco stores, a member of staff has to walk up and down non-stop shouting "self-service please!" at the top of their lungs and gesturing towards available checkouts just to keep the queue moving.
The other colour choices aren't much better. Once a customer begins to use a self-checkout, the light finally turns green. The stupidest thing about this is that it turns green after the user has taken the initiative to walk up and try the checkout. The change of colour does nothing except tell that person that they are now paying for their groceries, which they already know because at that very moment they are in fact experiencing themselves paying for their groceries.
Sometimes, while scanning items, the light changes from solid green to flashing green. I have no idea why this happens, because I only look at the lights while in the queue, and never refer back to them while actually scanning my own shopping to see if they have begun flashing green. However, note that so far I've described three different traffic light states, and of them only one - solid green - corresponds to an actual real world traffic light state.
The only other state I've noticed is the red flashing light meaning "Staff assistance needed", and it's yet another state that does not occur in real world traffic lights. I'm sure there are others, and presumably the amber light does see occasional action for some meaning or other.
How It Should Be
Let's assume that the traffic light metaphor is the only option available and look at applying it sanely to the self-checkout queue.
Just like with real traffic lights, in this version green means "go" and anything else means some variant of "wait". The green light serves as an unambiguous beacon to those at the front of the queue, allowing the overworked staff to rest their voices. Red still means the same thing as before only without the confusing flashing, and now at least amber is getting put to some use instead of sitting idle while the other lights work double-time around it.
I've often also thought that the traffic lights system could use a bit of documentation in the form of a little poster near the queue explaining the lights. However, this is almost certainly just a symptom of how baffling the current system is. Ideally no documentation should be needed for something as simple as this, and if Tesco had actually stayed faithful to their chosen metaphor I don't think there would be a problem.