Different levels of comparison
With the trend toward using object-oriented languages, universities have
provided more courses to teach object-oriented programming languages instead
of conventional programming languages. Owing to the nature of object-oriented
programming languages, a complete program will consist of more than one file.
Existing systems for detecting plagiarism can only check programs at file-level.
In order to check programming assignments with more than one file, our system
provides directory-level comparison in addition to the file-level comparison.
Generalizing the interchangeable structures
Some structures in the programming language can be easily changed to another
form having the same meaning or semantics. For example, the following ifstatement and switch-statement have the same meaning, but they are of different
syntactic forms.