This paper is concerned with the presentation of a perspective on robustness in e-voting systems. It is argued that the effective design of an e-voting system and its viability can be enhanced by a two-pronged approach to robustness. First, it requires a clear distinction between two forms of robustness: robustness at protocol level and robustness at system level. Second, selected technologies should be integrated into an appropriate architecture in order to address robustness simultaneously at the two levels. The proposed approach is illustrated by the design and implementation of an e-voting system based on the FOO92 protocol. A service-oriented architecture supported by onion routing forms the basis of the system. It facilitates the distribution of tasks and state, the dynamic path configuration and the just-in-time (JIT) composition of the election system. The system conforms to most e-voting requirements.