Assignments
Throughout the semester, we will give out 5 lab activities and 5 home assignments. By solving the assignments, you will obtain points that determine your grade.
Each assignment will use a particular middleware technology. We will provide a simple introductory example. The task will be to implement a program using the middleware technology.
Requirements
To complete the course, you need to:
- Complete every lab activity on the day of the lab.
- Complete a subset of the 5 home assignments and obtain at least 20 points.
- Present at least one of your solutions to the lab teacher in person at one of the labs.
The number of points determines the final grade. Solving 4 out of 5 assignments suffices to obtain the best grade.
- 36-50 points: 1,
- 28-35 points: 2,
- 20-27 points: 3.
To obtain points from an assignment:
- Either attend the lab where the task is announced in person or complete the lab activity on the same day.
- Before submitting the solution, complete the lab activity:
- Install the required software and run the introductory example program.
- Show that you were able to do that by sending a program output or connecting to our servers with the program (there will be specific instructions).
- Submit your solution before the assignment deadline (see the schedule below).
- You will receive points based on the quality of your solution.
If you do not submit the lab activity on the same day, you have to present your assignment solution in addition to the one required by default.
Submission
Before each lab, pull the assignment from the upstream repository. Submit all solutions to a fork of the upstream created for you in the faculty GitLab. Include a description of the solution, build instructions, and all necessary source files. Do not include generated files and external libraries. You have to tag your solution with done-01 to done-05 as appropriate and push the tag (git push origin --tags). Please double-check that you pushed the tag to your fork correctly, since late or incorrectly submitted solutions will not be graded.
We will commit an evaluation of the solution in your GitLab repository.
AI Policy
The purpose of this course is to get hands-on experience with middleware technology. Therefore, it is strictly forbidden to use AI to directly generate a solution to an assignment or any submitted materials (including code, documentation, and answers to questions). Submitting AI-generated work may result in failing the course. Students may be asked to explain their implementation in person, and a failure to explain the submitted logic will be considered a violation of this policy. You can, however, use AI assistants to ask general questions about a particular technology or troubleshoot problems.
Schedule
| Topic | Group | Labs Monday 14:00 |
Assignment deadline Thursday 23:59 |
|---|---|---|---|
|
01 – gRPC Examples |
odd even |
March 2nd March 9th |
March 12th March 19th |
|
02 – RMI |
odd even |
March 16th March 23rd |
March 26th February 2nd |
|
03 – JMS |
odd even |
March 30th April 20th |
April 9th April 30th |
|
04 – Kafka |
odd even |
April 13th May 4th |
April 23rd May 14th |
|
05 – Hazelcast |
odd even |
April 27th May 18th |
May 7th May 28th |