web-dev-qa-db-fra.com

Comment vérifier les devoirs de code source pour le plagiat?

Comment puis-je dire que deux codes source (indépendamment de leur langue C, Java, Lisp ...) ont des indications fortes qu'elles pourraient être plagiates les unes des autres?

Contexte: Je vais donner mon premier séminaire sur les langues informatiques. Nous avons préparé de petits exercices pour de grandes langages de programmation telles que C/C++, Python, Java, ... mais également Ocaml, Haskell, ... Donner aux élèves une introduction pratique (aussi dans les paradigmes de programmation). Nous estimons avoir ~ 300 étudiants ayant plus de 50 tâches de programmation par personne. Donc, une seule personne ne peut pas vérifier toutes les devoirs.

Je suppose que les techniques anti plagiat utilisées pour les langues naturelles (essais, papiers, chapitres de livre, etc.) ne fonctionneront pas pour le code source, non? De plus, des solutions à ces tâches de programmation auront une similitude inhérente due à l'interface exigée.

J'ai fait une petite recherche et j'ai trouvé: [~ # ~ # ~] mousse [~ # ~] mentionné dans: Vérification du plagiarisme de code avec JavaScript et variable Renommer la détection de plagiat pour C/C++

20
math

Attribuer un petit prix pour la détecter. Compte tenu de la possibilité de bières de couple, les élèves verseront sur le net pendant des heures, à la recherche de matchs des autres soumissions d'étudiants.

Avec de grandes amendes pour les infractions, il est autofinancier et récompense les étudiants qui font leur propre travail - ils veulent de la bière et ne vont pas se laisser ouvrir à la vengeance par des travaux de plagier eux-mêmes!

6
Martin James