This is a good step. Brazil has to be congratulated for its continued embrace of open source and resistance to vendor pressure.
One of the core arguments for free software is this: It is the answer to a world written in code. Or put differently, computers and the software that runs on it take increased control over all parts of our lifes. Laws govern our lifes and thus have to be public in order to be scrutinised and discussed and in order to know which laws to adhere to. Software increasingly governs our lives, and thus needs to be public for the very same reasons that laws are public. Why should we relinquish control to something that we have no insight into? Something that is entirely governed by vendor interests?
The legal requirements for security and auditability should be applied to all software used in the public sector. Open source is the only viable option here.
Nevertheless, personally I don't see anything wrong at all with the good old fashioned paper-and-pencil approach to voting. It has worked in the past, and vote counting is an inherently parallelisable task. But if we got to have voting machines then having their software open source is definitely a huge improvement.
Other related posts:
UK government supports open source
25 open source projects for software development
Dabbling in OpenSolaris
Comment by tjm1983, on 9-Apr-2008 16:19
Counting an STV election isn't a parallelizable task. If you want a voting system that lets voters rank the candidates, the Condorcet method can be better, partly because counting Condorcet elections is parallelizable. It's not necessarily so good for multi-winner elections, though; I'd definitely support using it to elect a mayor, but I'd be more careful using it to elect a city council.