September 30, 2016
Software Bug Causes Recall Of Millions Of GM Vehicles
GM has given the world a first: a recall of up to four million of the vehicles it has manufactured. Of course, recalls are nothing new, especially in the auto industry. However, what makes this one unique is that the recall is being issued because of a bug in the software of GM vehicles that causes the air bag deployment system to enter diagnostic mode, and, as a result, fail to deploy.
The bug has been responsible for at least one death, and as a response, the company is recalling all vehicles that bear software containing the bug.
Security researchers have been quick to point out the glaring flaw in GM’s deployment. The company currently has no way to update the software that resides in its vehicles remotely. As a result, people have no choice but to take their cars back to the dealership to get the software updated.
Unfortunately for GM, this tactical error on their part (no automatic update system) will likely wind up being an expensive mistake that they could have avoided entirely if they’d had one in place.
Although this is the first such instance we’ve seen reported, it certainly won’t be the last. Cars are increasingly filled with electronics that are managed by increasingly complex software, and as anyone who writes or works with software knows, bugs are inevitable. They are a fact of life, and as we come to rely increasingly on computerized monitoring of various aspects and components inside our vehicles, problems like these will only become more commonplace.
Of course, to a certain extent, GM can be forgiven for this mistake. They are not, after all, a technology company, and as such, they have limited experience in dealing with software and the problems that can creep in.
On the other hand, software is a fairly well understood industry at this point, and the potential problems that can arise as a consequence of any software development are pretty well understood. Kudos to GM for being highly responsive, but shame on them for not being more responsible on the front end.