From Agentgroup
Jump to: navigation, search
(Slide dell'insegnamento)
(Esercizi presentati a lezione)
Line 112: Line 112:
 
= Esercizi presentati a lezione =
 
= Esercizi presentati a lezione =
 
[[Image:eserciziLezione.png|right]]
 
[[Image:eserciziLezione.png|right]]
 +
 +
# [[Media:Es02-Socket.pdf|Socket exercises]]
  
 
<!--
 
<!--

Revision as of 15:13, 29 September 2017

Questa pagina fornisce il materiale didattico e le informazioni relative all'insegnamento di Programmazione distribuita e mobile (9 CFU) per il Corso di Laurea Magistrale in Informatica a partire dall'AA 2017/2018.


News

Ultime news

Vecchie news

Informazioni sul docente

Docente.png

Prof. Giacomo Cabri

Dipartimento di Scienze Fisiche, Informatiche e Matematiche

Università di Modena e Reggio Emilia, Via Campi 213/B - 41125 Modena

Telefono 0592058320 - Fax 0592055216

giacomo.cabri@unimore.it

Orario delle Lezioni

Orario dell'AA 2017/18

Le lezioni dell'AA 2017/18 inizieranno il 25 settembre 2017 con il seguente orario:

  • Mercoledì dalle 9 alle 11 in aula M2.3 presso Matematica
  • Giovedì dalle 11 alle 13 in aula M2.3 presso Matematica
  • Venerdì dalle 14 alle 16 in aula M2.1 presso Matematica

Obiettivi formativi

Gli obiettivi dell'insegnamento sono:

  • introdurre le problematiche dello sviluppo dei sistemi distribuiti e dei sistemi mobili
  • presentare le tecnologie per lo sviluppo di applicazioni distribuite
  • presentare le piattaforme per i dispositivi mobili
  • presentare le tecnologie di sviluppo di applicazioni mobili


Contenuti dell'insegnamento

Programmazione distribuita

  • Dalle reti di comunicazione ai sistemi distribuiti, sistemi operativi di rete e distribuiti, modelli di interazione tra componenti distribuiti
  • Comunicazione e sincronizzazione distribuita, clock logici e fisici, mutua esclusione distribuita
  • Tecnologie ad oggetti per lo sviluppo di applicazioni distribuite, problematiche
  • Esempio: Java RMI
  • Sistemi a multiagente: definizioni, problematiche, modelli decisionali ed esempi d'applicazione
  • Autonomic Computing: definizioni, problematiche e applicazioni.

Programmazione mobile

  • Progettazione software su Android: dalle problematiche di progettazione alla gestione di memoria ed energia
  • Architetture per lo sviluppo su multipiattaforma
  • Virtual Machine per dispositivi mobili
  • Un esempio: Android


Verifica dell'apprendimento

La verifica di svolgerà attraverso lo sviluppo di un progetto e una prova orale. Il progetto consisterà nello sviluppo di una applicazione distribuita o mobile, in accordo con il docente, e nella produzione della relativa documentazione. Il progetto potrà essere svolto anche in gruppo nominando un project leader. La prova orale consisterà nella presentazione del progetto e in domande per la verifica della comprensione del programma svolto.


Appelli

Iscrizione.png

Le date degli appelli sono disponibili sul sito ESSE3 (http://www.esse3.unimore.it).

Testi Consigliati

Dispense a cura del docente.

Libri consigliati:

  • A. Tanenbaum, M. van Steen, Distributed Systems - Principles and Paradigms, Prentice Hall


Slide dell'insegnamento

Lucidi.png

In questa pagina sono riportati alcuni lucidi usati a lezione.

  1. Introduzione ai sistemi distribuiti / Introduction to distributed systems
  2. Comunicazione e sincronizzazione / Communication and synchronization



Seminari

Esercizi presentati a lezione

EserciziLezione.png
  1. Socket exercises


Strumenti Software

Strumenti.png

Si indicano di seguito gli strumenti software che si utilizzano durante l'insegnamento e si indica dove e' possibile reperirli.


Esercitazioni di laboratorio