Minor changes are by default collapsed in the page history.
No changes
The page does not exist yet.
Failed to load changes
Version by on
Leave Collaboration
Are you sure you want to leave the realtime collaboration and continue editing alone? The changes you save while editing alone will lead to merge conflicts with the changes auto-saved by the realtime editing session.
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
Examples
The architecture of Web-based systems, REST & ROA
Web Services
The Cloud
Basics of distributed systems
Communication
Naming
Synchronisation
Consistency & replication
Fault tolerance
Pardigms and technologies for distributed systems
Distributed object-based systems: models and middleware
From objects to agents: models, languages, and middleware
Coordination of distributed systems: the role of interaction, models, and middlware
Experiments in the lab
JADE: Java Agent DEvelopment Framework
TuCSoN: Tuple Centres Spread over the Network
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