  Plagiarism in introductory programming courses is an enormous challenge for
both students and institutions. For students, relying on the work of others too
early in their academic development can make it impossible to acquire necessary
skills for independent success in the future. For institutions, widespread
student cheating can dilute the quality of the educational experience being
offered. Currently available solutions consider only pairwise comparisons
between student submissions and focus on punitive deterrence. Our approach
instead relies on a class-wide statistical characterization that can be clearly
and securely shared with students via an intuitive new p-value representing
independence of student effort. A pairwise, compression-based similarity
detection algorithm captures relationships between assignments more accurately.
An automated deterrence system is used to warn students that their behavior is
being closely monitored. High-confidence instances are made directly available
for instructor review using our open-source toolkit. An unbiased scoring system
aids students and the instructor in understanding true independence of effort.
Preliminary results indicate that the system can provide meaningful
measurements of independence from week one, improving the efficacy of technical
education.
