Trusting the Cybercab with software quality

“We expect software to work perfectly,” the CEO of Dyntatrace, Rick McConnell proclaimed at the opening of the company’s European Innovate event in Amsterdam. This should not be an aspiration, but a moral imperative to any company charging for its software-enabled products and services. In what other sector is a flawed product allowed to flourish? Yet with October Patch Tuesday, the world’s Windows PCs received 117 patches of which three are rated as critical and four are zero-day vulnerabilities. Incidentally, two of the zero-day vulnerabilities are being exploited in the wild.

Flaws in software are poisoning the modern world and people’s day-to-day experiences. Elderly people queuing up at a Covid vaccine clinic were recently told there was a “a computer problem”, which meant the vaccine could not be administered. How often are we told that the computers are playing up and not behaving as they should, which, in other words, usually means that the human users know what to expect but the system is failing to follow the instructions or present the correct information.

Anyone who has driven a modern car with adaptive cruise control and lane assist technology is experiencing level 2 automation. The software is clever; it works pretty well most of the time. However, the decision making inside the autonomous driving software, will often do things that a human driver simply would never do. Some of these systems slam on the brakes and do an emergency stop, if they detect something in the way of the direction of travel. Yes it could be a child, or a dog, but the software is unable to fully understand the context. It is not so clever, after all: would you perform an emergency brake manoeuvre, and risk being shunted from behind, if a piece of litter blows in front of the direction of travel?

According to safety-critical software advocate, Dan O’Down, founder of the Dawn Project, unassisted full self-driving, cannot operate fully without a human’s assistance. Yet Elon Musk has been promising full self-driving, known as level 5 driving automation, for years. And Tesla has now announced Cybercab, a $30,000 self driving vehicle which the company claims will democratise transportation.

To become production-ready, any piece of software must pass a quality assurance threshold. In safety critical systems this needs to be set to 100%.

As Forrester’s VP principal analyst Paul Miller, notes, regulators around the world are approaching self-driving vehicles with extreme – and understandable – caution. “Tesla’s vehicles, sensors, and software will all need to be approved in any market they hope to enter,” he says.

But why stop at self-driving? Our growing reliance on digitisation means software quality has a material impact on everyone’s lives. Perhaps policy-makers need to address regulations for software quality.