Assignments

Labs will be used to give 5 assignments throughout the semester. By solving the assignments, you will obtain points which will determine your grade.

Each assignment will use a particular middleware technology. A simple introductory example will be provided. The task will be to implement a program using the middleware technology.

Optionally, we can agree on individual assignments on the topic of your choice. The assignment has to be approved in advance, before the examination period. Solutions will be expected by the end of the summer examination period. Contact the lab assistant for details.

Requirements

To complete the course, you need to:

  • Get at least 25 points from the assignments.
  • 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:

  • 45-50 points: 1,
  • 35-44 points: 2,
  • 25-34 points: 3.

To get 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 task 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.
    • You can fix any problems pointed out in the solution until the extended deadline, for half the points.

If you miss a deadline:

  • If you do not attend a lab and do not submit the activity on the same day, you have to present your solution (in addition to the one required by default).
  • Solutions submitted between the standard and extended deadline are worth half the points.
  • There will be a 10-hour tolerance for a single deadline that you miss. Contact the lab teacher in case you miss a deadline within the tolerance.

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

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. To submit a solution in the extended deadline, tag it with extended-01 to extended-05.

We will commit an evaluation of the solution in your GitLab repository. Only appropriately tagged solutions are graded. You can also check the points achieved so far in SIS - study group roster.

Schedule

Topic Labs
Monday 14:00
Assignment deadline
Thursday 23:59
Extended deadline
Thursday 23:59
01 – gRPC
Examples
March 2nd March 12th March 26th
02 – RMI
March 16th March 26th April 23th
03 – JMS
March 30th April 9th April 23rd
04 – Kafka
April 13th April 23rd May 21st
05 – Hazelcast
April 27th May 21st May 28th