Skip to main content

2020 | OriginalPaper | Buchkapitel

Detecting Similarity in Multi-procedure Student Programs Using only Static Code Structure

verfasst von : Karen Bradshaw, Vongai Chindeka

Erschienen in: ICT Education

Verlag: Springer International Publishing

Aktivieren Sie unsere intelligente Suche um passende Fachinhalte oder Patente zu finden.

search-config
loading …

Abstract

Plagiarism is prevalent in most undergraduate programming courses, including those where more advanced programming is taught. Typical strategies used to avoid detection include changing variable names and adding empty spaces or comments to the code. Although these changes affect the visual components of the source code, the underlying structure of the code remains the same. This similarity in structure can indicate the presence of plagiarism.
A system has been developed to detect the similarity in the structure of student programs. The detection system works in two phases: The first phase parses the source code and creates a syntax tree, representing the syntactical structure of each of the programs, while the second takes as inputs two program syntax trees and applies various comparison algorithms to detect their similarity. The outcome of the comparison allows the system to report a result from one of four similarity categories: identical structure, isomorphic structure, containing many structural similarities, and containing few structural similarities. Empirical tests on small sample programs show that the prototype implementation is effective in detecting plagiarism in source code, although in some cases manual checking is needed to confirm the presence of plagiarism.

Sie haben noch keine Lizenz? Dann Informieren Sie sich jetzt über unsere Produkte:

Springer Professional "Wirtschaft+Technik"

Online-Abonnement

Mit Springer Professional "Wirtschaft+Technik" erhalten Sie Zugriff auf:

  • über 102.000 Bücher
  • über 537 Zeitschriften

aus folgenden Fachgebieten:

  • Automobil + Motoren
  • Bauwesen + Immobilien
  • Business IT + Informatik
  • Elektrotechnik + Elektronik
  • Energie + Nachhaltigkeit
  • Finance + Banking
  • Management + Führung
  • Marketing + Vertrieb
  • Maschinenbau + Werkstoffe
  • Versicherung + Risiko

Jetzt Wissensvorsprung sichern!

Springer Professional "Technik"

Online-Abonnement

Mit Springer Professional "Technik" erhalten Sie Zugriff auf:

  • über 67.000 Bücher
  • über 390 Zeitschriften

aus folgenden Fachgebieten:

  • Automobil + Motoren
  • Bauwesen + Immobilien
  • Business IT + Informatik
  • Elektrotechnik + Elektronik
  • Energie + Nachhaltigkeit
  • Maschinenbau + Werkstoffe




 

Jetzt Wissensvorsprung sichern!

Springer Professional "Wirtschaft"

Online-Abonnement

Mit Springer Professional "Wirtschaft" erhalten Sie Zugriff auf:

  • über 67.000 Bücher
  • über 340 Zeitschriften

aus folgenden Fachgebieten:

  • Bauwesen + Immobilien
  • Business IT + Informatik
  • Finance + Banking
  • Management + Führung
  • Marketing + Vertrieb
  • Versicherung + Risiko




Jetzt Wissensvorsprung sichern!

Literatur
1.
Zurück zum Zitat Aho, A.V., Hopcroft, J.E., Ullman, J.D.: The Design and Analysis of Computer Algorithms. Addison-Wesley, Boston (1974)MATH Aho, A.V., Hopcroft, J.E., Ullman, J.D.: The Design and Analysis of Computer Algorithms. Addison-Wesley, Boston (1974)MATH
2.
Zurück zum Zitat Bryant, D.: Building trees, hunting for trees, and comparing trees: theory and methods in phylogenetic analysis. Ph.D. thesis, University of Canterbury (1997) Bryant, D.: Building trees, hunting for trees, and comparing trees: theory and methods in phylogenetic analysis. Ph.D. thesis, University of Canterbury (1997)
3.
Zurück zum Zitat Finden, R., Gordon, A.: Obtaining common pruned trees. J. Classification 2, 255–276 (1985)CrossRef Finden, R., Gordon, A.: Obtaining common pruned trees. J. Classification 2, 255–276 (1985)CrossRef
4.
Zurück zum Zitat Itokawa, Y., Wada, M., Ishii, T., Uchida, T.: Tree pattern matching algorithm using a succinct data structure. Proc. Int. MultiConf. Eng. Comput. Sci. 1, 206–211 (2011) Itokawa, Y., Wada, M., Ishii, T., Uchida, T.: Tree pattern matching algorithm using a succinct data structure. Proc. Int. MultiConf. Eng. Comput. Sci. 1, 206–211 (2011)
6.
Zurück zum Zitat Paris, M.: Source code and text plagiarism detection strategies. In: 4th Annual Conference of the LTSN Centre for Information and Computer Sciences, pp. 74–78. LTSN Centre for Information and Computer Sciences (2003) Paris, M.: Source code and text plagiarism detection strategies. In: 4th Annual Conference of the LTSN Centre for Information and Computer Sciences, pp. 74–78. LTSN Centre for Information and Computer Sciences (2003)
7.
Zurück zum Zitat Prechelt, L., Malpohl, G., Phillippsen, M.: JPlag: finding plagiarisms among a set of programs. Technical report, Karlsruhe Institute of Technology (2000) Prechelt, L., Malpohl, G., Phillippsen, M.: JPlag: finding plagiarisms among a set of programs. Technical report, Karlsruhe Institute of Technology (2000)
8.
Zurück zum Zitat Puflović, D., Gligorijević, M.F., Stoimenov, L.: CSPlag: a source code plagiarism detection using syntax trees and intermediate language. In: Proceedings of the 52nd International Scientific Conference on Information, Communication and Energy Systems and Technologies (ICEST 2017), pp. 102–105 (2017) Puflović, D., Gligorijević, M.F., Stoimenov, L.: CSPlag: a source code plagiarism detection using syntax trees and intermediate language. In: Proceedings of the 52nd International Scientific Conference on Information, Communication and Energy Systems and Technologies (ICEST 2017), pp. 102–105 (2017)
9.
Zurück zum Zitat Schleimer, S., Wilkerson, D.S., Aiken, A.: Winnowing: local algorithms for document fingerprinting. In: Proceedings of the 2003 ACM SIGMOD International Conference on Management of Data, pp. 76–85. SIGMOD 2003, ACM, New York, NY, USA (2003). https://doi.org/10.1145/872757.872770 Schleimer, S., Wilkerson, D.S., Aiken, A.: Winnowing: local algorithms for document fingerprinting. In: Proceedings of the 2003 ACM SIGMOD International Conference on Management of Data, pp. 76–85. SIGMOD 2003, ACM, New York, NY, USA (2003). https://​doi.​org/​10.​1145/​872757.​872770
10.
Zurück zum Zitat Shervashidze, N., Vishwanathan, S., Petri, T., Mehlhorn, K., Borgwardt, K.: Efficient graphlet kernels for large graph comparison. In: Artificial Intelligence and Statistics, pp. 488–495 (2009) Shervashidze, N., Vishwanathan, S., Petri, T., Mehlhorn, K., Borgwardt, K.: Efficient graphlet kernels for large graph comparison. In: Artificial Intelligence and Statistics, pp. 488–495 (2009)
11.
Zurück zum Zitat Terry, P.: Compiling with C# and Java. Pearson Education, London (2005) Terry, P.: Compiling with C# and Java. Pearson Education, London (2005)
14.
Zurück zum Zitat Wilson, R.J., Watkins, J.J.: Graphs: an Introductory Approach: A First Course in Discrete Mathematics. John Wiley & Sons Inc, Hoboken (1990) MATH Wilson, R.J., Watkins, J.J.: Graphs: an Introductory Approach: A First Course in Discrete Mathematics. John Wiley & Sons Inc, Hoboken (1990) MATH
16.
Zurück zum Zitat Zhang, F., Wu, D., Liu, P., Zhu, S.: Program logic based software plagiarism detection. In: IEEE 25th International Symposium on Software Reliability Engineering (ISSRE), pp. 66–77. IEEE (2014) Zhang, F., Wu, D., Liu, P., Zhu, S.: Program logic based software plagiarism detection. In: IEEE 25th International Symposium on Software Reliability Engineering (ISSRE), pp. 66–77. IEEE (2014)
Metadaten
Titel
Detecting Similarity in Multi-procedure Student Programs Using only Static Code Structure
verfasst von
Karen Bradshaw
Vongai Chindeka
Copyright-Jahr
2020
DOI
https://doi.org/10.1007/978-3-030-35629-3_14