Code hunt: Searching for secret code for fun

Nikolai Tillmann, Judith Bishop, R. Nigel Horspool, Daniel Perelman, Tao Xie

Research output: Chapter in Book/Report/Conference proceedingConference contribution

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.

Original languageEnglish (US)
Title of host publication7th International Workshop on Search-Based Software Testing, SBST 2014 - Proceedings
PublisherAssociation for Computing Machinery
Pages23-26
Number of pages4
ISBN (Electronic)9781450328524
DOIs
StatePublished - Jun 2 2014
Event7th International Workshop on Search-Based Software Testing, SBST 2014 - Hyderabad, India
Duration: Jun 2 2014Jun 3 2014

Publication series

Name7th International Workshop on Search-Based Software Testing, SBST 2014 - Proceedings

Other

Other7th International Workshop on Search-Based Software Testing, SBST 2014
Country/TerritoryIndia
CityHyderabad
Period6/2/146/3/14

Keywords

  • Data-mining
  • Games for learning
  • Hint mechanisms
  • Pex
  • Source translation
  • Symbolic execution
  • White box testing

ASJC Scopus subject areas

  • Computer Science Applications
  • Software

Fingerprint

Dive into the research topics of 'Code hunt: Searching for secret code for fun'. Together they form a unique fingerprint.

Cite this