Sie sind auf Seite 1von 2

Rubric for Computer Programming

Christopher League, November 2013


Can be adapted for assignments to produce software artifacts in CS102, 117, 120, 130, 155, 156, 161, 164, 601, 631, 653, 673, 690, and
others. As stated on AAC&U VALUE rubrics, “evaluators are encouraged to assign a zero to any work…that does not meet beginning (cell
one) level performance.”
Advanced Proficient Approaching Proficiency Beginning
4 3 2 1
Syntax Program compiles and Program compiles and is Program compiles, but Program does not compile
Ability to understand and contains no evidence of free from major syntactic contains errors that signal or (in a dynamic language)
follow the rules of the misunderstanding or misunderstandings, but misunderstanding of contains typographical
programming language. misinterpreting the syntax may contain non-standard syntax – such as the semi- errors leading to undefined
of the language. usage or superfluous colon in if(exp);{} names.
elements.
Logic Program logic is correct, Program logic is mostly Program logic is on the Program contains some
Ability to specify with no known boundary correct, but may contain right track with no infinite conditions that specify the
conditions, control flow, errors, and no redundant an occasional boundary loops, but shows no opposite of what is
and data structures that are or contradictory error or redundant or recognition of required (less than vs.
appropriate for the conditions. contradictory condition. boundary conditions (such greater than), confuse
problem domain. as < vs. <=) Boolean AND/OR
operators, or lead to
infinite loops.
Correctness Program produces correct Program produces correct Program approaches Program does not produce
Ability to code formulae answers or appropriate answers or appropriate correct answers or correct answers or
and algorithms that results for all inputs tested. results for most inputs. appropriate results for appropriate results for
reliably produce correct most inputs, but can most inputs.
answers or appropriate contain miscalculations in
results. some cases.
Advanced Proficient Approaching Proficiency Beginning
4 3 2 1
Completeness Program shows evidence Program shows evidence Program shows some Program shows little
Ability to apply rigorous of excellent case analysis, of case analysis that is evidence of case analysis, recognition of how
case analysis to the and all possible cases are mostly complete, but may but may be missing different cases must be
problem domain. handled appropriately. have missed minor or significant cases or handled differently.
unusual cases. mistaken in how to handle
some cases.
Clarity Program contains Program contains some Program contains some Program contains no
Ability to format and appropriate documentation documentation on major documentation (at least the documentation, or grossly
document code for human for all major functions, functions, variables, or student’s name and misleading indentation.
consumption. variables, or non-trivial non-trivial algorithms. program’s purpose), but
algorithms. Formatting, Indentation and other has occasionally
indentation, and other formatting is appropriate. misleading indentation.
white space aids
readability.
Modularity Program is decomposed Program is decomposed Program is decomposed Program is one big
Ability to decompose a into coherent and reusable into coherent units, but into units of appropriate function or is decomposed
problem into coherent and units, and unnecessary may still contain some size, but they lack in ways that make little
reusable functions, files, repetition has been unnecessary repetition. coherence or reusability. sense.
classes, or objects (as eliminated. Program contains
appropriate for the unnecessary repetition.
programming language
and platform).

Das könnte Ihnen auch gefallen