The final grade will be computed using a weighted average according to the table to the left and the weighting below.
In general assignments are not graded such that each piece is worth some fixed amount of credit. If 40% of the program is non-functional that generally indicates that there is some important concept that has been missed. If that is the case, then the grade will be a 0 but you can turn it back in for up to a 70%, but it needs to all be functional.
You should treat me as a client. I will give you a set of requirements. Requirements can be interpreted differently, this is unavoidable. You have to meet my interpretation of the requirements to get an A. If you have any doubt about what a requirement means, you should ask me to clarify.
Homework - 30%
How-To - 20%
Final Project - 35%
Final Exam - 15%