Sei sulla pagina 1di 3

Rendu1 Projet dAutomne 2017-18

General Grading Information for Student-Assistant


Each student-assistant is assigned to one TA and interact with his/her TA or with the
ASSISTANT_FORUM in case of questions. The TA will report to me if necessary.

Here are your TAs:

Eleni Tzirita (eleni.tziritazacharatou@epfl.ch): Emmanuel Lehnherr, Simon Prcheur, Hila


Vardi, Marwan El Chazli, Sven Borden, Nathan Mller, Pierre Oppliger, Gauzelin Vidovic

Elmira Yadollahi (elmira.yadollahi@epfl.ch): Frdric Gusset, Jrome Scyboz, Boris Goullet,


Sylvain EL Khoury, Francesca Gieruc, Sacha Levy, Laila El Hamamsy,

Important: the TA Thibault Porssut is in charge of the automated tests. Student-assistants only
have to grade the printed code (listing) and check that some code exist for checking the errors;
you dont have to do any compiling or execution.

You are given access to a shared spreadsheet file with the grading grid on gdrive (link sent by
email). You can spot the students that you are responsible for by looking for your name in the
Assistant column: you get 20-21 projects each.

Some examples of annotated printed copies have been scanned and shared on gdrive (link sent
by email) ; the shared spreadsheet has also been filled for these cases.

You are also given the printed source codes of your student group. Your duty is to annotate the
printed copies like the examples because they will be given back to students. (you are allowed
to write some positive comments). We describe at the end which criteria you should focus on.

Please inform your responsible TA if you dont have the printed code of a student belonging to
your set visible in the spreadsheet.

In the spreadsheet you have 4 columns to fill in:

violation_sum = total number of detected criteria from the list at the end of this document.
violation_list = what is wrong and where (special format described next page)
comment = for students, optional free text on other aspects (warnings)
confidential_notes = for us, which will not be shared with the students. If you think that
there is something unusual, or to be double checked, note it there.
Rendu1 Projet dAutomne 2017-18

Grading methodology
In the end of this document, you have a list of criteria. You should use it for doing the grading
task described below.

1. Check the corrected project samples (scanned annotated files on gdrive and the
spreadsheet). Adopt the same style in your grading.

2. Check the printed copy of the student. If the line numbers are not printed on it, download
the project of the student, open it in Geany and use it for the line numbers you enter in the
spreadsheet.

3. Investigate the source code of the student to find the violations listed in the Criteria
List given next page. For each violation, do the following:
(a) Underline it on the printed copy and write the violation code on it.
(b) In the spreadsheets column violation_list, note down the code representing that
criteria followed by the line number it occurs. For instance [L2]57 means that line 57
is a wrapping one.
(c) If the same type of violation occurs multiple times, mark all of them on the printed code
copy, BUT only enter the first occurrence in the spreadsheet.
(d) Keep the violation_list alphabetically sorted and separate each entry by a comma.

4. When you are done with checking the listed criteria, sum the number of violation criteria in
the violation_list cell, and write it into the violation_sum cell.

5. If you see issues that are not listed in our criteria list, underline and annotate them all, but
do not enter them into the spreadsheet. If your time budget permits (see below), write
suggestions in the printed copy about the students coding, documentation and
organization style by referring to the relevant items of Conventions de programmation
pour les projets. You may write the comments either in French or English.

Budget and Deadline


You are given 4 hours to finish the grading duty. It gives you about 10-12 mins per project.
You must fill your section of the shared spreadsheet and bring back the printed code copies to
your responsible TA by Monday noon (13.11.2017).
Rendu1 Projet dAutomne 2017-18

CRITERIA LIST BASED ON SOME [CONVENTIONS]

[E11] there is a #define including a lowercase letter.


[E12] there is a variable name starting with an uppercase letter.
[E14] there is a multi word variable written differently than the following models:
thisVariable or this_variable.

[L00, L01] the printed code violates the font type or misses the line numbers.

[L1] missing indentation for control statement (if, for, while) or the indentation style is
not homogeneous over the whole code written by the student (check allowed variations first)

[L11] missing indentation for the main function.

[L13] use of double indentation in a block of code (too much indentation), for example:
for(i=0 ; i< MAX ; i++)
{
printf("this is doubly indented\n");
}

[L2] there is at least one wrapping line in the code:


printf("In the beginning there was nothing, which exploded.
Terry Pratchett") // wrapping line, bad!

[L23] long format should be aligned with the start of the previous format
printf("In the beginning there was nothing, which exploded."
" Terry Pratchett") // misalignment, still bad.

printf("In the beginning there was nothing, which explored."


" Terry Pratchett.") // good =)

[P5] 1) missing symbols (with define or enum). Focus only on the magic numbers for the
person parameter array size and the index to access the stored parameters for position and
goal. Other values are not penalized, such as array index starting at 0 and some boundaries
using the value 1. Ask on the ASSISTANT_FORUM in case of doubt.
2) poor choice of symbol name such as ZERO, ONE, TWO for 0, 1, 2
-------------------------------------------------------------------------------------------------------------------
For these codes, just indicate a gentle warning on the printed copy (they will be
penalize in the final assignment) :
[L24] too compact code, no empty lines
[D3] too many and too dense comments