Summary. There are two parts to the grade for every assignment: a demonstration grade and a code grade. Prior to the start of the lecture on the assignment due date, you will visit a lab and demonstrate your programming solution to a COMP 14 Lab Assistant (LA) who will assign your demonstration grade. Subsequently, at the start of the lecture on the assignment due date, you will hand in (to the instructor) a completed assignment hand-in package. A Teaching Assistant (TA) will then complete the grading with a code grade.
Details. Every assignment will be introduced with an assignment hand-out document. When you think you are ready to complete the assignment, you will do the following.
At each of those deliveries, the material will be graded "as complete".
See the assignment hand-in section (above) for a complete list of required material. If you are missing assignment-specific requirements, you will get zero credit for those portions. If you are missing or do not adhere to any of the standard requirements (pledge, LA initials, etc.) your material will be considered invalid. In either case you might be eligible for partial credit as described below.
Your assignment is considered complete when you deliver a valid assignment hand-in package, and this delivery is final.
This means that you will not receive any grade for the assignment until you deliver a valid assignment hand-in package, and that once you have delivered a valid package, it will be graded as-is. If in advance of the deadline you see that your work is going to be incomplete, you have two options: deliver it as is, and be eligible for full credit for the parts that are complete, or complete it and turn it in late for reduced credit eligibility as described below.
Demonstration. You will be given three delivery attempts for the program demonstration (step 4 of the "Standard Procedure" above). The first attempt is eligible for maximum credit. This should be your best shot. If you are unable to demonstrate some of the program requirements, you may make a second attempt at demonstrating those parts before handing in the complete assignment package. The price is that you will only be eligible for a maximum of 1/2 of the original credit for those parts. If you are still unable to demonstrate some of the program requirements, you may make a third and final attempt at demonstrating those parts before handing in the complete assignment package. The price is that you will only be eligible for a maximum of 1/4 of the original credit for those parts.
Note that as indicated in the "Assignment Hand-In" and "Completeness and Finality" sections above, you must have completed the lab demonstration component and received a demonstration grade before turning in the assignment hand-in package. This includes multiple attempts at the demonstration. All of the attempts must be complete before you deliver the assignment hand-in package.
Hand-In Package. Like the demonstration, you will be given three opportunities to deliver (turn in) a completed assignment hand-in package. However unlike the demonstration you can only use one of those opportunities to actually deliver the final package. When you choose to deliver, that delivery is final (see "Completeness and Finality" above).
Here is how it works. The complete assignment hand-in package for every assignment is nominally due at the start of the lecture on the due date. If for some reason you fail to meet that deadline, you have two additional opportunities. You can turn in the assignment by the start of the following lecture (typically a Thursday) but you will only be eligible for a maximum of 1/2 of the original credit. If you miss that, you can turn in the assignment by the start of the next lecture (one week from the original due date, typically a Tuesday) but you will only be eligible for a maximum of 1/4 of the original credit.
If you hand in an invalid assignment hand-in package you have effectively not handed in the material.
If you are missing or do not adhere to any of the standard requirements (pledge, LA initials, etc.) your material will not be graded until it becomes valid. The time at which it becomes valid will then be considered the delivery time, with all late and partial credit policies applying. Lab and Teaching Assistants will attempt to notify you of invalid material as soon as possible, but if a delay in notification results in a further loss of credit, the assitants will not be held responsible. The only exception to this policy is the signature on the pledge. If you somehow forget to sign the pledge, we will attempt to track you down and get your signature. Your grade will remain zero until you sign it, but will not incur any additional late penalties related to the time spent getting your signature.
Assignments handed in more than one week late will not receive any credit.
Some parts of some assignments will be given partial credit. Such partial credit will be at the discretion of the LA or TA doing the grading.
Some assignments, in particular in the latter half of the semester, will include opportunities for extra credit. This extra credit might be offered in conjunction with "above and beyond" sessions to be described in lectures.
Everyone will be given two free assignment "late category bumps" that you can redeem at the end of the semester. By "late category bump" I mean a change of from 50%->100%, 25%-> 50%, or even 0%->25%. (The 0%->25% can only be applied if turned in before the due date + 4 lectures.) You can apply the bumps in any combination. You can apply them together to one assignment to bump it two categories, or separately to two different assignments to bump each one a single category.
At the end of the semester (I will remind you) you can visit a TA to redeem the bumps. You will need to bring along your graded hand-in package(s) for the assignment(s) you want to bump. So save your graded hand-in packages!