Informatica e networking

Laurea Magistrale

A Milano

6001-7000 €

Chiama il centro

Hai bisogno di un coach per la formazione?

Ti aiuterà a confrontare vari corsi e trovare l'offerta formativa più conveniente.

Descrizione

  • Tipologia

    Laurea Magistrale

  • Luogo

    Milano

Il Corso di Laurea Magistrale in Informatica e Networking (Computer Science and Networking) è stato progettato per rispondere alla crescente domanda di una figura professionale che richiede laureati magistrali

in grado di padroneggiare, in modo integrato, tanto le tecnologie informatiche quanto quelle di networking nella progettazione
in grado di intervenire efficacemente nella realizzazione di infrastrutture hardware-software distribuite innovative,
capace di analizzare i requisiti e di procedere, mediante soluzioni ad alto valore aggiunto, alla progettazione e realizzazione di applicazioni basate su servizi distribuiti in svariati settori dell'industria, commercio, ricerca, servizi sociali e al cittadino, pubblica amministrazione.
Questa figura professionale è una figura di cui si riconosce la necessità sia in ambito nazionale che a livello internazionale. Le recenti innovazioni tecnologiche, che hanno permesso di realizzare dispositivi di calcolo e trasmissione dell’informazione sempre più performanti, nonché la presenza pervasiva di tecnologie che combinano informatica e telecomunicazioni rendono ancora più necessaria questa figura in un vasto insieme di aree applicative che comprendono settori di punta dell’attuale panorama del mondo della ricerca, dell’industria e dei servizi, quali Industria 4.0, sistemi cyber-fisici, smart cities, gestione di emergenze e disastri, gestione delle fonti energetiche e molte altre ancora. A questo scopo, i laureati possiederanno profonde conoscenze informatiche e di comunicazioni riguardo a:

sistemi distribuiti, piattaforme abilitanti, architetture a servizi, sistemi ad alte prestazioni, pervasive & mobile computing;
reti di accesso su vari livelli di scala geografica, trasmissione e tecnologie wireless e ottiche;
modelli e strumenti di programmazione e sviluppo applicazioni, di analisi, progettazione e valutazione di sistemi e applicazioni.

Sedi e date

Luogo

Inizio del corso

Milano
Visualizza mappa
Via Santa Tecla, 5

Inizio del corso

Consultare

Profilo del corso

INFORMATICA E NETWORKING

Corso di laurea magistrale

Descrizione
Piano di studi
Sbocchi professionali
Sbocchi professionali

Lo sbocco occupazionale naturale del laureato magistrale in Informatica e Networking include: le imprese e negli enti di ricerca operanti nel campo delle infrastrutture innovative hardware-software di calcolo e networking, sistemi distribuiti, architetture a servizi, sistemi ad alte prestazioni, cloud-computing, sistemi cyber-fisici, edge-computing; le imprese, enti pubblici e pubbliche amministrazioni operanti nel campo delle applicazioni basate su servizi distribuiti, come automazione industriale, e-business, sistemi real-time e mission-critical, gestione di emergenze e disastri, ubiquitous health care, smart cities, telepresenza e telecontrollo, gestione delle fonti energetiche, automotive (networks). Il laureato magistrale in Informatica e Networking sarà dotato di una preparazione culturale, scientifica, tecnologica e metodologica di base che gli permetterà di accedere ai livelli di studio universitario successivi alla laurea magistrale nei settori dell’informatica e comunicazioni, e/o di contribuire alle attività di ricerca e sviluppo in enti pubblici e privati che si occupano dei settori che hanno a che fare con calcolo ad alte prestazione e networking.



Percentuale di impiego dei laureati

Domande e risposte

Aggiungi la tua domanda

I nostri consulenti e altri utenti potranno risponderti

Inserisci i tuoi dati per ricevere una risposta

Pubblicheremo solo il tuo nome e la domanda

Opinioni

Materie

  • Web master
  • Calcolo delle probabilità
  • C
  • C#
  • Framework
  • Memoria
  • Programmazione
  • Calcolo
  • C++
  • Wireless
  • Servizi
  • Reti
  • Networking

Programma

  • Advanced programming (9 cfu)

    • Obiettivi
      Gli obiettivi del corso sono:
      a. di fornire agli studenti una conoscenza approfondita di come come concetti e metafore ad alto livello dei linguaggi di programmazione si traducono in sistemi eseguibili e quali siano i loro costi e limiti
      b. di familiarizzare gli studenti con i moderni principi, tecniche e migliori pratiche per la costruzione di software sofisticato
      c. di introdurre tecniche di programmazione a livelli di astrazione più elevata, in particolare generative programming, component programming e web computing
      d. di presentare frameworks allo stato dell’arte che incorporano queste tecniche.
      Il corso in particolare si focalizza su questioni di qualità relative al progetto dettagliato ed alla codifica, quali l’affidabilità, le prestazioni, l’adattabilità e l’integrabilità in sistemi più ampi.

      Syllabus
      1. Pragmatica dei Linguaggi di Programmazione
      2. Supporto Run Time e Ambienti di Esecuzione
      3. Programmazione Generica
      4. Librerie di Classi e Framework
      5. Programmazione Generativa
      6. Interoperabilità tra Linguaggi
      7. Programmazione Basata su Componenti
      8. Web Services
      9. Web e Application Frameworks
      10. Linguaggi di Scripting




  • Obiettivi
    Gli obiettivi del corso sono:
    a. di fornire agli studenti una conoscenza approfondita di come come concetti e metafore ad alto livello dei linguaggi di programmazione si traducono in sistemi eseguibili e quali siano i loro costi e limiti
    b. di familiarizzare gli studenti con i moderni principi, tecniche e migliori pratiche per la costruzione di software sofisticato
    c. di introdurre tecniche di programmazione a livelli di astrazione più elevata, in particolare generative programming, component programming e web computing
    d. di presentare frameworks allo stato dell’arte che incorporano queste tecniche.
    Il corso in particolare si focalizza su questioni di qualità relative al progetto dettagliato ed alla codifica, quali l’affidabilità, le prestazioni, l’adattabilità e l’integrabilità in sistemi più ampi.

    Syllabus
    1. Pragmatica dei Linguaggi di Programmazione
    2. Supporto Run Time e Ambienti di Esecuzione
    3. Programmazione Generica
    4. Librerie di Classi e Framework
    5. Programmazione Generativa
    6. Interoperabilità tra Linguaggi
    7. Programmazione Basata su Componenti
    8. Web Services
    9. Web e Application Frameworks
    10. Linguaggi di Scripting




  • Ingegneria del teletraffico (9 cfu)

    • Obiettivi
      Il corso presenta i concetti fondamentali relativi alla teoria ed all’ingegneria del traffico nelle reti di telecomunicazioni. Vengono introdotti i processi di Markov a tempo discreto (catene) e quelli a tempo continuo. Viene inoltre presentata la teoria elementare ed intermedia delle code utili alla trattabilità dei modelli fondamentali di sistemi ad attesa e a perdita impiegati per l’analisi di reti a commutazione di pacchetto e di circuito. La trattazione degli indici prestazionali fondamentali viene presentata passando ove necessario a domini trasformati (Laplace, Zeta). Sono infine presentati i teoremi fondamentali per la trattazione di reti di code markoviane aperte e chiuse e le reti di tipo BCMP. Il corso presenta inoltre i metodi numerici fondamentali per la trattazione di problemi di analisi delle prestazioni riconducibili a soluzioni basate su approcci markoviani.

      Syllabus
      1) Processi di Markov a stato discreto
      a. Processi di Markov a stato discreto e tempo discreto (Catene di Markov)
      b. Processi di Markov a stato discreto e tempo continuo
      2) Processi puntuali
      a. Processi di sola nascita e di sola morte
      b. Processo di Bernoulli a tempo continuo e tempo discreto
      c. Processo di Poisson
      3) Processi di nascita e morte
      a. Condizioni di ergodicità
      b. Valutazione dei momenti di primo e secondo ordine
      4) Generalità sull’analisi del traffico in rete
      a. Modelli stocastici
      b. Modelli deterministici
      c. Non stazionarietà del traffico. Definizioni TCBH, ADPH
      5) Code Markoviane
      a. notazione di Kendall; Geo/Geo/1, M/M/Ns, M/M/Ns/0, M/M/1/Nw;
      b. Formula B di Erlang, Formula C di Erlang, Formula di Engset.
      c. Problemi e relative soluzioni per il calcolo numerico delle formule Erlang B e Erlang C. Sviluppo di funzioni MATLAB per il calcolo delle probabilità di perdita in code M/M/1/Ns e M/M/Ns/Nw. Soluzione mediante MATLAB di sistemi a coda M/Cox2/1/Nw, M/H2/1/Nw e M/E2/1/Nw.
      d. Approccio Matrix-Geometric per la soluzione di Catene di Markov descritte da matrici di Hessenberg a blocchi.
      e. Applicazione dell’approccio Matrix-Geometric per lo studio di sistemi a coda M/Cox2/1.

      6) Code non Markoviane:
      a. La trattazione di una semplice coda non markoviana: la coda M/G/1;
      b. la catena di Markov immersa; analisi della coda in regime asintotico.
      c. Code M/G/1 con classi di utenza e con priorità

      7) Reti di code:
      a. Reti di code markoviane aperte e chiuse. Reti di code acicliche.
      b. Teorema di Burke. Teorema di Jackson.
      c. Teorema di Gordon-Newell.
      d. Algoritmo della convoluzione e approccio Mean Value Analysis per la soluzione delle reti di code di Gordon-Newell.
      e. Reti di code BCMP. Indici prestazionali in reti di code markoviane chiuse e BCMP.

      8) Tecniche numeriche per la soluzione di catene di Markov
      a. Librerie Matfun e Stats di MATLAB. Generazione di osservazioni di vv.aa. di Erlang k, iperesponenziale, ipoesponenziale e di Coxn.
      b. Grafico quantile-quantile. Decomposizione agli autovalori per il calcolo del transitorio in Catene di Markov.
      c. Metodi diretti per il calcolo delle probabilità asintotiche di stato di Catene di Markov.



  • Obiettivi
    Il corso presenta i concetti fondamentali relativi alla teoria ed all’ingegneria del traffico nelle reti di telecomunicazioni. Vengono introdotti i processi di Markov a tempo discreto (catene) e quelli a tempo continuo. Viene inoltre presentata la teoria elementare ed intermedia delle code utili alla trattabilità dei modelli fondamentali di sistemi ad attesa e a perdita impiegati per l’analisi di reti a commutazione di pacchetto e di circuito. La trattazione degli indici prestazionali fondamentali viene presentata passando ove necessario a domini trasformati (Laplace, Zeta). Sono infine presentati i teoremi fondamentali per la trattazione di reti di code markoviane aperte e chiuse e le reti di tipo BCMP. Il corso presenta inoltre i metodi numerici fondamentali per la trattazione di problemi di analisi delle prestazioni riconducibili a soluzioni basate su approcci markoviani.

    Syllabus
    1) Processi di Markov a stato discreto
    a. Processi di Markov a stato discreto e tempo discreto (Catene di Markov)
    b. Processi di Markov a stato discreto e tempo continuo
    2) Processi puntuali
    a. Processi di sola nascita e di sola morte
    b. Processo di Bernoulli a tempo continuo e tempo discreto
    c. Processo di Poisson
    3) Processi di nascita e morte
    a. Condizioni di ergodicità
    b. Valutazione dei momenti di primo e secondo ordine
    4) Generalità sull’analisi del traffico in rete
    a. Modelli stocastici
    b. Modelli deterministici
    c. Non stazionarietà del traffico. Definizioni TCBH, ADPH
    5) Code Markoviane
    a. notazione di Kendall; Geo/Geo/1, M/M/Ns, M/M/Ns/0, M/M/1/Nw;
    b. Formula B di Erlang, Formula C di Erlang, Formula di Engset.
    c. Problemi e relative soluzioni per il calcolo numerico delle formule Erlang B e Erlang C. Sviluppo di funzioni MATLAB per il calcolo delle probabilità di perdita in code M/M/1/Ns e M/M/Ns/Nw. Soluzione mediante MATLAB di sistemi a coda M/Cox2/1/Nw, M/H2/1/Nw e M/E2/1/Nw.
    d. Approccio Matrix-Geometric per la soluzione di Catene di Markov descritte da matrici di Hessenberg a blocchi.
    e. Applicazione dell’approccio Matrix-Geometric per lo studio di sistemi a coda M/Cox2/1.

    6) Code non Markoviane:
    a. La trattazione di una semplice coda non markoviana: la coda M/G/1;
    b. la catena di Markov immersa; analisi della coda in regime asintotico.
    c. Code M/G/1 con classi di utenza e con priorità

    7) Reti di code:
    a. Reti di code markoviane aperte e chiuse. Reti di code acicliche.
    b. Teorema di Burke. Teorema di Jackson.
    c. Teorema di Gordon-Newell.
    d. Algoritmo della convoluzione e approccio Mean Value Analysis per la soluzione delle reti di code di Gordon-Newell.
    e. Reti di code BCMP. Indici prestazionali in reti di code markoviane chiuse e BCMP.

    8) Tecniche numeriche per la soluzione di catene di Markov
    a. Librerie Matfun e Stats di MATLAB. Generazione di osservazioni di vv.aa. di Erlang k, iperesponenziale, ipoesponenziale e di Coxn.
    b. Grafico quantile-quantile. Decomposizione agli autovalori per il calcolo del transitorio in Catene di Markov.
    c. Metodi diretti per il calcolo delle probabilità asintotiche di stato di Catene di Markov.



  • Parallel and distributed systems: paradigms and models (9 cfu)

    • Aim
      The course aims at providing a mix of foundations and advanced knowledge in the field of parallel computing specifically targeting data intensive applications. A first part of the course will provide the necessary background related to the parallel hardware, from multicore to accelerators up to distributed systems such as clusters and cloud. Then the principles of parallel computing will be addressed, including measures characterizing parallel computations, mechanisms and policies supporting parallel computing and typical data intensive patterns. Eventually a survey of existing programming frameworks will be included, aimed at preparing the students to use and exploit the more modern and advanced framework currently used in both research and production institutions. As a result, the student attending the course will be given a general perspective of the parallel computing area as well as a comprehensive survey of the currently available frameworks for data intensive computing. The whole set of arguments will be complemented with practical exercises, in class—according to the bring your own device principle—or as homework assignments. The correct and timely production of assignment solutions will constitute the final written essay needed to access the oral part of the exams. The student may choose to prepare a more consistent final project as substitute of the assignment exercises. The different programming frameworks used in the course will be introduced detailing the main features and usage patterns, leaving to the student the task of learning the low level syntactic details (under the supervision of the professors) as part of the homework assignments.
      Contents
      Evolution of computing devices from sequential to parallel (1.5 ETCS): introduction to multicore, general purpose many core, accelerators, clusters and cloud architectures.
      Principles of parallel computing (4.5 ETCS): measures of interest (time and power), horizontal and vertical scalability, communication/sharing and synchronization mechanisms, concurrent activities (processes, threads, kernels) , vectorization, typical patterns for data intensive parallel computing. Lab exercise and assignments using OpenMP, TBB, FastFlow, MPI.
      Advanced parallel & distributed computing frameworks for data intensive applications (3 ETCS): GPU, data stream processing and data intensive programming frameworks. Lab exercise and assignments using CUDA/OpenCL, Hadoop, Spark, Storm.

  • Aim
    The course aims at providing a mix of foundations and advanced knowledge in the field of parallel computing specifically targeting data intensive applications. A first part of the course will provide the necessary background related to the parallel hardware, from multicore to accelerators up to distributed systems such as clusters and cloud. Then the principles of parallel computing will be addressed, including measures characterizing parallel computations, mechanisms and policies supporting parallel computing and typical data intensive patterns. Eventually a survey of existing programming frameworks will be included, aimed at preparing the students to use and exploit the more modern and advanced framework currently used in both research and production institutions. As a result, the student attending the course will be given a general perspective of the parallel computing area as well as a comprehensive survey of the currently available frameworks for data intensive computing. The whole set of arguments will be complemented with practical exercises, in class—according to the bring your own device principle—or as homework assignments. The correct and timely production of assignment solutions will constitute the final written essay needed to access the oral part of the exams. The student may choose to prepare a more consistent final project as substitute of the assignment exercises. The different programming frameworks used in the course will be introduced detailing the main features and usage patterns, leaving to the student the task of learning the low level syntactic details (under the supervision of the professors) as part of the homework assignments.
    Contents
    Evolution of computing devices from sequential to parallel (1.5 ETCS): introduction to multicore, general purpose many core, accelerators, clusters and cloud architectures.
    Principles of parallel computing (4.5 ETCS): measures of interest (time and power), horizontal and vertical scalability, communication/sharing and synchronization mechanisms, concurrent activities (processes, threads, kernels) , vectorization, typical patterns for data intensive parallel computing. Lab exercise and assignments using OpenMP, TBB, FastFlow, MPI.
    Advanced parallel & distributed computing frameworks for data intensive applications (3 ETCS): GPU, data stream processing and data intensive programming frameworks. Lab exercise and assignments using CUDA/OpenCL, Hadoop, Spark, Storm.

  • High Performance Computing (9 cfu)

    • Obiettivi
      Questo corso tratta di due aspetti fortemente interrelati nel campo del calcolo ad alte prestazioni:
      1. concetti fondamentali e tecniche di strutturazione e progetti di computazioni parallele, metodologie e paradigmi di parallelizzazione, modelli di programmazione parallela, loro implementazione e modelli di costo;
      2. architetture ad alte prestazioni: multiprocessor a memoria condivisa, multicomputer a memoria distribuita, cluster, ed altre.
      Entrambi gli aspetti sono studiati in termini di modelli strutturali, supporti statici e dinamici al modelli di programmazione, valutazione delle prestazioni, capacità di costruire applicazioni complesse e/o piattaforme abilitanti per composizione, anche attraverso esempi di casi applicativi reali. Sono studiate caratteristiche e tendenze tecnologiche, come multi-/many-core e reti ad alte prestazioni.
      Una parte iniziale è dedicata a rivedere concetti e tecniche base dello studio strutturato all’architettura degli elaboratori, allo scopo di uniformare diverse preparazioni di base.

      Syllabus
      0. Computing architecture primer
      1. Metodologie per strutturare e programmare applicazioni parallele ad alte prestazioni; fondamenti di modelli di costo: metriche, elementi di teoria delle code e reti di code, bilanciamento del carico, ottimizzazioni statiche e dinamiche
      2. Paradigmi di parallelizzazione: stream-parallel (pipeline, data-flow, farm, divide and conquer, partizionamento funzionale), data-parallel (map, stencil fissi e variabili, reduce, prefix), and loro composizioni
      3. Meccanismi di cooperazione: comunicazioni dedicate e collettive, oggetti condivisi, strumenti di compilazione, supporti a tempo di esecuzione e loro ottimizzazioni
      4. Multiprocessor a memoria condivisa. SMP, NUMA, modelli di costo; reti di interconnessione e loro valutazione: reti indirette e multistadio, reti diretti e cubi, fat tree, reti on-chip
      5. Architetture a memoria distribuita: multicomputer, cluster, piattaforme distribuite eterogenee, reti di comunicazione ad alte prestazioni
      6. Aspetti avanzati di ricerca e/o tecnologici: multi-/many-core, multithreading simd/vectorizzazione/gpu, calcolo pervasivo ad alte prestazioni.



  • Obiettivi
    Questo corso tratta di due aspetti fortemente interrelati nel campo del calcolo ad alte prestazioni:
    1. concetti fondamentali e tecniche di strutturazione e progetti di computazioni parallele, metodologie e paradigmi di parallelizzazione, modelli di programmazione parallela, loro implementazione e modelli di costo;
    2. architetture ad alte prestazioni: multiprocessor a memoria condivisa, multicomputer a memoria distribuita, cluster, ed altre.
    Entrambi gli aspetti sono studiati in termini di modelli strutturali, supporti statici e dinamici al modelli di programmazione, valutazione delle prestazioni, capacità di costruire applicazioni complesse e/o piattaforme abilitanti per composizione, anche attraverso esempi di casi applicativi reali. Sono studiate caratteristiche e tendenze tecnologiche, come multi-/many-core e reti ad alte prestazioni.
    Una parte iniziale è dedicata a rivedere concetti e tecniche base dello studio strutturato all’architettura degli elaboratori, allo scopo di uniformare diverse preparazioni di base.

    Syllabus
    0. Computing architecture primer
    1. Metodologie per strutturare e programmare applicazioni parallele ad alte prestazioni; fondamenti di modelli di costo: metriche, elementi di teoria delle code e reti di code, bilanciamento del carico, ottimizzazioni statiche e dinamiche
    2. Paradigmi di parallelizzazione: stream-parallel (pipeline, data-flow, farm, divide and conquer, partizionamento funzionale), data-parallel (map, stencil fissi e variabili, reduce, prefix), and loro composizioni
    3. Meccanismi di cooperazione: comunicazioni dedicate e collettive, oggetti condivisi, strumenti di compilazione, supporti a tempo di esecuzione e loro ottimizzazioni
    4. Multiprocessor a memoria condivisa. SMP, NUMA, modelli di costo; reti di interconnessione e loro valutazione: reti indirette e multistadio, reti diretti e cubi, fat tree, reti on-chip
    5. Architetture a memoria distribuita: multicomputer, cluster, piattaforme distribuite eterogenee, reti di comunicazione ad alte prestazioni
    6. Aspetti avanzati di ricerca e/o tecnologici: multi-/many-core, multithreading simd/vectorizzazione/gpu, calcolo pervasivo ad alte prestazioni.



  • Wireless networks (9 cfu)

    • Il corso è volto a fornire agli studenti una critica carrellata sull’evoluzione dell’architettura delle reti cellulari, soffermandosi principalmente sugli aspetti caratterizzanti dei sistemi LTE e 5G. Inoltre, l’insegnamento è volto all’analisi delle tecnologie maggiormente diffuse per reti wireless LAN, sia in banda RF che mmWave, ed all’introduzione dei diversi aspetti architetturali e protocollari delle reti Wireless Mesh Networks (WMN). Infine, il corso si prefigge l’obiettivo di fornire le linee guida per la progettazione di questi sistemi.

      Syllabus

      Reti Wireless LAN (WLAN)
      - Evoluzione della famiglia IEEE 802.11, Certificazione dei prodotti Wi-Fi, Architettura delle reti IEEE 802.11, Differenziazione del servizio di trasporto: 802.11e. Le procedure di management, di autenticazione e per la gestione della sicurezza. Aspetti progettuali delle reti WLAN.

      Wireless Mesh Networks (WMN)
      ...
  • Chiama il centro

    Hai bisogno di un coach per la formazione?

    Ti aiuterà a confrontare vari corsi e trovare l'offerta formativa più conveniente.

    Informatica e networking

    6001-7000 €