Inizio della pagina -
Logo DISCO
|
Visita la Versione ad elevata leggibilità
|
Vai al Contenuto della pagina
|
Vai alla Fine dei contenuti
|
Vai al Menu Principale
|
Vai alla Barra di navigazione (sei in)
|
Vai al Menu di navigazione (albero)
|
Vai alla Lista dei comandi
|
Vai alla Lista degli approfondimenti
|
Vai al Menu inferiore
|
Logo Ateneo
   
Didattica
Tecnologie ed applicazioni dei sistemi distribuiti

Codice Insegnamento: F1801Q047

Docente: Flavio De Paoli

Contenuti:
L’utilizzo del Web come infrastruttura per lo sviluppo di sistemi cooperativi distribuiti e la presenza di terminali diversi dal classico personal computer hanno determinato lo sviluppo di nuove tecnologie ed stimolato lo sviluppo di nuove applicazioni. Il corso studia i modelli e le architetture delle piattaforme software per il progetto e lo sviluppo di applicazioni Web dinamiche e di sistemi basati sul concetto di servizio come componente software indipendente. Analizza poi come i diversi paradigmi di interazione e comunicazione vengono supportati dalle tecnologie, con particolare riferimento alle applicazioni comunemente indicate come Web 2.0, Web 3.0 con interfacce a mash-up o dashboard.

Testi di riferimento:
Non è previsto un testo di riferimento, il materiale didattico verrà reso disponibile tramite il sistema di e-learning.

Per approfondimenti:
Web Services: Principles and Technology, Michael Papazoglou, Prentice Hall, 2008
Distributed Systems: Principles and Paradigms - 2nd edition, Andrew S. Tanenbaum and Maarten van Steen, Pearson - Prentice Hall, 2007.
Traduzione italiana: Sistemi Distribuiti - Seconda edizione, Pearson - Prentice Hall, 2007.
Programming the World Wide Web – sixth edition, Robert W. Sebesta, Pearson, 2011

Obiettivi formativi:
Lo scopo del corso è fornire allo studente gli elementi fondamentali per comprendere e progettare applicazioni Web cooperative. Al termine del corso lo studente conoscerà i principali modelli di sistemi distribuiti basati su tecnologia Web e le caratteristiche fondamentali dei linguaggi e degli strumenti per la loro realizzazione. Sarà quindi in grado di analizzare l’architettura di un sistema distribuito e comprenderne le caratteristiche tecnologiche. Con questo bagaglio di conoscenze sarà in grado di ideare e progettare sistemi per la creazione e la fruizione di informazioni e servizi.

Prerequisiti:
È auspicabile la conoscenza di base di reti di calcolatori e sistemi distribuiti, ma è comunque prevista una prima parte in cui i concetti fondamentali vengono definiti e spiegati.

Metodi didattici:
Lezioni frontali con esercitazioni in aula e in laboratorio.

Altre informazioni:
Programma esteso:

  1. Parte I: i concetti fondamentali. La rete Internet, il protocollo TCP/IP, e l’interfaccia a socket; definizione e proprietà dei sistemi distribuiti; il Web e il protocollo http; l’architettura delle applicazioni Web basate su servlet; il linguaggio XML.
  2. Parte II: i sistemi a servizi. Definizione di servizio, modello dei servizi, architettura dei sistemi orientati ai servizi. Web services: tipologie e caratteristiche (REST e SOAP), gestione dei servizi (pubblicazione, ricerca, utilizzo e composizione), gli standard e il loro ruolo. La scienza dei servizi: processi di business e strategie di progettazione. Cloud Computing: un cambio di paradigma per la progettazione dei sistemi.
  3. Parte III: lo scambio di informazioni. Formati di scambio dati nei sistemi distribuiti (RSS, JSON, XML); identificazione delle risorse con URI e definizione degli spazi dei nomi (linked data e RDF); descrizione dei servizi (sintattiche e semantiche): proprietà funzionali, non-funzionali e comportamentali; il problema del matchmaking per la ricerca e il confronto tra descrizioni.
  4. Parte IV: interazione e interfacce. Definizione di sistema Web 2.0 e Web 3.0. Architettura dei sistemi Web cooperativi (Blog, wiki, social networks). Creazione di applicazioni personalizzate con le tecniche di mashup e dashboard. Le tecnologie lato client per la creazione di interfacce attive: l’architettura Ajax.

Modalità di verifica dell'apprendimento:
Tipo esame:

Esame scritto con domande aperte e chiuse e colloquio obbligatorio. Possibilità di svolgere progetti in parziale o totale sostituzione dell’esame.

Tipo valutazione:
voto finale

 

 



Approfondimenti

Google Translate
Translate to English Translate to French Translate to German Translate to Spanish Translate to Chinese Translate to Portuguese Translate to Arabic
Translate to Albanian Translate to Bulgarian Translate to Croatian Translate to Czech Translate to Danish Translate to Dutch Translate to Finnish Translate to Greek Translate to Hindi
Translate to Hungarian Translate to Irish Translate to Japanese Translate to Korean Translate to Norwegian Translate to Polish Translate to Romanian Translate to Russian Translate to Serbian
Translate to Slovenian Translate to Swedish Translate to Thai Translate to Turkish

(C) Copyright 2016 - Dipartimento Informatica Sistemistica e Comunicazione - Viale Sarca, 336
20126 Milano - Edificio U14
redazioneweb@disco.unimib.it - ultimo aggiornamento di questa pagina 11/10/2011