A more scalable approach is to use paper ballots with optical scan followed by a risk-limiting audit [2]. This still provides software independence, but at a much lower cost.
The following blog series on why voting is hard goes into this in more detail: https://educatedguesswork.org/posts/voting1/, https://educatedguesswork.org/posts/voting-hcpb/, https://educatedguesswork.org/posts/voting-opscan/, https://educatedguesswork.org/posts/voting-vbm/, https://educatedguesswork.org/posts/voting-dre/
[0] https://educatedguesswork.org/posts/voting-hcpb/#scalability
[1] https://www.usenix.org/legacy/events/evt08/tech/full_papers/...