58260 - SISTEMI DISTRIBUITI

Scheda insegnamento

SDGs

L'insegnamento contribuisce al perseguimento degli Obiettivi di Sviluppo Sostenibile dell'Agenda 2030 dell'ONU.

Istruzione di qualità Industria, innovazione e infrastrutture

Anno Accademico 2018/2019

Conoscenze e abilità da conseguire

Al termine del corso, lo studente conosce le questioni fondamentali che riguardano i sistemi distribuiti, i modelli computazionali che ne catturano l'essenza, e le tecnologie che correntemente consentono di affrontarle nella maniera più efficace e sistematica. In particolare, lo studente conosce le soluzioni, le tecnologie, le architetture e le Metodologie più idonee ad affrontare il progetto di un sistema distribuito, ed è in grado di: - individuare le criticità di un sistema computazionale derivanti dalla caratteristica distribuzione fisica - determinare le soluzioni metodologicamente più appropriate - selezionare le tecnologie più adatte per implementare le soluzioni individuate.

Contenuti

Generalità sui sistemi distribuiti

  • Alle radici dei sistemi distribuiti: spazio, tempo e computazione
  • Scopi e problemi dei sistemi distribuiti
  • Tipi di sistemi distribuiti

Temi centrali dei sistemi distribuiti

  • Architetture software
  • Middleware
  • Computazione e tempo
  • Computazione e spazio
  • Proprietà della distribuzione

Paradigmi per sistemi distribuiti

  • Programmazione logica distribuita / Logica e computazione
  • Calcolo basato su agenti / Agenti e sistemi multi-agente
  • Sistemi basati sulla coordinazione /  Coordinazione di sistemi distribuiti

Tecnologie per sistemi distribuiti

  • Programmazione logica in Prolog con tuProlog
  • Agenti e sistemi multi-agente con Jade
  • Coordinazione basata su tuple con TuCSoN
  • Programmare l'interazione con ReSpecT
  • Servizi standard per sistemi distribuiti: Web Service
  • Computazione senza spazio: Cloud Computing

Testi/Bibliografia

La bibliografia è resa disponibile tramite il sito del corso.

Metodi didattici

  • Lezioni teoriche in aula con uso di lucidi
  • Esempi discussi e costruiti in aula al computer dal docente e da esperti
  • Laboratorio

Modalità di verifica dell'apprendimento

  • Prova orale
  • Possibile discussione di un progetto individuale o di gruppo

Strumenti a supporto della didattica

Link ad altre eventuali informazioni

http://apice.unibo.it/xwiki/bin/view/Courses/Sd

Orario di ricevimento

Consulta il sito web di Andrea Omicini