According to Electronic Frontier Finland (EFFI), usability problems with voting machines led to 2% of votes being lost in recent municipal elections. From EFFI's post:
Today, the Ministry of Justice revealed that due to a usability issue, voting was prematurely aborted for 232 voters. The pilot system was in use in three municipalities; this amounts to about 2 per cent of the electoral roll. Seats in the municipal assemblies are often determined by margins of only a couple of votes.
It seems that the system required the voter to insert a smart card to identify the voter, type in their selected candidate number, then press "ok", check the candidate details on the screen, and then press "ok" again. Some voters did not press "ok" for the second time, but instead removed their smart card from the voting terminal prematurely, causing their ballots not to be cast.
This usability issue was exacerbated by Ministry of Justice instructions, which specifically said that in order to cancel the voting process, the user should click on "cancel" and after that, remove the smart card. Thus, some voters did not realise that their vote had not been registered.
[Added 29th Oct:] There has now been at least one report of touchscreen issues. A voter had repeatedly tried to click on "ok", but either due to system lag or touchscreen sensitivity problems, it took "minutes" to get the button press registered. If hit by this type of problem, the voters may well have thought that the ballot casting process had completed.
Link: Finnish e-voting fiasco: votes lost
98% reliability would not be bad for a lot of products, but voting needs to be 100% reliable for everyone.
The Finnish Ministry of Justice has a flash demonstration of the voting procedure (pictured below), though it doesn't really shed much light on the problems.
I do, however, like this warning message: "NB! Do Not Use Leading Zeros!" (I assume that's what the Finnish instructions say too, but I don't read Finnish). I'm having trouble imagining why this software couldn't be made to handle leading zeros intelligently (the way that most calculators and remote controls do). Is there any excuse for that aside from programmer laziness?
Via slashdot and Human Factors blog.
See also this item in RISKS digest.
It has been also hinted that the system was not subjected to any testing on actual users. (Being involved with quite a many tests I think possibility to this problem would have been found quite easily). Even some minor tweaks in wording could have improved the system. Testing, solution mock up and validation cycle would have taken only a couple of days.
Posted by: VM | October 29, 2008 at 11:07 PM