Visible to the public Measuring Code Behavioral Similarity for Programming and Software Engineering EducationConflict Detection Enabled

TitleMeasuring Code Behavioral Similarity for Programming and Software Engineering Education
Publication TypeConference Paper
Year of Publication2016
AuthorsSihan Li, University of Illinois at Urbana-Champaign, Xusheng Xiao, NEC Laboratories America, Blake Bassett, University of Illinois at Urbana-Champaign, Tao Xie, University of Illinois at Urbana-Champaign, Nikolai Tillmann, Microsoft Research
Conference Name38th International Conference on Software Engineering
Date Published05/2016
Conference LocationAustin, TX
KeywordsNSA SoS Lablets Materials, Science of Human Circumvention of Security, science of security, UIUC
Abstract

In recent years, online programming and software engineering education via information technology has gained a lot of popularity. Typically, popular courses often have hundreds or thousands of students but only a few course sta members. Tool automation is needed to maintain the quality of education. In this paper, we envision that the capability of quantifying behavioral similarity between programs is helpful for teaching and learning programming and software engineering, and propose three metrics that approximate the computation of behavioral similarity. Speci cally, we leverage random testing and dynamic symbolic execution (DSE) to generate test inputs, and run programs on these test inputs to compute metric values of the behavioral similarity. We evaluate our metrics on three real-world data sets from the Pex4Fun platform (which so far has accumulated more than 1.7 million game-play interactions). The results show that our metrics provide highly accurate approximation to the behavioral similarity. We also demonstrate a number of practical applications of our metrics including hint generation, progress indication, and automatic grading.

URLhttp://publish.illinois.edu/science-of-security-lablet/files/2014/05/Measuring-Code-Behavioral-Simil...
Citation Keynode-27168

Other available formats:

Measuring Code Behavioral Similarity for Programming and Software Engineering Education
AttachmentSize
bytes