Анализ и визуализация плагиата исходного кода в практических курсах по программированию
Аннотация
Проблема недобросовестного заимствования в академической среде по-прежнему является актуальной. Недобросовестные заимствования, или плагиат, встречаются сегодня в различных формах академической активности, начиная от семестровых работ студентов и заканчивая диссертациями ученых. Развитие коммуникаций, глобальный характер взаимодействия привели к широкой доступности материалов, которые легко скопировать. Это приводит к тому, что студентам становится проще найти решение, чем его составить. Отдельной проблемой являются недобросовестные заимствования в работах обучающихся учебных заведений, которые они выполняют в рамках практических курсов по программированию. Как и в случае с текстом, выявлять плагиат вручную является возможным только в самых небольших подвыборках данных. К счастью, на сегодняшний день существует довольно большое количество систем, позволяющих автоматизировано выявлять сходство исходного кода. Более того, существуют средства, позволяющие агрегировать результаты поиска плагиата несколькими различными системами, что также увеличивает вероятность обнаружения случаев недобросовестного заимствования. При этом применение данных средств по-прежнему не так широко распространено в образовательных учреждениях. В настоящей статье приводится описание процесса анализа плагиата, построенного для использования в рамках практических курсов по программированию, а также рассмотрен инструмент интерактивной графовой
визуализации результатов анализа плагиата.
Литература
V. A. Byvaltsev, I. A. Stepanov, E. G. Belykh, A. A. Kalinin, and L. A. Bardonova, “Plagiarism and academic integrity in science,” Annals of the Russian academy of medical sciences, vol. 72, no. 4, pp. 299–304, 2017 (in Russian); doi:10.15690/vramn788
A. I. Tsibin, Razrabotka informatsionnoi sistemy sozdaniya, sdachi i proverki zadanii po po distsipline ”Programmirovanie”, St. Petersburg, Russia, ITMO, 2019 (in Russian). [Online]. Available: https://github.com/tcibinan/flaxo/blob/dev/papers/paper_rus.pdf
E. A. Efimchik and A. I. Tsibin, “Raspredelennaya integrirovannaya informatsionnaya sistema organizatsii sdachi i proverki zadanii po programmirovaniyu: primenenie i osobennosti tekhnicheskoi realizatsii,” in Proc. of VII Congress of young scientists, ITMO, 2018, St. Peterburg, Russia, 2018 (in Russian). [Online]. Available: https://openbooks.itmo.ru/ru/file/7344/7344.pdf
N. A. Stepochkin, Razrabotka informatsionnoi sistemy analiza skhozhesti iskhodnogo koda reshenii zadach po programmirovaniyu v otkrytykh obrazovatel’nykh repozitoriyakh, St. Petersburg, Russia, ITMO, 2019 (in Russian). [Online]. Available: https://github.com/gitplag/gitplag/raw/master/thesis/thesis.pdf
A. Aiken, “Moss (for a Measure Of Software Similarity), a system for detecting software plagiarism,” [Soft], University of Berkeley, 2002. [Online]. Available: http://www.cs.berkeley.edu/~moss/
R. Bonifacio, “Effects of plagiarism intervention program in the research papers of central mindanao university students,” International Journal of Scientific & Technology Research, vol. 9, no. 2, pp. 5412–5418, 2020.
R. Franclinton and O. Karnalim, “A language-independent library for observing source code plagiarism,” Journal of Information Systems Engineering and Business Intelligence, vol. 5, no. 10, pp. 110–119, 2019; doi: 10.20473/jisebi.5.2.110-119
Z. Gniazdowski, “Detection of a source code plagiarism in a student programming competition,” Zeszyty Naukowe, vol. 13, no. 21, pp. 74–94, 2019; doi: 10.26348/znwwsi.21.74
O. Karnalim and G. Kurniawati, “Programming style on source code plagiarism and collusion detection,” International Journal of Computing, vol. 19, no. 1, pp. 27–38, 2020.
B. Lesner, R. Brixtel, C. Bazin, and G. Bagan, “A novel framework to detect source code plagiarism: now, students have to work for real!” in Proc. of the 2010 ACM Symposium on Applied Computing, Sierre, Switzerland, 2010, pp. 57–58; doi: 10.1145/1774088.1774101
V. Martins, D. Fonte, P. R. Henriques, and D. Da Cruz, “Plagiarism detection: A tool survey and comparison,” in 3rd SLATE. OASIcs, Schloss Dagstuhl-Leibniz-Zentrum fuer Informatik, Dagstuhl, Germany, vol. 38, 2014, pp. 143–158. [Online]; doi: 10.4230/OASIcs.SLATE.2014.143
G. Obaido, P. Ranchod, and R. Klein, Constructing and analysing plagiarism in student programs using graphs, 2017. [Online]. Available: https://www.researchgate.net/publication/319629298_Constructing_and_Analysing_Plagiarism_in_Student_Programs_Using_Graphs
D. Pawelczak, “Effects of plagiarism in introductory programming courses on the learning outcomes,” in Proc. 5th International Conference on Higher Education Advances (HEAd’19), Universitat Politecnica de Valencia, Valencia, Spain, 2019, pp. 623-631; doi: 10.4995/HEAd19.2019.9297
A. O. Portillo-Dominguez, V. Ayala-Rivera, E. Murphy, and J. Murphy, “A unified approach to automate the usage of plagiarism detection tools in programming courses,” in Proc. 12th International Conference on Computer Science and Education (ICCSE), Houston, TX, USA, 2017, pp. 18–23; doi: 10.1109/ICCSE.2017.8085456.
C. Wang, Z. Liu, and D. Liu, “Preventing and detecting plagiarism in programming course,” International Journal of Security and Its Applications, vol. 7, no. 5, pp. 269–278, 2013; doi: 10.14257/ijsia.2013.7.5.25
Материал публикуется под лицензией: