Rubrics for Machine Problem
Advanced Proficient Approaching Proficiency Beginning
4 3 2 1
Program compiles and Program compiles and is Program compiles, but Program does not compile or
Syntax
contains no evidence of free from major syntactic contains errors that signal (in a dynamic language)
Ability to understand and
misunderstanding or misunderstandings, but may misunderstanding of syntax contains typographical errors
follow the rules of the
misinterpreting the syntax of contain non-standard usage – such as the semicolon in leading to undefined names.
programming language.
the language. or superfluous elements. if(exp);{}
Program logic is correct, with Program logic is mostly Program logic is on the right Program contains some
Logic
no known boundary errors, correct, but may contain an track with no infinite loops, conditions that specify the
Ability to specify conditions,
and no redundant or occasional boundary error or but shows no recognition of opposite of what is required
control flow, and data
contradictory conditions. redundant or contradictory boundary conditions (such (less than vs. greater than),
structures that are
condition. as < vs. <=) confuse Boolean AND/OR
appropriate for the problem
operators, or lead to infinite
domain.
loops.
Correctness Program produces correct Program produces correct Program approaches correct Program does not produce
Ability to code formulae and answers or appropriate answers or appropriate answers or appropriate correct answers or
algorithms that reliably results for all inputs tested. results for most inputs. results for most inputs, but appropriate results for most
produce correct answers or can contain miscalculations inputs.
appropriate results. in some cases.
Program contains Program contains some Program contains some Program contains no
appropriate documentation documentation on major documentation (at least the documentation, or grossly
Clarity
for all major functions, functions, variables, or non- student’s name and misleading indentation.
Ability to format and
variables, or non-trivial trivial algorithms. Indentation program’s purpose), but has
document code for human
algorithms. Formatting, and other formatting is occasionally misleading
consumption.
indentation, and other white appropriate. indentation.
space aids readability.