It's not like redundancy we are talking about in a bridge means having superfluous pillars but that it can fail gracefully that can be handled and fixed without catastrophe. Error checking can achieve a similar goal in software.
That's exactly what we are talking about with bridge design: Overbuilding it so you can lose an element without the bridge collapsing.
There really isn't a concept of a bridge "failing gracefully". Any failure is a disaster. You can talk about a bridge being functional even after it becomes weakened by the elements or overloading or poor maintenance or some other condition, but that is another case of overbuilding.
I guess what I'm saying is that software and bridges are not very similar.