• Non ci sono risultati.

Corso di Laurea Scienze e Tecnologie Informatiche

N/A
N/A
Protected

Academic year: 2022

Condividi "Corso di Laurea Scienze e Tecnologie Informatiche"

Copied!
21
0
0

Testo completo

(1)

Corso di Laurea Scienze e Tecnologie Informatiche

Syllabus degli Insegnamenti

Ambito Informatico Algoritmi e Strutture Dati

Settore: ING-INF/05 – INF/01 CFU: 12

Prerequisiti:

Conoscenza della programmazione procedurale. Essere in grado di risolvere problemi di programmazione semplici utilizzando l’iterazione e la ricorsione su strutture dati indicizzate e collegate. Essere in grado di progettare algoritmi efficienti sia in termini di memoria occupata che di tempo di calcolo. Saper lavorare individualmente.

Obiettivi formativi:

Acquisizione delle metodologie e delle tecniche utili per la progettazione e l’analisi di strutture dati efficienti. Acquisizione di tecniche di programmazione avanzata e loro utilizzo nella progettazione e realizzazione delle strutture dati di un sistema software. Essere in grado di astrarre problemi e progettare strutture dati ed algoritmi efficienti per la loro risoluzione. Acquisizione delle tecniche e delle metodologie generali per la loro progettazione di algoritmi efficienti, con particolare riferimento agli aspetti di complessità computazionale e di correttezza. Acquisizione delle principali metodologie di programmazione: divide-et-impera, programmazione dinamica e tecniche greedy.

Essere in grado di astrarre problemi e progettare ed analizzare algoritmi efficienti per la loro risoluzione. Acquisire consapevolezza delle proprie capacità di astrazione e di risoluzione di problemi reali complessi.

Argomenti del corso:

Definizione di strutture dati: specifica e implementazione. Strutture dati classiche (code, pile, tabelle hash, alberi binari di ricerca bilanciati); Strutture dati avanzate (B-Alberi, Heap Binomiali, Heap di Fibonacci, insiemi disgiunti); Grafi e algoritmi su grafi. Analisi degli algoritmi e complessità asintotica; Tecniche di progettazione di algoritmi (divide-et-impera, programmazione greedy, programmazione dinamica); Algoritmi di ordinamento e ricerca; Operazione con le matrici;

Algoritmi di teoria dei numeri.

Basi di Dati

Settore: ING-INF/05 – INF/01 CFU: 9

Prerequisiti:

Il corso è rivolto agli studenti del II anno del corso di Laurea in Informatica e Ingegneria dell’Informazione. Il corso non prevede particolari requisiti e conoscenze pregresse, se non la conoscenza e l’utilizzo del sistema operativo, il concetto di file e l’uso del file system, l’installazione di pacchetti software.

Obiettivi Formativi:

Obiettivo del corso è di introdurre gli studenti alla progettazione di una base di dati dal modello concettuale a quello fisico e della realizzazione pratica della stessa utilizzando il linguaggio programmativo standard SQL e i DBMS presentati durante il corso. Il livello delle conoscenze da

(2)

raggiungere per il superamento delle prove finali di questo corso corrisponde ad aver acquisito (in teoria e in pratica) conoscenza dei concetti presentati nel corso.

Contenuti del corso:

Gli argomenti del corso riguardano la progettazione e realizzazione dei Sistemi di Gestione di Basi di Dati (DBMS). In particolare, vengono presentati il modello logico e fisico di una base di dati, il modello relazionale e quello relazionale ad oggetti, i linguaggi formali per le basi di dati (ad es.

l’algebra relazionale), e il linguaggio standard di manipolazione e di interrogazione, ovvero SQL.

Vengono affrontate le tecniche per la progettazione concettuale delle basi di dati, e i linguaggi per formalizzare i modelli concettuali. Vengono presentate le trasformazioni da modello concettuale a modello logico, le tecniche di normalizzazione e le tecniche di tuning delle basi di dati. Vengono presentati dei DBMS di riferimento che gli studenti utilizzeranno durante le esercitazioni di laboratorio e durante la prova d’esame per scrivere gli script SQL.

Architettura dei Calcolatori Elettronici

Settore: ING-INF/05 – INF/01 CFU: 6

Prerequisiti:

Aritmetica ed algebra lineare. Logica matematica e calcolo combinatorio.

Obiettivi formativi:

Comprensione della struttura di un calcolatore dal punto di vista dell’implementazione a livello architetturale del set di istruzioni del linguaggio assembler. Comprensione del flusso di esecuzione di una sequenza di istruzioni. Capacità di comprendere e di scrivere semplici programmi in linguaggio assembler. Consapevolezza delle scelte progettuali allo scopo di concepire un sistema bilanciato in gradi di massimizzare le prestazioni e l'utilizzo di tutti gli elementi.

Contenuti:

Modulo I: Introduzione ai sistemi di elaborazione, evoluzione storica e tecnologica, architettura e organizzazione dei calcolatori elettronici, modelli di sistema e livelli di astrazione. Cenni al sistema operativo. Il software applicativo. Introduzione alle reti. Internet e World Wide Web. Principi di corretto utilizzo del calcolatore: ergonomia, sicurezza informatica, licenze e diritto d'autore.

Modulo II: Sistemi di numerazione binario, esadecimale e ottale, rappresentazione binaria dei numeri reali. Livello logico: algebra delle reti, circuiti logici elementari, forme canoniche e trasformazioni, minimizzazione logica, reti combinatorie, reti sequenziali. Livello funzionale:

relazione tra livello funzionale e livello micro-architettura, organizzazione di un calcolatore moderno, il repertorio delle istruzioni, la CPU. Architettura e linguaggio assembly. Set di istruzioni.

Programmazione assembly. Livello micro-architettura: implementazione del set di istruzioni, unità di elaborazione, unità di controllo, implementazione dell’unità di controllo mediante la tecnica della microprogrammazione. Gestione del I/O a livello micro-architettura: interrupt e DMA. Interazione con il livello software

Informatica Teorica

Settore: ING-INF/05 – INF/01 CFU: 6

Prerequisiti:

Conoscenze di base di matematica discreta. Conoscenze di base di analisi I. Conoscenze di algoritmi e strutture dati. Conoscenze di programmazione procedurale.

Obiettivi formativi:

Lo scopo del corso è di introdurre la teoria della computazione attraverso il ragionamento rigoroso

(3)

illustrando in che modo i diversi modelli teorici hanno ricadute applicative dirette. L’obiettivo è quindi di presentare allo studente un quadro organico dei collegamenti tra vari argomenti studiati nell’ambito di corsi differenti, quali ad esempio: la relazione tra Macchina di Turing Universale e Modello di Architettura di Von Neuman, la relazione tra Automa Finito e Rete Sequenziale che implementa l’Unità di Controllo, le relazioni tra analisi Lessicale ed analisi Sintattica di un Compilatore ed i linguaggi riconosciuti/generati da Automi/Grammatiche, i limiti della risoluzione algoritmica di problemi quali il debugging di un programma derivanti dalle prove dei limiti computazionali della modellizzazione del concetto di algoritmo.

Contenuti:

Insiemi, relazioni, funzioni; alfabeto, parole, linguaggi, operazioni su linguaggi; dimostrazioni e metodologie dimostrative; prove per induzione, induzione strutturale. Il modello Stato/Transizione.

Il modello a stati finiti non deterministico(NFA) e deterministico(DFA). Equivalenza tra DFA e NFA. Il limite del modello a stati finiti: linguaggi non regolari. Espressioni regolari: Definizioni e principali leggi algebriche. Espressioni regolari e relazione con automi finiti. Modelli Stato/Transizione e Computer. Modelli a stati infiniti. La Macchina di Turing, il diagramma stato/transizione di una TM. Macchine che non terminano. Il linguaggio della TM. Macchine di Turing non-deterministiche, enumeratori. Equivalenza tra i vari modelli. Tesi di Turing-Church. La macchina di Turing Universale. Problemi/Linguaggi decidibili. Il problema della fermata di Macchine di Turing. La classe P come classe di linguaggi efficientemente decidibili. La classe NP come classe di linguaggi efficientemente verificabili. Inclusione di P in NP e problema P=NP. NP- completezza e riducibilità polinomiale tra linguaggi, Proprietà delle riduzioni polinomiali:

transitività. Conseguenza di un algoritmo polinomiale di decisione per un linguaggio NP-completo.

Divagazioni sull'NP-completezza.

Programmazione Procedurale

Settore: ING-INF/05 – INF/01 CFU: 12

Prerequisiti:

Il corso è rivolto agli studenti del I anno del corso di Laurea in Scienze e Tecnologie Informatiche.

Il corso non prevede requisiti e conoscenze pregresse particolari, se non i seguenti: 1) conoscenza e utilizzo del sistema operativo, concetto di file e uso del file system, installazione di pacchetti software; 2) nozioni elementari di matematica (al livello delle scuole superiori), ovvero equazioni di II grado, potenze, piano cartesiano, geometria piana, in particolare per la soluzione degli esercizi.

Obiettivi formativi:

Obiettivo del corso è di introdurre gli studenti alla programmazione procedurale con l’obiettivo di prepararne le conoscenze per la programmazione orientata agli oggetti prevista nel prosieguo del piano di studio. Il livello delle conoscenze da raggiungere per il superamento delle prove finali di questo corso corrisponde ad aver acquisito (in teoria e in pratica) conoscenza dei concetti presentati nel corso (questi sono stati selezionati in modo da corrispondere agli aspetti della programmazione procedurale che è necessario conoscere per poter affrontare lo studio della programmazione orientata agli oggetti). Questi includono, in particolare: conoscenza degli elementi di base, strutture di controllo, sottoprogrammi, tipi strutturati; conoscenza delle tecniche algoritmiche di base;

conoscenza delle tecniche di programmazione sui file; conoscenza delle tecniche di programmazione sulle liste rappresentate con array e indicatore di riempimento; conoscenza delle tecniche di programmazione sulle matrici rappresentate con array bidimensionali; conoscenza della sintassi e semantica del linguaggio C++ e C; conoscenza dei principi metodologici relativi alla scrittura del codice modulare; capacità di programmare in più linguaggi. Conoscenza e capacità di applicazione del linguaggio di programmazione e dell’ambiente MatLab, sia in modalità per componenti, sia in modalità vettorizzata.

(4)

Contenuti del corso:

Il corso si articola in una serie di moduli che consentono di affrontare le tematiche della programmazione procedurale in modo graduale partendo dai concetti basilari fino ai concetti avanzati. Lo studio della programmazione procedurale affrontato nel corso e’ rivolto a preparare lo studente allo studio del paradigma della programmazione orientata agli oggetti, che verrà affrontato nei corsi successivi. I linguaggi di programmazione utilizzati nell’ambito del corso sono il C++

(sottoinsieme procedurale o clean del linguaggio), e il linguaggio C. Vengono forniti cenni alla sintassi e alla semantica di un linguaggio di programmazione di vecchia generazione (Basic). La presentazione dei linguaggi avviene in modo completo ed esaustivo per il primo linguaggio (nella fattispecie, il C++) e per differenza degli altri linguaggi rispetto al primo. Si forniscono le nozioni introduttive per affrontare lo studio dei linguaggi e delle metodologie di programmazione, in particolare l’architettura dei calcolatori, la codifica delle informazioni, un’introduzione al processo di sviluppo del codice, e agli strumenti usati per la programmazione. Vengono introdotte le strutture di controllo, ed in particolare i concetti di condizione, blocco di istruzioni, e istruzioni condizionali e cicliche. Inoltre, vengono introdotte le tecniche algoritmiche di base. Successivamente, vengono introdotte la sintassi e la semantica dei sottoprogrammi, incluso il passaggio dei parametri, e la metodologia per lo sviluppo del codice basato su moduli. Vengono poi studiati i tipi strutturati, ed in particolare i concetti di vettore (o array), matrice e record. Vengono poi introdotte le principali strutture di dati, ed in particolare la lista statica rappresentata inizialmente con array e indicatore di riempimento. Inoltre, vengono studiate le tecniche di programmazione su file. Passando ai concetti avanzati, si illustrano il meccanismo dei puntatori e l’uso degli stessi per implementare le liste dinamiche, ovvero le liste concatenate a singolo e doppio puntatore. Vengono poi illustrate alcuni costrutti propri del linguaggio C, quali ad es. le tecniche di programmazione su input/output standard e su file, il passaggio di parametri in C, la dichiarazione di nuovi tipi di dati, e le istruzioni al preprocessore. Viene introdotto l’ambiente MatLab, e il relativo linguaggio di programmazione, sia in modalità per componenti che in modalità vettorizzata.

Programmazione a Oggetti I

Settore: ING-INF/05 – INF/01 CFU: 9

Prerequisiti:

Per seguire il corso è necessario conoscenza dei concetti e delle nozioni introduttive di architettura degli elaboratori e conoscenza dettagliata e capacità di applicazione dei concetti e delle tecniche di programmazione procedurale.

Obiettivi formativi:

Acquisire conoscenze degli elementi alla base della programmazione orientata agli oggetti, ed in particolare: utilizzo dei componenti, organizzazione degli strati applicativi di un'applicazione ad oggetti, tecniche fondamentali di programmazione. Acquisire conoscenza delle principali piattaforme applicative per la programmazione orientata agli oggetti (la piattaforma Java, la piattaforma .NET). Essere in grado di progettare e sviluppare semplici applicazioni ad oggetti con una corretta organizzazione dei componenti e degli strati applicativi. Acquisire consapevolezza dei principi metodologici alla base della programmazione ad oggetti

Contenuti:

Tecniche di base della programmazione basata sugli oggetti (componenti, classi, oggetti, proprietà, metodi, costruttori, riferimenti); convenzioni di stile; collaborazioni tra i componenti basate sull'associazione; ruoli e strati applicativi; architettura applicativa di base; gestione delle eccezioni;

tecniche di programmazione difensiva; test di regressione; framework per i test di regressione;

sistemi di logging; framework per il logging; riflessione; ereditarietà e polimorfismo: interfacce, classi astratte, binding, principi metodologici; sintassi e semantica del linguaggio UML (diagrammi

(5)

delle classi, diagrammi di collaborazione, diagrammi di sequenza, diagrammi dei casi d'uso).

Sintassi e semantica del linguaggio Java; tecniche fondamentali di programmazione in Java (collezioni, flussi); principali package di Java (java.lang, java.util, java.io); strumenti di sviluppo della piattaforma Java; sintassi e semantica del linguaggio C#; tecniche fondamentali di programmazione in C# (collezioni, flussi) e principali namespace di .NET (System, System.Collections, System.IO); strumenti di sviluppo della piattaforma .NET.

Programmazione a Oggetti II

Settore: ING-INF/05 – INF/01 CFU: 12

Prerequisiti:

Per seguire il corso è necessaria conoscenza dei concetti introduttivi di algoritmi e strutture dati, dei concetti di reti di calcolatori, e conoscenza dettagliata e capacità di applicazione dei concetti e delle tecniche di programmazione a oggetti I, e basi di dati.

Obiettivi formativi:

Acquisire conoscenze degli elementi avanzati della programmazione orientata agli oggetti, ed in particolare: processo di costruzione del codice e strumenti di sviluppo avanzati, tecniche avanzate di programmazione, programmazione grafica, architettura Modello-Vista-Controllo. Essere in grado di progettare e sviluppare applicazioni ad oggetti di media complessità con un'architettura di tipo MVC. Acquisire consapevolezza del processo di progettazione e sviluppo di un'applicazione a oggetti di medie dimensioni. Acquisire conoscenze delle tecniche della programmazione client- server, ed in particolare: programmazione su basi di dati. Acquisire conoscenze dei principali protocolli alla base del World Wide Web e delle tecnologie lato client.

Contenuti:

strumenti di sviluppo: IDE, sistemi di costruzione del codice; refactoring, test e integrazione continua; gestione delle versioni; tecniche di programmazione: date e internazionalizzazione, collezioni, strato di persistenza, clonazione, serializzazione, thread; programmazione grafica:

componenti, eventi, gestori; architettura MVC e utilizzo di framework relativi; test funzionali; API per XML tecniche per la programmazione su XML. Applicazione delle tecniche alla piattaforma Java. Applicazione delle tecniche studiate alla piattaforma .NET.

Il Protocollo HTTP; HTTP 1.0; HTTP 1.1; Sicurezza, SSL e HTTPS. Tecnologie Lato Client: Il Linguaggio HTML; Storia di HTML; HTML 4.0; XHTML 1.0; Modularizzazione di XHTML;

XTHML Basic; Fogli di Stile CSS; Separazione tra contenuto e presentazione; Fogli di Stile CSS;

CSS livello 1; CSS livello 2; Modello di flusso di CSS; JavaScript: Sintassi e semantica; utilizzo per la convalida dei moduli; Metodologie di Progetto dell'Interfaccia; Qualità dei siti Web; Sviluppo multidispositivo; Usabilità e Accessibilità.

SQL immerso; Disaccoppiamento di impedenza; SQL statico ed SQL dinamico -- cenni;

Transazioni e Affidabilità; Applicazioni a oggetti con SQL; ODBC e JDBC; Connessione, istruzione, risultato, metadati; Prepared statements; Stored procedures; Gestione delle connessioni.

Framework per la persistenza. ADO.NET

Reti di Calcolatori

Settore: ING-INF/05 – INF/01 CFU: 6

Prerequisiti:

Per seguire il corso è necessario aver assimilato i concetti esposti nei corsi di sistemi operativi e architettura dei calcolatori.

(6)

Obiettivi formativi:

Acquisizione degli strumenti per comprendere le tecniche e le tecnologie alla base del funzionamento delle reti di calcolatori utilizzando come modello di riferimento applicazioni e protocolli TCP/IP di internet. Comprensione dei principi generali che caratterizzando la progettazione delle reti dal livello trasporto fino al livello data link.

Contenuti:

Introduzione alle reti di calcolatori: utilizzi della rete, tipi di servizi e prestazioni, architetture di rete, commutazione di circuito e di pacchetto, Protocolli, il modello ISO/OSI, Protocolli TCP/IP.

Livello fisico: trasmissione dell'informazione, mezzi trasmissivi elettrici, ottici e wireless. La codifica dei livello fisico. Il sistema telefonico. Multiplexing a divisione di tempo e di frequenza, la codifica PCM, i modem, le reti DSL, la telefonia Mobile. Livello data-link: scopi del livello Data- Link e servizi offerti al livello rete. Impacchettamento (conteggio di byte, bit stuffing), Controllo degli errori (parità, CRC, checksum), controllo del flusso (Stop-and-wait, piggy-backing, sliding window). Protocolli per collegamenti punto-punto (HDLC, PPP). Protocolli per reti locali:

condivisone del canale trasmissivo, protocolli statici e dinamici, ALHOA, CSMA, CSMA/CD, protocolli LAN wireless. Il progetto IEEE-802, il sottolivelli LLC e MAC. Ethernet e 802.3: gli indirizzi, la trama e l'architettura. Reti locali Wireless: Bande ISM, i protocolli 802.11 e 802.16.

Livello rete: Scopi del livello Rete e servizi offerti al livello di Trasporto. Commutazione di circuito, commutazione di pacchetto a circuito virtuale e a datagramma. Commutazione di pacchetto a circuito virtuale: ATM e MPLS. Internet, Il protocollo IP, Indirizzi IP, reti e sottoreti, CIDR, NAT. Protocolli di controllo e di servizio: ARP, DHCP e ICMP. Il Router, algoritmi e protocolli di routing non adattivi (routing statico, flooding) e adattivi (Distance vector, link state, routing gerarchico), RIP, IGRP, OSPF e BGP. IPv6: motivazioni, formato dell'intestazione, extension header, tipologie di indirizzi, ICMPv6. Livello di Trasporto: Servizi forniti al livello superiore, multiplexing, il modello client-server. UDP: il protocollo, la trama, la programmazione. TCP:

apertura e rilascio della connessione, ordinamento dei dati, controllo di flusso, congestione, errori di trasmissione, la trama e la programmazione. Livello Applicazione:RPC, NFS e Tftp. DNS:

architettura, i Top Level Domain, sottodomini e zone, risoluzione diretta e inversa, il server DNS, i client. Posta elettronica: formato dei Messaggi (RFC822 e MIME), protocolli per il trasferimento dei Messaggi (SMTP, POP3 e IMAP), l'agente utente.

Sistemi Operativi

Settore: ING-INF/05 – INF/01 CFU: 6

Prerequisiti:

Per seguire il corso è necessario avere assimilato i concetti e le nozioni di architettura degli elaboratori e di algoritmi e strutture dati.

Obiettivi formativi:

Acquisire le conoscenze di base dei moderni sistemi operativi analizzando i principi di funzionamento, le strategie operative ed i meccanismi interni. Fornire metodologie per analizzare le tecniche che consentono di coordinare le risorse di un sistema operativo e di gestire le risorse di un sistema di elaborazione in modo da trasformare una macchina fisica in una macchina astratta.

Contenuti:

Introduzione ai sistemi operativi. Concetti fondamentali, dai sistemi batch ai sistemi operativi moderni. Strutture dei Sistemi di Calcolo: funzionamento di un calcolatore, struttura dell'I/O, struttura della memoria, gerarchia delle memorie, protezione hardware. Struttura dei Sistemi Operativi: componenti principali, servizi, systems call, struttura di un sistema operativo, macchine virtuali, approccio a microkernel, generazione di un sistema. Gestione dei Processi: processi,

(7)

threads, creazione, interazione e terminazione di processi. Schedulazione dei processi. Diagramma di Stato. Algoritmi di scheduling. Cooperazione tra Processi: sincronizzazione e Comunicazione, modelli di programmazione concorrente. Meccanismi di cooperazione: semafori, regioni critiche, monitor, scambio messaggi, socket, chiamata di procedura remota, RMI, Deadlock e Starvation.

Gestione della Memoria Principale: tecniche per la gestione della memoria, Swapping, Paginazione e Segmentazione (Concetti ed Algoritmi). Memoria Virtuale: paginazione e segmentazione. File System: caratteristiche del file System, file e directory, protezione, implementazione del file system.

Gestione dei dispositivi di Input/Output: principi dell'hardware di I/O, il software per la gestione dell' I/O, dischi, scheduling del disco, clock, terminali. Sistemi operativi distribuiti: sistemi operativi di rete, Sistemi operativi distribuiti, file system distribuiti. Programmazione in ambiente di rete. Protezione e sicurezza: meccanismi di protezione, cavallo di troia, worms, virus, tecniche per aumentare la sicurezza di un sistema.

Laboratorio: Installazione di Linux, gestione di login, passwd, file, directory, I/O, processi, protezioni. Programmazione della shell: Command-Line Editing, I/O e redirezione, controllo dei processi. Programmazione di linux: libreria standard di I/O, programmi e processi, PID, ambiente e variabili di ambiente, condivisione di file, funzioni di exec. Segnali: concetto di segnale, tipi di segnale, uso dei segnali. Comunicazione tra processi: pipe, FIFO, code di messaggi, memoria condivisa.

Insegnamenti Presenti Esclusivamente nella Laurea Magistrale

Ingegneria del Software

Settore: ING-INF/05 – INF/01 CFU: 9

Conoscenze pregresse richieste allo studente:

Conoscenza di algoritmi e strutture dati, programmazione procedurale, programmazione object- oriented e tecnologie di sviluppo per il web. Essere in grado di risolvere problemi di programmazione semplici (programming in the small) sia utilizzando approcci procedurali che object oriented con opportuna selezione e/o realizzazione di strutture dati efficienti. Saper lavorare individualmente.

Obiettivi formativi:

Concetti dell’ingegneria del software, dei processi di ingegneria del software e delle relative fasi, attività e deliverable (programming in the large); definizione, proprietà e analisi di modelli; metodi di analisi e progettazione e importanza dei linguaggi di modellazione del software per la comunicazione tra diversi attori coinvolti in un processo di ingegneria del software; concetti e tecniche di analisi, testing e debugging del software, metriche del software, manutenzione del software, principali problematiche della gestione dei progetti software. Gli studenti saranno, inoltre, in grado di produrre documenti software in accordo a standard di progetto. Saper costruire modelli di sistemi con un procedimento step-by-step. Saper produrre documenti software durante le varie fasi del processo di sviluppo e modificarli per produrre versioni successive nell’ambito di processi software iterativi ed incrementali. Sapere usare la notazione UML per modellare il software. Saper usare un approccio ingegneristico all’analisi, testing, debugging e manutenzione del software.

Sapersi relazionare con la committenza per poterne individuare e formalizzare le esigenze manifeste o espresse. Saper lavorare in gruppo, saper comunicare con altri sviluppatori e altri attori utilizzando diagrammi UML per la modellazione del software.

Argomenti del corso:

Concetti di base, definizioni e problematiche dell’Ingegneria del Software. Modelli di ciclo di vita del software. Analisi e specifica dei requisiti. Progettazione e architetture software. Modellazione orientata agli oggetti; Unified Modeling Language (UML): class diagram, object diagram, use case

(8)

diagram, sequence diagram, collaboration diagram, statechart diagram, activity diagram, component diagram, deployment diagram; introduzione al Rational Unified Process. Software testing; livelli di testing; processo e documenti di testing; principali tecniche di testing black box e white box; testing di sistemi object-oriented. Cenni su software project management, software configuration management, qualità del software, metriche del software e manutenzione del software. Cenni su complementi di programmazione Java: Programmazione event-driven e interfacce grafiche;

programmazione distribuita e Remote Method Invocation (RMI); package e modularizzazione di programmi Java; utilizzo di framework per l’automatizzazione del testing.

Fondamenti di Grafica Tridimensionale

Settore: ING-INF/05 – INF/01 CFU: 6

Prerequisiti:

Per seguire il corso è necessario avere assimilato i concetti e le nozioni di programmazione procedurale, programmazione ad oggetti, strutture dinamiche, puntatori, programmazione event- driven, vettori, matrici e trasformazioni di coordinate.

Obiettivi formativi:

Il corso punta a fornire allo studente gli strumenti indispensabili per comprendere gli algoritmi ed i metodi computazionali su cui si basano molte delle applicazioni grafiche interattive. L'enfasi è sulla programmazione (OpenGL) e sulla comprensione dei meccanismi (strutture dati e radiometria) che consentono di creare immagini al calcolatore, piuttosto che sull'impiego di strumenti software di modellazione.

Contenuti:

Introduzione alla grafica. Schema di un’applicazione grafica. Fondamenti: Spazi vettoriali ed affini, matrici e trasformazioni, poligoni. Strutture dati geometriche. Modellazione geometrica. Rendering ed illuminazione: radiometria, BRDF, equazione di rendering. Modelli di illuminazione: modello di Phong e di Cook-Torrance. Ray Tracing: modello di Whitted, intersezione, tecniche di accelerazione. Radiosity. Rasterizzazione: clipping, rimozione superfici nascoste, shading. La pipeline di OpenGL come caso di studio. Texture mapping. Lightmap. Ombre. Riflessioni.

Tecniche di rappresentazione della scena.

Sistemi Informativi

Settore: ING-INF/05 – INF/01 CFU: 6

Prerequisiti:

Per seguire il corso è necessaria conoscenza approfondita dei concetti e delle tecniche di programmazione client-server e basi di dati

Obiettivi formativi:

Acquisire le conoscenze di base dei moderni sistemi informativi, ed in particolare delle architetture SOA e dei sistemi avanzati per il trattamento delle informazioni.

Contenuti:

Web Services. Standard e protocolli. SOAP, WSDL, UDDI. Servizi REST. Architetture SOA.

Metodologie di progettazione. Enterprise Service Bus. Enterprise Integration Pattern. Data Warehouse. OLAP. Sistemi per la gestione della conoscenza. Ontology management system.

(9)

Tecniche Avanzate di Programmazione

Settore: ING-INF/05 – INF/01 CFU: 12

Prerequisiti:

Per seguire il corso è necessaria conoscenza dettagliata e capacità di applicazione di programmazione client-server.

Obiettivi formativi:

Acquisire conoscenze delle tecniche avanzate di programmazione ad oggetti ed in particolare dei design pattern e delle tecniche di inversione del controllo. Essere in grado di applicare le tecniche apprese al progetto e allo sviluppo di applicazioni ad oggetti di dimensioni medio-grandi. Acquisire consapevolezza delle tecniche e delle metodologie per affrontare lo soluzione di problemi di complessità medio-alta con la programmazione ad oggetti. Acquisire conoscenze delle tecniche della programmazione client-server, ed in particolare: programmazione su basi di dati e programmazione Web. Acquisire conoscenze dei principali protocolli alla base del World Wide Web e delle tecnologie lato client. Essere in grado di progettare e sviluppare un'applicazione Web utilizzando i principali framework applicativi. Acquisire consapevolezza del processo di progettazione e sviluppo di un'applicazione client-server di medie dimensioni.

Contenuti:

Design pattern. I pattern della GOF. Pattern per la creazione di oggetti. Pattern strutturali. Pattern comportamentali. Esempi di pattern nelle principali piattaforme di programmazione ad oggetti.

Pattern e framework. Inversione del controllo. Dependency injection. Framework di dependency injection. Confronto tra i framework. Aspect Oriented Programming. Terminologia. Intercettori.

Framework di AOP.

Il Protocollo HTTP; HTTP 1.0; HTTP 1.1; Sicurezza, SSL e HTTPS. Tecnologie Lato Client: Il Linguaggio HTML; Storia di HTML; HTML 4.0; XHTML 1.0; Modularizzazione di XHTML;

XTHML Basic; Fogli di Stile CSS; Separazione tra contenuto e presentazione; Fogli di Stile CSS;

CSS livello 1; CSS livello 2; Modello di flusso di CSS; JavaScript: Sintassi e semantica; utilizzo per la convalida dei moduli; Metodologie di Progetto dell'Interfaccia; Qualità dei siti Web; Sviluppo multidispositivo; Usabilità e Accessibilità.

SQL immerso; Disaccoppiamento di impedenza; SQL statico ed SQL dinamico -- cenni;

Transazioni e Affidabilità; Applicazioni a oggetti con SQL; ODBC e JDBC; Connessione, istruzione, risultato, metadati; Prepared statements; Stored procedures; Gestione delle connessioni.

Framework per la persistenza. ADO.NET

Architetture per Applicazioni Web; Applicazioni Web; CGI; Cookie; Architetture a tre livelli;

Server applicativi e sviluppo basato su componenti; Java Servlet; Introduzione e ciclo di vita;

Richiesta, risposta, sessione, contesto; Inoltro delle richieste; Filtri; Server applicativi per J2EE;

JSP, Java Server Pages; Introduzione e ciclo di vita; Sintassi e oggetti predefiniti; Utilizzo di componenti leggeri (JavaBeans); Collezioni di tag ("tag library"). Modelli di Applicazione; Modello 1; Modello 2: Il Framework MVC per lo sviluppo Web; Design patterns per lo sviluppo di applicazioni Web ("front controller"). Java Server Faces. ASP.NET

Ambito Ingegneria dell'Informazione Campi Elettromagnetici

Settore: ING-INF/02 CFU: 9

(10)

Prerequisiti:

Conoscenza delle metodologie e delle tecniche apprese nei corsi di matematica e fisica di base.

Obiettivi formativi:

Scopo del corso è fornire all’allievo le conoscenze di base dell’Elettromagnetismo. Sono introdotte le conoscenze di base relative alla propagazione libera e guidata e gli strumenti metodologici e formali per l’analisi dei circuiti a parametri distribuiti.

Contenuti del corso:

Teoria dell’elettromagnetismo: Equazioni di Maxwell nel dominio del tempo in forma differenziale ed integrale. Equazioni di Maxwell nel dominio della frequenza e dei fasori. Relazioni costitutive.

Condizioni alla superficie di separazione tra due mezzi. Polarizzazione. Teorema di Poynting nel dominio del tempo e della frequenza. Teorema di unicità. Teorema di reciprocità. Teorema di dualità. Teorema di equivalenza. Teorema delle immagini.

Onde piane: Onde piane nel dominio del tempo e della frequenza. Riflessione e trasmissione di onde piane alla superficie di separazione tra due mezzi con caratteristiche diverse. Mezzi conduttori, profondità di penetrazione. Riflessione totale. Angolo di Brewster. Pacchetto d’onde, velocità di fase, velocità di gruppo.

Propagazione guidata: Guide d’onda metalliche. Linee di trasmissione. Propagazione ed espansione dei campi in guida. Modi TEM, TE e TM. Potenza in guida. Guida d’onda rettangolare. Diagramma di Brillouin. Modo fondamentale. Cavo coassiale.

Teoria circuitale delle linee di trasmissione: Tensione e corrente in linea di trasmissione. Equazioni dei telegrafisti. Soluzioni viaggianti e soluzioni stazionarie Formula del trasporto dell’impedenza.

Coefficiente di riflessione. Rapporto d’onda stazionaria. Potenza in linea di trasmissione.

Radiazione: Potenziali elettromagnetici. Dipolo elettrico elementare. Componenti lontane e componenti vicine. Condizioni di radiazione all’infinito. Campo irradiato da una distribuzione di corrente.

Elettronica

Settore: ING-INF/01 CFU: 9

Prerequisiti:

Conoscenza delle metodologie e delle tecniche apprese nei corsi di matematica e fisica di base, di calcolatori elettronici, elettrotecnica, teoria dei segnali e sistemi dinamici.

Obiettivi formativi:

Il corso è dedicato agli aspetti basilari ed essenziali dell’Elettronica Analogica e Digitale. Vengono descritte le caratteristiche dei principali dispositivi elettronici (diodo, BJT. MOSFET) ed il loro utilizzo sia nelle principali applicazioni dei circuiti analogici, che nella realizzazione delle porte logiche e di alcuni circuitit digitali. Il corso approfondisce anche importanti aspetti dell’elettronica analogica, quali la risposta in frequenza degli amplificatori, l’effetto della retroazione sugli amplificatori analizzando configurazioni di media complessità. Il corso è di tipo metodologico e pratico. La parte metodologica è dedicata alla studio degli aspetti più importanti del funzionamento dei circuiti, tramite modelli analitici semplificati. La parte pratica è dedicata allo svolgimento di esercitazioni numeriche per abituare gli allievi all’impiego di questi circuiti.

Contenuti del corso:

Modulo I: Elettronica generale

Amplificatore Operazionale: Amplificazione; Amplificatore operazionale ideale; circuiti con amplificatori operazionali ideali: invertente, non invertente, sommatore, sottrattore, derivatore, integratore, buffer;

(11)

Diodo: Caratteristica del diodo, diodo Zener. Modelli del diodo per ampi e piccoli segnali. I circuiti a diodi elementari;

Transistore: Transistor Bipolare e MOSFET: regioni di funzionamento, caratteristiche di ingresso e uscita, caratteristica di trasferimento, il transistor come amplificatore, il transistor come commutatore logico, le reti di polarizzazione. Modelli lineari per piccoli segnali dei dispositivi in regime dinamico, le configurazioni fondamentali. Stadi accoppiati, accoppiamento in continua e in alternata, esempi di amplificatori a due stadi.

Convertitori analogico-digitale (A/D) e digitale- analogico (D/A): L’elaborazione digitale dei segnali, campionamento e quantizzazione, il circuito di sample and hold. Convertitori A/D e D/A come blocchi funzionali, esempi circuitali di convertitori A/D e D/A.

Caratteristiche elettriche delle porte logiche: Invertitore reale. Livelli logici nominali. Margini di rumore. Tempo di propagazione. Potenza dissipata. Prodotto potenza-ritardo. Fan in e fan out.

Famiglie logiche in tecnologia MOS: Famiglia logica NMOS. L’invertitore NMOS con carico resistivo e con carico attivo (NMOS ad arricchimento, NMOS a svuotamento, PMOS).

Caratteristica di trasferimento e livelli logici. Analisi dinamica e tempi di propagazione. Porte logiche elementari.

Famiglia logica CMOS. L’invertitore CMOS. Caratteristica di trasferimento e margine di rumore.

Comportamento dinamico e tempi di propagazione. Potenza dissipata. Porte logiche elementari. Fan in e fan out.

Famiglie logiche in tecnologia Bipolare: Famiglia logica TTL. Invertitore elementare. Stadio di uscita. Invertitore TTL standard.

Circuiti combinatori:Sommatori e sottrattori. Comparatori. Codificatori e decodificatori.

Multiplexer e demultiplexer. Unità logica booleana. Matrici logiche programmabili (PLA).

Circuiti sequenziali: Circuiti bistabili (latch). SR ed esempio circuitale. Flip flop JK, Master-Slave, D e T. Registri e contatori.

Memorie: Memorie non volatili (ROM, EPROM, EEPROM, Flash), Memorie RAM (Statiche e Dinamiche).

Modulo II: Complementi di Elettronica

Circuiti e sistemi amplificatori: Amplificatori a transistori composti. L’amplificatore differenziale.

Carico attivo e specchio di corrente.

Risposta in frequenza degli amplificatori: La risposta in frequenza. Risposta al gradino di un amplificatore. L’amplificatore ad emettitore comune alle alte frequenze. Il prodotto guadagno- banda. Gli inseguitori di emettitore e di source. Risposta in frequenza di più stadi in cascata. Il cascode. L’amplificatore operazionale alle alte frequenze.

Amplificatori reazionati: Classificazione e rappresentazione degli amplificatori reazionati. Uso della reazione nel progetto di amplificatori. Effetti della reazione sui principali parametri dell’amplificatore.

Elettrotecnica

Settore: ING-IND/31 CFU: 9

Prerequisiti:

Conoscenza delle metodologie e delle tecniche apprese nei corsi di matematica e fisica di base.

Obiettivi formativi:

Il corso ha lo scopo di fornire agli allievi la conoscenza degli argomenti di base dell’elettrotecnica generale e di introdurre gli aspetti applicativi maggiormente significativi. Viene presentato il modello circuitale con i metodi di soluzione analitici e numerici più diffusi di circuiti lineari tempo- invarianti in regime stazionario, periodico e dinamico qualsiasi. Le metodologie di analisi vengono presentate con riferimento allo studio di problemi di interesse applicativo.

(12)

Contenuti del corso:

Modulo I: Circuiti

Richiami sulle equazioni di Maxwell nelle loro espressioni differenziali ed integrali - Campi solenoidali ed irrotazionali – Densità di corrente di conduzione e di spostamento. La corrente elettrica - Materiali conduttori ed isolanti – Circuito filiforme – Tensione e D.D.P. – Strumenti ideali: amperometro e voltmetro - Definizione operativa della corrente e della tensione. Elementi concentrati - I circuiti a parametri concentrati - Cenni sui circuiti a parametri distribuiti – N-Poli – N-Bipoli – Legge di Kirchhoff delle correnti - Legge di Kirchhoff delle tensioni.

I bipoli - Convenzioni associate sulle variabili di porta. Potenza scambiata tra bipoli: definizione ed interpretazione fisica. Caratteristica statica di un bipolo. Classificazione dei bipoli: inerzia, passività, linearità, normalità, tempo-invarianza. Bipoli elementari ideali: il resistore, il generatore indipendente di tensione, il generatore indipendente di corrente - Il condensatore - L'induttore - Bipoli in serie ed in parallelo – I generatori reali – Reti stazionarie ad un solo generatore: tecniche di manipolazione e calcolo della resistenza equivalente. Trasformazione stella-triangolo, triangolo- stella.

L'analisi delle reti - Teoria dei grafi - Concetto di nodo, lato, maglia, anello, albero, coalbero, insieme di maglie fondamentali. Eq. di Kirchhoff in forma minima. Sistema fondamentale associato ad una rete in regime stazionario in termini di corrente di lato. Trattamento delle correnti impresse.

Metodi rapidi per la risoluzione delle reti elettriche: correnti di maglia e potenziali di nodo.

I teoremi delle reti. Teorema di Tellegen - Conservazione dell'energia. Circuiti equivalenti di Thevenin e Norton - Teorema di Thevenin - Teorema di Norton – Applicazioni dei circuiti equivalenti– Teorema di non amplificazione delle tensioni e delle correnti - Principio di sovrapposizione degli effetti.

N-poli e doppi-bipoli statici. Caratterizzazione dell’ N-polo lineare passivo. Matrice delle conduttanze. Analisi e sintesi di N-poli. Trasformazione stella-poligono. Caratterizzazione del doppio bipolo. Matrici delle conduttanze, delle resistenze, dei parametri ibridi e di trasmissione.

Collegamenti di doppi bipoli. Potenza assorbita. Altri tipi di doppi bipoli: generatori pilotati;

trasformatore ideale. Soluzione di reti contenenti generatori pilotati e doppi bipoli passivi.

I circuiti in condizioni dinamiche – Funzionamento transitorio in circuiti lineari: integrale generale ed integrale particolare. Variabili di stato. Tecniche per l'analisi dei transitori in circuiti generici del primo ordine.

Le reti in regime sinusoidale. Funzioni periodiche ed alternate. Parametri fondamentali dei segnali sinusoidali - Reti in regime sinusoidale - Concetto di fasore – Rappresentazione vettoriale dei fasori - Metodo simbolico - Concetto di impedenza - Caratterizzazione dei bipoli elementari nel dominio simbolico. – Funzione di rete – Risoluzione di reti in regime sinusoidale - Potenza ed energia in regime sinusoidale – Definizione della passività di un bipolo in c.d. - Teorema di Boucherot - Circuiti risonanti – Non validità dei teoremi di non amplificazione delle correnti e delle tensioni in condizioni dinamiche - Trattamento di reti in condizioni di regime eccitate da generatori sinusoidali non iso-frequenziali. Rifasamento. Teorema del massimo trasferimento di potenza. Misure nelle reti in r.s.: amperometro, voltmetro, wattmetro.

La risoluzione di circuiti LTI del secondo ordine in condizioni dinamiche nel dominio del tempo:

Circuito RLC. Risposta a stato ed ingresso zero. Risposta all'impulso unitario, metodi di calcolo e proprietà, risposta la gradino unitario. Integrale di convoluzione.

La risoluzione di circuiti LTI mediante la trasformata di Laplace: Definizione. Calcolo di trasformate notevoli. Proprietà della trasformata di Laplace: linearità, ritardo, derivazione, integrazione. Calcolo di antitrasformata di Laplace di funzioni razionali. Applicazioni ed esempi alla soluzione di circuiti in regime dinamico.

I Sistemi trifase ad alimentazione simmetrica diretta. Carichi trifase equilibrati e squilibrati in configurazione a stella e a triangolo. Carichi monofase. Trattamento delle cadute in linea. Potenza nei sistemi trifase. Misura della potenza nei sistemi trifase equilibrati e non a tre e a 4 fili: tecnica del centro-stella artificiale, teorema di Aron, inserzione Aron. Rifasamento.

Modulo II: Campi

(13)

Campi elettromagnetici. richiami su alcuni concetti di base. Campi scalari, vettoriali e sistemi di coordinate. Definizione dei campi E e B. Le sorgenti elementari del campo elettromagnetico:

cariche e correnti elettriche: densità volumetrica di carica elettrica; intensità di corrente elettrica;

densità volumetrica di corrente elettrica. Le sorgenti puntiformi, filiformi e superficiali.

Le equazioni di Maxwell Rappresentazione dei campi vettoriali. Flusso, integrale di linea, circuitazione di un campo vettoriale, tensione elettrica. Principio della conservazione della carica per sistemi elettricamente chiusi. Legge della conservazione della carica per sistemi elettricamente aperti, equazione di continuità. Le equazioni di Maxwell in forma integrale nel vuoto. Le equazioni di Maxwell in forma locale nel vuoto. Conduttori: correnti elettriche libere, legge di Ohm alle grandezze specifiche, campo elettromotore. Dielettrici: cariche di polarizzazione, intensità di polarizzazione, dielettrici lineari. Materiali magnetici: correnti di magnetizzazione, intensità di magnetizzazione, materiali magnetici lineari, materiali ferromagnetici. Le equazioni di Maxwell in forma integrale e locale nei mezzi materiali.

Elettrostatica e equazioni del campo. Il principio di sovrapposizione. Distribuzioni di carica a simmetria sferica, cilindrica e piana. Tensione e differenza di potenziale. L’operatore gradiente.

L’equazione di Poisson. Il potenziale associato a distribuzioni di carica. Campo elettrico e carica nei conduttori. Principio delle immagini. La capacità di un conduttore isolato. La capacità di due conduttori. Cenni sulle capacità parziali. Condensatore piano, cilindrico, sferico. Capacità di due sfere. Capacità per unità di lunghezza di un cavo coassiale e di una linea bifilare. Capacità in presenza di dielettrici. Energia del campo elettrico.

Campo di corrente stazionario Le equazioni del campo. Conduttore elettrico perfetto. Isolante perfetto. Tubo di flusso. Resistore monodimensionale. Generatore di forza elettromotrice. Circuito elettrico semplice. Leggi di Kirchhoff. Considerazioni energetiche: potenza dissipata, legge di Joule, lavoro del campo elettromotore. Resistenza di terra.

Campo magnetico stazionario e quasi-stazionario Le equazioni del campo. Distribuzioni di correnti a simmetria cilindrica e piana. Il solenoide rettilineo lungo. Coefficienti di auto e mutua induzione.

Circuiti accoppiati. Energia del campo magnetico. Forze. Induttanza per unità di lunghezza di un cavo coassiale e di una linea bifilare. Induttanza di un solenoide rettilineo lungo. Circuiti ad accoppiamento magnetico. Potenza ed energia assorbita. Reciprocità. Accoppiamento perfetto.

Circuiti magneticamente accoppiati in regime sinusoidale. Proprietà di adattamento di impedenza.

Circuiti magnetici. Riluttanza. Elettromagneti. Calcolo dei coefficienti di auto e mutua induzione in presenza di un circuito magnetico. Magneti permanenti. Principi di conversione elettromeccanica dell’energia. Trasformatore reale. Circuiti equivalenti.

Segnali e Sistemi

Settore: ING-INF/03-ING-INF/04 CFU: 12

Prerequisiti:

Conoscenza delle metodologie e delle tecniche apprese nei corsi di matematica e fisica di base.

Obiettivi formativi:

Il corso ha lo scopo di fornire agli allievi la conoscenza degli argomenti di base relativi ai segnali e ai sistemi dinamici. Vengono presentate le principali metodologie di analisi dei segnali e dei sistemi. Le metodologie di analisi vengono presentate con riferimento allo studio di problemi di interesse applicativo.

Contenuti del corso:

Modulo I: Teoria dei Segnali

Concetti generali: Definizione di segnale, Segnali deterministici ed aleatori, Classificazione elementare dei segnali, Segnali analogici e digitali

Proprietà dei segnali: Operazioni elementari sui segnali, Combinazione di operazioni elementari,

(14)

Derivazione, integrazione, differenza prima e somma, Caratterizzazione sintetica dei segnali, Estensione e durata temporale di un segnale, Segnali di durata rigorosamente limitata, praticamente limitata, non limitata e segnali periodici, Area e media temporale di un segnale, Componente continua e alternata di un segnale, Definizione di distribuzione e funzione generalizzata, Proprietà della funzione generalizzata δ di Dirac, Energia di un segnale, Segnali di energia, Energia mutua, Potenza e valore efficace di un segnale, Segnali di potenza. Relazioni tra segnali di energia e di potenza, Potenza mutua, Misura in dB della potenza e dell’energia

Serie di Fourier: Serie di Fourier per segnali tempo continuo, Condizioni matematiche per la convergenza della serie di Fourier, Convergenza in media quadratica della serie di Fourier, Ricostruzione di un segnale periodico con un numero finito di armoniche, Serie di Fourier per segnali tempo discreto (DFS), Principali proprietà della serie di Fourier e della DFS: Linearità, Simmetria hermitiana e Uguaglianza di Parseval

Trasformata di Fourier: Trasformata di Fourier per segnali tempo continui e tempo discreti, Relazioni tra serie e trasformata di Fourier, Proprietà elementari della trasformata di Fourier, Derivazione e differenza prima, integrazione e somma, Proprietà di convoluzione e di prodotto, Esistenza ed invertibilità della trasformata di Fourier, Estensione spettrale e banda di un segnale, Segnali a banda rigorosamente limitata, praticamente limitata e non limitata, Trasformate di Fourier generalizzate, Trasformata di Fourier dei segnali periodici tempo continui e tempo discreti, Somma di Poisson, Analisi di Fourier delle sequenze periodiche: la Trasformata di Fourier Discreta (DFT), Algoritmi veloci di trasformata discreta (FFT): complessità di calcolo e applicazioni, Estensione spettrale e banda di un segnale periodico, Teorema di Parseval e densità spettrale di energia

Funzione di autocorrelazione e sue proprietà per i segnali di energia, Densità spettrale di potenza, Funzione di autocorrelazione e sue proprietà per i segnali di potenza, Teorema di Wiener- Khintchine, Densità spettrale di potenza dei segnali periodici

Campionamento e conversione A/D e D/A: Campionamento ed interpolazione ideale, Teorema del campionamento, Campionamento ed interpolazione in pratica: l’aliasing, Campionamento di segnali a banda praticamente limitata, Interpolazione non ideale, Quantizzazione

Modulo II: Fondamenti di Sistemi Dinamici

Proprietà dei sistemi: Definizione di sistema astratto orientato, Classificazione elementare dei sistemi, Modelli ingresso-uscita e ingresso-stato-uscita, Interconnessione di sistemi, Proprietà dei sistemi: Non dispersività, Causalità, Invertibilità, Invarianza temporale, Stabilità, Linearità, Modello ingresso-uscita di un sistema lineari tempo-invarianti (LTI) a tempo continuo, Modello ingresso-uscita di un sistema lineari tempo-invarianti (LTI) a tempo discreto,

Studio dei sistemi nel domino delle trasformate: Trasformata di Laplace e sua applicazione all’analisi dei sistemi LTI a tempo continuo, Trasformata Zeta e sua applicazione all’analisi dei sistemi LTI a tempo discreto,

Analisi dei sistemi lineari tempo-invarianti (LTI): Risposta impulsiva e convoluzione, Risposta indiciale, Risposta ad ingressi sinusoidali e a fasori, Risposta ad ingressi periodici, La funzione di trasferimento e gli schemi a blocchi, Sistemi elementari

Caratterizzazione dei sistemi LTI nel dominio della fequenza: La risposta armonica, Rappresentazioni grafiche della risposta armonica: diagrammi di Bode, Nichols e Nyquist, Fedeltà di risposta e separazione di segnali mediante filtraggio, banda passante.

Insegnamenti Presenti Esclusivamente nella Laurea Magistrale Teoria dei Segnali Aleatori + Modulazioni Analogiche e Numeriche

Settore: ING-INF/03 CFU: 15

Prerequisiti:

Conoscenze di base di: calcolo differenziale ed integrale, campi elettromagnetici, teoria dei segnali.

(15)

Obiettivi formativi:

Il corso ha lo scopo di fornire agli allievi la conoscenza degli argomenti di base relativi all’analisi dei segnali aleatori e alla loro caratterizzazione spettrale e alla trasmissione di segnali analogici e numerici. Vengono presentati i principali schemi di modulazioni analogiche (lineari ed esponenziali) e numeriche (in banda base e in banda passante) e studiati gli effetti del rumore sulla comunicazione. Sono anche introdotti elementi di teoria dell’informazione. Le metodologie di analisi vengono presentate con riferimento allo studio di problemi di interesse applicativo.

Contenuti del corso:

Modulo I: Teoria dei Segnali Aleatori

Probabilità: Richiami di teoria degli insiemi, Probabilità: definizioni preliminari, Probabilità assiomatica, Proprietà elementari della probabilità, Elementi di calcolo combinatorio, Schema fondamentale del conteggio, Probabilità condizionale, Interpretazioni della probabilità condizionale, Legge della probabilità composta, Regola della catena, Teorema della probabilità totale e teorema di Bayes, Indipendenza tra eventi, Indipendenza di tre o più eventi, Esperimenti combinati, Esperimenti indipendenti, Elementi di un sistema di comunicazione, Sorgente di informazione, Canale di comunicazione e canale binario simmetrico (BSC), Sorgenti e canali senza memoria Variabili aleatorie: Definizione formale di variabile aleatoria, Funzione di distribuzione cumulativa (CDF) e sue proprietà, Variabili aleatorie discrete, continue, miste, Percentile e mediana, Funzione densità di probabilità (pdf) e sue proprietà, Funzione distribuzione di probabilità (DF) e sue proprietà, Variabile aleatoria di Bernoulli, Variabile aleatoria di Poisson, Variabile aleatoria uniforme, gaussiana o normale, esponenziale, di Laplace (esponenziale bilatera) e di Rayleigh, Caratterizzazione statistica di Y = g(X), Calcolo della CDF di Y = g(X), della DF di Y = g(X) e della pdf di Y = g(X)

Caratterizzazione sintetica di una variabile aleatoria [10h]: Media di una variabile aleatoria, Teorema fondamentale della media, Proprietà della media, Varianza e valor quadratico medio di una variabile aleatoria, Proprietà della varianza, Momenti di una variabile aleatoria, Relazione tra momenti e momenti centrali, Disuguaglianze notevoli

Coppie di variabili aleatorie: Funzione di distribuzione cumulativa (CDF) congiunta, Proprietà della CDF congiunta, Funzione densità di probabilità (pdf) congiunta, Proprietà della pdf congiunta, Funzione di distribuzione di probabilità (DF) congiunta, Statistiche congiunte e marginali, Coppie di variabili aleatorie indipendenti, Proprietà delle variabili aleatorie indipendenti, Trasformazioni di coppie di variabili aleatorie, Trasformazione 2→1, Trasformazione 2→2, Variabili aleatorie complesse

Caratterizzazione sintetica di una coppia di variabili aleatorie: Teorema fondamentale della media per una coppia di variabili aleatorie, Momenti congiunti di una coppia di variabili aleatorie, Misure di correlazione di una coppia di variabili aleatorie, Correlazione, Spazio vettoriale di variabili aleatorie, Covarianza, Coefficiente di correlazione, Incorrelazione tra due variabili aleatorie, Stima lineare a minimo errore quadratico medio, Principio di ortogonalità

Vettori di variabili aleatorie: Caratterizzazione statistica di n variabili aleatorie, Funzione di distribuzione cumulativa (CDF), Funzione densità di probabilità (pdf), Funzione di distribuzione di probabilità (DF), Proprietà delle distribuzioni congiunte di n variabili aleatorie, Trasformazioni di n variabili aleatorie, Variabili aleatorie indipendenti, Momenti di n variabili aleatorie, Vettore delle medie, Matrice di correlazione e matrice di covarianza, in correlazione, Teoremi limite e convergenza di una sequenza di variabili aleatorie, Legge dei grandi numeri, Teorema limite fondamentale

Segnali aleatori a tempo continuo e a tempo discreto: Definizione di processo aleatorio a tempo continuo, Processi parametrici, Caratterizzazione statistica di un processo aleatorio a tempo continuo, Indici statistici al 1° e al 2° ordine di un di un processo aleatorio a tempo continuo, Funzioni valor medio, varianza, potenza, Funzioni di autocorrelazione e autocovarianza, Processi aleatori a tempo continuo stazionari in senso stretto e lato, Proprietà della funzione di autocorrelazione di un processo aleatorio a tempo continuo stazionario in senso lato, Funzioni di

(16)

mutua correlazione, Densità spettrale di potenza mutua, Processi aleatori incorrelati, incoerenti ed ortogonali, Processi aleatori complessi, Filtraggio di un segnale aleatorio a tempo continuo, Densità spettrale di potenza di un processo aleatorio a tempo continuo stazionario, Processi aleatori gaussiani a tempo continuo: definizioni, proprietà e filtraggio, Processi aleatori a tempo continuo erodici: ergodicità del valor medio e della funzione di autocorrelazione, Processi aleatori a tempo discreto, Analisi spettrale filtraggio dei processi aleatori a tempo discreto

Modulo II: Modulazioni Analogiche e Numeriche

Concetti generali: Schemi a blocchi di un sistema di trasmissione analogico e numerico, La propagazione delle onde elettromagnetiche, Le linee di trasmissioni: doppini, cavi coassiali, guide d'onda e fibre ottiche, La propagazione in spazio libero: onda di terra di cielo e LOS, Bilancio energetico di un collegamento, Rumore bianco, Banda equivalente di rumore, Calcolo nel caso di filtro RC, Rapporto segnale rumore all'uscita di un filtro RC, Temperatura equivalente di rumore, Cifra di rumore, Connessione in cascata di circuiti a due porte

Rappresentazione dei segnali e sistemi passa banda: Segnali passa banda: rappresentazione in termini di segnale analitico e componenti in seno e coseno, Traformata di Hilbet e filtro trasformatore, Valutazione dell'equivalente passa basso a partire dal segnale passa banda nel tempo e in frequenza, Valutazione del segnale passa banda a partire dall'equivalente passa basso nel tempo e in frequenza, Spettro dei segnali passa banda e densità spettrale di potenza, Filtri passa banda:

equivalente in banda base di un filtro, Distorsioni lineari e condizioni per avere un sistema passa banda non distorcente: ritardo di fase e di inviluppo, Approssimazione banda stretta, Canale di comunicazione wireless, Modello di canale affetto da percorsi multipli, Canale selettivo in frequenza e canale piatto in frequenza: il fading flat, Spettro doppler: fading flat-flat.

Modulazione d’ampiezza: Modulazione analogica AM convenzionale: segnale nel tempo e in frequenza. Profondità di modulazione ed efficienza. Calcolo della potenza associata al segnale e alla portante. Trasmettitori AM. Il mixer e sue realizzazioni a trasconduttanza variabile, con dispositivo non lineare e con switch. Mixer sbilanciato e bilanciato. Demodulatore sincrono e demodulatore di inviluppo. Modulazione a doppia banda laterale con portante soppressa e modulazione a singola banda laterale con portante soppressa: segnali nel dominio del tempo e in frequenza.

La multiplazione a divisione di frequenza. La modulazione a banda vestigiale.

Modulazione angolare: Modulazione di fase e di frequenza. Deviazione di fase (PM) e di frequenza (FM), indice di modulazione di fase e frequenza. Calcolo della banda per un segnale modulato PM e FM nel caso di modulante sinusoidale. La modulazione FM a banda stretta e a banda larga. Effetto delle non linearità sulla modulazione FM. Il moltiplicatore di frequenza: modulatori FM diretti e indiretti. Demodulazione di un segnale FM mediante conversione FM-AM. La modulazione FM stereo: modulatore e demodulatore stereo. Circuiti per la sincronizzazione della fase della portante:

l'anello ad aggancio di fase (PLL). Funzionamento in presenza di un dissincronismo di fase e di frequenza. Effetto del filtro d'anello. Il PLL come rivelatore FM.

Il rumore nella comunicazione analogica: Processi aleatori passa banda e loro proprietà. Prestazioni delle modulazioni anologiche: rapporto segnale rumore in uscita ad un demodulatore sincrono AM, DSB-SC, SSB-SC, PM e FM. Enfasi e pre-enfasi nella modulazione FM. Confronto delle prestazioni dei sistemi di trasmissione analogici.

Elementi di teoria dell’informazione: Misura dell’informazione ed entropia. Autoinformazione ed entropia. Proprietà dell’entropia. Entropia congiunta. Sorgenti di informazione. Entropia di sorgente. Tasso d’informazione di una sorgente. Sorgenti discrete senza memoria (DMS). Codifica di sorgente. Codici per la compattazione dati. Codici a lunghezza fissa e a lunghezza variabile.

Codici univocamente decifrabili. Codici a prefisso. Condizioni per l’univoca decifrabilità.

Efficienza dei codici per la compattazione dati. Codici di Shannon. Codifica a blocchi e primo teorema di Shannon. Efficienza dei codici a lunghezza fissa. Codici di Huffmann.

Modulazione impulsiva: Modulazione impulsiva d’ampiezza. Modulazione impulsiva di posizione.

Modulazione impulsiva codificata. Modulazione delta. Il cimatore. Definizione del fattore di carico e valutazione della probabilità di sovraccarico. Il quantizzatore, il rapporto segnale rumore di quantizzazione. Progetto di un quantizzatore uniforme. Il quantizzatore non uniforme: il compandor

(17)

e la legge mu e la legge A. Modulazione impulsiva a codifica differenziale

La multiplazione a divisione di tempo: La trasmissione Pulse Coded Modulation (PCM).

Generazione del segnale PCM e valutazione dell'occupazione di banda. Sistemi multiplex europei e nord-americani: formati di trama e supertrama. Il sincronismo nei sistemi multiplex. L'allineamento di trama e il suo recupero. Multiplazione numerica sincrona e asincrona. Principio della giustificazione di bit. Gerarchie PDH europea, giapponese, nord-americana.

Trasmissione dati in banda base: Calcolo della funzione di autocorrelazione e della densità spettrale di potenza per un segnale di tipo PAM. Segnali binari unipolari, polari con impulsi di tipo non ritorno a zero (NRZ) e con ritorno a zero (RZ): densità spettrale di potenza. Codifica di linea e codifica AMI e densità spettrale di potenza di un segnale AMI. Codifica di linea Manchester.

Rappresentazione di forme d'onda: espansione ortonormale. Struttura del ricevitore mediante correlatori e filtri adattati. Equivalente vettoriale del sistema di trasmisione numerica. Occupazione di banda e teorema della dimensionalità. Segnalazione multilivello. Efficienza spettrale.

Segnalazione con impulsi di tipo sinc. Interferenza intersimbolica (ISI). Condizione di Nyquist per ISI nulla. Impulsi a spettro a coseno rialzato. Ottimizzazione dei filtri in trasmissione e ricezione.

L'equalizzatore del canale. Trasmissione numerica sequenziale.

Modulazione numerica in canali passa banda: Modulazioni digitali binarie coerenti: modulazione OOK, BPSK, DPSK, FSK. Modulazioni digitali binarie non coerenti. Modulazioni digitali multilivello: QPSK, MSK, MPSK, QAM, efficienza spettrale. Tecnologie Spread Spectrum (FHSS e DSSS).

Il rumore nella comunicazione numerica: Il filtro adattato. Probabilità di errore delle segnalazioni binarie. Prestazioni dei sistemi binari in banda base. Rivelazione coerente di segnali passa-banda binari. Rivelazione incoerente di segnali passa-banda binari. Confronto tra i vari sistemi di trasmissione digitali. Rapporto segnale rumore di uscita nei sistemi PCM. Codifica a protezione di errore: codici a blocco e codici convoluzionali, interallacciamento e calcolo delle prestazioni.

Progettazione dei Sistemi di Controllo + Tecnologie dei Sistemi di Controllo

Settore: ING-INF/04 CFU: 12

Prerequisiti:

Conoscenze di base di: calcolo differenziale ed integrale, algebra lineare, elettrotecnica, elettronica, teoria dei sistemi e teoria dei segnali.

Obiettivi formativi:

Il corso ha lo scopo di fornire agli allievi la conoscenza delle principali tecniche di analisi e sintesi di sistemi di controllo in retroazione, delle metodologie e tecnologie dell’automazione dei sistemi di produzione, con particolare riferimento alle infrastrutture tecnologiche (reti informatiche, sistemi di supervisione integrata) ed alle metodologie di analisi e sintesi dei sistemi di automazione. Le metodologie vengono presentate con riferimento allo studio di problemi di interesse applicativo.

Contenuti del corso:

Modulo I: Progettazione dei Sistemi di Controllo

Richiami di analisi dei sistemi: risposta armonica, stabilità dei sistemi LTI. Il problema del controllo: il controllo automatico, tipologie di controllo, controllo a ciclo aperto e a ciclo chiuso , classificazione, struttura funzionale di un sistema di controllo in retroazione, esempi di applicazione. Caratteristiche dei sistemi in retroazione: sensibilità alle variazioni parametriche e agli ingressi non manipolabili, banda passante del sistema a ciclo chiuso. Precisione a regime nei sistemi in retroazione: errore a regime in presenza di un riferimento di tipo canonico, errore a regime dovuto ad ingressi non manipolabili di tipo canonico, azione di compensazione in avanti. Il criterio di Nyquist ed i margini di stabilità. Cenni ai metodi di passaggio ciclo aperto-ciclo chiuso: carte di Nichols, luogo delle radici. Specifiche di progetto e linee guida per la sintesi del compensatore. Reti

(18)

correttrici e loro uso nella sintesi del compensatore. Controllo in cascata. Regolatori standard:

struttura, metodi di sintonia, approcci alla sintesi. Controllo digitale: generalità, problematiche generali legate alla conversione A/D e D/A, metodologie di analisi e sintesi di sistemi di controllo digitale e loro applicazione a casi di studio. Cenni alle tecniche di sintesi mediante retroazione dello stato, osservatori dello stato e loro utilizzo nei sistemi di controllo.

Modulo II: Tecnologie dei Sistemi di Controllo

Problematiche generali del controllo logico/sequenziale e della supervisione. Infrastrutture per l’automazione integrata: reti informatiche per l’automazione e sistemi di supervisione ed acquisizione dati (SCADA). Tecnologie per i sistemi di automazione: sensori, attuatori, sistemi di controllo (PLC, microcontrollori, DCS). Controllo logico-sequenziale: progetto mediante Sequential Functional Chart (SFC) di logiche di controllo ed elementi di programmazione dei PLC.

Valutazione prestazionale e controllo supervisivo di impianti automatizzati mediante Reti di Petri.

Metodi e Tecniche per l'Osservazione della Terra

Settore: FIS/01 CFU: 9

Prerequisiti:

Conoscenze di base di: calcolo differenziale ed integrale, campi elettromagnetici, teoria dei segnali.

Obiettivi formativi:

Il corso fornisce un'introduzione alla metodologie per l’osservazione della terra. Lo scopo è quello di fornire competenze relative alle metodologie e tecniche di osservazione della terra e alla comprensione dei fenomeni relativi al sistema terra-atmosfera.

Contenuti del corso:

Introduzione. Problemi Inversi. Struttura chimica dell'atmosfera terrestre. Distribuzione verticale di Pressione e densità. Struttura termica dell'atmosfera terrestre. Composizione particolare dell'atmosfera. Piattaforme satellitari.

Natura della Radiazione Elettromagnetica. Spettro Elettromagnetico. Propagazione delle Onde.

Polarizzazione. Parametri di Stokes. Legge di Kirkhoff. Funzione di Planck per il corpo nero.

Interazioni Microscopiche. Lo spettro di Assorbimento atomico. Lo spettro di Assorbimento molecolare. Forma delle linee. Coefficiente di assorbimento e trasmittanza. Lo spettro di assorbimento atmosferico. Sistemi Spettrometrici passivi.

Interazioni Macroscopiche. Polarizzazione della materia. Teoria classica. Indice di rifrazione.

Riflessione e Trasmissione.Singolo dipolo oscillante: Scattering Ryleigh. Radiazione da dipoli multipli. Estinzione da particolato. Funzione di Scattering. Scattering da particelle sferiche: Teoria di Mie. Backscattering da particolato.

Telerilevamento Passivo. Equazione del trasferimento radiativo. Il telerilevamento della Temperatura superficiale del mare. Telerilevamento delle piogge. Legge di Beer e telerilevamento degli aerosol.

Inversione dell'equazione di trasferimento radiativo rispetto al vettore di stato dell'atmosfera.

Telerilevamento delle nubi.

Telerilevamento Attivo. Considerazioni basilari. Radar meteorologici. Misure Radar delle precipitazioni. Principi generali del Lidar. DIAL. Misure Doppler. UHF/VHF radar.

Modelli numerici per campi e circuiti

Settore: ING-IND/31 CFU: 9

Prerequisiti:

Conoscenze di base di: calcolo differenziale ed integrale, calcolo numerico, elettromagnetismo

(19)

generale, elettrotecnica.

Obiettivi formativi:

Il corso si propone di fornire un approccio integrato ai problemi propri dell’ingegneria dei circuiti elettrici e dei campi elettromagnetici, nel quale le formulazioni stesse del problema sono ricavate prevedendo che esso debba essere risolto per via numerica, e le tecniche numeriche sono introdotte tenendo presente le caratteristiche del problema numerico da risolvere. All’allievo ingegnere viene fornita una conoscenza critica degli strumenti numerici di risoluzione dei modelli matematici associati ai problemi così da metterlo in grado di interpretare correttamente i risultati ottenuti alla luce dei fenomeni fisici coinvolti. Nell’ambito del corso verranno presentati alcuni tra i principali metodi (differenze finite, elementi finiti) impiegati nella pratica ingegneristici per la ricerca della soluzione attraverso l’elaboratore elettronico.

Contenuti del corso:

Richiami su approssimazioni ed errori. Richiami sui metodi per la ricerca di radici di equazioni algebriche scalari.

Formulazioni dei problemi circuitali. Leggi di Kirchhoff in forma matriciale. Richiami di elementi di topologia dei circuiti: albero, coalbero, maglie fondamentali, insiemi di taglio. Matrice Q di insieme di taglio fondamentale. Matrice B di maglia fondamentale. LKT sulla base delle tensioni di albero. Relazione tra Q e B. LKC sulla base delle correnti di albero. Equazioni di tableau per i circuiti resistivi: generalizzazione dell’analisi di Tableau. Equazioni di nodo per i circuiti resistivi.

Circuiti dinamici generali. Analisi di nodo modificata. Analisi mediante le variabili di stato.

Sistemi di equazioni algebriche lineari e non lineari. Metodi diretti. Metodo di Cramer, costo computazionale. Metodo di eliminazione Gaussiana: pivoting,(parziale e completo), compensazione degli errori. Metodo di Gauss- Jordan. Inversione di matrici. Fattorizzazione LU. Costo computazionale. Esistenza ed unicità della fattorizzazione LU. Matrice di permutazione. Il problema del condizionamento di una matrice. Proprietà spettrali di una matrice. Numero di condizionamento di una matrice. Metodi iterativi: metodo di Jacobi, metodo di Gauss-Seidel, metodo del gradiente coniugato. Criteri di convergenza dei metodi iterativi. Applicazioni. Sistemi di equazioni non lineari: metodo di Picard; metodo di Newton-Raphson.

Interpolazione. Formule di interpolazione di Newton alle differenze finite divise: Interpolazione lineare; interpolazione quadratica, forma generale della formula di Newton, analisi dell’errore per la formula di Newton. Formula di Lagrange. Interpolazione mediante funzioni splines: splines lineari;

splines quadratiche; splines cubiche; algoritmo per l’interpolazione mediante splines cubiche

Sistemi di equazioni differenziali del primo ordine a derivate ordinarie. Problema ai valori iniziali o problema di Cauchy. Soluzione del problema di Cauchy con il metodo delle differenze finite.

Metodo di Eulero esplicito e metodo di Eulero implicito. Metodo di Crank-Nicholson. Consistenza, stabilità numerica, convergenza. Criteri di stabilità numerica. Proprietà delle frequenze naturali di un sistema di equazioni differenziali ordinarie del primo ordine, lineari e tempo-invarianti. Ordine di convergenza e stima dell’errore. Errore di troncamento, errore di arrotondamento.

Formulazioni dei problemi di campo. Le equazioni di Maxwell nei vari limiti. I modelli statici:

conduzione stazionaria; elettrostatica; magnetostatica: formulazione A (potenziale vettore), ϕ (potenziale ridotto), ϕ-ψ (potenziale ridotto-totale), A-ϕ (potenziale vettore ridotto). I modelli quasi-statici: elettro-quasi-statica; magneto-quasi-statica: formulazioni magnetiche ed elettriche in termini di campo, mista e di potenziale: H, H-Ω, T-Ω-Ω, A*, A*-Ω, A*-ϕ-Ω. Propagazione e Full Maxwell: la formulazione basata sulla minimizzazione dell’errore costitutivo. Formulazioni deboli:

il metodo dei residui pesati. Formulazioni variazionali: applicazione all’elettrostatica. Formulazioni integrali: caso elettrostatico e caso magneto-quasi-statico

Equazioni differenziali a derivate parziali. Classificazione delle equazioni alle derivate parziali (PDE): ellittiche, paraboliche, iperboliche. Metodi analitici per la soluzione delle PDE : Funzione di Green; separazione delle variabili, trasformazioni conformi. Metodi numerici. Soluzione dell’equazione di Poisson e dell’equazione di propagazione attraverso il metodo delle differenze finite. Convergenza, errore, stabilità numerica. Metodo degli elementi finiti: discretizzazione del

Riferimenti

Documenti correlati

✓ Ad un anno dalla laurea l’82,1% dei laureati frequenta un corso di laurea magistrale. ✓ Ad un anno dalla laurea il tasso di occupazione è del 32%, (media

Piano didattico per gli immatricolati nell’A.A... Piano didattico per gli

Piano didattico per gli immatricolati nell’A.A... Piano didattico per gli

Piano didattico per gli immatricolati nell’A.A... Piano didattico per gli

Un server invia comandi ad un nodo speciale chiamato sink, in base ai dati ricevuti dall’interfaccia utente e questo inoltra i messaggi verso gli altri nodi: la stessa gestione

Gli studenti che, in periodo successivo a quello di conseguimento della laurea di accesso alla magistrale, hanno rinunciato agli studi o sono incorsi nella decadenza dagli studi

Il Corso di Laurea in Scienze e Tecnologie Agrarie e degli Alimenti fornisce solide basi e strumenti metodologici per acquisire competenze in tutti i settori della

¨ Il protocollo Simple Mail Transfer Protocol (SMTP) usa TCP per trasferire in modo affidabile i messaggi di posta elettronica dal client al server attraverso la porta 25. ¨