12. Grading Criteria

This is the first lab that will be graded. We will evaluate the following aspects of your submission:

SVN (10%)
Your code should be in the right place (lab2/, under the root of the SVN repository, of your Redmine project). Furthermore, the SVN repository should show evidence of the incremental development approach recommended for the lab.
Compilation (10%)
Your code should build out of the box, i.e., upon checkout/export, by executing make
Execution (50%)
We will test the 3 functions specified in Section 6.
Code (30%)
With respect to the code, we will consider different aspects, including:
functions
must be as specified in Section 6.
input parameters
should always be validated (are the values in range?)
return values of function/kernel calls
should always be checked
global variables
should be used sparingly. Only if you cannot do what you want to do, otherwise.
symbolic constants
(rather than numeric constants) should be used when programming I/O devices
kernel calls
should be called with the appropriate arguments

Your grade will be obtained by applying to your submission's grade a a contribution factor which will depend on the information we gather on your performance during the lab.