I was reminded recently of a story which the legendary stand-up comedian, Billy Connolly tells. I was lucky enough to see his show some years ago and, whilst I can’t hope to capture the story in quite the same way as it was told that night, I will relay it for you:
Billy and his crew were on their way to a gig (from memory it was in Liverpool), and were running late. To make matters worse, as they navigated the city’s streets they became lost in the one-way system. At various points they could see the venue in the distance, but couldn’t work out the appropriate route to take to get there. Becoming steadily more concerned, and in between hurling insults at each other, they decided to stop and ask someone for assistance.
They pulled up next to a woman who was passing, opened the van window, and called out. After describing their predicament to the lady, they asked for directions to the concert hall. Perhaps somewhat flustered by the presence of Billy Connolly, and almost certainly flummoxed by the complicated one-way system, she looked to her left, then to her right, scratched her head and said,
“I don’t think you can get there from here.”
This seems an excellent story to keep in mind for those of us who work in the development of new technology. We can sometimes be constrained by linear thinking, which can affect:
- the way projects and tasks are organised
- the way we go about fulfilling those tasks
- the way we think about how people will use technology
Rather like the poor lady in the story, our thinking can become muddled if we are under pressure, or perhaps if we are confused by the circumstances we find ourselves in. It might be difficult to see more than one way to solve a problem; our thoughts become focused on a single path, even if that path doesn’t get us to where we need to be.
Just as it is possible to get anywhere from anywhere else (albeit, perhaps by a complicated or circuitous route), it is also possible to take many different approaches to the way we work in order to reach the outcome we desire.
It shouldn’t surprise us if our customers take many different approaches too. They will sometimes use technology in creative, erratic or chaotic ways. If we forget this whilst we design, build and test technology, then we are less likely to deliver a product, an experience, which our customers might want or expect.
The way we work
It is probably fair to suggest that the last fifteen years have seen a change in the prevailing theories about effective software development. The linear, ‘waterfall’ approach which was previously dominant, is often now characterised as inefficient, unnecessarily laborious, and typically poor at delivering what was intended.
Many teams and organisations have attempted to move to more flexible and responsive approaches to delivering software, and in doing so they have also attempted to break some of the dependencies between activities and people involved in the endeavour.
Only the most evangelical advocates of Agile practices would suggest that adopting these techniques has solved, or will solve, all of the woes of software development. It is however, noticeable that the constraints of linear thinking in management and methods have been recognised and much conversation and debate is centred on ways in which more creative approaches might be taken.
Staying on track
These debates, and the means by which technology is developed may be of interest to the small percentage of the world’s population who work in this field, but of greater significance to much of the rest of humanity is a simpler concern – whether that technology helps them to do the things they need to do.
The truth is that when humans are using technology they are often likely to be distracted, perhaps forget what they were doing, or simply try something unconventional just for the hell of it. For software development professionals, the way we work (even for those who consider themselves beyond ‘traditional’ methods) can sometimes fail to take this into account.
We might, with the best of intentions, fall into the trap of thinking that customers will use technology exactly as we define, whether that be in User Stories, Requirements Documents, perhaps Acceptance Criteria or some other way. The means of capture is not really important; the point is that as soon as we put effort into capturing our understanding of how the product might be used, we are in danger of limiting our endeavours in such a way that we only address those linear paths.
Once we have an understanding of how our customers might use a product, surely the least we can expect from them is that they do the decent thing and actually use it that way?
Of course not. No matter how much effort we might put into understanding our customer, the truth is that for most products, ‘the customer’ is not a single person. Each customer may have a slightly different reason for using technology and a different way of approaching it. Over time, each customer’s reasons for and means of using technology might change. What we call user stories and requirements are not static.
Yet, the information which guides decisions about whether a product is ‘ready’ is often based on a linear and static interpretation of the ways that product will be used. Confirmatory testing is a great example of how we can be constrained, and perhaps misled by predicating our efforts on this interpretation.
Evidence that a path through a product is as described in a requirements document is not evidence that the product will fulfill all of our customers’ requirements, nor is it proof that the customer will not have serious problems when they use the product (at least no more than a smooth drive along a motorway is proof that all the other roads I could take are devoid of potholes).
An interesting way to observe the different ways in which people use technology is through eye-tracking, a technique which allows us to see how people view and use websites and mobile apps. A small camera follows exactly where a customer’s eyes look at a screen and this information is used to create a visual ‘heat map’ showing how the product was viewed.
In ‘Don’t Make Me Think’, the web design and usability expert Steve Krug uses this approach to provide a striking summary of the difference between how web designers might think people will use their websites and how they actually use them:
The designer’s view
Customers will take a linear approach; carefully reading the web page in much the same way as one might read a book. After reading a section of text and pausing for reflection, the customer will move on the next part of the web page. Once the entire page has been properly absorbed, the customer will carefully select the appropriate link within that page and click on it.
The customer’s view
Quickly scan the page for anything that might relate to what I am looking for. Click on the link. If the result is not what I was after, use the back button to go back and try again.
The first edition of Steve Krug’s book was written back in 2000 and since then, significant lessons have been learned in the way websites are designed. Among other things, the use of white space and the consideration given to the prominence of the most significant elements of a website have radically changed the way websites look. Designers have given greater thought to how people actually use websites.
If we want to produce technology which truly enhances the lives of our customers, sometimes it helps to think in a lateral rather than a linear way. We can do this by removing the assumptions and boundaries which may limit our thinking, by challenging our usual approach and by considering problems from a different perspective. We can distract ourselves with unrelated ideas and activities before returning to tasks. Perhaps most importantly, by keeping in mind that our customers may well do this too, we can help them get to where they want to be.
Definitions and further reading
Linear thinking is defined at dictionary.com as:
a process of thought following known cycles or step-by-step progression where a response to a step must be elicited before another step is taken
in contrast to Lateral thinking, which Oxford Dictionaries defines as:
- Edward de Bono’s explanation of Lateral Thinking: http://www.edwdebono.com/#!lateral-thinking/ge9l2
- Andy Ekelund: ‘Is Linear Thinking Bad?’ – http://www.andyeklund.com/is-linear-thinking-bad/
- Cecil Charles McCumber: ‘Non-Linear thinking’ – http://chuckslamp.com/index.php/2009/04/11/non-linearthinking/
- Dan Ashby on Lateral Thinking – http://danashby.co.uk/2012/07/12/lateral-thinking-fast-and-slow/
- Some Lateral Thinking exercises: ‘thoughts from the test eye’ – http://thetesteye.com/blog/tag/lateral-thinking/
- EuroSTAR presentation from Michael Bolton: ‘Critical Thinking for Testers’ – http://www.developsense.com/presentations/2012-11-EuroSTAR-CriticalThinkingForTesters.pdf