Namn Sp Studieform Tid Ort Arrangör
Distributed Systems 5 Cr Föreläsningskurs 29.10.2019 - 13.12.2019
Distributed Systems 5 Cr Kurstentamen 18.12.2019 - 18.12.2019
Namn Sp Studieform Tid Ort Arrangör
Distributed Systems 5 Cr Allmän tent 12.9.2019 - 12.9.2019
Distributed Systems 5 Cr Allmän tent 7.6.2019 - 7.6.2019
Distributed Systems 5 Cr Allmän tent 10.4.2019 - 10.4.2019
Distributed Systems (U) 5 Cr Allmän tent 7.2.2019 - 7.2.2019
Distributed Systems 5 Cr Tentamen 19.12.2018 - 19.12.2018
Distributed Systems 5 Cr Föreläsningskurs 30.10.2018 - 19.12.2018
Distributed Systems 5 Cr Allmän tent 13.9.2018 - 13.9.2018
Distributed Systems 5 Cr Allmän tent 8.6.2018 - 8.6.2018
Distributed Systems 5 Cr Allmän tent 6.4.2018 - 6.4.2018
Distributed Systems (U) 5 Cr Allmän tent 2.2.2018 - 2.2.2018
Distributed Systems 5 Cr Föreläsningskurs 31.10.2017 - 15.12.2017


-Which degree programme is responsible for the course? Computer Science
-Which module does the course belong to? Computer science core
-Is the course available to students from other degree programmes? Yes

Tidigare studier eller kunskaper

Students must have a Bachelors degree in computer science or related field.

More specifically students must have programming skills, knowledge about operating systems, networking and computer organisation/architectures including some basic understanding of concurrency issues in one computer.


During the course, students learn essential motivations, models and techniques for distribution of systems or services.

Key challenges discussed include

  • management of shared global state and safe distributed storages (e.g. distributed databases);
  • distributed decision-making;
  • coordination of parallel and causally ordered processing, and mutual exclusion;
  • basics of verification of distributed system behaviour.

On a more detailed level, students learn the basic solutions for these challenges on different levels of abstraction, in hardware, operating systems, middleware, and application-level architectures. The solutions address distributed processing and storage, their algorithms, mutual communication protocols, and failure situations with recovery options. Common solutions are discussed on replica management, data consistency models and management, and agreements between untrusted agents. Distribution benefits and disadvantages and effects of interdependencies of different solutions will be estimated.


Immediately at the beginning of the Master's studies. During the first semester of Master's studies.

Autumn term, second period, every year


This course covers key distribution topic areas as follows:

  • models of communication from interprocess communication to various forms of remote communication, group communication for different application types;
  • basics of distributed algorithms;
  • time management in distributed or independent systems: logical clocks, partial ordering of events, causal ordering;
  • mutual exclusion and shared use of resources;
  • data management, including data consistency, global state and distributed snapshots, distributed transactions;
  • coordination algorithms, including distributed consensus;
  • fault tolerant systems, including replica management (for data, for processing);
  • formal models and verification as design tools for distributed solutions;
  • application examples in which the discussed solutions are used.

Aktiviteter och undervisningsmetoder som stöder lärandet

Lecture course with exercise groups. Lectures open up key concepts and rationale for solutions, in exercises, details of the solutions become more familiar based on the students' own work on related tasks.


The course is based on the book Sukumar Ghosh: Distributed systems an algorithmic approac, 2nd edition, Chapman&Hall/CRC, 2015. Any other distributed systems textbook covering the topics of the course is also possible to use. Supplementary material will be provided during the course as needed.

Bedömningsmetoder och kriterier

Grading 0-5.

The grade is a weighted combination of the course exam and mandatory course exercises.

Rekommenderade valfria studier

Almost all other Master's degree courses will widen the basic understanding gained in this course, in particular courses in the Networking and Services study track.

Studieavsnittets form

Will be offered as normal contact teaching, lecture course, with weekly lectures and exercise sessions. No distance learning option, but the course can be done as a stand-alone separate exam alternatively.

Attendance is optional, but there might be compulsory elements in the course.

During the weekly exercises students solve problems, implement some algorithms and write short essays on given topics.