Submit checklist

Written by Sam Redmond and Keith Schwarz

This handy checklist is designed to help confirm your code is fully ready to go before you submit it. Before you send it in for grading, take a few minutes to work through this checklist.


  • ✅ I’ve re-read the assignment writeup and verified my program matches the required specification.

  • ✅ I’ve reviewed my code and understand each line of code I’ve written, why it’s there, and why it’s necessary.

Test cases

  • ✅ I've run all of the provided test cases against my code and resolved any test failures.

  • ✅ I've supplemented the provided test cases with student tests of my own. For each part of the assignment, I’ve written at least one test case to make sure it works well in the common case.

  • ✅ For each part of the assignment, I’ve thought of at least one edge case that could cause problems and written a student test for it. (And ideally, I’ve done this for multiple edge cases!)


  • ✅ I’ve read the CS106B Style Guide at least once in its entirety and asked questions about any parts I don’t understand.

  • ✅ My code follows the guidelines from the Style Guide. My code meets the expectations for readability, decomposition, and program design and adheres to restrictions such as no global variables, no use of obscure language features, and so on.

  • ✅ Each of my functions, conceptually, performs a single task.

  • ✅ All of my variables and functions use clear and descriptive names.

  • ✅ The dense parts of my code are commented, and those comments describe what the code accomplishes rather than restating the logic in plain English.

  • ✅ Every function I’ve written has a comment preceding it that explains what the function does, what its parameters are, and what its return value (if any) means.

  • ✅ Each file I am submitting has a header overview comment that clearly identifies the code authorship, including any necessary citations.

Final Submission

  • ✅ I’ve auto-indented my code in Qt Creator. The final layout is clean and readable.

  • ✅ I’ve completed the tasks from all TODO comments in the starter code and removed those comments.

  • ✅ I’ve removed all print statements left in the code that I used for debugging purposes.

  • ✅ I’ve removed all commented-out blocks of code that are no longer necessary.

  • ✅ I’ve read the Submit section of the assignment handout and confirmed that I’m submitting all of the required files.