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
Sistemi distribuiti (terzo anno)

Codice ins.

Insegnamento

CFU ins.

Tipo ins.

Anno

Sem.

SSD ins.

Responsabile insegnamento

E3101Q020

Sistemi distribuiti

4

OBS

3

2

INF/01

DE PAOLI Flavio

 

Distributed systems

 

 

 

 

 

 

 Obiettivi e contenuti:
Le applicazioni in rete rappresentano una parte sempre più rilevante del software prodotto. Sempre più spesso si sente parlare di sistemi peer-to-peer (p2p), sistemi ad agenti, applicazioni Web, Web Services, pervasive e ubiquitous computing. Lo scopo del corso è comprendere i concetti e i modelli dei sistemi distribuiti che sottendono lo sviluppo dei nuovi sistemi e delle nuove applicazioni, studiare le principali architetture e tecnologie software che implementano quei modelli. Infine acquisire la capacità di progettare e sviluppare applicazioni semplici, ma paradigmatiche, utilizzando le tecnologie studiate durante il corso: Java/RMI, Java/EJB, .NET e Web Services.

Programma:

  • Definizione e motivazioni per i sistemi distribuiti. Concetti fondamentali: comunicazione e naming, concorrenza e sincronizzazione, trasparenza. Proprietà fondamentali: prestazioni, affidabilità, flessibilità, disponibilità e scalabilità.
  • Richiami dei concetti di comunicazione: il modello a socket, il modello di chiamata di procedura remota, e il modello a oggetti distribuiti.
  • Modelli e architetture per sistemi distribuiti: modello client/server, modello peer-to-peer, comunicazione uno-a-uno e uno-a-molti, sistemi ad eventi, modelli per la gestione del tempo. Cenni ad algoritmi distribuiti. Architettura di server basati su Socket e RMI.
  • Middleware: modello ed architettura. Il concetto di Interface Definition Language (IDL) e linguaggi Di implementazione; Naming e Access. Il modello a componenti di J2EE.
  • Introduzione alla Service Oriented Computiong: sviluppo di applicazioni web e servizi. WSDL e UDDI. Linguaggi per la descrizione di processi e composizione di servizi.

Risultati di apprendimento previsti:
Conoscenza delle proprietà caratteristiche dei sistemi distribuiti e dei principali modelli di comunicazione e di architettura. Capacità di progettazione e sviluppo di semplici applicazioni distribuite.

Prerequisiti:
Conoscenza delle reti e dei protocollo di rete di calcolatori, linguaggi di programmazione a oggetti (java), principi di programmazione concorrente e distribuita.

Tipo esame:
Scritto e orale

Tipo valutazione:
Voto finale

Aims and contents:
Networked applications are becoming the largest part of the produced software. It is common to talk about peer-to-peer systems (p2p), agent-based systems, Web applications, Web services, pervasive and ubiquitous computing. The objective of this course is to understand the concepts and the models of distributed systems that are behind the development of innovative applications and systems; study the reference architecture and technologies that implement such models. Finally, being able to develop simple, yet paradigmatic, applications with the studied technologies: Java/RMI, Java/EJB, .NET e Web Services.

Program details:

  • Definition and motivations for distributed systems. Basic concepts: communication, naming, concurrency and synchronization, transparency. Basic properties: performance, dependability, flexibility, availability and scalability.
  • Recall of the concepts of communications: the socket model and the remote-procedure-call model. Distributed object model.
  • Models and architecture for distributed systems: client/server, peer-to-peer, one-to-one and one-to-many communication, event-based systems, time management. Distributed algorithms.
  • Middleware: Models and architecture. The concept of Interface Definition Language (IDL) and implementation languages, naming and access. The component model of J2EE. EJB types.
  • Introduction to Service Oriented Computing: development of Web applications and services. WSDL and UDDI. Languages for process description and service composition.

Learning outcomes:
Understanding the basic properties characterizing distributed systems. Understanding the basic communication models and architectures. Ability of developing simple and representative applications with the technologies studied during the course.

Prerequisites:
Knowledge of the networking and protocol principles. Object-Oriented programming languages (java). Principles of concurrent and distributed programming.

 

 




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/11/2013