Till KTH:s startsida Till KTH:s startsida

Homework Assignments and Reporting Seminars

This is the old (last year) version of the assignment page. To access the current version of this page please refer to the ID2201 course material in Canvas.

You are required to perform 5 (five) individual homework assignments listed below, The aim of the assignments is to practice in building a distributed system and discuss possible solutions to some interesting aspects of distributed systems. You may discuss homework with classmates, but all your work turn in must be your own.

Each assignment must be presented and demonstrated in person to course teaching assistant at a corresponding seminar on the date the homework is due. Note that the homework "Hello Erlang" is not mandatory. You get a bonus (to be added to the exam score), if you present your homework on time and it is accepted. You can also present your homework on a workshop session is you are ready with it earlier.  

Each assignment includes an optional task for extra bonus, such as to implement suggested improvements or perform experiments.

Links to Homework Assignments

Hello Erlang: an introduction to Erlang. -- Not mandatory. there is nothing that you need to hand in, just get some help. Helps available during the first two weeks.

Number

Title

Due 

Book time to report

HW 1 Rudy: a small web server 2017-09-14 Book 30 min time slot for reporting
HW 2 Routy: a routing network 2017-09-21 Book 30 min time slot for reporting
HW 3 Loggy: a logical time logger 2017-09-28 Book 30 min time slot for reporting
HW 4 Groupy: a group membership service 2017-10-05 Book 30 min time slot for reporting
HW 5 Chordy: a distributed hash table 2017-10-12 Book 30 min time slot for reporting

The report, presentation and demonstration

You present and demonstrate your homework solution and hand in a printed copy of a 2-3 page report that describes your results to a course teaching assistant at a seminar on the date the homework is due (you will get a bonus for presenting on time). You should be prepared also to discuss the problems encountered, pros and cons, and possible improvements.

If you fail to clearly present, explain and demonstrate your results, you have failed the assignment and will have to redo it and present again (in this case you loose the bonus). Use the following LaTex template for the report:

Helping Workshops and Reporting Seminars

For each homework topic, there are two sessions -- a workshop (Räknestuga) and a seminar (Seminarium).

Workshops are helping sessions, which are not mandatory but you will be able to get some help from TAs in solving the problems and doing your homework. The best thing is if you are already prepared and spend the time at the session solving the tricky issues and maybe run some experiments. If you will, you can also present your homework assignments at workshop sessions.

Seminars are mandatory.  At a seminar, you present and demonstrate results of your homework assignment to a teaching assistant, as well as discuss the problems encountered, pros and cons, and possible improvements. At the seminar, you should have a working system up and running. If you are ready earlier than the homework deadline, you can present your homework at a workshop session.

Sign up to reporting seminars

Sign up to one of the sessions for the reporting seminars. You sign up using the Doodle links (to be provided later).

Lärare Johan Montelius skapade sidan 8 juli 2012

Lärare Johan Montelius ändrade rättigheterna 8 juli 2012

Kan därmed läsas av alla och ändras av lärare.
Johan Montelius redigerade 25 augusti 2012

There will be six seminar topics that will guide you through some interesting aspects of distributed systems.

For each topic you will have two sessions. The first session is not mandatory but you will be able to get some help in solving the problem. The best thing is if you are already well prepared and spend the time at the session solving the tricky issues and maybe run some experiments.

On the second seminar you should have a working system up and running so that you can either connect to others in a larger distrubuted system, extend the system, run some benchmarks and discuss the problems encountered. The second seminar sessions are mandatory and you should be prepared to explain your results. Note - the first topic is not mandatory and there is nothing that you need to hand in.

The report At the seminar you should hand in a 2-3 page report that describes your results. You should use the LaTex template provided and hand in a printed copy at the start of the seminar. If you fail to prepare properly you have falled the seminar and will have to redo the course next year. Use the following LaTex template:¶


* Seminar template
SIgn up Sign up to one of the sessions for the Thursday seminars: morning, before lunch and afternoon. You sign up using Daisy.

Schedule
* Hello Erlang: an introduction to Erlang
* Tuesday x'th of September
* Thursday x'st of September - not mandatory

* Rudy: a small web server
* Tuesday x'th of September
* Thursday x'th of September - mandatory

* Routy: a routing network
* Tuesday x of September
* Thursday x of September - mandatory

* Loggy: a logical time logger
* Tuesday x of September
* Thursday x of September - mandatory

* Groupy: a group membership service
* Tuesday x of September
* Thursday x of September - mandatory

* Chordy: a distributed hash table
* Tuesday x of October
* Friday x of October - mandatory

kommenterade 26 augusti 2012

Hej,

I cannot register a course neither in My Pages nor in Daisy in order to do the seminar registration.

Will we have to wait untill our courses are automatically registered to our accounts?. (If I recall something like that was told to us in the introduction day, for the new students.)

kommenterade 29 augusti 2012

is there somewhere where we can register for seminars ? link ?

Lärare kommenterade 29 augusti 2012

If you have been registered on the course then you should be able to see the course using Daisy (http://daisy.it.kth.se). Find ID2201 and then select one of the seminar groups. In your case you need to talk to the student coordinator for the IT-program and figure aout why you are not registered for the semester nor have the course selected.

kommenterade 29 augusti 2012

looks like i cannot rech my coordinator before friday..

can i attend tommorow's seminar ?

Lärare kommenterade 29 augusti 2012

Yes, but tomorrow is only "Hello Erlang" and it's not mandatory.

kommenterade 2 september 2014

It seems that all of the dates for the seminars and "räknestuga" is off by one day. For example 17/9 is a Wednesday, not a Tuesday. So in the schedule they are indeed on Tuesdays and Thursdays but according to the dates given here they are on Wednesdays and Fridays. Which days are the correct ones?

Lärare kommenterade 2 september 2014

Those were last years dates :-) Should be updated now.

kommenterade 15 september 2014

It was fine to do the seminar assignments in pairs, but was it also ok to write and hand in the same report? I forgot.

kommenterade 16 september 2014

Oh and also, are we supposed to actually implement the improvements suggested under "Going further" before the seminar, or is that optional?

Lärare kommenterade 16 september 2014

That is optional... but quite fun.

Lärare kommenterade 16 september 2014

Ahh, you work in pairs or small groups, help each other etc but you write your own report. I wan to see your thoughts on what was hard and how things were solved.

En användare har tagit bort sin kommentar
Johan Montelius redigerade 22 september 2014

There will be six seminar topics that will guide you through some interesting aspects of distributed systems.

For each topic you will have two sessions. The first session is not mandatory but you will be able to get some help in solving the problem. The best thing is if you are already well prepared and spend the time at the session solving the tricky issues and maybe run some experiments.

On the second seminar you should have a working system up and running so that you can either connect to others in a larger distrubuted system, extend the system, run some benchmarks and discuss the problems encountered. The second seminar sessions are mandatory and you should be prepared to explain your results. Note - the first topic is not mandatory and there is nothing that you need to hand in.

The report At the seminar you should hand in a 2-3 page report that describes your results. You should use the LaTex template provided and hand in a printed copy at the start of the seminar. If you fail to prepare properly you have falled the seminar and will have to redo the course next year. Use the following LaTex template:


* Seminar template
Sign up Sign up to one of the sessions for the Thursday seminars: morning, before lunch and afternoon. You sign up using Daisy.

Schedule
* Hello Erlang: an introduction to Erlang
* Not mandatory, help is available during the first two weeks.

* Rudy: a small web server
* Monday/Tuesday  15-16'th of September
* Thursday  18'th of September - mandatory

* Routy: a routing network
* Monday/Tuesday 22-23'th of September
* WedneThursday 245'th of September - mandatory

* Loggy: a logical time logger
* Tuesday 30'th of September
* Thursday 2'nd of October - mandatory

* Groupy: a group membership service
* Tuesday 7'th of October
* WedneThursday 89'th of October - mandatory

* Chordy: a distributed hash table
* Monday 13'th of October
* Tuehursday 146'th of October - mandatory

Lärare kommenterade 22 september 2014

Now it should be synchronized with the actual schedule. Sorry for the disinformation.

kommenterade 6 oktober 2017

Will there be any make up/extra seminar session to present in case you miss the last Seminar?

Lärare kommenterade 6 oktober 2017

Yes, there will be at least one extra reporting session after the last seminar. I'll appoint an extra session(s) later next week.