Another look at how to get "NASA like" confidence is provided by Richard Feynman[2] and Diane Vaughan[3].
[1] http://www.fastcompany.com/28121/they-write-right-stuff [2] http://science.ksc.nasa.gov/shuttle/missions/51-l/docs/roger... [3] http://www.amazon.com/The-Challenger-Launch-Decision-Technol...
And the software development process is pretty standard waterfall. And yes they absolutely test that software to the hilt. Generally though the software is architecturally quite basic i.e. they don't do anything too fancy.
If it's NASA confidence, waterfall every time :)
Having worked in that sort of environment (everything about the system has been analysed on paper before a text editor is launched), don't knock it until you've tried it. This wasn't rocket science either, it was export refund batch jobs. In the 21st century.
I was a bit confused initially as to how a mechanical problem can be solved by a software update, but then someone explained in one of the comments that it's about fuel-injection tables and stuff.
Incredible, but just a bit scary too.
I really hope they test that software to the hilt - I mean like NASA style, slow but steady kind of stuff. I wouldn't want to go 1 feet near the car if the quality is in the same quality vicinity as 99% other software (and that includes software that we generally consider "good quality").
Anyone knows what their software development process is to get that kind of confidence?