COMP-512: Distributed Systems (Fall 2017)

Names and Numbers:

Flavor of the course

The objective is to understand the typical problems encountered in distributed environments and develop solutions for them.  For each topic, we will first look at the foundations, develop some basic algorithms, and then look how the issues are handled in real systems. Of course, the course will not cover all interesting topics in this area. But it should enable you You will work both theoretically and practically. The course will have written assignments in which you develop algorithms and analyze different solutions to specific problems.

Furthermore, there will be a considerable programming project.


COMP-251 and COMP-310 (or equivalent). Knowledge of computer network principles will be very useful, but a networks course is not a pre-requisite

Marking Scheme

Recommended Textbook:

Distributed Systems: Concepts and Design by G. Coulouris, J. Dollimore, T. Kindberg and G. Blair. Addison-Wesley, 5th ed.

A note on academic integrity

McGill University values academic integrity. Therefore all students must understand the meaning and consequences of cheating, plagiarism and other academic offences under the Code of Student Conduct and Disciplinary Procedures (see for more information).


In accord with McGill University's Charter of Students' Rights, students in this course have the right to submit in English or in French any written work that is to be graded.