Testing with Functional Reference Implementations
- 342 Downloads
This paper discusses our approach to test programs that determine which candidates are elected in the Scottish Single Transferable Vote (STV) elections. Due to the lack of properties suited for model-based testing, we have implemented a reference implementation in a pure functional programming language. Our tests revealed issues in the law regulating these elections as well as the programs implementing the rules that are offered for certification. Hence, certification by testing with a reference implementation is able to reveal problems in the software to be certified. Functional programming languages appeared to be an excellent tool to implement reference implementations. The reference implementation was developed quickly and none of the differences found was due to an error in the reference implementation.
KeywordsTest Suite Election Result Reference Implementation Election Rule Election Algorithm
Unable to display preview. Download preview PDF.
- 1.Aslaksen, H., Mcguire, G.: Mathematical aspects of irish elections. Irish Mathematics Teachers Association Newsletter 105, 40–59 (2006)Google Scholar
- 7.Koopman, P., Plasmeijer, R.: Generic generation of elements of types. In: Proceedings of the 6th Symposium on Trends in Functional Programming, TFP 2005, Tallin, Estonia, September 23-24, pp. 163–178. Intellect Books (2005) ISBN 978-1-84150-176-5Google Scholar
- 8.Plasmeijer, R., van Eekelen, M.: Concurrent Clean language report (version 2.0) (December 2001), http://www.cs.ru.nl/~clean/
- 9.The Electoral Commission. Vote Scotland, http://www.votescotland.com
- 10.The Scottish Ministers. Scottish local government elections order 2007. Rule 45–52 (2006)Google Scholar
- 11.Wikipedia. Single transferable vote, http://en.wikipedia.org/wiki/Single_transferable_vote