- Title
- Disguising code to help students understand code similarity
- Creator
- Karnalim, Oscar; Simon
- Relation
- Koli Calling '20: 20th Koli Calling International Conference on Computing Education Researchting Education Research. Proceedings of the 20th Koli Calling Conference on Computing Education Research (online 19-22 November, 2020)
- Publisher Link
- http://dx.doi.org/10.1145/3428029.3428064
- Publisher
- Association for Computing Machinery (ACM)
- Resource Type
- conference paper
- Date
- 2020
- Description
- To act with academic integrity in programming, students need to understand the concept of code similarity and the aspects that contribute to it, because undue similarity is often used as a first step in detecting plagiarism or collusion. However, if students are told at all about code similarity, it is typically in very general terms, which might not be clear to all students. This paper proposes CSD, a tool to independently educate students about code similarity through the application of semantic-preserving disguises. Given Java or Python code, CSD will disguise the code without changing its semantics. CSD can apply 60 types of disguise covering five code components: comments, white space, identifier names, data types, and constants. The tool will be integrated into a submission system, so that each time a student submits their code, they will be shown a version of the code with some disguises applied, along with a related explanation. This is expected to motivate further use of the tool while educating students about the futility of trying to copy and disguise code.
- Subject
- code similarity; code disguises; plagiarism; collusion; academic integrity; programming
- Identifier
- http://hdl.handle.net/1959.13/1435225
- Identifier
- uon:39650
- Identifier
- ISBN:9781450389211
- Language
- eng
- Reviewed
- Hits: 543
- Visitors: 540
- Downloads: 0
Thumbnail | File | Description | Size | Format |
---|