Your grade in CS35 will be determined by mastery of a set of "standards", combined with your grade on lab submissions.
QQ and STAR represent standards you have qualified by demonstrating mastery of a topic.
Grades in the course are determined by the highest row achieved in the following table.
| Letter grade | Total QQ | Total STAR | Lab average and participation |
|---|---|---|---|
| A+ | 23 | 9 | 95% |
| A | 22 | 9 | 90% |
| A- | 20 | 8 | 87% |
| B+ | 20 | 8 | 83% |
| B | 19 | 7 | 80% |
| B- | 18 | 7 | 77% |
| C+ | 17 | 6 | 73% |
| C | 16 | 6 | 70% |
| C- | 15 | 5 | 67% |
| D+ | 14 | 5 | 63% |
| D | 13 | 4 | 60% |
| D- | 12 | 4 | 55% |
| NC | <12 | <4 | <55% |
Each standard below represents a skill, set of skills, or mastery of knowledge. Some standards are marked "star" --- those standards count towards the overall standard total AND the STAR standard total.
| # | Star? | Description | First chance | Second chance | Reflection for third chance |
|---|---|---|---|---|---|
| 0 | Syllabus reading comprehension. Demonstrate an understanding of course policies, academic integrity, late days, and the standards-based grading structure. | quiz week 2 | makeup week 3 | ||
| 1 | Write and debug C++ code with regards to memory management and array manipulation. | quiz week 4 | makeup week 5 | due week 6 | |
| 2 | star | Draw stack diagrams modeling the behavior of an object-oriented C++ program. | quiz week 4 | makeup week 5 | due week 6 |
| 3 | Define and explain object-oriented vocabulary. | quiz week 4 | makeup week 5 | due week 6 | |
| 4 | Describe sorting algorithms and demonstrate how they behave. | quiz week 6 | makeup week 7 | due week 8 | |
| 5 | star | Prove the big-O complexity of a mathematical function. | quiz week 6 | makeup week 7 | due week 8 |
| 6 | star | Demonstrate an understanding of big-O time complexity analysis. | quiz week 6 | makeup week 7 | due week 8 |
| 7 | Demonstrate an understanding of amortized big-O complexity analysis. | quiz week 8 | makeup week 9 | due week 10 | |
| 8 | star | Explain and demonstrate the uses of lists, stacks, and queues. | quiz week 8 | makeup week 9 | due week 10 |
| 9 | Synthesize multiple algorithmic analysis techniques to answer questions about the behavior of pseudocode. | quiz week 8 | makeup week 9 | due week 10 | |
| 10 | star | Compare and contrast the performance of different implementations of the same data structure interface. | quiz week 10 | makeup week 11 | due week 12 |
| 11 | star | Write a proof by induction. | quiz week 10 | makeup week 11 | due week 12 |
| 12 | star | Explain the difference between an interface and an implementation. | quiz week 10 | makeup week 11 | due week 12 |
| 13 | star | Execute algorithms on binary search trees and explain their invariants. | quiz week 12 | makeup week 13 | due week 14 |
| 14 | Execute algorithms on balanced binary search trees and explain their invariants. | quiz week 12 | makeup week 13 | due week 14 | |
| 15 | Execute algorithms on binary heaps and explain their invariants. | quiz week 12 | makeup week 13 | due week 14 | |
| 16 | Compare and contrast binary tree structures and discuss their limitations. | quiz week 12 | makeup week 13 | due week 14 | |
| 17 | Explain and illustrate hash table algorithms and compare them to other dictionaries. | final exam | |||
| 18 | Design a purpose-built data structure and explain its properties and invariants. | final exam | |||
| 19 | star | Describe the properties of graphs; execute and analyze graph algorithms. | final exam | ||
| 20 | Solve a problem using graph algorithms and reason about that solution. | final exam | |||
| 21 | Solve a problem by developing purpose-built graph algorithms. | final exam | |||
| 22 | Inductively prove the correctness of an algorithm using a recursive invariant. | final exam |
Quizzes will be given at the beginning of lab on the days posted in the schedule. Please arrive at class promptly to ensure that you don't lose time on the quiz. If you are unable to attend lab for a quiz, contact your lab instructor as soon as possible to make accommodations.
Quizzes will be evaluated using standards-based grading. The purpose of this grading scheme is to keep all students focused on what matters most, which is learning the course content. Each quiz will evaluate several standards.
Quiz feedback is important! Be sure to view your feedback to determine whether you have met the standards being evaluated.
FIRST ATTEMPT Your first attempt at a standard will be on a quiz in lab.
SECOND ATTEMPT If you do not achieve a standard on your first attempt, you should look carefully at your feedback. The goal is to give you the feedback you need after each attempt to improve your understanding so that you can subsequently achieve the standard. You can re-attempt that standard during the makeup quiz the following week.
THIRD ATTEMPT If you are still working to master the skills in a standard after two weeks, you can earn another attempt by completing a reflection. A reflection consists of (1) a write-up of a complete, correct solution to one of your attempts at the standard, and (2) a brief answer to the question "What do I find challenging about this skill, and how will I study to improve on this skill?" If you submit your reflection by the deadline, then you can re-attempt the standard on the next makeup quiz.
FOURTH ATTEMPT If you are still working to master the skill in a standard, you will have another opportunity to demonstrate that skill on the final exam. Note that in order to add the standard to your final exam, you must have submitted a reflection on that standard.
Q: I find this grading scheme confusing. Help!
A: Please ask a question on the course forum, or come ask the professor in order to clear up your confusion. The goal is to help you learn!
Q: I'm worried about the final-exam-only standards where I only get one attempt. Are they hard to achieve?
A: Standards which appear exclusively on the final exam will be graded more leniently. If you solve most of the problem, you will qualify. By contrast, standards where multiple attempts are allowed will be graded strictly: because you have multiple attempts, you will need to completely solve the entire problem in order to qualify in those standards.
Q: I missed the deadline for a reflection and now I won't get a third attempt. What should I do?
A: Don't worry! If you submit a reflection, you can still retry that standard on the final exam.