@inproceedings{01d740465e6e4b7591c0a617dae66f0b,
title = "Code hunt: Searching for secret code for fun",
abstract = "Learning to code can be made more effective and sustainable if it is perceived as fun by the learner. Code Hunt uses puzzles that players have to explore by means of clues presented as test cases. Players iteratively modify their code to match the functional behaviour of secret solutions. This way of learning to code is very different to learning from a specification. It is essentially re-engineering from test cases. Code Hunt is based on the test/clue generation of Pex, a white-box test generation tool that uses dynamic symbolic execution. Pex performs a guided search to determine feasible execution paths. Conceptually, solving a puzzle is the manual process of conducting search-based test generation: The {"}test data{"} to be generated by the player is the player's code, and the {"}fitness values{"} that reflect the closeness of the player's code to the secret code are the clues (i.e., Pex-generated test cases). This paper is the first one to describe Code Hunt and its extensions over its precursor Pex4Fun. Code Hunt represents a high-impact educational gaming platform that not only internally leverages fitness values to guide test/clue generation but also externally offers fun user experiences where search-based test generation is manually emulated. Because the amount of data is growing all the time, the entire system runs in the cloud on Windows Azure.",
keywords = "Data-mining, Games for learning, Hint mechanisms, Pex, Source translation, Symbolic execution, White box testing",
author = "Nikolai Tillmann and Judith Bishop and Horspool, {R. Nigel} and Daniel Perelman and Tao Xie",
note = "Publisher Copyright: {\textcopyright} 2014 ACM.; 7th International Workshop on Search-Based Software Testing, SBST 2014 ; Conference date: 02-06-2014 Through 03-06-2014",
year = "2014",
month = jun,
day = "2",
doi = "10.1145/2593833.2593838",
language = "English (US)",
series = "7th International Workshop on Search-Based Software Testing, SBST 2014 - Proceedings",
publisher = "Association for Computing Machinery",
pages = "23--26",
booktitle = "7th International Workshop on Search-Based Software Testing, SBST 2014 - Proceedings",
address = "United States",
}