Requirements Engineering for Electronic Voting Systems

Just back from a workshop on Requirements Engineering for Electronic Voting Systems, which took place in Trento earlier this week. I was presenting a paper about our findings from some focus groups we ran on our prototype secure voting system `Pret a Voter’. In a nutshell: people were fine using the system to vote, but were less keen on doing security checks. We’re currently revisiting the best way of doing those checks.

The workshop covered a broad spectrum of topics. One talk described a formal logic for specifying pure forms of voting requirements. There was a panel discussion on verifiability. The keynote speaker talked about experiences and issues in international election observation. There was a clever ballot stuffing attack on a postal voting system. One talk was about a system in Germany that has to manage an election with over 500 candidates, and voters cast 71 votes each! They are finding that this is becoming too hard to do on paper (the paper ballot form is about 1m wide) and looking for technology to help them out. It’s not as easy as it looks. Another talk was about a `traffic lights protocol’ to tell users when they have filled out their ballot form correctly, with red, orange and green for the various stages they could be at.

It’s always stimulating to hear interesting talks, and to have some intensive discussions with other researchers in the field. What I also got out of the workshop was a better appreciation of the relationship between the theory and the practical issues. I’ve gained more insight into what’s needed on a practical level to make our system suitable to run an election, and this will feed back into our research.