What Could Possibly Go Wrong?
An ethical and practical perspective on our technology-driven world
Software is everywhere, permeating our society and influencing every aspect of our lives. It can and does bring enormous benefits, but it can also do great harm.
Decisions once made by humans are now often made by algorithms, prompting one writer to comment that, “We are increasingly…abdicating our power to make decisions based on our own judgement, including our moral convictions.” Yet many of the models and criteria used in AI systems to assess human behavior and motives are unproven at best and at worst, based on junk science.
An algorithm decides if you should get a job interview or if your CV should go on the discard pile. If you get that interview, another AI system may analyse your words and facial expressions to decide if you are a trustworthy person. Meanwhile, a workplace surveillance system could be making judgements about your productivity and interactions with your co-workers, and ultimately determining your compensation, promotional prospects, and future with the organisation.
More critically, software systems on two Boeing MAX 737 planes interpreted the signal from a faulty sensor and decided on a course of action that crashed the planes, killing hundreds of people.
In this keynote, Fiona Charles explores the practical things that testers can do to help maximize the benefits of all this software and minimize the harms.
About the full day Tutorial
Mastering the Power of Heuristics to Test Software and Solve Problems
In the fast-moving world of agile and devOps, smart testers use heuristics as quick-start guides to generate test ideas and identify where they really need to focus.
Variously defined as “fallible methods for solving problems” (Bach & Bolton) or “rules of thumb” (Feynman), heuristics are essential tools for thinking agile test practitioners.
When you base a test on a model like “follow the money”, or adopt a leadership pattern where you challenge your team members with stretch goals, you are working with a heuristic. In each case, the model may be applicable and useful in some contexts, and irrelevant or even detrimental in others.
You can find excellent sources of testing heuristics online, and that’s a great way to start. But true mastery comes with learning to assess the usefulness of those methods for solving your testing problem, and with developing and evaluating your own heuristics.
In this workshop, we will explore the use of heuristics in problem solving and software testing. Working in groups, participants will have opportunities to design heuristics to solve particular problems, apply them to problem solutions, then critique their models and share their conclusions with other groups.
The session will be highly interactive, consisting principally of problem-solving exercises and debriefs. Intentional use of heuristics requires both creativity and critical thinking skills. Come prepared to practice and extend yours!