Sistemi distribuiti 2014/2015

pages
general information on the course

Goal

This course is meant to illustrate the conceptual foundations, the main features and the most relevant issues of today distributed computational systems. Also, the main technologies for constructing distributed systems are introduced, in terms of languages, middleware, and infrastructures. In particular, object-based, web-based, coordination-based and agent-based systems are used as the sources for case studies and for experiments in the laboratory.

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
  • Generality on distributed systems
    • Basic problems and definitions
    • Software architectures. The architecture of the WWW, REST & ROA
    • Software infrastructure: from objects to agents
  • Fundamental issues of distributed systems
    • Communication
    • Naming
    • Synchronisation
    • Consistency & replication
    • Fault tolerance
    • Coordination: generality, languages and technologies
    • Distributed software system engineering
  • Main sorts of distributed systems
    • Distributed object-based systems
    • Distributed web-based systems
    • Distributed coordination-based systems
    • Multi-agent systems
readings / bibliography

The bibliography is made available through the course web site.

teaching methods
  • Lessons with slides
  • Examples discussed and built by the teacher and by experts from the field
  • Lab activity
assessment methods
  • Oral test
  • Possible discussion of an individual/group project
teaching tools
course series