- Docente: Andrea Omicini
- Credits: 9
- SSD: ING-INF/05
- Language: Italian
- Teaching Mode: Traditional lectures
- Campus: Cesena
- Corso: Second cycle degree programme (LM) in Computer Science and Engineering (cod. 8614)
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
- Web site of the teacher
- Web page of the course with slides (PDF), other materials and useful links
Links to further information
http://apice.unibo.it/xwiki/bin/view/Courses/Sd
Office hours
See the website of Andrea Omicini