CORSO DI LAUREA IN INFORMATICA Corsi e programmi a.a. 2006

annuncio pubblicitario
CORSO DI LAUREA IN INFORMATICA
Corsi e programmi a.a. 2006/2007
ALGEBRA
Docente: Prof. MANZINI Giovanni
e-mail: [email protected]
Numero CFU: 4
Anno: 1
Periodo di insegnamento: 1
Codice della disciplina: S0358
Programma del corso e testi consigliati:
Programma
Numeri interi: somma, prodotto, divisione euclidea. Divisibilità e numeri primi. Massimo comun
divisore di due interi e sue proprietà. Algoritmo di Euclide per il calcolo del massimo comun
divisore. Minimo comune multiplo. Equazioni diofantee. Congruenze e classi di resto. Criteri di
divisibilità. Rappresentazione di numeri con base diversa da 10. Teorema cinese del resto.
Condivisione di segreti mediante sistemi di congruenze. Il teorema di Eulero. Il problema del
logaritmo discreto. Cenni sul protocollo di Diffie-Hellman. Cenni sul protocollo RSA.
Libro di testo: Dispense del docente disponibili on-line.
Testi consigliati: L. Childs. Algebra: un'introduzione concreta. ETS, Pisa.
ALGORITMI E STRUTTURE DATI: ALGORITMI E STRUTTURE DATI II
Docente: Prof. SAITTA Lorenza
e-mail: [email protected]
Numero CFU: 5
Anno: 2
Periodo di insegnamento: 3
Codice della disciplina: S0374
Programma del corso e testi consigliati:
Programma
Richiami della definizione di complessità. Nozioni di base di Teoria dell'Informazione (Definizione
di 'informazione", Approccio di Hartley, Approccio di Shannon, Teorema della diramazione,
Teorema di Shannon, Entropia, Guadagno di informazione). Algoritmi 'greedy'. Grafi (Definizione di
grafo, Algoritmo di Dijkstra per il calcolo dei cammini minimi, Algoritmi di Kruskal e Prim per il
calcolo dell'albero di copertura minima). Programmazione dinamica (Principio di ottimalità,
Problema dello zaino, Scheduling ottimale della produzione, Prodotto parentetizzato di matrici).
ALGORITMI E STRUTTURE DATI: LABORATORIO DI INFORMATICA: ALGORITMI E
STRUTTURE DATI
Docente: Dr. FURINI Marco
e-mail: [email protected]
Numero CFU: 5
Anno: 2
Periodo di insegnamento: 3
Codice della disciplina: S0374
Programma del corso e testi consigliati:
Programma
Il corso prevede una rivisitazione di alcuni concetti studiati nel corso di Algoritmi e Strutture Dati,
enfatizzando gli aspetti piu' implementativi di: Code, Liste a puntatori, Vettori, Liste, Alberi, Alberi
binari,
Grafi direzionati e Grafi pesati. Saranno implementati nel linguaggio C alcune strutture dati ed
algoritmi ed in particolare si toccheranno i seguenti argomenti:
1. Ricerca binaria e Algoritmi di ordinamento: Insertion sort, Selection sort, Merge sort, Heap sort;
2. Strutture dati dinamiche: Liste, Code, Pile;
3. Pattern Matching ed Algoritmi di Parsing;
4. Alberi binari di ricerca: Alberi AVL;
5. Visite di Grafi.
Testi Consigliati:
Algoritmi in C: fondamenti, strutture dati, ordinamento, ricerca - terza edizione, di Sedgewick
Robert, Addison Wesley, ISBN 88-7192-151-8
ALGORITMI E STRUTTURE DATI I
Docente: Prof.ssa GIANNINI Paola
e-mail: [email protected]
Numero CFU: 5
Anno: 2
Periodo di insegnamento: 1
Codice della disciplina: S0373
Non attivato nel 2006/07: attivato per il I anno nel 2005/06, verrà riattivato per il II anno nel 2007/08
ANALISI MATEMATICA I
Docente: Prof. BARONTI Marco
e-mail: [email protected]
Numero CFU: 5
Anno: 1
Periodo di insegnamento: 2
Codice della disciplina: S0357
Programma del corso e testi consigliati:
Insiemi numerici: minoranti e maggioranti, minimo e massimo, estremo inferiore ed estremo
superiore.
Funzioni di una variabile: concetto di limite, continuità, derivabilità, minimo e massimo locali e
globali, estremo inferiore ed estremo superiore, teoremi di esistenza, condizioni necessarie e
sufficienti, in particolare teorema di Weierstrass e lemma di Fermat. Integrale definito: definizione
mediante le somme di Riemann, proprietà delle funzioni integrabili, criteri di integrabilità, teorema
della media integrale, teorema fondamentale del calcolo integrale, metodi di integrazione. Funzioni
integrali: generalizzazioni del teorema fondamentale del calcolo integrale. Teorema di Cauchy, e
teorema de Hospital, ordini di infinitesimo e di infinito, algebra degli infinitesimi, polinomio di Taylor
ed applicazioni, resto nella forma di Peano e di Lagrange.
(*) APPROFONDIMENTO: CERTIFICAZIONE SUN JAVA
Docente: Prof.ssa GIANNINI Paola
e-mail: [email protected]
Numero CFU: 5
Anno: 3 professionalizzante
Periodo di insegnamento: 2
Codice della disciplina: S1194
Programma del corso e testi consigliati:
ARCHITETTURA DEGLI ELABORATORI I
Docente: Prof. BOBBIO Andrea
e-mail: [email protected]
Numero CFU: 5
Anno: 1
Periodo di insegnamento: 2
Codice della disciplina: S0362
Programma del corso e testi consigliati:
Programma
Il corso ha lo scopo di fornire allo studente una prima descrizione dell'architettura di un moderno
sistema di elaborazione e delle sue principali componenti hardware e software. L'approccio seguito
è quello della scomposizione della macchina in diversi livelli: livello della logica circuitale, livello
della microprogrammazione, livello della macchina convenzionale. Verrà affrontato lo studio di
ciascun livello separatamente, e le problematiche relative all'interazione fra i livelli. Poiché il
funzionamento dei sistemi di elaborazione si basa sulla manipolazione di segnali logici binari, verrà
preliminarmente affrontato lo studio della rappresentazione binaria dei numeri (interi, relativi e in
virgola mobile) e dell'informazione (codici binari ridondanti). Si passerà allo studio della logica
binaria con particolare attenzione alle funzioni logiche binarie e verranno illustrati i principi base
per la costruzione di reti logiche combinatorie e sequenziali, con esemplificazioni.
Testi consigliati
Tanenbaum: "Architettura dei Calcolatori: un approccio strutturale", V Edizione, Pearson Education
Italia, 2006.
ARCHITETTURA DEGLI ELABORATORI: ARCHITETTURA DEGLI ELABORATORI II
Docente: Prof.ssa FRANCESCHINIS Giuliana
e-mail: [email protected]
Numero CFU: 5
Anno: 1
Periodo di insegnamento: 3
Codice della disciplina: S0366
Programma del corso e testi consigliati:
Programma
Questo corso può essere visto come la naturale continuazione e l'approfondimento di alcuni
concetti visti nel corso i "Architetture degli Elaboratori I" la cui conoscenza è necessaria per la
comprensione degli argomenti sviluppati. Scopo del corso è approfondire alcuni aspetti
dell'architettura di un elaboratore con particolare attenzione a come una istruzione della macchina
a livello convenzionale viene eseguita dai circuiti logici. Verranno successivamente presentate
alcune soluzioni architetturali che tendono a rendere l'esecuzione più veloce e si discuteranno
alcune linee di tendenza che si sono sviluppate per quanto concerne tipi di istruzione e modalità di
indirizzamento. Il corso prevede anche una parte sperimentale da svolgere in uno specifico
"Laboratorio di Architetture".
Testi consigliati
Tanenbaum: "Architettura dei Calcolatori: un approccio strutturale", V Edizione, Pearson Education
Italia, 2006.
ARCHITETTURA
DEGLI
ELABORATORI:
LABORATORIO
DI
INFORMATICA:
ARCHITETTURA DEGLI ELABORATORI
Docente: Dr. NERI Filippo
e-mail: [email protected]
Numero CFU: 5
Anno: 1
Periodo di insegnamento: 3
Codice della disciplina: S0366
Programma del corso e testi consigliati:
Programma
Il corso ha lo scopo di analizzare dal punto di vista sperimentale alcune delle problematiche viste
nei due corsi di Architettura degli Elaboratori I e II. In particolare verranno ripresi i seguenti
argomenti: il linguaggio macchina convenzionale; uso dello stack; interpretazione del linguaggio
macchina convenzionale in una CPU microprogrammata; cenni di traduzione e linking.
Una parte significativa delle lezioni sarà svolta utilizzando le risorse di calcolo del laboratorio
informatico; in particolare, agli studenti sara’ fornito un emulatore software di una CPU
microprogrammata. In laboratorio si svolgeranno esercitazioni guidate, in cui si realizzeranno
esempi di programmazione in linguaggio macchina convenzionale, e di microprogrammazione. Ai
programmi realizzati verranno applicati i concetti di traduzione visti a lezione. È previsto che lo
studente allochi un congruo tempo (al di fuori delle ore del corso di laboratorio) per acquisire
padronanza nella programmazione, e quindi per lo sviluppo di un progetto conclusivo.
La conoscenza delle nozioni introdotte nei due moduli di Architettura degli Elaboratori è necessaria
per la comprensione delle nozioni introdotte nel laboratorio e per l'attività sperimentale.
Testi consigliati
Tanenbaum: "Architettura dei Calcolatori: un approccio strutturale", V Edizione, Pearson Education
Italia, 2006.
BASI DI DATI E SISTEMI INFORMATIVI: BASI DI DATI ED APPLICAZIONI PER IL WEB
Docente: Prof. PORTINALE Luigi
e-mail: [email protected]
Numero CFU: 5
Anno: 3
Periodo di insegnamento: 3
Codice della disciplina: S0825
Programma del corso e testi consigliati:
Programma:
Scopo del corso è introdurre le principali metodologie per la progettazione di applicazioni WWW
dinamiche e data-driven (ossia interfacciate ad opportune basi di dati). Dopo un richiamo sulle
tecniche di progettazione di una Base di Dati in un ottica di RDBMS client/server, verranno
illustrate le principali metodologie server-side per lo sviluppo di un'architettura 3-tier (PHP e J2EE).
L'esame verterà principalmente sullo sviluppo di un'applicazione web data-driven da realizzarsi in
modo pratico con gli strumenti descritti a lezione.
Testi consigliati:
Deitel, Deitel, Goldberg: Internet and WWW: How to Program (3 ed.), Prentice Hall, 2003.
Autori Vari: Professional Java Server Programming. J2EE 1.3 Edition, Wrox, 2001.
D. Tansley: Pagine web dinamiche con PHP e MySQL, Addison Wesley, 2002
BASI DI DATI E SISTEMI INFORMATIVI I: FONDAMENTI
Docente: Prof.ssa GIORDANO Laura
e-mail: [email protected]
Numero CFU: 5
Anno: 2
Periodo di insegnamento: 1
Codice della disciplina: S0369
Programma del corso e testi consigliati:
Programma
Finalità del corso: obiettivo del corso è fornire gli strumenti metodologici e formali per derivare le
strutture logiche e fisiche di una base di dati relazionale a partire dai requisiti del sistema
informatico espressi dagli utenti.
Argomenti trattati: dei tre principali modelli dei dati (relazionale, reticolare e gerarchico) adottati dai
sistemi di gestione delle basi di dati (DBMS) viene approfondito il modello relazionale, in
particolare sono presentati gli aspetti teorici di tale modello. Le strutture logiche di una base di dati
sono progettate con modelli semantici ed analizzate alla luce di opportune forme normali. Il corso
si articola nelle seguenti parti: Modello Relazionale; Algebra Relazionale; Modello Entità Relazione; Traduzione del Modello ER nel modello Relazionale; Normalizzazione.
Viene inoltre descritta brevemente l'architettura di un DBMS, che viene presentata succintamente
seguendo lo schema di descrizione generale a tre livelli di astrazione: esterno, logico e fisico.
Testi consigliati
P. Atzeni, S. Ceri, S. Paraboschi, R. Torlone, Basi di dati: modelli e linguaggi di interrogazione,
McGraw-Hill Italia, 2002
E. Bertino, B.Catania, E.Ferrari, G.Guerrini: "Sistemi di basi di dati", Città Studi Edizioni.
Elmasri, Navathe "Fundamentals of Database Systems", Addison Wesley - 1994.
BASI DI DATI E SISTEMI INFORMATIVI I: SPERIMENTAZIONI
Docente: Prof. PORTINALE Luigi
e-mail: [email protected]
Numero CFU: 5
Anno: 2
Periodo di insegnamento: 2
Codice della disciplina: S0370
Programma del corso e testi consigliati:
Programma
Finalità del Corso:
Il corso è indirizzato nel fornire allo studente gli strumenti formali (metodologie di progettazione) e
tecnologici (SQL) per la progettazione e manutenzione delle basi di dati.
Argomenti trattati: Progettazione; formalismo EER; EER vs. Relazionale. Casi pratici di
progettazione di una base dati. Utilizzo di DDS (Database Design Studio) come tool CASE per il
supporto alla progettazione concettuale e logica. Implementazione e manutenzione di una base
dati. SQL. Utilizo del DBMS PostgreSQL.
Testi consigliati
P. Atzeni, S. Ceri, S. Paraboschi, R. Torlone, Basi di dati: modelli e linguaggi di interrogazione,
McGraw-Hill Italia, 2002
P. Atzeni, S. Ceri, S. Paraboschi, R. Torlone "Basi di Dati: concetti, linguaggi, e architetture",
McGraw Hill Italia - 1996.
Elmasri, Navathe "Fundamentals of Database Systems", Addison Wesley - 1994.
BASI DI DATI E SISTEMI INFORMATIVI II
Docente: Prof.ssa GIORDANO Laura
e-mail: [email protected]
Numero CFU: 5
Anno: 2
Periodo di insegnamento: 2
Codice della disciplina: S0371
Programma del corso e testi consigliati:
Programma
Finalità del corso: obiettivo del corso è lo studio degli aspetti architetturali dei sistemi di gestione
delle basi di dati (DBMS) e l'analisi delle strutture dati e degli algoritmi connessi messe a punto per
gestire le varie funzionalità di questi sistemi. Anche se il modello logico dei dati a cui si farà
prevalentemente riferimento sarà il modello relazionale, la trattazione avrà carattere generale per
poter trasporre gli argomenti di studio anche ai sistemi basati su altri modelli quale il modello a
oggetti.
Argomenti trattati: si richiama l'architettura di un DBMS seguendo lo schema di descrizione
generale a tre livelli di astrazione: esterno, logico e fisico con la definizione delle funzionalità di tali
sistemi. In particolare vengono trattati i seguenti temi: organizzazione fisica degli archivi e metodi
di accesso ad indici, hash; tecniche di ottimizzazione delle interrogazioni; nozione di transazione,
sue proprietà e loro ciclo di vita; gestione della concorrenza per sistemi centralizzati di basi di dati
con molti utenti; sistemi di ripristino dell'integrità dei dati in seguito a guasti o anomalie di
funzionamento degli apparati hardware-software.
Testi consigliati:
A. Albano: "Costruire Sistemi per Basi di Dati", 2000, Addison - Wesley
P. Atzeni, S. Ceri, S. Paraboschi, R. Torlone "Basi di Dati: concetti, linguaggi, e architetture",
McGraw Hill Italia - 1996
CALCOLO DELLE PROBABILITÀ
Docente: Dr. RAPALLO Fabio
e-mail: [email protected]
Numero CFU: 4
Anno: 2
Periodo di insegnamento: 2
Codice della disciplina: S0361
Programma del corso e testi consigliati:
Finalità del corso: introdurre le principali tecniche di analisi delle situazioni di incertezza, con
particolare attenzione agli aspetti applicativi.
Programma
1. Probabilità: Spazio degli esiti ed eventi. Relazioni con la teoria degli insiemi. Assiomi della
probabilità. Permutazioni e combinazioni. Spazi di esiti equiprobabili. La probabilità condizionata.
La formula della probabilità totale e la formula di Bayes. Indipendenza di eventi.
2. Variabili aleatorie. Definizione di variabile aleatoria discreta e continua. Coppie di variabili
aleatorie: distribuzione congiunta e marginali, variabili indipendenti. Cenno al caso di
trasformazioni di variabili aleatorie. Variabili aleatorie di Bernoulli. Variabili aleatorie binomiali.
Variabili aleatorie geometriche. Variabili aleatorie di Poisson. Variabili aleatorie uniformi continue.
Variabili aleatorie normali (o gaussiane). Variabili aleatorie esponenziali.
3. Media (o valore atteso) e sue proprieta’. Varianza e sue proprieta’. Covarianza e coefficiente di
correlazione. Momenti di una variabile aleatoria. Cenno alla funzione generatrice dei momenti.
4. Convergenze. Disuguaglianze di Markov e di Chebichev. Legge debole dei grandi numeri.
Teorema limite centrale e sue applicazioni.
Si consiglia di sostenere l’esame dopo quello di Analisi Matematica 1.
Testi consigliati:
Appunti ed esercizi forniti dal docente.
Ross, Probabilità e statistica per l’ingegneria e le scienze, Apogeo
ECONOMIA DELL'INFORMAZIONE
Docente: Prof. RAMELLO Giovanni Battista
e-mail: [email protected]
Numero CFU: 5
Anno: 1
Periodo di insegnamento: 1° semestre (Facoltà di Scienze Politiche)
Codice della disciplina: S0688
Programma del corso e testi consigliati:
Programma
Finalità del corso: il corso si rivolge prevalentemente agli studenti del corso di laurea in Economia
e Finanza, di Gestione ed Economia della Pubblica Amministrazione e di Informatica, ma è aperto
anche agli studenti di altri corsi di laurea o di altre Facoltà.
Argomenti trattati:
1. Richiami di microeconomia
2. Che cos’è l’informazione. Perché la scienza economica si occupa di informazione.
3. Informazione come bene pubblico
4. Informazione come bene privato
5. Capitale Umano, tecnologia e Sviluppo Economico
6. Incertezza e rischio
7. Esternalità ed esternalità di rete
8. Asimmetrie d’informazione e problemi di agenzia (adverse selection , moral hazard)
9. Paternità intellettuale e proprietà intellettuale
10. Brevetti, Diritti d’autore, Marchi
11. Il settore industriale della produzione di hardware e di software
12. Casi studio: farmaci, musica, libri, opere d’arte, beni di lusso
13. La New Economy. La Bolla Speculativa
14. Applicazioni della tecnologia informatica e-learning, e-government, e-commerce, etc
Testi consigliati
Per le nozioni di base di economia alcuni capitoli ( 3. Preferenze; 4. Utilità; 5. Scelta; 6. Domanda;
30. Benessere; 31. Esternalità, 32. Diritto ed economia; 33. Beni pubblici; 34. Informazione) di:
H. VARIAN, Microeconomia, Cafoscarina, Venezia 1993.
Per le questioni specifiche di economia dell’informazione:
C. SHAPIRO H. VARIAN, Information Rules: le regole dell’economia dell’informazione, Etas, II
sedizione, 1999
Si invita a consultare il materiale didattico sul sito internet http://www.sp.unipmn.it/corsi/index.htm
Altre letture utili:
Vaciago E. Vaciago G, la New Economy, Il Mulino, Bologna 2001
L. Prosperetti, La New Economy: aspetti analitici e implicazioni di politica economica, Il Mulino,
Bologna, 2002
S. Rossi, La nuova Economia, , Il Mulino, Bologna,2003
Modalità d’esame
La prova intermedia (scritta) verterà sulla prima metà circa del programma e consisterà di
domande a scelta multipla e aperte. La prova finale (scritta) verterà sull’intero programma del
corso. Un colloquio orale (obbligatorio anche se breve) completa la procedura di valutazione.
FISICA
Docente: Dr. SCALAS Enrico
e-mail: [email protected]
Numero CFU: 5
Anno: 1
Periodo di insegnamento: 3
Codice della disciplina: S0360
Programma del corso e testi consigliati:
Programma
Finalità del corso: illustrare la metodologia della scienza galileiana fornendo una base culturale
ampia e aperta a successivi aggiornamenti.
Argomenti trattati:
Meccanica. Grandezze fisiche. Unità di misura. Errori. Moti in 1 e 2 dimensioni. Esempi: moto
uniforme, uniformemente accelerato, parabolico, circolare. Dinamica (I e II legge di Newton).
Studio di moti; moto armonico, armonico smorzato, circolare. Lavoro, energia cinetica, potenza.
Forze conservative, energia potenziale, esempi (1 dimensione). Conservazione dell'energia
meccanica. Forza gravitazionale, energia gravitazionale. Urti, conservazione del momento lineare.
Cinematica rotazionale. Dinamica rotazionale. Conservazione del momento lineare. Fluidi.
Idrostatica. Idrodinamica: equazioni di continuità, di Bernoulli. Viscosità. Meccanica –
Complementi. Moto di una particella in 3 dimensioni. Forze conservative (F =-grad U). Momento
angolare e campo di forze centrali. Campo e potenziale gravitazionale. Oscillatori (armonico
semplice, smorzato, forzato, accoppiati). Moti relativi. Cinematica relativistica. Relatività galileiana.
Cenni alla dinamica di sistemi di particelle e alla dinamica del corpo rigido. Oscillazioni e Onde.
Onde nei mezzi elastici. Onde sonore. Onde elettromagnetiche. Interferenza delle onde. Energia
delle onde. Cenni all'equazione delle onde e alle sua soluzioni.
Termodinamica
Stato termodinamico. Equilibrio termico. Temperatura. Variabili di stato. Esempio: il gas ideale.
Equilibrio termodinamico. Energia interna. Il I principio della Termodinamica. Gas ideali.
Applicazioni del I Principio. Teoria cinetica dei gas ideali. Il II Principio della Termodinamica.
Entropia. Applicazioni del II Principio. Potenziali termodinamici. Elettricità e magnetismo. Carica
elettrica - Legge di Coulomb - Campo elettrico e Potenziale elettrico Legge di Gauss per E Condensatori, energia elettrostatica in termini di Q,V,C - Corrente elettrica e circuiti elettriciCampo magnetico B - Legge di Biot-Savart Forza magnetica - Legge di Ampere - Legge di Gauss
per B - Moto di particelle cariche sotto l'azione di E e B -Induzione elettromagnetica - Applicazioni Autoinduzione, energia magnetica in termini di L, M, I- Cicuiti RC, RL, RLC - Circuiti in corrente
alternata - Il campo elettrico nella materia: dielettrici – Il campo magnetico nella materia:
paramagnetismo, diamagnetismo, ferromagnetismo.
Testi consigliati
M. Alonso, E.J. Finn: "Elementi di Fisica per l'Universita'", Vol. I, Ed. Masson, Milano.
C. Mencuccini, V. Silvestrini: "Fisica I", Liguori Editore, Napoli.
R. Resnick, D. Halliday: "Fisica" Vol. I, Ed. Casa Editrice Ambrosiana, Milano.
P. Mazzoldi, M. Nigro, C. Voci "Fisica", Vol. I, Ed. EdiSES, Napoli.
D. Halliday, R. Resnick: "Fisica" Vol. II, Ed. Casa Editrice Ambrosiana, Milano.
R. Feynman, The Feynman lectures on physics/La fisica di Feynman, vol. I e II, Addison-Wesley,
Londra
GEOMETRIA
Docente: Dr. CONSOLE Sergio
e-mail: [email protected]
Numero CFU: 5
Anno: 1
Periodo di insegnamento: 1
Codice della disciplina: S0364
Programma del corso e testi consigliati:
Programma
Matrici e sistemi lineari. Operazioni tra matrici - Operatori lineari - Sistemi lineari - Soluzione col
metodo di riduzione di Gauss - Teorema di Cramer - Teorema di Rouché-Capelli.
Elementi di geometria. Vettori nello spazio - Spazi vettoriali - Dipendenza lineare - Base Geometria analitica nel piano: Rette, Circonferenze, Coniche in forma canonica.
Algebra lineare. Omomorfismi - Nucleo e Immagine - Autovalori, autovettori e autospazi.
Testi consigliati
Oltre alle dispense del corso, sono possibili approfondimenti su un qualsiasi testo di base di
Geometria.
(*) INGEGNERIA DEL SOFTWARE I
Docente: Prof. CODETTA RAITERI Daniele
e-mail: [email protected]
Numero CFU: 5
Anno: 3 professionalizzante
Periodo di insegnamento: 3
Codice della disciplina: S0381
Programma del corso e testi consigliati:
Scopo del corso:
Il corso di "Ingegneria del Software I" ha la finalità di introdurre le nozioni di base dell' ingegneria
del software e l'utilizzo di UML nella progettazione orientata ad oggetti.
Programma delle lezioni:
- Introduzione alla Ingegneria del Software.
- Modelli di processo software
- Gestione del progetto
- Processo di definizione dei requisiti
- Progettazione del software
- Diagrammi UML
- Verifica e validazione
- Manutenzione del Software
- Concetti di Dependability
Attività di Laboratorio:
sviluppo di un progetto software basato su diagrammi UML e realizzato attraverso un tool di
modellazione UML.
Testi consigliati:
Ian Sommerville, Software Engineering, Addison Wesley editore.
M. Fowler, UML distilled (second edition), Addison Wesley editore.
(*) INGEGNERIA DEL SOFTWARE: PROGRAMMAZIONE AD OGGETTI
Docente: Prof. MANZINI Giovanni
e-mail: [email protected]
Numero CFU: 5
Anno: 3 professionalizzante
Periodo di insegnamento: 1
Codice della disciplina: S0378
Programma del corso e testi consigliati:
Programma
Il corso si propone di introdurre i concetti generali della programmazione ad oggetti e di mettere gli
studenti in grado di programmare nel linguaggio Java.
Introduzione alla programmazione ad oggetti: oggetti, incapsulamento dei dati, invio di messaggi,
classi istanze, allocazione dinamica della memoria, puntatori e oggetti.
Binding dinamico e riuso del codice. Relazione fra binding dinamico, sottotipi, e polimorfismo.
Relazioni fra classi: ereditarietà (is-a), composizione (has-a), uso (uses). Confronto fra ereditarietà
e composizione. Confronto fra ridefinizione (overriding) e sovraccarico (overloading) di metodi e
campi. Programmazione in Java. Strutturazione in package. Streams, files e serializzazione.
Graphical user interface (GUI), event-driven programming e l'architettura Model View Controller
(MVC).
Testi consigliati
Bruce Eckel, “Thinking in Java”, 3rd Edition, Prentice-Hall
INTELLIGENZA ARTIFICIALE
Docente: Prof. PORTINALE Luigi
e-mail: [email protected]
Numero CFU: 5
Anno: 3
Periodo di insegnamento: 2
Codice della disciplina: S0380
Programma del corso e testi consigliati:
Programma
Introduzione e cenni storici; Ricerca nello spazio degli stati: ricerca path-based cieca ed euristica.
Algoritmi di miglioramento iterativo: hill-climbing e simulated annealing; cenni su problemi CSP;
algoritmi per giochi a 2 concorrenti. Rappresentazione della conoscenza: cenni su formalismi logici
e a regole. Sistemi di Case-Based Reasoning; uso del tool CBR-Works. Conoscenza Incerta:
richiami di calcolo delle probabilita'; Bayesian Belief Networks (proprieta' ed algoritmi) e uso di tool
per il loro sviluppo (MSBNx, Hugin, ecc...). Teoria delle decisioni: generalita', il concetto di utilita'
attesa e di lotteria, Influence Diagrams e loro uso per utilita' multi-attributo.
Testi consigliati
S. Russell, P. Norvig. Artificial Intelligence: A Modern Approach (2nd edition), Prentice-Hall
INTELLIGENZA ARTIFICIALE: ANALISI DI DATI INTELLIGENTE
Docente: Prof.ssa SAITTA Lorenza
e-mail: [email protected]
Numero CFU: 5
Anno: 3
Periodo di insegnamento: 3
Codice della disciplina: S0458
Programma del corso e testi consigliati:
Programma
Introduzione al "Data Mining". DataWareHousing, OLAP. Tipi di dati. Pre-processing (Trattamento
dati mancanti, Sampling, Discretizzazione, Feature selection). Clustering (k-Means, COBWEB).
Regole di Associazione (Algoritmi Apriori, Apriori-TD, Partition, Visualizzazione, Valutazione e
riduzione delle regole). Analisi selle serie temporali (Analisi statistica, trend, stagionalità, rumore,
Correlogramma, Test di casualità). Analisi di sequenze (Distanza di editing, Similarità tra stringhe,
Catene di Markov, Catene di Markov nascoste).
Testi consigliati
Il corso farà uso di dispense e di articoli distribuiti via Web.
(*) LABORATORIO DI INFORMATICA: RETI DI CALCOLATORI
Docente: Prof. ANGLANO Cosimo
e-mail: [email protected]
Numero CFU: 5
Anno: 3 professionalizzante
Periodo di insegnamento: 2
Codice della disciplina: S0382
Programma del corso e testi consigliati:
Programma
Nel corso di laboratorio saranno trattate metodologie per la progettazione di reti di calcolatori, con
particolare enfasi sul loro dimensionamento e configurazione. Tali metodologie saranno applicate a
casi di studio reali, e saranno supportate da opportuni strumenti software per l'analisi del traffico di
rete e per l'analisi delle prestazioni di reti di calcolatori.
Programma dettagliato:
1. Introduzione al "capacity planning"
2. Metodologie e strumenti per l'analisi del traffico di rete
3. Modelli simulativi di reti di calcolatori
4. Progettazione, dimensionamento e configurazione di reti di calcolatori
LINGUAGGI DI PROGRAMMAZIONE: LINGUAGGI PER IL WEB
Docente: Prof. GIANNINI Paola
e-mail: [email protected]
Numero CFU: 5
Anno: 3
Periodo di insegnamento: 2
Codice della disciplina: S0457
Programma del corso e testi consigliati:
Programma
Il corso si propone di introdurre presentare una panoramica di temi e tecnologie di
programmazione Web. Si analizzeranno i problemi relativi alla struttura dei dati
(semistrutturazione, mancanza di schema, trasformazioni di formati, ecc... ) e quelli relativi
all'aspetto computazionale: con particolare riferimento da un lato al supporto necessario alla
distribuzione/mobilità del codice.
Programma delle lezioni
Introduzione. Dati sul Web: Presentazione di XML: Sintassi: DTD e Namespaces. Presentazione
dei dati semistrutturati. Linguaggi di Query per dati semistrutturati. Schemi per XML: XSchema,
trasformazioni e queries per XML. Linguaggi di query per XML: XPath, XQuery. Trasformazioni:
XSL. Computazioni su Web (distribuzione/mobilità). Meccanismi di base: Rmi, class loading,
security in Java 1.
La macchina virtuale Java, verifica di byte code. Il CLR di .Net e il protocollo SOAP. Questa parte
è corredata da esercitazioni in laboratorio su: rmi, class loading (lo sviluppo di semplice
applicazioni client-server e peer-to-peer) e uso del protocollo SOAP per la realizzazione di una
applicazione simile a quella fatta in Java ma con componenti scritte in linguaggi diversi.
Linguaggi di coordinazione: Linda.
Testi consigliati
Abitebul, Buneman, Suciu. Data on the Web. Morgan Kaufmann Publisher, 2000
XML tutorial: www.brics.dk/~amoeller/XML
The Java Virtual Machine Specification
D. Gelernter. Generative Communication in Linda. ACM Transaction on Programming Languages
and Systems, 1985, Vol 7. pag. 80-112.
LINGUAGGI DI PROGRAMMAZIONE: TRADUTTORI I
Docente: Prof. TERENZIANI Paolo
e-mail: [email protected]
Numero CFU: 5
Anno: 3
Periodo di insegnamento: 1
Codice della disciplina: S0377
Programma del corso e testi consigliati:
Programma
Il corso affronta alcune tematiche di base concernenti la teoria dei linguaggi, con particolare
riferimento agli aspetti sintattici. Vengono presentate differenti classi di linguaggi, considerando sia
le grammatiche che gli automi riconoscitori. L’ultima parte del corso introduce inoltre le nozioni di
base relative al parsing LR.
Modalità d’esame: scritto (orale solo su richiesta)
Argomenti trattati: Nozioni di base di teoria dei linguaggi e terminologia. Linguaggi regolari ed
espressioni regolari. Linguaggi e grammatiche context free. Grammatiche lineari e corrispondenza
con i linguaggi regolari. Grammatiche context sensitive (cenni). Principali strutture sintattiche e
regole grammaticali per generarle. Automi a stati finiti e loro relazione con i linguaggi regolari.
Automi a pila (deterministici e non) e loro relazioni con i linguaggi context free. Teoria di base del
parsing bottom up, con particolare riferimento al parsing LR (LR(0), SLR(1), LR(1), LALR(1)).
Testi consigliati
Stefano Crespi Reghizzi: “Sintassi, semantica e tecniche di compilazione Volume 1: Metodi
Sintattici”, CLUP.
LOGICA MATEMATICA
Docente: Prof. GIANNINI Paola
e-mail: [email protected]
Numero CFU: 3
Anno: 2
Periodo di insegnamento: 2
Codice della disciplina: S0500
Programma del corso e testi consigliati:
Programma
Requisiti
La frequenza produttiva al corso richiede una buona padronanza dei contenuti fondamentali di
Algebra, Analisi Matematica I e Geometria. Sono sconsigliati di frequentare coloro che non hanno
superato tutti gli esami matematici del I anno.
Argomenti trattati
1 Introduzione
Richiami sul linguaggio dell’aritmetica.
Richiami su algoritmi, calcolabilità, decidibilità e semidecidibilità.
2 Logica proposizionale
Proposizioni e connettivi. Sintassi.
Semantica. Tavole di verità.
3 Logica dei predicati
Linguaggi del I ordine. Variabili e quantificatori. Sintassi.
Semantica. Interpretazioni. Soddisfacibilità, validità e modelli.
Il calcolo della deduzione naturale per la logica dei predicati.
Teoremi di correttezza e completezza.
Teoremi di compattezza e di Skolem-Löwenheim.
4 Risoluzione
Risoluzione nella logica proposizionale.
Risoluzione nella logica del I ordine. Unificazione.
Testi di riferimento
Asperti, A. , A.Ciabattoni: Logica a informatica, McGraw-Hill, 1997.
Lolli, G.: Introduzione alla logica formale, il Mulino, 1991.
Modalità d’esame
L’esame prevede una prova scritta e un colloquio.
(*) PARI OPPORTUNITÀ
Docente: Dr.ssa Marina FRANCHI
e-mail: [email protected]
Numero CFU: 1
Anno: 3 professionalizzante
Periodo di insegnamento: 2
Codice della disciplina: S1195
Programma del corso e testi consigliati:
Il corso ha lo scopo di introdurre i concetti di pari opportunità e di discriminazione all’accesso e alla
fruizione delle cosiddette nuove tecnologie.
Conoscenza dei concetti base delle pari opportunità e capacità di applicare i concetti appresi
all’analisi del digital divide tra i generi e tra nord e sud del mondo.
Il vocabolario delle pari opportunità.
Il gender digital divide
I programmi di educazione informatica: lotta alla discriminazione di genere all’accesso alle risorse.
La sitografia del corso è la seguente:
http://www.women.it/cms/index.php
http://www.technedonne.it/index.php?option=com_content&task=view&id=43&Itemid=91
http://www.socialrights.org/spip/article328.html
http://www.neww.org.pl/en.php/news/news/1.html?&nw=2160&re=1
http://www.socialrights.org/spip/article1259.html
La docente potrebbe integrare la bibliografia con altro materiale. Eventuali integrazioni verranno
comunicate durante le lezioni.
Gli studenti dovranno elaborare uno schema di progetto per la lotta al Digital Divide applicando i
concetti appresi durante le lezioni (modalità casi di studio).
PROGRAMMAZIONE E LABORATORIO:
LABORATORIO DI INFORMATICA: PROGRAMMAZIONE
Docente: Prof.ssa GIANNINI Paola; Dr. NERI Filippo
e-mail: [email protected]; [email protected]
Numero CFU: 5
Anno: 1
Periodo di insegnamento: 1
Codice della disciplina: S0359
Programma del corso e testi consigliati:
Programma
Scopo del corso: Il laboratorio associato al corso teorico di programmazione ha lo scopo di
familiarizzare lo studente, soprattutto mediante esercitazioni pratiche, sia con gli ambienti di
programmazione, sia con le caratteristiche fondamentali dei linguaggi di programmazione
imperativi. Durante il laboratorio si evidenziera’ l’importanza di costruire programmi mediante
metodologie ragionate.
Argomenti trattati:
Il linguaggi di programmazione C. Tipi elementari, ed arrays. Istruzioni ed espressioni. Costrutti di
controllo. Funzioni, e
regole di “scope” delle variabili. Introduzione all'ambiente di
programmazione: elementi del sistema operativo Unix, editor, compilatore e debugger. Tipi
elementari e sintassi del linguaggio C. Metodi di decomposizione di un problema, scelta delle
strutture dati e delle strutture di controllo. Osservazioni sull' efficienza, sulla comprensibilità' e sulla
facilità di debugging e di modifica di un programma.
Modalità d'esame: l'esame prevede lo svolgimento di un progetto di laboratorio e la sua
discussione orale e pratica in laboratorio.
Testi consigliati:
B.W. Kernighan, R.D. Ritchie, "Linguaggio C, II edizione (ANSI C)", Jackson Libri.
PROGRAMMAZIONE E LABORATORIO: PROGRAMMAZIONE I
Docente: Prof. MONTANI Stefania
e-mail: [email protected]
Numero CFU: 5
Anno: 1
Periodo di insegnamento: 1
Codice della disciplina: S0359
Programma del corso e testi consigliati:
Programma
Il corso ha lo scopo di introdurre i fondamenti della programmazione dei calcolatori elettronici,
partendo dal concetto di algoritmo e dalla descrizione delle componenti basilari di un programma
per il calcolo automatico, per arrivare a concetti avanzati di strutture dati e di controllo dei linguaggi
di programmazione. Questi concetti saranno applicati in alcuni algoritmi fondamentali.
In particolare saranno presentati i seguenti argomenti:
Richiami di logica
Introduzione alla programmazione: problemi, algoritmi, programmi
Correttezza ed invarianti di ciclo
Introduzione alla complessità, notazione O(.)
Elementi del linguaggio di programmazione C: programmi, espressioni, istruzioni, dichiarazioni
Tipi di dato semplice: int, float, char
Tipi di dato strutturato: array e stringhe
Funzioni, modello di esecuzione dei programmi C, puntatori e gestione della memoria
Algoritmi su arrays: cancellazione, ricerca sequenziale e binaria, ordinamento per selezione,
inserzione e bubble sort
Testi consigliati
Wirth, Principi di programmazione strutturata, ISEDI
Batini e altri, Fondamenti di programmazione dei calcolatori elettronici, Franco Angeli editore
Kelley, Pohl, C, didattica e programmazione, Addison-Wesley
PROGRAMMAZIONE II
Docente: Prof. TERENZIANI Paolo
e-mail: [email protected]
Numero CFU: 5
Anno: 1
Periodo di insegnamento: 2
Codice della disciplina: S0363
Programma del corso e testi consigliati:
Programma
Il corso affronta alcuni aspetti di base della programmazione, con particolare riferimento alle
strutture di dati dinamiche (liste) ed all’uso della ricorsione. Il linguaggio di programmazione
utilizzato è il C.
Nel seguito, il testo (vedi in fondo) è indicato per brevità come “Cruse”.
Il tipo struct in C.
Il tipo lista
- Introduzione: Cruse, sezione 2.2.1 pag. 40-44; 5.1 pag. 188-189
- Implementazione contigua: Cruse: 2.3.1, pag. 55-56; 5.2.1, pag. 190-191
- Implementazione linkata con array: Cruse 5.5, pag. 214-221
- Puntatori C e liste linkate: Cruse: 4.5 pag. 152-160, 5.2.2, pag. 191-195
- Esercizi iterativi su liste (realizzate tramite puntatori) in C
(si veda anche: Note del corso: Iterazione su Liste)
- Liste doppiamente linkate: Cruse: 5.2.4 pag. 197-201
Ricorsione
- Introduzione generale: Cruse: 3.2.1, 3.2.2, 3.2.3, pag. 91-95; 3.4, pag. 110-122.
- Complessita' in spazio e tempo delle procedure\funzioni ricorsive: Note
- Record di attivazione per procedure e funzioni ricorsive: Note
- Esercizi di programmazione ricorsiva in C (si veda anche: Note)
- Le torri di Hanoi: Cruse: 3.2.4, 95-100
- Esercizi di programmazione ricorsiva su liste in C (si veda anche: Note)
- Ricorsione lineare, ricorsione di coda (cenni)
- Algoritmi ricorsivi di ordinameto: Quicksort, Mergesort: Cruse: 7.6, 7.7, 7.8 pag. 298-318
Modalità di esame: esame scritto (orale solo su richiesta)
Testi consigliati
"Data Structures and Program Design in C", Robert L. Cruse, Clovis L. Tondo, Bruce P. Leung, II
edizione, Prentice Hall International Editions. Il testo è integrato da una serie aggiuntiva di note
disponibili su Web.
(*) PROGRAMMAZIONE: SERVIZI WEB
Docente: Prof. PORTINALE Luigi
e-mail: [email protected]
Numero CFU: 5
Anno: 3 professionalizzante
Periodo di insegnamento: 1
Codice della disciplina: S0460
Programma del corso e testi consigliati:
Programma
Scopo del corso è acquisire alcune capacità di base per realizzare siti e servizi sul World Wide
Web costituiti da testi, immagini e programmi.
Verranno illustrati i concetti di base sull'utilizzo di markup languages come XHTML, dei fogli di stile
e le nozioni piu' importanti per la programmazione WEB lato client.
Argomenti trattati:
- Introduzione al WWW
- Linguaggio XHTML
- Cascading Style Sheets (CCS)
- Programmazione Client Side: Javascript, Dynamic HTML, cenni di Flash e ActionScript.
Testo di riferimento:
Deitel, Deitel, Nieto: Internet and WWW: How to Program (3 ed.), Prentice Hall, 2004.
Testo complementare:
D. Flanagan: Javascript: the definite guide (4th edition), O'Reilly, 2001.
SISTEMI DI ELABORAZIONE: RETI DI CALCOLATORI I
Docente: Prof. GIORDANA Attilio
e-mail: [email protected]
Numero CFU: 5
Anno: 2
Periodo di insegnamento: 3
Codice della disciplina: S0372
Programma del corso e testi consigliati:
Programma
1. Introduzione alle reti di calcolatori
2. Meccanismi per la trasmissione dati a livello fisico (trasmissione analogica e digitale, codifica dei
dati tramite segnali);
3. Controllo Data Link (controllo di flusso e degli errori)
4. Multiplexing
5. Reti Locali cablate e wireless
6. Cenni su reti geografiche: commutazione di circuito e di pacchetto; Frame Relay, ATM
7. Collegamenti "Small Office Home Office": ISDN ed ADSL
Testo di riferimento:
W. Stallings: Data and Computer Communications, VI edizione, Prentice Hall.
Testi di consultazione:
W. Stallings: Local and Metropolitan Area Networks, VI edizione, Prentice Hall.
(*) SISTEMI DI ELABORAZIONE: RETI DI CALCOLATORI II
Docente: Prof. GIORDANA Attilio
e-mail: [email protected]
Numero CFU: 5
Anno: 3 professionalizzante
Periodo di insegnamento: 1
Codice della disciplina: S0379
Programma del corso e testi consigliati:
Programma
Introduzione. La rete Internet: funzionamento e organizzazione; protocolli IP, ARP, ICMP;
Autonomous systems: protocolli OSPF e BGP; Livello trasporto: protocolli TCP e UDP; Evoluzione
di IP-v4 in IP-v6, qualità di servizio garantita, multicasting; il Domain Name Server; Protocolli di
livello applicativo: posta elettronica.
Testi consigliati
W. Stallings: «Data and Computer Communications», VI edizione, Prentice Hall
SISTEMI DI ELABORAZIONE: SIMULAZIONE
Docente: Prof. FRANCESCHINIS Giuliana
e-mail: [email protected]
Numero CFU: 5
Anno: 3
Periodo di insegnamento: 2
Codice della disciplina: S0456
Programma del corso e testi consigliati:
Programma
La simulazione ad eventi discreti, metodologia fondamentale per la valutazione delle prestazioni di
sistemi complessi (di calcolo, di telecomunicazione, di traffico, ecc) è la materia su cui verte questo
corso. Pur essendo di carattere introduttivo, il corso ha come obiettivo di rendere lo studente in
grado di affrontare lo studio di casi reali avendo conoscenza del metodo da seguire e delle
potenzialita' delle tecniche disponibili.
Gli argomenti trattati possono essere raggruppati nei seguenti tre punti:
1. Costruzione di un modello di un sistema reale: verranno discussi i concetti di livello di
astrazione e adeguatezza di un modello, e illustrate alcune metodologie per la costruzione dei
modelli. Gli esempi verranno sviluppati utilizzando due formalismi molto noti: le reti di code e le reti
di Petri. Saranno inoltre discusse alcune semplici leggi operazionali che servono per la definizione
degli indici di prestazione dei modelli.
2. "Esecuzione" di un modello di simulazione: verrà spiegato cosa significa eseguire un modello di
simulazione e come si può realizzare un programma di simulazione ad eventi discreti. I modelli di
simulazione che saranno trattati sono modelli probabilistici, ovvero modelli la cui evoluzione è
governata da leggi casuali. Questo richiederà un piccolo ripasso del calcolo delle probabilità.
Verranno inoltre presentati metodi per la generazione di istanze di variabili casuali. Sarà richiesto
agli studenti di svolgere alcuni esercizi pratici per verificare la comprensione di quanto esposto a
lezione: lo svolgimento di tali esercizi sarà utile anche per lo svolgimento del progettino finale
3. Interpretazione dei risultati della simulazione: i risultati prodotti da un simulatore ad eventi
discreti di tipo Montecarlo costituiscono le componenti di un campione statistico e come tali devono
essere utilizzati per la conferma della loro validità. Il corso include il richiamo di alcuni elementi
fondamentali di statistica utili per la presentazione dei metodi che permettono la stima intervallare
degli indici di prestazione dei modelli studiati.
Libri di riferimento: M. Ajmone Marsan, G. Balbo, G. Conte, S. Donatelli, and G. Franceschinis.
Modelling with Generalized Stochastic Petri Nets. J. Wiley, 1995.
J. Banks, J.S. Carson II, B.L. Nelson, D.N. Nicol Discrete-Event System Simulation, 3rd Ed.
Prentice Hall, 2000.
G. Balbo, Appunti per il corso di Simulazione.
G. Iazeolla, Introduzione alla Simulazione Discreta Ed. Bollati-Boringhieri.
Durante il corso verranno distribuite dispense aggiuntive. Per il reperimento dei libri usati nel corso,
rivolgersi alla docente.
SISTEMI OPERATIVI E LABORATORIO:
LABORATORIO DI INFORMATICA: SISTEMI OPERATIVI
Docente: Prof. THESEIDER DUPRÉ Daniele
e-mail: [email protected]
Numero CFU: 5
Anno: 2
Periodo di insegnamento: 1
Codice della disciplina: S0368
Programma del corso e testi consigliati:
Il corso ha lo scopo di illustrare in un sistema reale molte delle nozioni generali del corso di Sistemi
Operativi I e di introdurre l'ambiente di programmazione del sistema operativo Unix, in particolare
per quanto riguarda le chiamate di sistema (system call).
Argomenti trattati: Richiami sull'ambiente di programmazione in Unix: comandi, funzioni di libreria,
manuale on-line, compilazione separata e utilities di sviluppo (make). Processi e ambiente run-time
nel sistema Unix. File system di Unix. Interfaccia tra linguaggio C e Unix. Generalità sull'utilizzo
delle chiamate di sistema; chiamate di sistema per gestione di processi, sincronizzazione e
comunicazione tra processi, gestione di file. Implementazione di interpreti di comandi. Librerie per
threads, specie per sincronizzazione e comunicazione fra threads.
Modalità di esame: valutazione di esercizi e progetti assegnati durante il corso.
Prerequisiti: è indispensabile aver acquisito esperienza di programmazione nel linguaggio C, come
nel caso sia già stata svolta l'attività del corso di laboratorio di Programmazione del I anno.
Testi consigliati
Oltre alla documentazione on-line si può fare riferimento a:
C. Brown: "Unix - Distributed Programming", Prentice-Hall 1994, capitolo 2
V.R. Stevens, "Advanced Programming in the Unix environment", Addison-Wesley 1993
J.M. Rifflet, "La programmation sous Unix", 3me Ed., Ediscience International, 1993
SISTEMI OPERATIVI E LABORATORIO: SISTEMI OPERATIVI I
Docente: Prof.ssa FRANCESCHINIS Giuliana
e-mail: [email protected]
Numero CFU: 5
Anno: 2
Periodo di insegnamento: 1
Codice della disciplina: S0368
Programma del corso e testi consigliati:
Programma
Il corso di Sistemi Operativi I ha lo scopo di fornire le nozioni fondamentali sull'architettura del
sistema operativo di un elaboratore multiutente in isolamento (non in rete). Al corso è associato
quello di Laboratorio di Informatica: Sistemi Operativi. Vengono affrontati i seguenti argomenti
principali:
- organizzazione del kernel
- gestione dei processi
- elementi di programmazione concorrente
- gestione della memoria
- gestione delle periferiche
- file system e tecniche di protezione
- tecniche di rilevamento e prevenzione dello stallo
- elementi di programmazione concorrente
Esempi di soluzioni reali verranno tratti dai sistemi operativi correnti (Unix, Windows).
Prerequisiti: Si consiglia di seguire il corso solo dopo aver seguito i due corsi di Architettura degli
Elaboratori I e II.
Testi consigliati:
A. Silberschatz, P.B. Galvin: "Operating System Concepts", V ed., Addison-Wesley 1998.
Tanenbaum: "Sistemi Operativi Moderni", Ed. Jackson, 2° ed.
SISTEMI OPERATIVI II
Docente: Prof. ANGLANO Cosimo
e-mail: [email protected]
Numero CFU: 5
Anno: 2
Periodo di insegnamento: 2
Codice della disciplina: S0375
Programma del corso e testi consigliati:
Programma
Il corso è focalizzato sui sistemi operativi di rete e sui sistemi operativi distribuiti. Pertanto, le
nozioni base introdotte nel corso di Sistemi Operativi I sono riprese ed estese in riferimento ad
architetture di rete e multi-processore.
Vengono affrontati i seguenti argomenti principali:
- architettura delle reti locali e geografiche
- cenni sui protocolli di comunicazione con speciale riferimento al TCP/IP
- primitive di comunicazione tra processi
- sistemi operativi di rete, file system distribuiti e sistemi operativi distribuiti
- architettura client-server e chiamata procedurale remota
- comunicazione di gruppo e coordinazione di gruppi di processi cooperanti
- algoritmi di sincronizzazione e di elezione
- implementazione di un file system di rete: NFS
- implementazione di un sistema operativo distribuito
Testi consigliati
A. S. Tanenbaum, Moderni Sistemi Operativi, 2a edizione, Jackson Libri. Aprile 2002
A. S. Tanenbaum, Distributed operating systems, Prentice Hall
STATISTICA
Docente: Prof. BOBBIO Andrea
e-mail: [email protected]
Numero CFU: 4
Anno: 2
Periodo di insegnamento: 3
Codice della disciplina: S0376
Programma del corso e testi consigliati:
Programma
Il corso ha lo scopo di avviare lo studente ai principi e alle metodologie di base della statistica. Il
corso si articola sui seguenti argomenti.
Richiamo sulle variabili aleatorie, Cdf, densità, momenti. Statistica Descrittiva: Tabelle di
frequenze, istogrammi, Distribuzioni cumulative empiriche, Misure di locazione; Misure di
dispersione.
Stimatori e proprietà degli stimatori. Media e varianza campionaria. Teorema del limite centrale.
Distribuzione Chi-2 con esempi. Distribuzione t-Student con esempi. Distribuzione F-Fisher.
Intervalli di confidenza. Intervallo di confidenza sulla media di una popolazione normale con
varianza nota e incognita, Intervallo di confidenza sulla proporzione .
Generalità sui test di ipotesi. Test sulla media campionaria e sulla proporzione.
Test di adattamento (cenni).
Testi consigliati:
S. Ross: Probabilità e Statistica per l’Ingegneria e le Scienze, Apogeo 2003.
NOTE:
(*) modulo finanziato dalla Regione Piemonte nell'ambito del progetto di rafforzamento delle lauree
professionalizzanti
Scarica