Search course

Use the search function to find more information about the study programmes and courses available at Chalmers. When there is a course homepage, a house symbol is shown that leads to this page.

Graduate courses

Departments' graduate courses for PhD-students.


Syllabus for

Academic year
TDA297 - Distributed systems, advanced course  
Distribuerade system, fortsättningskurs
Syllabus adopted 2019-02-08 by Head of Programme (or corresponding)
Owner: MPCSN
7,5 Credits
Grading: TH - Five, Four, Three, Fail
Education cycle: Second-cycle
Major subject: Computer Science and Engineering, Information Technology

Teaching language: English
Application code: 12118
Open for exchange students: Yes
Block schedule: A+

Module   Credit distribution   Examination dates
Sp1 Sp2 Sp3 Sp4 Summer course No Sp
0107 Examination 7,5 c Grading: TH   7,5 c   18 Mar 2020 am H   21 Aug 2020 pm J
0207 Laboratory 0,0 c Grading: UG   0,0 c    

In programs



Philippas Tsigas

  Go to Course Homepage


TDA296   Distributed systems II


In order to be eligible for a second cycle course the applicant needs to fulfil the general and specific entry requirements of the programme that owns the course. (If the second cycle course is owned by a first cycle programme, second cycle entry requirements apply.)
Exemption from the eligibility requirement: Applicants enrolled in a programme at Chalmers where the course is included in the study programme are exempted from fulfilling these requirements.

Course specific prerequisites

The course TDA596 Distributed systems or equivalent is required.


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.

Learning outcomes (after completion of the course the student should be able to)

  • Get a good understanding on the advances in technologies, system architectures and communication architectures that propelled the growth of distributed computing systems.
  • Accomplish a good understanding of the principles and practices in designing efficient protocols and algorithms for distributed systems, as well as their interplay with high-level systems design issues.
  • Understand and appreciate the challenges and opportunities faced by distributed systems, and sensor networks application designers.
  • Design, program and evaluate representative distributed systems and applications.


In particular, we will address and study the following issues in distributed systems:
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.
Fault-Tolerant Multicast.
Resource Allocation.
Distributed algorithms:
How to design and analyze distributed algorithms?
Sensor Networks and energy efficient distributed designs.
Denial of Service Attacks.


Lectures introduce present principles and algorithms.
Hands-on programming assignments are run in parallel with the lectures.


See separate literature list.

Examination including compulsory elements

There will be a final written examination, as well as three lab assignments during the term.

The lab assignments give the opportunity to students to uncover the fundamental attributes and characteristics of the protocols that will be discussed in the class.

Page manager Published: Thu 04 Feb 2021.