Distributed Systems 2025/2026

Main Slides Materials Projects
structure of the course
child courses
lightbulb Distributed Systems (Module 1) (2nd cycle, 2025/2026) — Andrea Omicini
lightbulb Distributed Systems (Module 2) (2nd cycle, 2025/2026) — Giovanni Ciatto
pages
learning outcomes

At the end of the course, students got acquainted with the fundamental issues of distributed systems, the computational models capturing their essence, and the technologies currently helping facing them in the most systematic and effective way. In particular, students become familiar with the fittest solutions, technologies, architectures, and methodologies to design distributed systems, and is capable of devising out the most critical aspects of distributed systems coming from physical distribution determining the most proper methodological approaches selecting the fittest technologies for implementing the solutions detected.

course contents
  • Case Studies
    The CAP Theorem. Availability, Consistency, Failure in Distributed Systems  •  The Problem of Consensus in Distributed Systems  •  Distributed Ledger Technology. Blockchain as Middleware  •  Representational State Transfer (ReST)  •  Logical Clocks  •  Simple Agents in JADE  •  Coordination in Linda  •  Code Mobility
  • General Issues of Distributed Systems
    Why Distributed Systems?  •  Replication & Consistency in Distributed Systems  •  Dependability in Distributed Systems  •  Roots of Distributed Systems. Computation in Space & Time  •  Definitions & Goals for Distributed Systems  •  Sorts of Distributed Systems  •  Modelling Distributed Systems. Software & System Architectures  •  Modelling Distributed Systems. Process Algebra  •  Computing with Time  •  Agents for Distributed Systems  •  Coordination of Distributed Systems  •  Computing with Space
  • Technologies for Distributed Systems
    Build Automation  •  Containers  •  Asynchronous Programming  •  Sockets  •  Presentation  •  Web Services  •  Consensus  •  Queues
teaching methods
  • Lessons with slides
  • Examples discussed and built by the teachers
  • Lab activity
assessment methods
  • Verification of lab activity
  • Presentation and discussion of an individual/group project
course series
lightbulb Distributed Systems 2026/2027 • lightbulb Distributed Systems 2025/2026 • lightbulb Distributed Software Systems 2025/2026 • lightbulb Distributed Systems 2024/2025 • lightbulb Distributed Systems 2023/2024 • lightbulb Sistemi distribuiti 2022/2023 • lightbulb Sistemi distribuiti 2021/2022 • lightbulb Sistemi distribuiti 2020/2021 • lightbulb Sistemi distribuiti 2019/2020 • lightbulb Sistemi distribuiti 2018/2019 • lightbulb Sistemi distribuiti 2017/2018 • lightbulb Sistemi distribuiti 2016/2017 • lightbulb Sistemi distribuiti 2015/2016 • lightbulb Sistemi distribuiti 2014/2015 • lightbulb Sistemi distribuiti 2013/2014 • lightbulb Sistemi distribuiti 2013/2014 • lightbulb Sistemi distribuiti 2012/2013 • lightbulb Sistemi distribuiti 2012/2013 • lightbulb Sistemi distribuiti 2011/2012 • lightbulb Sistemi distribuiti 2010/2011 • lightbulb Sistemi distribuiti L-A 2009/2010 • lightbulb Sistemi distribuiti L-A 2008/2009 • lightbulb Sistemi distribuiti L-A 2007/2008 • lightbulb Sistemi distribuiti L-A 2006/2007 • lightbulb Sistemi distribuiti L-A 2005/2006 • lightbulb Sistemi distribuiti L-A 2004/2005 • lightbulb Sistemi distribuiti L-A 2003/2004 • lightbulb Sistemi distribuiti L-A 2002/2003 • lightbulb Sistemi distribuiti L-A 2001/2002
works as
parent course
lightbulb Distributed Systems (Module 2) (2nd cycle, 2025/2026) — Giovanni Ciatto
lightbulb Distributed Systems (Module 1) (2nd cycle, 2025/2026) — Andrea Omicini
proxy for course
lightbulb Distributed Software Systems (2nd cycle, 2025/2026) — Andrea Omicini