Project format

  • You should not change any other files of the project, except for the template-file and the test-file.
  • You may change the test-file at your leisure (add tests, comment tests out), but for the grading your file will be replaced by the original test file.
  • Warning: if a submission has changes in other files, it may not be graded.
  • To solve your homework, download the project, import the project into IntellIJ and start solving the exercises.
  • Each project file contains a profileID definition which you must fill out with your token ID received via email for this lecture. Make sure the token id is defined correctly. (Grades will be automatically assigned by token ID). Warning: if you do not fill your token ID, your homework will not be graded!
  • In order to be graded, the homework must compile. If a homework has compilation errors (does not compile), it will not be graded. Please take care to remove code that does not compile by replacing (or keeping) function bodies implemented with ???.

Submission

  • All homework must be submitted via moodle. Submissions sent via email will not be graded!.
  • All homework must be submitted before the deadline. Submissions that miss the deadline (even by minutes) will not be graded. (All deadlines will be fixed at 8:00 AM, so that you can take advantage of an all-nighter, should you choose to).
  • Your submission should contain a single zip file (WARNING: Other archive types are not allowed!), containing your project as a single directory. If your submission has a different directory structure, it will not be graded.

Points

  • Points are assigned for each test (for a total of 100p), but the final grade will be assigned after manual review. Each homework will be required to be presented during lab for the final grade.
  • Instances where students are unable to solve tasks similar to or related to the submitted homework during presentation will be considered as plagiarism instances and treated as such. Plagiarism offences will be penalised with the entire semester points.

Integrity

  • Each homework uses public test-cases which you can use to guide and test your implementation. Most test-cases are simple, in order to be as easy to use as possible. If an implementation is written with the sole purpose of passing those specific tests, thus disregarding the statement, the entire homework will not be graded!
  • The homework must be solved individually - you are not allowed to share or to take code from other sources including the Internet. Do not use any type of code-generation tool. While some tools might give you correct hints for some parts of the homework, you will lose the opportunity to be creative and solve the homework exploiting your own ideas.

We strongly encourage you to ask questions via the forum (instead of MS Teams) so that other students can benefit from the answers and discussion. You may ask questions about the homework during lab. You will receive feedback about your implementation ideas, but not on the actual written code.