如何检查抄袭源代码 - 作业?
问题描述:
我如何判断两个源代码(独立于它们的语言C,Java,Lisp ...)有强烈的迹象表明它们可能会相互剽窃?如何检查抄袭源代码 - 作业?
背景:我要给我的第一个计算机语言研讨会。我们为C/C++,Python,Java等......以及OCaml,Haskell等主要编程语言编写了小练习,为学生们提供了一些实用的介绍(也涉及编程范例)。我们估计有大约300名学生每人有超过50个编程任务。所以一个人不能检查所有的作业。
我想用于自然语言(散文,论文,书籍章节等)的反剽窃技术不适用于源代码,对吧?由于所需的接口,这些编程任务的解决方案也会具有内在的相似性。
我已经做了一些搜索,发现:Checking for code plagiarism with JavaScript和Variable renaming for plagiarism detection for C/C++
答
奖检测它一个小奖:中提到MOSS。考虑到两杯啤酒的可能性,学生们会将网倒在网上数小时,寻找其他学生提交的作品。
对犯罪行为处以巨额罚款,这是自负盈亏,奖励学生们自己做工作 - 他们想要啤酒,并且不会为自己的剽窃工作而开放报复。
不错的主意。我想你可以在上面写博士:) – gefei 2012-04-25 09:39:02
最近有人测试了一些关于科学家庭作业的剽窃检测软件(所以这里没有检查源代码):http://plagiat.htw-berlin.de/software-en/test2013/但仍可能对其他家庭有用。 – math 2013-10-08 06:20:36
关于源代码抄袭检测的几篇论文在这里找到:http://www.ics.heacademy.ac.uk/resources/assessment/plagiarism/research_sourcecode.html – ElFik 2014-01-08 11:34:41