The Space Shuttle does *not* use N-version programming - it uses identical instances of the same software, and uses redundancy to account for hardware failures. Again, a good explanation of the methodology used is at http://en.wikipedia.org/wiki/Space_shuttle.
I wonder if Jeremy read the Wikipedia article he linked to... currently it reads: "The Backup Flight System (BFS) is separately developed software running on the fifth computer, used only if the entire four-computer primary system fails. The BFS was created because although the four primary computers are hardware redundant, they all run the same software, so a generic software problem could crash all of them." http://en.wikipedia.org/w/index.php?title=Space_Shuttle&oldid=141962184 ------------------------------