Distributed Systems 7.5 credits
About the course
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.