Institute of Computer Science
Courses.cs.ut.ee Institute of Computer Science University of Tartu
  1. Courses
  2. 2025/26 spring
  3. Distributed Systems (LTAT.06.007)
ET
Log in

Distributed Systems 2025/26 spring

  • General
  • Lectures
  • Practical work
  • Study materials
  • Plagiarism
  • Message board

Lectures

  • Message board is just available from Monday to Friday

Lectures will take place following the (tentative) schedule below.

Overall: The course is structured into three parts: covering fundamental concepts, underlying algorithms, and the development and maintenance of distributed systems.

PART1: BASIC - fundamental and core concepts: This part establishes key terminology, fundamental concepts, and underlying assumptions essential for developing distributed systems.

  • Lecture 1 (09.02) - Course overview and fundamentals
    • Course overview (Slides)
    • Getting started - 101 Fundamentals (Slides)
  • Lecture 2 (16.02) - System models
    • Expected behavior and assumptions (Slides)
  • No lecture (23.02) - Day off at University by Rector's order
  • Lecture 3 (02.03) - Communications: RPC and threads
    • Concurrency and scheduling (Slides)
  • Lecture 4 (09.03) - Time, clocks and ordering of events
    • Computer synchronization and causality (Slides)

PART2: INTERMEDIATE - Underlying mechanisms and algorithms: This part focuses on understanding the mechanisms and algorithms that are underlying of any distributed system.

  • Lecture 5 (16.03) - Logical time algorithms
    • Broadcast algorithms, Lamport and vector clocks (Slides)
  • Lecture 6 (23.03) - Coordination
    • Election algorithms (Slides)
  • Lecture 7 (30.03) - Replication
    • Quorum (Slides)
  • Lecture 8 (06.04) - Consistency (Part-1)
    • Consistency models (Slides)
  • Mid term exam (13.04)
    • The exam covers content from Lectures 1 to 8.
    • It will take place from 10:15 to 12:00 and will start sharply (Please be on time)
    • The exam is written and closed-book, requiring both text-based answers and diagrams.
    • Quizzes are available to reinforce your understanding and help you reflect on the key principles and core concepts covered in the exam.
    • Exam questions require to apply concepts over specific defined problems. Same as exercises done in class during lectures.
    • Sample Exam
  • Lecture 9 (20.04) - Consistency (Part 2)
    • Consistency models (Slides)
  • Lecture 10 (27.04) - Consensus
    • Paxos, Raft and Chain replication (Slides)
  • Lecture 11 (04.05) - Distributed transactions
    • ACID, isolation, serializability, and linearizability (Slides)

PART3: ADVANCED - System Development and Operationalization: This section focuses on designing, deploying, and ensuring the maintainability of your distributed system.

  • Lecture 12 (11.05) - Modern system architectures
    • From classic (client/server) to explainable and distributed architectures (Slides)
    • This lecture also includes concepts from our research work presented at IEEE International Conference on Distributed Computing Systems (IEEE ICDCS)
  • Lecture 13 (18.05) - Scalability
    • Functional decomposition, partitioning and duplication (Slides)
  • Lecture 14 (25.05) - Monitoring and planning
    • System performance metrics (Slides) Δ

EVALUATION

Please register in ÕIS for the final/resit exam!

  • Final exam - general information: Exams are on-site and closed book. Please register to the exam in õis2.
    • The exam covers content from Lectures 9 to 14
    • It will start sharply, please check the exam time when registering via õis2
    • Quizzes are available to reinforce your understanding and help you reflect on the key principles and core concepts covered in the exam.
    • Exam questions require to apply concepts over specific defined problems. Same as exercises done in class during lectures.

Dates

  • Two options in June (Monday June 1 (Lecture time 10:15), and Wednesday June 3 (Seminar time 10:15)). Rooms to be announced
  • There is also a resit option for students who require a second attempt to pass the course.
  • Institute of Computer Science
  • Faculty of Science and Technology
  • University of Tartu
In case of technical problems or questions write to:

Contact the course organizers with the organizational and course content questions.
The proprietary copyrights of educational materials belong to the University of Tartu. The use of educational materials is permitted for the purposes and under the conditions provided for in the copyright law for the free use of a work. When using educational materials, the user is obligated to give credit to the author of the educational materials.
The use of educational materials for other purposes is allowed only with the prior written consent of the University of Tartu.
Terms of use for the Courses environment