Swedish auto manufacturer, Volvo, has an ambitious goal of reducing accident-related fatalities to 0% by 2020. And central to this mission is the company’s line of self-driving cars. Volvo is already well on its way thanks to on-board detection systems that can help cars automatically avoid moose, deer, and other large game.
But the vehicle manufacturer has “hit” an unexpected roadblock.
Volvo’s collision avoidance technology is incapable of detecting kangaroos – due to their unusual shapes and erratic jumping patterns.
The company is currently aware of the problem and trying to fix it. But this story highlights a fairly common issue that crops up in the world of software testing.
Testing for Kangaroos in the Code
As QA professionals, we use a limited range of tools to look for a limited range of bugs. And even in our most creative moments, we’re still building on prior knowledge, past tests, and personal experience.
In strictly “automotive” terms, most of us would never think to develop and test a detection system for kangaroos – simply because most of us have never met a kangaroo face-to-face. These jumping marsupials are not part of our daily experience – despite the fact that kangaroos are the leading cause of animal-related accidents in Australia.
There are questions (i.e. tests) that never really occur to us because we don’t have the lens or vocabulary to even ask. In effect, we are prisoners of our own culture, surroundings, education, age, gender – and in this case – geography.
But although these limitations exist at the individual level, it doesn’t mean we are forever doomed. There are ways to get around the inherent biases that we all have.
One common method is to spend more time brainstorming unlikely problems and how best to fix them. Shell has used this “scenario planning” for years, helping the oil and gas company avoid, mitigate, and resolve numerous catastrophes.
And if Volvo had investigated the leading cause of animal-related car accidents in each major market, its engineers probably would’ve stumbled upon (and resolved) the kangaroo issue much sooner.
But there’s a downside to this approach. Scenario planning is incredibly time-consuming. And almost by definition, you’re spending resources on Black Swan events that are unlikely to happen.
Fortunately, there are other ways to plan for the unplannable.
Using Diversified Testing Methodologies
Diversifying and using additional testing methodologies might help you to get to areas, and create tests, that were not tested with your main methodology. Consider using other methodologies, while still performing tests based on the main methodology.
Changes in the group’s work flow, and changes of the testers responsibilities are also possible ways to tackle the dead-area of testing. Routine is your enemy, and not only for finding those un-discovered scenarios.
Using Team Diversity to Avoid Groupthink
In an earlier series on the 6 Thinking Hats, we explored the benefits of having team members deliberately adopt various cognitive thinking styles when tackling big projects. Throughout the development and testing process, everyone on the team spends some time looking at the situation from a strictly managerial perspective. Then a logistical one – followed by emotional, critical, optimistic, and creative lenses.
The 6 Thinking Hats is a great starting point because it forces us to step outside of familiar comfort zones and “mentally” visit places where kangaroos actually do indeed exist.
But we recommend going even deeper by diversifying the actual individuals on your team. When everyone hails from different ethnicities, genders, age groups, and places of origin – this dramatically reduces the chances of overlooking obvious gaps. If Volvo had had more Australian engineers, for example, their collision avoidance systems would have undoubtedly included kangaroo detection from the very beginning.
Even having less experienced people on the team can be an asset since newbies ask questions that never occur to their more seasoned counterparts.
With remote offices and telecommuting, this diversification strategy is easier than ever. You can quickly cobble together a fantastic team from around the globe, with each member bringing his or her own assumptions, limitations, and hidden biases. But when they work together – and communicate often – all these individual blind spots start to cancel out.
So if you’re in the market for new testers, it pays to choose those who are as different from you as possible. There may be a learning curve as you iron out cultural, social, and geographic differences. But in the end, your users will thank you.
So will the kangaroos.