The assignments are divided into two examinations parts, the reading group assignment worth 1.5 credit and the programming assignment worth 3 credits. The reading assignments will be done in groups of four, and the programming assignments will be done in groups of two.
Deadline for the assignment parts can be found in the assignment descriptions, which in turn can be found in the git repository:
git clone ssh://{user-name}@git.dsv.su.se/git/prop/info
If you hand assignments in late, you cannot score higher than grade E (lowest possible pass).
The reading group assignment consists of three parts, one per programming paradigm covered during the course and the assignment descriptions can be checked out from the course's git repo.
The programming assignment consists of three parts, one per programming paradigm covered during the course and the assignment descriptions can be checked out from the course's git repo.
1. OO Implementation
In order to receive the grade E you have to implement inheritance
and
reflect on your implementation. To receive a grade better than C,
you
also have to implement delegation, and reflect on the differences.
Grading programming is more an art than a science. In the general case, it is extremely difficult to impossible to say that one program is better than the other. For the obvious reasons, it is impossible to cover the grading criteria completely. In any case, the points below are not totally black/white. This is why you should also should reflect on you implementation.
For the programming assignment for block 2 the following table will be used when grading the assignments.
|
To get a Good, your program/answer must:
For every point above that is not satisfied, the program/answer takes one step down the grade ladder from Good down to Missing/Fail.
2. Prolog
The prolog assignment is graded as
follows:
A | Good implementation of basic
functionality and 2 well
executed
extensions
B | Good implementation of basic
functionality and 1 well executed
extension
C | Good implementation of basic
functionality
D | Acceptable implementation of basic
functionality
E | Sufficient implementation of basic
functionality
3. Clojure
In order to receive the grade E you have to implement the safe macro and write the reflection on macros. To receive a grade better than C, you also have to implement the SQL macro.
Grading programming is more an art than a science. In the general case, it is extremely difficult to impossible to say that one program is better than the other. For the obvious reasons, it is impossible to cover the grading criteria completely. In any case, the points below are not totally black/white. This is why you should also should reflect on you implementation.
For the programming assignment for block 4 the following table will be used when grading the assignments.
|
To get a Good, your program/answer must:
For every point above that is not satisfied, the program/answer takes one step down the grade ladder from Good down to Missing/Fail.