Assessment Plan
The course rewards demonstrated reasoning. No component requires memorising solutions; quizzes and assignments always present problems in the same style as lecture cases but not copied from them.
Components and weighting
| Component | Weight | Outcomes | Timing |
|---|---|---|---|
| Case participation (in-class attempts) | 10% | all | every lecture |
| Quizzes (8, best 6 count) | 20% | LO2–LO10 | see outline |
| Labs (8 of 12, completion-graded) | 15% | LO1–LO10 (see matrix) | Blocks I–IV |
| Assignments (5 of 6; Assignment 6 may replace the lowest) | 25% | LO1–LO10 | see outline |
| Term project (A, B, or approved proposal) | 30% | LO1, LO4, LO6, LO7, LO9, LO10 | last four weeks |
Institutions with different credit structures may re-weight; keep the participation component small and the project substantial.
Case participation (10%)
Each lecture, students submit their attempt for one designated case (marked submit today in the lecture plan) as pseudocode, flowchart, or Python. Grading is completion-based with brief written feedback: full credit for a serious attempt that shows decomposition, regardless of correctness. The lowest three lectures are dropped to accommodate absences.
Exit questions (ungraded, diagnostic)
Every lecture plan's Formative assessment section ends with three exit questions and their expected answers. Students answer one on a card in the closing minute. These are not graded: the instructor skims them before the next lecture and uses them to pick the framing, the review-station topics, and the quiz distractors. Persistent wrong answers route individual students to office hours — the earliest intervention signal the course has.
Quizzes (20%)
Eight 20-minute quizzes, given in the first half-hour of the designated lecture (see Course Outline). Each quiz has 3–4 short cases in the lecture-case style plus one trace-the-code item; the mix covers concepts, tracing, debugging, pseudocode, complexity, and reasoning (per-quiz coverage in the outline). Answer keys are in quizzes/keys/ (instructor distribution only). Best six of eight count.
Labs (15%)
Twelve guided, machine-based sessions follow the corresponding lectures (see the course outline calendar); each is a 2-hour paired session whose submission is a short report answering the lab's checkpoints. Labs are completion-graded against the checkpoint guidance in each lab page. The best eight of twelve count; instructors schedule the twelve from the outline's calendar slots and drop the rest.
| Lab | Follows | Focus |
|---|---|---|
| Lab 1 | Lecture 04 | first program, hostile inputs, trace-and-swap (LO4) |
| Lab 2 | Lecture 10 | strings, test tables (LO4, LO6) |
| Lab 3 | Lecture 18 | sort, scan, measure (LO7) |
| Lab 4 | Lecture 24 | graphs as models (LO10) |
| Lab 5 | Lecture 05 | cycles and remainders (LO4, LO8) |
| Lab 6 | Lecture 06 | loop prediction, invariants (LO2, LO5) |
| Lab 7 | Lecture 07 | debugging method under time pressure (LO5) |
| Lab 8 | Lecture 08 | tests from requirements (LO6) |
| Lab 9 | Lecture 13 | dictionaries as decisions (LO4, LO9) |
| Lab 10 | Lecture 15 | counting verified by brute force (LO8) |
| Lab 11 | Lecture 21 | binary search on data and answers (LO7, LO10) |
| Lab 12 | Lecture 22 | recursion cost and memoisation (LO7, LO10) |
Assignments (25%)
Four take-home assignments, one per block, each with a published rubric:
| Assignment | Rubric | Focus |
|---|---|---|
| Assignment 1 | rubric-01 | decomposition, pseudocode, flowcharts (LO1, LO3) |
| Assignment 2 | rubric-02 | Python, tracing, testing (LO4, LO5, LO6) |
| Assignment 3 | rubric-03 | algorithm analysis, math modelling (LO7, LO8) |
| Assignment 4 | rubric-04 | data honesty: cleaning, summaries, simulation (LO8, LO9) |
| Assignment 5 | rubric-05 | choose, justify, prove (LO7, LO10) |
| Assignment 6 | rubric-06 | method portfolio + unifying program (LO1, LO6, LO10) — may replace the weakest of A1–A5 |
Term project (30%)
Students choose one project from Projects — Project A (canteen data mini-study), Project B (campus route planner), Project C (campus network explorer, first- semester friendly) — or propose one with the proposal template. Deliverables: a decomposition document, a working program, a test table, and a short analysis section (efficiency + one data-oriented question). The rubric is in projects/rubric.md; the midpoint conversation uses the progress review checklist. First-semester students take Project C; second-semester students may take Project A; third-semester students should attempt Project B or an approved proposal.
Grade bands
| Band | Requirement |
|---|---|
| Excellent | ≥ 85% with project rubric "advanced" on reasoning and testing |
| Good | 70–84% |
| Satisfactory | 55–69% |
| Fail | < 55% or fewer than 4 participation submissions |
Integrity
Discussing approaches is encouraged; submitting another student's attempt, code, or write-up is not. Quizzes are closed-book; assignments and the project may use any course material. If external help is used, students must state it in one line at the top of the submission. Instructors should apply their institution's policy where it is stricter.
Feedback loop
- Quizzes returned at the next lecture with the three most common errors shown (anonymously).
- Assignments returned within one week with rubric marks plus one strength and one fix.
- Project: midpoint check (decomposition document) counts 5 of the 30 points.