Skip to content

Distributed Systems, 7.5 Credits

Swedish name: Distribuerade system

This syllabus is valid: 2017-07-24 and until further notice

Course code: 5DV186

Credit points: 7.5

Education level: Second cycle

Main Field of Study and progress level: Computing Science: Second cycle, has only first-cycle course/s as entry requirements
Computational Science and Engineering: Second cycle, has only first-cycle course/s as entry requirements

Grading scale: TH teknisk betygsskala

Responsible department: Department of Computing Science

Established by: Faculty Board of Science and Technology, 2017-09-29


The course introduces basic knowledge to give an understanding how modern distributed systems operate. The focus of the course is on distributed algorithms and on practical aspects that should be considered when designing and implementing real systems. Some topics covered during the course are causality and logical clocks, synchronization and coordination algorithms, transactions and
replication, and end-to-end system design. Although the course cover various distributed algorithms, it is not only a theoretical course.
Thus, computer based assignments are used extensively to give students practical experience in designing and implementing real systems. In addition the course explores recent trends exemplified by current highly available and reliable distributed systems.

Expected learning outcomes

Knowledge and Understanding
After having completed the course the student will be able to:
  • Summarize and describe general properties, challenges, and characteristics of distributed systems (FSR 1)
  • Explain the notions of causality and time in light of the design and implementation of distributed systems (FSR 2)
  • Describe general distributed algorithms for synchronization and concurrency, coordination, transactions, and replication (FSR 3)
  • Explain the inner mechanisms of current distributed systems (FSR 4)
  • Exemplify practical issues that need to be considered when designing, implementing, and debugging distributed systems (FSR 5)
Skills and abilities
After having completed the course the student will be able to:
  • Compare replication schemes with respect to performance, availability, and consistency concerns (FSR 6)
  • Design, implement, and debug distributed systems (FSR 7)
  • Employ fundamental distributed algorithms to solve problems that arise when engineering distributed systems (FSR 8)

Required Knowledge

Univ: To be admitted you must have (or equivalent) 90 ECTS-credits including 60 ECTS-credits in Computing Science or two years of completed studies within a study programme (120 ECTS-credits). In both cases, including at least 7.5 ECTS-credits in operating systems (e.g. 5DV171) and at least 7.5 ECTS-credits on bechelor level in computer networks, (e.g. 5DV166).

Proficiency in English equivalent to Swedish upper Secondary course English A/5. Where the language of instruction is Swedish, applicants must prove proficiency in Swedish to the level required for basic eligibility for higher studies.

Form of instruction

Education consists of lectures and compulsory written and computer based assignments. In addition to scheduled activities, individual work with the material is also required.

Examination modes

Evaluation of the course will be done in two parts. The first part will assess FSR 1-6 based on 2-4 written tests. The number of tests is decided by their extent and the number of tests and announced at the latest at the start of the course. The second part assesses FSR 7 and 8 through a number of mandatory assignments (projects). The number of projects is decided by their extent but is never more than 4.

The assements given for each part of the course are Fail (U), or Pass (3), Pass with Merit (4), or Pass with distinction (5). The assessment is done when all tasks within that part is completed.

The final grades given for the course are Fail (U), or Pass (3), Pass with Merit (4), or Pass with distinction (5). In order to pass the course both parts described above must be assessed as passed.

A student who has passed an examination may not be re-examined.

Students who do not pass the course, will be given re-exams. Students who have not participated in the projects at all during the course will receive the Fail (U) grade and will be offered additional opportunity for examination only when the course is given next time.

A student who has taken two tests for a course or a segment of a course, without passing, has the right to have another examiner appointed, unless there exist special reasons (Higher Education Ordnance Chapter 6, Section 22). Requests for new examiners are made to the head of the Department of Computing Science.

Examination based on this syllabus is guaranteed for two years after the first registration of the course. This applies even if the course is closed down and this syllabus ceased to be valid.

Students have the right to be tried on prior education or equivalent knowledge and skills acquired in the profession can be credited for the same education at Umeå University. Application for credit transfer is submitted to the Student Services / Degree. For more information on credit transfer available at Umeå University's student web, see, and the Higher Education Ordinance (Chapter 6). A refusal of crediting can be appealed (Higher Education chapter 12) to the University Appeals Board. This applies to the whole as part of the application for credit transfer is rejected.

Other regulations

In an exam, this course not be included, in whole or in part, simultaneously with another course of similar content. If in doubt, consult the student counselors at the Department of Computing Science and / or program director of your program.

In particular, this course can not, in whole or in part, be used in a degree together with any of the courses Distributed systems (codes 5DV020 or 5DV147).

Course connections to programmes and degrees
The course can be part of the fulfilmentof 45 credits (at least 37.5 of these on advanced level) within Computer Science when pursuing the specialization in Computer Science within a degree of Master of Science (Two Years) with Computing Science as Main Field of Study.



Valid from: 2017 week 20

Recommended reading

Coulouris George F.
Distributed systems : concepts and design
5. ed., International ed. : Harlow, Essex : Pearson Education ; Addison-Wesley : 2012 : 1063 p. :
ISBN: 978-0-273-76059-7
Search the University Library catalogue