Using rubric
Rubric* is a scoring tool that explicitly represents expected (observable) learning outcomes for a learning activity (e.g., assignment or presentation).[1]
The example here is from BIS3315 Programming and Algorithms (aka Computer I in other universities). The class borrowed the notion of "design recipe" from faculty at the University of Toronto as part of the conceptualization ([1]). So all the assignments will follow this structure.
For the beginning exercise that students must form their function syntax, the answer will be graded against a simple two-trait rubric: 1. format of design recipe, and 2. the correctness of the output, aka specification. This the rubric for the early stages will be Rubric 1.
Poor | Fair | Good | |
Design recipe | The design recipe is mostly missing or is written poorly | All components of the design recipe are available (i.e., type contract, description, and examples) with some errors in writing | All components of the design recipe are available (i.e., type contract, description, and examples) and is well written |
0 | 1 | 2 | |
Specification | The program is producing incorrect results or produces correct results but does not display them correctly | The program works and produces the correct results and displays them correctly. It also meets most of the other specifications. | The program works and meets all of the specifications |
0 | 1 | 2 |
A few weeks into the semester, after we introduce control structures (i.e., sequence, loop, and selection) to the students, the new rubric with one more trait will be used. The new trait is to look for appropriate structure(s) use in the solution.
Poor | Fair | Good | |
Design recipe | The design recipe is mostly missing or is written poorly | All components of the design recipe are available (i.e., type contract, description, and examples) with some errors in writing | All components of the design recipe are available (i.e., type contract, description, and examples) and is well written |
0 | 1 | 2 | |
Specification | The program is producing incorrect results or produces correct results but does not display them correctly | The program works and produces the correct results and displays them correctly. It also meets most of the other specifications. | The program works and meets all of the specifications |
0 | 1 | 2 | |
Structure | The code ignores control structure(s) altogether. It is brute force and unnecessarily long. | The code makes use of some control structure(s). It is fairly efficient. | The code makes use of appropriate control structure(s). It is extremely efficient without sacrificing readability and understanding |
0 | 1 | 2 |
These two rubrics explicitly look for observable performances done by students, it is the scoring tools that we can use to capture ONE learning objective (LO). I use these two rubrics to capture objective 1.2 Students are able to exhibit thorough understanding of business knowledge in their specialized fields.
You can use ANY rubric that you think it fits your learning objectives. There is no right or wrong answer on this. The number of traits (i.e., criteria) also depend on what you want students to learn. Practically, a rubric with 3-5 traits with 3-5 levels is easy to work with.
After this process, what we want is the report of our results.