A while ago I wrote about software-independent voting mechanisms. The basic idea is that a paper trail exists to enable verification of election results. (More specifically, a way that this can work is that a voter's choices are printed out, verified by the voter, and then placed in an old-fashioned ballot box. Then, a random sample of the voting stations are checked - counting the physical votes against the tally given by the voting machine on site. The number of ballot boxes that need to be counted can be mathematically computed to give a very high level of confidence. Without getting too bogged down in details, this number is not too high and is a function of the gap between the winner and loser.)
This methodology is necessary because software is simply not reliable enough by itself. An argument against a paper trail is that audit logs record everything and so this suffices. This argument is weak because (a) the audit record may be incorrect to start with, and (b) something else can go wrong. Well, (b) happened! It turns out that Diebold's voting machines have an interesting "feature" - a delete button for erasing audit logs. Do we need any more proof?