Skip to content

2025 Spring · Assignment Grading and Code Plagiarism Detection

Slides by Chen Shengqi (same source as the 2024 Autumn ninth session, updated for the current semester). Full details in 2024 Autumn · Grading and Code Plagiarism Detection. Key points:

  • Optional vs. required: whether black-box or white-box, when scale is large you can set optional items (points). E.g. black-box 80% (basic 60% + advanced 20%), providing about 50% optional points; white-box optional can be bonus points (e.g. clearly excellent code style).
  • Required items focus on course fundamentals; describe requirements in detail, control difficulty, give a sense of achievement; watch progression and dependencies so students don't get "stuck".
  • Optional items as advanced requirements, can be left to stretch; several directions, points by difficulty; can leave open content for exploration (be cautious about point rewards).
  • Strictly control the total score — don't leave room for "involvement"!
  • Standards: must predetermine and use a unified standard; specify each scored requirement in detail; not recommended to proactively level differences; whether to publish detailed standards is a tradeoff — too vague students can't anticipate, too detailed runs to overfitting and removes agency.
  • Feedback should be timely and detailed; a recommended practice is to list all possible grading points, annotate carefully when reviewing, then compute scores by rule and generate comments; use formulas/scripts to auto-generate repetitive parts, with built-in checking rules.
  • Late submission: use decay-based scoring by late time to balance "lenient→procrastination" vs "strict→risky plagiarism"; whichever scheme, determine at course start (before any assignment) and clearly tell students.
  • Team assignments: the tradeoffs of different formation methods; proportional discount for different team sizes; uneven intra-team workload mitigated by acceptance questioning, whole-process evaluation, and timely intervention (CATME, SIGCSE 2023/2022 team-evaluation papers).
  • Plagiarism: not to distrust students but to maintain academic integrity; typical previous-year-code/recording/Copilot cases; tools Stanford MOSS, JPlag, JiePlag (by @jiegec); analysis process and interviews; the core criterion for judgment.
  • Programming-assignment score split: black-box (objective, automatable, 70%-90%) vs. white-box (subjective, human-judged, 10%-30%); publishing test cases in black-box is a tradeoff — recommend publishing some + hidden tests; can have performance points but avoid "involvement"; automated grading schemes from simple to full; white-box should also have clear items and standards to avoid TA-to-TA divergence.

⇦ Back to 2025 Spring