Syllabus

Distributed Systems, Advanced Course

Course
DIT290
Second cycle
7.5 credits (ECTS)
Disciplinary domain
NA Natural sciences 100%

About the Syllabus

Registration number
GU 2025/3968
Date of entry into force
2026-10-15
Decision date
2025-11-27
Valid from semester
Spring term 2027
Decision maker
Department of Computer Science and Engineering

Grading scale

Three-grade scale

Course modules

Distributed Systems - Advanced Course, 7.5 credits

Position

The course can be part of the following programmes:

  1. Computer Science, Bachelor´s Programme (N1COS)
  2. Computer Science, Master's Programme (N2COS)
  3. Software Engineering and Management, Master's Programme (N2SOF)
  4. Applied Data Science, Master's Programme (N2ADS)

The course is a also a single-subject course at Gothenburg University.

Main field of study with advanced study

ITCDY Computer Science-Networks and Distributed Systems - A1F Second cycle, has second-cycle course/s as entry requirements

Entry requirements

Successfully completed a first year studies within the subject Computer Science or equivalent. Specifically, the course DIT240 Distributed systems is required.

Applicants must prove knowledge of English: English 6/English level 2 or the equivalent level of an internationally recognized test, for example TOEFL, IELTS.

Content

In this course the students first will get to know the points of inherent difference and strength of distributed systems compared with sequential or strongly-coupled systems; consequently, the aim of the course is to teach the students to study the issues and problems that have to be addressed and solved efficiently for these differences to be taken advantage of, so that the system retains its strength and high potential. In particular, we will address and study the following issues in distributed systems: Synchronization: Continuation (after the course DIT240 Distributed systems ) of the study of distributed clock-synchronization and its uses in mutual exclusion; study about resource allocation in general. Advance one step further, to see how to get solutions without the need for clock synchronisation (and hence of lower cost in practice). Replication: The advantages and costs of replicating data: the potential improvement in response times and reliability, and the extra communication costs involved in keeping data consistent. Concurrency control: Study of different types of locking, deadlock detection. Additionally, study of concurrency control methods without locking. Recovery and Fault Tolerance: Check-pointing, optimistic and pessimistic recovery control. Fault-tolerant Agreement in Distributed Systems: (a very special and significant problem, since it is a key issue in most synchronization and coordination problems in distributed systems) Study of the basic impossibility results and discuss their implications; proceed with solutions and protocols for systems with certain strengths and design structures. Distributed Shared Memory: The difference between shared-memory-based programming and message-passing-based programming; types of consistency; write-update and write-invalidate protocols.

Objectives

After completing the course the student is expected to be able to:

  • Understand and solve problems that Distributed systems like P2P; collaborative environment systems or even parts of the core Internet technology have to solve in order to be able to function efficiently and correctly.

The student will also be able to combine theoretical studies with their respective application oriented consequences.

Sustainability labelling

No sustainability labelling.

Form of teaching

Language of instruction: English

Examination formats

There will be a final written examination, as well as a couple of assignments during the term, in combination with 2 practical projects.


If a student who has been failed twice for the same examination element wishes to change examiner before the next examination session, such a request is to be granted unless there are specific reasons to the contrary (Chapter 6 Section 22 HF).

If a student has received a certificate of disability study support from the University of Gothenburg with a recommendation of adapted examination and/or adapted forms of assessment, an examiner may decide, if this is consistent with the course’s intended learning outcomes and provided that no unreasonable resources would be needed, to grant the student adapted examination and/or adapted forms of assessment.

If a course has been discontinued or undergone major changes, the student must be offered at least two examination sessions in addition to ordinary examination sessions. These sessions are to be spread over a period of at least one year but no more than two years after the course has been discontinued/changed. The same applies to placement and internship (VFU) except that this is restricted to only one further examination session.

If a student has been notified that they fulfil the requirements for being a student at Riksidrottsuniversitetet (RIU student), to combine elite sports activities with studies, the examiner is entitled to decide on adaptation of examinations if this is done in accordance with the Local rules regarding RIU students at the University of Gothenburg.

Grades

Sub-courses

  1. Distributed Systems, Advanced Course, 7.5 credits
    Grading scale: Pass with Distinction (VG), Pass (G) and Fail (U).

Course evaluation

The course is evaluated through meetings both during and after the course between teachers and student representatives. Further, an anonymous questionnaire is used to ensure written information. The outcome of the evaluations serves to improve the course by indication which parts could be added, improved, changed or removed.

Other regulations

The course is a joint course together with Chalmers.