Back to Final Project

Final Project Grading Rubric

by Brad Solomon

Project Proposal [30 points total]

You should not begin working on the final project until you have an approved proposal. Accordingly, you are allowed to resubmit the proposal with no penalty as many times as you would like until you have acheived a passing grade. When grading the proposal, I will be looking at the following criteria:

Leading Question [10 points]

  1. Is there a leading question that will result in a specific answer or a specific deliverable such as a search tool, an analyzable or human-readable figure or table, or other concrete proof of completion?

  2. Does the leading question properly use the proposed dataset?

  3. Is the leading question answerable using the proposed algorithm? (It is okay if it is not the ‘optimal’ answer to the problem.)

Dataset [10 points]

  1. Is the dataset well-described and is all information necessary to uniquely identify and find the data given?

  2. Is the data correction step non-trivial and likely to both identify and fix all or most of the errors in the dataset?

  3. Is the estimated storage efficiency for the dataset reasonably accurate given the description of the data structures used to store it?

Algorithm [5 points]

  1. Are your proposed algorithms non-trivial?

  2. Are your algorithms well-described with clear input / output and an estimate of efficiency in time and memory?

Timeline [5 points]

  1. Does your timeline contain a complete-by date for all major algorithms and benchmarks like the mid-project check-in?

  2. Is your timeline reasonable, setting a plausible pacing for each deliverable?

Development Log [30 points total]

From the time you pass your proposal until the submission date for the final project, you should write at least one development log entry a week. Points for the development log will be awarded based on the following criteria:

  1. Is your development log consistently updated on a weekly basis? Missing one entry will result in some points lost, missing multiple will result in many more points lost.

  2. Is your development log detailed? (See the description of the development log on the main page for the minimum details required by every entry.)

  3. Is your development log truthful? If the development log is retroactively adjusted or clearly doesn’t match the code or results at the end of the semester, you will lose significant points for falsifying information.

Mid-Project Check-in [20 points total]

You must schedule a mid-project check-in and meet either in person or in Zoom to go over your current progress. The check-in meeting will be graded according to the following criteria:

  1. Did you attend the check-in meeting as an active and knowledgeable participant?

  2. Have you completed at least one task by the mid-project check-in? This task could be a complete algorithm, data processing (including corrections and storage in Python), or any other code block. It is not downloading a CSV file and stating you have gathered all the data you need for the project.

Things that will not be graded but will be discussed:

  1. Do you have a task list of things to do to complete the project? Do you have a clear plan for completing all remaining tasks before the end of the semester? (Think of this as an update to your timeline)

  2. Are there any major problems you have encountered while working on the project?

Final Project Deliverables [140 points total]

There are three deliverables for the final project.

Code Base

You must submit your code as a Github directory containing all necessary files to reproduce your project’s results. A breakdown of the grading rubric is as follows, with partial credit possible for matching some but not all of each criteria:

README [10 points]

Your project must include a README that clearly and succinctly describes the following:

Code Organization [10 points]

Your code must be human-readable according to the following guidelines:

Code Goals [60 points]

For full credit, your code must answer the question proposed in the project. It will be graded according to the following guidelines:

Partial credit will be awarded for code bases that are only able to work on a subset of the target data or that answer a simpler but related query. (You can think of these points as asking the question: “Was my project ultimately successful at the task I set out to do?”)

Code Execution [10 points]

These points will be awarded based on the ease of use of the code base. For full credit your code must:

Code Efficiency [10 points]

These points will be awarded based on the efficiency of your implementation. For full credit your code must:

A written report [20 points]

The written report will be graded based on the following criteria:

A video presentation [20 points]

The video presentation will be graded based on the following criteria:

Presentation Content

Presentation Clarity