Division of Computing Science and Mathematics, University of Stirling, UK