I recently read
The Design of Everyday Things by Don Norman.
In the book, there was an entire section about how we usually get the design of light switches wrong and what we can do to make it better.
It got me thinking about my experiences with light switches and other frequently used items. It made me realise how I can make a difference to the experience of a product as a tester.
I recently purchased a floor lamp that came with both uplighter and a reading lamp. Please see the image below.
It has two different switches - one to control the uplighter, and the other to control the reading lamp. It gave me the flexibility to turn on and off the lamps as I wanted.
My conceptual model of the switches was simple. The switch on the left would control the lamp on the left (in this case, the reading lamp), and the switch on the right controlled the lamp on the right (in this case, the uplighter).
It was perfect, and I had absolutely no issue trying to remember which switch belonged to which lamp.
But, this conceptual model proved incorrect the moment I moved this lamp to the other side of the bed.
I had to now move the reading lamp to the right, and the uplighter was to the left. The position of the switches remained unchanged.
Did the switches work according to my conceptual model? No they did not!
Now, the switch on the left controlled the lamp on the right and vice versa.
This was confusing. I almost never got the correct lamp turned on in the first attempt. The only times I did get it right were when I was completely focused on this simple action of turning on a light bulb.
Also, every time I turned the wrong light on, I would scold myself for being forgetful and then correct my action. Yes, I blamed myself for this mistake!
But, after I read Don Norman’s book, I realised that this issue could have been easily solved by simple design changes. In fact, it was a design issue and not my error.
The switches could have been placed vertically on the panel and then I would know that the one above was always for the uplighter.
Or the switches could have been placed closer to the lamp it belonged to.
But unfortunately, that wasn’t the case. The switches were horizontally placed one beside the other and so, my conceptual model of left switch for the left lamp proved incorrect when I moved the lamp to the other side.
There are many such simple day to day tasks which we might get wrong due to design flaws. Similarly, we might come across such design flaws in the products that we ourselves build.
As testers, we should not just check if our product is as per the design and specifications stated. We need to go beyond that.
We need to experience the products in the ways an end user would use it.
When we discover instances where such mistakes are possible, we should seek to understand the root cause.
Very often, we might uncover that the design, even if according to the specifications, might not be intuitive enough to perform the action correctly.
Then, we should collaborate with the team members to improve the design and also improve the overall experience of the product.
Of course, this light switch issue might not seem like a critical design flaw. It only takes a few seconds to
correct the mistake and doesn’t really cause any harm.
However, a design flaw in some applications that we might be building could cause more damage.
Imagine building a navigation app whose counter-intuitive design makes the driver look at the screen for a few seconds longer in order to comprehend the instructions. It could lead to accidents and fatalities.
Or think of why some airlines instruct the passengers to save their work before putting their laptops away for landing. Could it be because some people forgot to save and lost a lot of critical work? Could this be fixed easily if the application designers realised that humans forget and included an auto-save functionality?
We as testers need to use and experience the products as our end users would.
We should try to understand human behaviour, acknowledge that we can easily get distracted,
recognise capabilities and understand difficulties that humans face.
With these things in mind, we should try to uncover areas that need improvement. This way, we can help our users have a better product experience.