Freudenberg said that most vehicle software monitors sensors that provide diagnostic information on mechanical parts of the car and its engine. The average Ford in 2010 had 10 million lines of code, more than the Boeing 787 Dreamliner.
As the number of embedded systems (software that works inside other devices) increase, so does the possibility for unanticipated failures. That’s because engineers can’t test for every combination, Freudenberg said.
“Software has tens of thousands of variables that interact in all kinds of ways,” Freudenberg said. “There are bugs that only occur in certain circumstances, you can’t predict.”
While cars are safer than they were decades auto, automotive engineers have loaded up vehicles with lots of things that aren’t related to driving.
“A lot of people like convenience,” said Arthur Wheaton, faculty member at Cornell University’s lnstitute for Labor Relations. “It’s getting exponentially worse where we are putting tele-informatics into the car so that it can work with an iPhone or something else. Each one of these has forced the level of complexity through the roof.”
Wheaton noted that Detroit automakers are under pressure to keep costs down, as as a result, are outsourcing more of their software coding to programmers overseas. That makes it more difficult to integrate it into the rest of the vehicle and check for bugs.
“It’s difficult to dedicate the amount of resources to make sure it’s foolproof,” Wheaton said. “If you were trying to make it engineering perfect you would have to spend an outrageous amount of money.”
In the end, though, auto manufacturers end having to pay.