<?xml version="1.0" encoding="ISO-8859-1" standalone="yes" ?>
<document>
<title>Distributed Algorithms and Applications</title>
<cid>PIM-VAA</cid>
<sapsubmodule>P222-0072</sapsubmodule>
<bkey>pim3</bkey>
<ctypes>
<hours>2</hours>
<type>P</type>
<hours>2</hours>
<type>S</type>
</ctypes>
<cp>6</cp>
<semester>3</semester>
<mandatory>no</mandatory>
<language>German</language>
<exam>Written exam</exam>
<curriculum>
<curriculum_entry>
<cid>KIM-VAA</cid>
<branch>Computer Science and Communication Systems</branch>
<semester>3</semester>
<mandatory_tag>mandatory course</mandatory_tag>
</curriculum_entry>
<curriculum_entry>
<cid>PIM-VAA</cid>
<branch>Applied Informatics</branch>
<semester>3</semester>
<mandatory_tag>optional course</mandatory_tag>
</curriculum_entry>
<curriculum_entry>
<cid>PIM-VAA</cid>
<branch>Applied Informatics</branch>
<semester>3</semester>
<mandatory_tag>optional course</mandatory_tag>
</curriculum_entry>
<curriculum_entry>
<cid>TIM-VAA</cid>
<branch>Technical Computer Science</branch>
<semester>3</semester>
<mandatory_tag>mandatory course</mandatory_tag>
</curriculum_entry>
</curriculum>
<workload>
60 class hours (= 45 clock hours) over a 15-week period.The total student study time is 180 hours (equivalent to 6 ECTS credits).There are therefore 135 hours available for class preparation and follow-up work and exam preparation.</workload>
<prerequisites>
</prerequisites>
<prerequisitesfor>
</prerequisitesfor>
<convenor>Prof. Dr. Markus Esch</convenor>
<convenor-person-key>mes</convenor-person-key>
<lecturers>
<lecturer>Prof. Dr. Markus Esch</lecturer>
<lecturer-person-key>mes</lecturer-person-key>
</lecturers>
<objectives>After successfully completing this module, students will be able to name the basic properties of distributed algorithms and applications and to describe common models for describing distributed systems. They will be able to explain the challenges and requirements implied by the distribution aspect in the development of distributed algorithms.

Students will be able to evaluate and implement essential aspects of distributed algorithms and applications, such as causal dependency, logical time, synchronization, etc... They will be able to transfer and apply the theoretical knowledge taught in the lecture, in order to solve actual problems. In addition, students will be able to provide simple proof for the correctness of distributed algorithms.</objectives>
<content>- Broadcast and propagation with feedback
- Causal dependency
- Correctness properties safety and liveness
- Models for logical time
- Scheduling
- Consistent snapshot
- Deadlock, detection and avoidance
- Mutual exclusion
- Discussion of relevant practical contributions
 </content>
<media>Lecture slides, annotated lecture slides as a script, lecture-related practical exercises, research on current topics</media>
<literature>A. S. TANNENBAUM, M. v. STEEN: Distributed Systems. Principles and Paradigms, CreateSpace Independent Publishing Platform, 2nd Edition, 2016
    
G. COULOURIS, J. DOLLIMORE, T. KINDBERG: Distributed Systems: Concepts and Design, 5th Edition, 2011
 
G. TEL: Introduction to distributed algorithms, Cambridge University Press; 2nd Edition, 2000
</literature>
<offered>
</offered>
<moduldb-query>Sat Sep 12 07:28:47 CEST 2026, CKEY=kvaua, BKEY=pim3, CID=[?], LANGUAGE=en, DATE=12.09.2026</moduldb-query>
</document>
