Làm thế nào để tôi biết rằng hai mã nguồn (độc lập với ngôn ngữ C, Java, Lisp ...) có dấu hiệu mạnh mẽ rằng chúng có thể là đạo văn của nhau?Làm cách nào để kiểm tra bài tập về mã nguồn cho bài đạo văn?
Bối cảnh: Tôi sẽ tổ chức hội thảo đầu tiên về ngôn ngữ máy tính. Chúng tôi đã chuẩn bị các bài tập nhỏ cho các ngôn ngữ lập trình chính như C/C++, Python, Java, ... nhưng cũng OCaml, Haskell, ... để cung cấp cho sinh viên một số giới thiệu thực tế (cũng vào các mô hình lập trình). Chúng tôi ước tính có ~ 300 sinh viên với hơn 50 tác vụ lập trình cho mỗi người. Vì vậy, một người không thể kiểm tra tất cả các bài tập về nhà.
Tôi đoán kỹ thuật chống đạo văn được sử dụng cho các ngôn ngữ tự nhiên (tiểu luận, bài báo, chương sách, v.v.) sẽ không hoạt động đối với mã nguồn, đúng không? Ngoài ra các giải pháp cho các tác vụ lập trình đó sẽ có sự giống nhau vốn có do giao diện được yêu cầu.
tôi đã thực hiện một tìm kiếm chút và thấy: MOSS nêu tại: Checking for code plagiarism with JavaScript và Variable renaming for plagiarism detection for C/C++
Ý tưởng hay. Tôi đoán bạn có thể thực hiện một tiến sĩ về nó :) – gefei
Gần đây một người nào đó đã thử nghiệm một số phần mềm phát hiện đạo văn về bài tập về nhà khoa học (vì vậy đây không phải là kiểm tra mã nguồn): http://plagiat.htw-berlin.de/software-en/test2013/ nhưng vẫn có thể hữu ích cho homeowrk khác. – math
Có một vài giấy tờ về phát hiện đạo văn mã nguồn được tìm thấy tại đây: http://www.ics.heacademy.ac.uk/resources/assessment/plagiarism/research_sourcecode.html – ElFik