UNIVERSITA' DEGLI STUDI DI PERUGIA
FACOLTA' DI Facolta' di Scienze Matematiche Fisiche e Naturali



Laurea triennale - T062 - Informatica

Sede di Perugia

ELENCO DEGLI INSEGNAMENTI E DELLE ALTRE ATTIVITÀ FORMATIVE

ANNO PERIODO DISCIPLINA DOCENTE ORE
TEOR. + PRAT.
CFU
3
I semestre Applicazioni e Calcolo in Rete - Applicazioni e Calcolo in Rete Modulo 2 Non assegnato
18 + 6
3
3
I semestre Applicazioni e Calcolo in Rete - Applicazioni e Calcolo in Rete Modulo 1 Prof. TARANTELLI Francesco
18 + 6
3
3
I semestre Architettura delle Reti di Computer - Architettura delle Reti di Computer I modulo Dott. GERVASI Osvaldo
20 + 4
3
3
I semestre Architettura delle Reti di Computer - Architettura delle Reti di Computer II modulo Dott.ssa BENIGNI Gladis Canaima
20 + 4
3
3
I semestre Basi di Dati e Sistemi Informativi I Prof. FORMISANO Andrea
40 + 8
6
3
II semestre Basi di Dati e Sistemi Informativi II - modulo 1 Dott.ssa POGGIONI VALENTINA
18 + 6
3
3
II semestre Basi di Dati e Sistemi Informativi II - modulo 2 Dott.ssa POGGIONI VALENTINA
18 + 6
3
3
II semestre Laboratorio di Basi di dati e Sistemi Informativi Dott.ssa POGGIONI VALENTINA
6 + 30
3
3
II semestre Laboratorio di Linguaggi di Realtà Virtuale Dott. GERVASI Osvaldo
18 + 18
3
3
II semestre Laboratorio generale di Informatica Prof. TARANTELLI Francesco
36 + 0
3
3
II semestre Laboratorio Reti di Computer Dott. TASSO Sergio
18 + 18
3
3
I semestre Linguaggi di Realtà Virtuale - linguaggi di realta' virtuale (I modulo) Dott. GERVASI Osvaldo
38 + 10
6
3
I semestre Linguaggi di Realtà Virtuale - Linguaggi di realta' virtuale (II modulo) Non assegnato
24 + 0
3
3
II semestre Modellistica Molecolare Dott. BARONI Massimo
38 + 10
6
3
II semestre Reti di Calcolatori: Protocolli Dott. CHECCUCCI Bruno
38 + 10
6
3
I semestre Sistemi Aperti e Distribuiti Dott. TASSO Sergio
38 + 10
6
3
I semestre Sistemi Multimediali Dott.ssa PALLOTTELLI Simonetta
38 + 10
6
A Scelta
II semestre Software Floss Dott. GERVASI Osvaldo
36 + 0
3
3
I semestre Tecniche di Acquisizione Dati I Dott. VERDINI Piero Giorgio
38 + 10
6
3
II semestre Tecniche di Acquisizione Dati II Dott. AMBROSI Giovanni
38 + 10
6
A Scelta
II semestre Trattamento delle immagini digitali Dott. CECCONI Giorgio
24 + 0
3
2
I semestre Algoritmi e Strutture Dati I Prof.ssa PINOTTI Maria Cristina
48 + 0
6
2
II semestre Algoritmi e Strutture Dati II Prof.ssa PINOTTI Maria Cristina
38 + 10
6
2
I semestre Calcolo delle Probabilità e Statistica Matematica Prof.ssa COLETTI Giulianella
38 + 10
6
2
II semestre Calcolo Numerico Dott. IANNAZZO Bruno
38 + 10
6
2
II semestre Elementi di scienze atomiche e molecolari - Elementi di scienze atomiche e molecolari I modulo Prof. LAGANA' Antonio
18 + 6
3
2
II semestre Elementi di scienze atomiche e molecolari - Elementi di scienze atomiche e molecolari II modulo Dott. PACIFICI Leonardo
18 + 6
3
2
II semestre Fisica dei Dispositivi Elettronici - Fisica dei Dispositivi Elettronici Dott. SERVOLI Leonello
48 + 0
6
2
I semestre Fisica Generale - Modulo 1 Dott. SANTOCCHIA Attilio
19 + 5
3
2
I semestre Fisica Generale - Modulo 2 Dott. SANTOCCHIA Attilio
19 + 5
3
2
II semestre Ingegneria del software - Ingegneria del software Prof. MILANI Alfredo
48 + 0
6
2
I semestre Laboratorio di Algoritmi Dott.ssa BICOCCHI Rosanna
18 + 18
3
2
II semestre Laboratorio di Sistemi Operativi Dott. MELACCI Pietro Tito
18 + 18
3
2
II semestre Linguaggi formali e Compilatori Prof. CARPI Arturo
48 + 0
6
2
II semestre Sistemi Operativi - Sistemi Operativi I Prof. FORMISANO Andrea
38 + 10
6

PROGRAMMI DEI CORSI

Applicazioni e Calcolo in Rete - Applicazioni e Calcolo in Rete Modulo 2
(Docente: Non assegnato )
 
Periodo didattico: I semestre
 
Programma:
 
Modalità di Esame:
 
Orario di Ricevimento:
 
Testi Consigliati:
Applicazioni e Calcolo in Rete - Applicazioni e Calcolo in Rete Modulo 1
(Docente: Prof. TARANTELLI Francesco)
 
Periodo didattico: I semestre
 
Programma:
Comunicazione. L'interfaccia socket. Dalla sequenzialità al
parallelismo. Multiprocessing, multithreading e calcolo distribuito.
Grid. Modelli di parallelismo, tecniche e strumenti. MPI
 
Modalità di Esame:
Esame orale
 
Orario di Ricevimento:
Disponibile previo appuntamento
 
Testi Consigliati:
Materiale fornito del docente
Architettura delle Reti di Computer - Architettura delle Reti di Computer I modulo
(Docente: Dott. GERVASI Osvaldo)
 
Periodo didattico: I semestre
 
Propedeuticità: nessuna
 
Programma:
Il modello di riferimento ISO/OSI. Reti Locali e Geografiche. Il protocollo Ethernet. Varianti Ethernet (Fastethernet, GigabitEthernet).
Il protocollo di rete X.25. Protocollo Frame Relay. Protocollo ATM.
Protocolli di routing Dinamico: RIP, OSPF e BGP.
 
Modalità di Esame:
Test individuale con sistema EOL (15 quiz a risposta chiusa). Esame orale.
 
Orario di Ricevimento:
Martedi 9-11
 
Testi Consigliati:
Dispense messe a disposizione dal docente
Architettura delle Reti di Computer - Architettura delle Reti di Computer II modulo
(Docente: Dott.ssa BENIGNI Gladis Canaima)
 
Periodo didattico: I semestre
 
Programma:
 
Modalità di Esame:
 
Orario di Ricevimento:
 
Testi Consigliati:
Basi di Dati e Sistemi Informativi I
(Docente: Prof. FORMISANO Andrea)
 
Periodo didattico: I semestre
 
Programma:
Introduzione ai database ed ai DBMS. Il modello Entità-Relazione. Progettazione concettuale. Il modello relazionale. Algebra e calcolo relazionale. Cenni al linguaggio SQL. Normalizzazione. Elementi di architettura dei DBMS
 
Modalità di Esame:
prova scritta e orale
 
Orario di Ricevimento:
Lunedì dalle 17:00, Martedì dalle 17:00, (o su appuntamento).
 
Testi Consigliati:
R.A.Elmasri e S.B.Navathe: Sistemi di basi di dati--fondamenti, 5a edizione, Pearson-AddisonWesley, 2007.
R.A.Elmasri e S.B.Navathe: Sistemi di basi di dati--complementi, 4a edizione, Pearson-AddisonWesley, 2005.
A. Albano, G. Ghelli e R. Orsini. Basi di dati relazionali e a oggetti. Zanichelli, Bologna, 1997.
A.Silberschatz, H.F.Korth e S.Sudarshan. Database System Concepts, McGraw-Hill. 2002.
J.Ullman e J.Widom. First Course in Database Systems. 2nd ed. Prentice Hall.
Materiale fornito dal docente.
Basi di Dati e Sistemi Informativi II - modulo 1
(Docente: Dott.ssa POGGIONI VALENTINA)
 
Periodo didattico: II semestre
 
Programma:
Realizzazione di database tramite i DBMS MySQL e PostGres. Interfacciamento con programmi realizzati in JAVA.

Driver JDBC. Classi e interfacce: Prepared Statement, Stored Procedure, CallableStatement, Transazioni, Livelli di isolamento.

Basi di dati ad oggetti: tipi, costruttori di tipo, OID, identità e uguaglianza. Modello dei dati: definizione di tipo, classe, metodo; gerarchie di generalizzazione
Db4o per la realizzazione di database ad oggetti nel lingaggio JAVA.

Basi di dati attive e Trigger: paradigma ECA; granularità; tuple e tabelle di transizione; modalità di esecuzione e opzioni di modalità di esecuzione; trigger a cascata e terminazione; Trigger su PostGreSQL: PL/pgSQL;
 
Modalità di Esame:
progetto e colloquio orale
 
Orario di Ricevimento:
giov 11-13
 
Testi Consigliati:
Atzeni, Ceri, Fraternali, Paraboschi, Torlone. Basi di dati: architetture e linee di evoluzione. II ed. McGraw-Hill
Documentazione dei vari software utilizzati disponibile in rete.
Basi di Dati e Sistemi Informativi II - modulo 2
(Docente: Dott.ssa POGGIONI VALENTINA)
 
Periodo didattico: II semestre
 
Programma:
Proprietà acid delle transazioni; architettura di un db server per un sistema transazionale. specifica delle transazioni. Anomalie.

Gestione della concorrenza: view-equivalenza e view-serializzabilità di schedule. Conflict-equivalenza e conflict serializzabilità di schedule. Protocollo 2PL, 2PL stretto. Deadlock. Protocollo di timestamp e timestamp multiversione. Gestore dell'affidabilità: File di log. Primitive di undo e redo. Gestione guasti: ripresa a caldo, ripresa a freddo. Gestione del buffer. Regole WAL e Commit Precedenza. Protocolli per la scrittura di log e db. Gestione delle pagine.
Strutture primarie di memorizzazione: sequenziali; ad accesso calcolato; ad albero. Indici: primari e secondari, densi e sparsi, indici multilivello. B-alberi e loro uso nei DBMS. B+ alberi e versione ottimizzata. Ottimizzazione delle query: architettura dell'ottimizzatore. Ottimizzazione algebrica. Gestore delle interrogazioni: operazioni di accesso ai dati; profili delle relazioni; ottimizzazione basata sui costi

Basi di dati distribuite: frammentazione e allocazione dei dati; livelli di trasparenza; gestione delle transazioni; controllo concorrenza; serializzabilità globale e rilevazione distribuita di deadlock;
protocollo di commit a due fasi.
 
Modalità di Esame:
Progetto e prova orale.
 
Orario di Ricevimento:
Giovedì 11-13
 
Testi Consigliati:
Atzeni, Ceri, Fraternali, Paraboschi, Torlone. Basi di dati: architetture e linee di evoluzione. II ed. McGraw-Hill
Laboratorio di Basi di dati e Sistemi Informativi
(Docente: Dott.ssa POGGIONI VALENTINA)
 
Periodo didattico: II semestre
 
Programma:
Linguaggio SQL per la realizzazione implementazione, modifica e interrogazione delle basi di dati.
Istruzioni di base e istruzioni avanzate. Realizzazione di database tramite i DBMS MySQL e PostGres.
Driver JDBC. Classi e interfacce: Prepared Statement, Stored Procedure, CallableStatement, Transazioni, Livelli di isolamento.
Basi di dati ad oggetti: tipi, costruttori di tipo, OID, identità e uguaglianza. Modello dei dati: definizione di tipo, classe, metodo; gerarchie di generalizzazione
Db4o per la realizzazione di database ad oggetti nel linguaggio JAVA.
 
Modalità di Esame:
Esame: elaborazione di un progetto assegnato dal docente e discussione orale
 
Orario di Ricevimento:
giovedì 11-13
 
Testi Consigliati:
Laboratorio di Linguaggi di Realtà Virtuale
(Docente: Dott. GERVASI Osvaldo)
 
Periodo didattico: II semestre
 
Propedeuticità: nessuna
 
Programma:
Presentazione dei principali nodi X3D, nelle due sintassi più diffuse: quella basata su XML e quella simile a VRML. Presentazione della programmazione Script in ambiente X3D. Preparazione del progetto finale.
 
Modalità di Esame:
Prova orale con presentazione e discussione di un progetto assegnato dal docente.
 
Orario di Ricevimento:
Martedi 9-11
 
Testi Consigliati:
Dispense messe a disposizione dal docente.
Laboratorio generale di Informatica
(Docente: Prof. TARANTELLI Francesco)
 
Periodo didattico: II semestre
 
Programma:
Laboratorio di esercitazioni pratiche sui seguenti temi:
- Installazione e gestione di sistemi operativi unix-like per ambiente
scientifico. Programmazione di sistema. Architetture e standards.
- Gestione e programmazione in rete.
- Tecniche di programmazione ed ottimizzazione per applicazioni
scientifiche.
 
Modalità di Esame:
Esame orale
 
Orario di Ricevimento:
Sempre disponibile previo appuntamento
 
Testi Consigliati:
Materiale fornito dal docente
Laboratorio Reti di Computer
(Docente: Dott. TASSO Sergio)
 
Periodo didattico: II semestre
 
Programma:
Introduzione alla gestione delle reti;
Configurazione del TCP/IP: sottoreti, definizione delle interfacce;
La configurazione del Routing: minimale, statico, dinamico (RIP, OSPF, EGP);
Servizi di rete (definizione, configurazione ed uso):
Host table e DNS (Domain Name Service),
Comandi remoti,
NIS (Network Information Service),
NFS (Network File System),
Posta elettronica: aliases, il servizio sendmail;
Servizi di controllo e tools di diagnostica;
Sicurezza: controllo dei rischi, limitazione degli accessi, TCP wrapper, firewall e DMZ;
Strumenti di monitoraggio e IDS.
Esempi ed esercitazioni su tutti gli argomenti trattati.
 
Modalità di Esame:
Test a risposte chiuse e progetto di LAN aziendale
 
Orario di Ricevimento:
MARTEDI 11-13
 
Testi Consigliati:
Gary Govanus: TCP/IP Per configurare, implementare e gestire TCP/IP sulla vostra rete, McGraw-Hill
Craig Hunt: TCP/IP Network Administration, O?Reilly & Associates, Inc.
Materiale fornito dal Docente.


Linguaggi di Realtà Virtuale - linguaggi di realta' virtuale (I modulo)
(Docente: Dott. GERVASI Osvaldo)
 
Periodo didattico: I semestre
 
Propedeuticità: nessuna
 
Programma:
Il linguaggio X3D: introduzione alle peculirità del linguaggio X3D, discussione delle differenze e delle peculiarità rispetto a VRML. Presentazione dei principali nodi X3D con illustrazione delle differenze con VRML. Programmazione Script con Java e Javascript in ambiente X3D
 
Modalità di Esame:
Prova orale con presentazione e discussione di un progetto assegnato dal docente.
 
Orario di Ricevimento:
Martedi 9-11
 
Testi Consigliati:
Dispense messe a disposizione dal docente
Linguaggi di Realtà Virtuale - Linguaggi di realta' virtuale (II modulo)
(Docente: Non assegnato )
 
Periodo didattico: I semestre
 
Programma:
 
Modalità di Esame:
 
Orario di Ricevimento:
 
Testi Consigliati:
Modellistica Molecolare
(Docente: Dott. BARONI Massimo)
 
Periodo didattico: II semestre
 
Programma:
 
Modalità di Esame:
 
Orario di Ricevimento:
 
Testi Consigliati:
Reti di Calcolatori: Protocolli
(Docente: Dott. CHECCUCCI Bruno)
 
Periodo didattico: II semestre
 
Programma:
 
Modalità di Esame:
 
Orario di Ricevimento:
 
Testi Consigliati:
Sistemi Aperti e Distribuiti
(Docente: Dott. TASSO Sergio)
 
Periodo didattico: I semestre
 
Programma:
Introduzione ai sistemi distribuiti. Comunicazione nei sistemi distribuiti.
Elaborazione nei sistemi distribuiti.
Middleware e HLA.
RPC e threads. File system distribuiti.
Standard CORBA e DCOM.
Client/Server in ambienti mobili.
Web Services: definizioni, il protocollo SOAP, il linguaggio WSDL, il progetto UDDI.
SOA e web services.
 
Modalità di Esame:
Test a risposte chiuse + progetto di un'applicazione in ambiente distribuito
 
Orario di Ricevimento:
Mercoledì 11-12
 
Testi Consigliati:
Sistemi Multimediali
(Docente: Dott.ssa PALLOTTELLI Simonetta)
 
Periodo didattico: I semestre
 
Propedeuticità: Nessuna
 
Programma:
1. Introduzione ai sistemi multimediali.
1.1. Trattamento dell'informazione. Il paradigma ipertestuale. Struttura di un ipertesto. Tipi di collegamenti. Navigazione in un ipertesto. Strumenti per l'orientamento. Sistemi multimediali e ipermediali.
1.2. Modelli orientati ad oggetti per la produzione di applicazioni multimediali e ipermediale.
2. Dai media naturali ai media digitali.
2.1. I formati dei media. Media e modelli dei dati. Classificazione dei media. Audio, immagini statiche, video. Media statici, media continui, media temporizzati.
2.2. La compressione dei dati. Compressione reversibile e irreversibile. Compressione dei dati audio. Compressione JPEG delle immagini. Compressione MPEG dei dati video.
3. Strumenti ed Applicativi.
3.1. Panoramica e confronti su tecnologie e strumenti web.
3.2. Software applicativi: Flash.
4. Linguaggi e tecniche per la progettazione multimediale in ambiente Web.
4.1. Il World Wide Web: Struttura attuale del World Wide Web. Principi architetturali fondamentali. Informazione nel Web attuale. Modelli di funzionamento. Trattamento dell'informazione.
4.2. Il linguaggio HTML e i fogli di stile (CSS).
4.3. Accessibilità e Usabilità. Validazione. Aspetti formali e pratici.
4.4. XML come mezzo di codifica dell'informazione. Definizione di dati semistrutturati (DTD). Modeling dell'informazione in XML. Meta-livelli. Il passaggio dall'informazione al media in XML. Esprimere significati usando XML. Senso comune e Semantic Web. Ontologie e ragionamento.
4.5. I linguaggi XSL, XPath e XQuery.
4.6. Il linguaggio XHTML.
5. Introduzione al PHP
 
Modalità di Esame:
Progetto singolo o di gruppo, prova scritta e/o orale.
 
Orario di Ricevimento:
martedì addle 9 alle 10
 
Testi Consigliati:
Introduzione alle tecnologie Web. Vito Roberto, Marco Frailis, Alessio Gullotta - Milano : McGraw-Hill
Progettazione di dati e applicazioni per il web. Stefano Ceri ... [et al.] - Milano [etc.] : McGraw-Hill
Audio e multimedia. Vincenzo Lombardo, Andrea Valle - Milano: Apogeo
Architettura dell?informazione per il World Wide Web ? L.Rosenfeld, P.Morville ? Hopslibri
Programmare XML ? R.Allen Wyke, Sultan Rehman, Brad Leupen ? Mondatori
Altro materiale didattico
Copie delle trasparenze del corso, articoli tratti da riviste scientifiche, e documentazione che sarà resa disponibile su Internet. Saranno indicati durante il corso alcuni testi per un approfondimento di alcuni argomenti.
Software Floss
(Docente: Dott. GERVASI Osvaldo)
 
Periodo didattico: II semestre
 
Propedeuticità: nessuna
 
Programma:
Il FLOSS come modello collaborativo e di business. Linux: istallazione e personalizzazione. Gestione e personalizzazione avanzata di Linux. Servizi Internet basati su FLOSS: e-mail, web server, firewall, router, web filtering e caching, implementazione di aule didattiche basate su FLOSS: ITALC e LTSP. Content Management Systems: Plone, Drupal and Joomla!
 
Modalità di Esame:
Esame orale con discussione di un progetto assegnato dal docente
 
Orario di Ricevimento:
Martedi 9-11
 
Testi Consigliati:
Dispense messe a disposizione dal docente. Materiale multimediale scaricabile dal sito del docente.
Tecniche di Acquisizione Dati I
(Docente: Dott. VERDINI Piero Giorgio)
 
Periodo didattico: I semestre
 
Programma:
 
Modalità di Esame:
 
Orario di Ricevimento:
 
Testi Consigliati:
Tecniche di Acquisizione Dati II
(Docente: Dott. AMBROSI Giovanni)
 
Periodo didattico: II semestre
 
Programma:
 
Modalità di Esame:
 
Orario di Ricevimento:
 
Testi Consigliati:
Trattamento delle immagini digitali
(Docente: Dott. CECCONI Giorgio)
 
Periodo didattico: II semestre
 
Programma:
 
Modalità di Esame:
 
Orario di Ricevimento:
 
Testi Consigliati:
Algoritmi e Strutture Dati I
(Docente: Prof.ssa PINOTTI Maria Cristina)
 
Periodo didattico: I semestre
 
Programma:
Algoritmi: correttezza, terminazione, complessità (caso pessimo, caso medio).
InsertionSort: analisi della complessita' in tempo e spazio nel caso pessimo e nel caso medio.
Fondamenti di Matematica: Principio di Induzione, Ordine di grandezza di funzioni. Base, tetto, esponenziali, Logaritmi. Sommatorie e serie.
Metodi di progetto: Divide et Impera. MergeSort e Ricerca Binaria.
Analisi di complessita' di algoritmi ricorsivi. Equazioni di ricorrenza. Il Teorema dell'esperto.
Ordinamento: Quicksort con analisi della complessita' in tempo nel caso pessimo e nel caso medio.
Heap: definizione e proprieta'. Procedura di mantenimento dalle proprietà delle chiavi dello heap e calcolo della sua complessità. Costruzione di un heap. HeapSort. Code di priorità. Inserimento e cancellazione da uno heap.D-ary heaps.
Limiti teorici della complessità di ordinamento per confronto.
CountingSort. Radix Sort.
Limiti inferiori e superiori per la complessità in tempo per il calcolo del minimo e del massimo in una sequenza.
Mediana e statistiche d'ordine.
Dizionari:
Memorizzazione su tabelle con indirizzamento diretto. Tabelle hash. Collisioni. Funzioni hash. Gestione delle collisioni. Scansione esterna (liste di trabocco). Scansione interna (lineare, quadratica, doppio hashing). Cancellazione di dati. Complessità in tempo delle operazioni di ricerca senza successo, ricerca con successo ed inserzione nelle varie tabelle.
Generalità sugli alberi ordinati, realizzazione. Alberi binari di ricerca. Ricerca di chiavi, minimo, massimo, successore e predecessore. Inserimento e cancellazione. Complessità delle operazioni di ricerca.
Grafi:generalità e rappresentazione in memoria. Schema generale di visita di grafi. Alberi di copertura e componenti connesse.Visita in ampiezza (BFS), visita in profondità (DFS) e loro proprietà (classificazione degli archi). Grafi aciclici e ordine topologico (algoritmo con la cancellazione di sorgenti, algoritmo con i tempi di fine-visita DFS). Componenti fortemente connesse (algoritmo con i tempi di fine-visita DFS).
 
Modalità di Esame:
Per accedere all'esame orale, lo studente deve superare una prova scritta di 2 ore, senza possibilita' di consultare i testi. Una volta superata la prova scritta lo studente dovrà sostenere l'orale nello stesso appello.
 
Orario di Ricevimento:
martedi 17-19 mercoledi' 11-13
 
Testi Consigliati:
T. H. CORMEN, C. E. LEISERSON, R. L. RIVEST, C. STEIN Introduzione agli algoritmi e strutture dati (Seconda edizione), McGraw-Hill, 2005, ISBN: 88-386-6251-7.
Algoritmi e Strutture Dati II
(Docente: Prof.ssa PINOTTI Maria Cristina)
 
Periodo didattico: II semestre
 
Propedeuticità: nessuna
 
Programma:
Alberi di copertura di costo minimo: algoritmo di Kruskal, algoritmo di Prim.
Cammini minimi da sorgente unica: algorimi di Dijkstra, algoritmo di Bellman-Ford.
Heap binomiali e Heap di Fibonacci.
Programmazione dinamica: moltiplicazione di matrici con il minimo numero di prodotti, la piu' lunga sottosequenza a comune fra due stringhe, problema dello zaino intero con/senza ripetizioni, palindrome, programmazione delle catene di montaggio.
Algoritmi Greedy: selezione delle attivita', colorazione di un grafo di intervalli, codici di Huffman.
Cammini minimi fra tutte le coppie: algoritmo di Floyd-Warshall, algoritmo analogo alla moltiplicazione di matrici, algoritmo di Johnson per grafi sparsi.
Non-determinismo e algoritmi enumerativi.
Cenni teoria della NP-completezza e riducibilita'.
 
Modalità di Esame:
Per accedere all'esame orale, lo studente deve superare una prova scritta di 2 ore, senza possibilita' di consultare i testi. Una volta superata la prova scritta lo studente dovràsostenere l'orale nello stesso appello.
 
Orario di Ricevimento:
martedi' 17-19 e mercoledi' 11-13
 
Testi Consigliati:
T. H. CORMEN, C. E. LEISERSON, R. L. RIVEST, C. STEIN Introduzione agli algoritmi e strutture dati (Seconda edizione), McGraw-Hill, 2005, ISBN: 88-386-6251-7.
Calcolo delle Probabilità e Statistica Matematica
(Docente: Prof.ssa COLETTI Giulianella)
 
Periodo didattico: I semestre
 
Programma:
Eventi. Operazioni fra eventi. La probabilità come grado di fiducia. Coerenza e additività . La
valutazione combinatoria. Numeri aleatori semplici. Previsione e varianza di numeri aleatori
semplici. La valutazione frequentista. Eventi condizionati e probabilità condizionata. Indipendenza
stocastica. Distribuzione binomiale e ipergeometrica. Test di ipotesi. Numeri aleatori discreti e
continui. Distribuzioni di Poisson, geometrica, uniforme, esponenziale, normale. Distribuzioni
multiple. Il teorema centrale. Variabili statistiche discrete e continue. Media, moda, mediana.
Misure di dispersione. Correlazione di dati bidimensionali. Rette di regressione. Campionamento
statistico e stima dei parametri. Intervalli di confidenza.
 
Modalità di Esame:
Esame scritto e orale.
 
Orario di Ricevimento:
Mercoledi' 14-16 (ulteriori orari su appuntamento)
 
Testi Consigliati:
R. Scozzafava: "Incertezza e probabilita' ". (Zanichelli).
Calcolo Numerico
(Docente: Dott. IANNAZZO Bruno)
 
Periodo didattico: II semestre
 
Programma:
Da fare
 
Modalità di Esame:
Una prova scritta e una orale
 
Orario di Ricevimento:
Martedì 14.00:16:00
 
Testi Consigliati:
R. Bevilacqua, D. Bini, M. Capovani e O. Menchi, Metodi Numerici, Zanichelli
D. Bini, M. Capovani, O. Menchi, Metodi Numerici per l'Algebra Lineare, Zanichelli
Dispense fornite dal docente
Elementi di scienze atomiche e molecolari - Elementi di scienze atomiche e molecolari I modulo
(Docente: Prof. LAGANA' Antonio)
 
Periodo didattico: II semestre
 
Programma:
le interazioni tra atomi e molecole, la struttura dell'atomo, i legami, la struttura di alcune molecole prototipo e loro processi elementari, semplici algoritmi per i relativi calcoli
 
Modalità di Esame:
prova orale
 
Orario di Ricevimento:
mercoledi 15-18
 
Testi Consigliati:
note del docente
Elementi di scienze atomiche e molecolari - Elementi di scienze atomiche e molecolari II modulo
(Docente: Dott. PACIFICI Leonardo)
 
Periodo didattico: II semestre
 
Programma:
 
Modalità di Esame:
 
Orario di Ricevimento:
 
Testi Consigliati:
Fisica dei Dispositivi Elettronici - Fisica dei Dispositivi Elettronici
(Docente: Dott. SERVOLI Leonello)
 
Periodo didattico: II semestre
 
Programma:
 
Modalità di Esame:
 
Orario di Ricevimento:
 
Testi Consigliati:
Fisica Generale - Modulo 1
(Docente: Dott. SANTOCCHIA Attilio)
 
Periodo didattico: I semestre
 
Propedeuticità: Esami di Analisi
 
Programma:
MECCANICA
Misure. Moto rettilineo: velocità media, velocità istantanea, accelerazione. Esempi ed esercizi. Moto in due e tre dimensioni. Posizione, spostamento, velocità, accelerazione. Composizione e decomposizione dei moti. Moto dei proiettili. Moto circolare uniforme e moto armonico Forze e moto: Le forze. Forza di gravità, forza elastica, forze di attrito. Le forze ed il moto. Moti relativi: Moti relativi. Sistemi inerziali. Forze e moto: Cenni storici sulla meccanica newtoniana. Le forze della natura. Massa. Baricentro, moto del baricentro. Energia cinetica e lavoro: Energia cinetica. Lavoro: lavoro di una forza costante e di una forza variabile. Il teorema dell?energia cinetica per il moto di un corpo senza energia interna. Lavoro ed energia: Lavoro ed energia. Forze conservative e non conservative. Conservazione dell?energia: Energia interna ad un sistema. Il principio di conservazione dell?energia in generale. Cenni alla dinamica dei moti rotatori. Equilibrio.

MECCANICA DEI FLUIDI
I fluidi: Densità e pressione. Misura della pressione. Principio di Pascal. Principio di Archimede. Dinamica dei fluidi: Linee di flusso ed equazione di continuità. Equazione di Bernoulli ed applicazioni.

TERMOLOGIA E TERMIDINAMICA
Calorimetria: Temperatura e calore. Il primo principio della termodinamica. Trasmissione del calore. Equazione di stato dei gas perfetti. Temperatura assoluta e gas: Equazione di stato dei gas perfetti. Il modello molecolare dei gas perfetti. La temperatura assoluta. Cenno ai gas reali. Macchine termiche e frigorifere. Il secondo principio della termodinamica. Cenni al terzo principio della termodinamica. Propagazione del calore.
 
Modalità di Esame:
Prova scritta ed orale
 
Orario di Ricevimento:
Martedì 14.30-15.30
 
Testi Consigliati:
Fondamenti di Fisica - Halliday-Resnick-Walker
Fisica Generale - Modulo 2
(Docente: Dott. SANTOCCHIA Attilio)
 
Periodo didattico: I semestre
 
Propedeuticità: Esami di Analisi
 
Programma:
ELETTROSTATICA
Carica elettrica e campo elettrico: Carica elettrica, conservazione della carica. Legge di Coulomb. Campo elettrico. La carica dell?elettrone. Il concetto di campo. Legge di Gauss per il campo gravitazionale ed elettrostatico. Energia potenziale e potenziale elettrico. Capacità e condensatori: Capacità e condensatori. Condensatori piani. Calcolo della capacità. Condensatori in serie e parallelo. Energia immagazzinata nel campo elettrico. Dielettrici.

CORRENTI ELETTRICHE CONTINUE
Cariche in movimento, densità di corrente e corrente elettrica. Legge di Ohm. Potenze nei circuiti elettrici. Dissipazione della potenza. Resistenze in serie e parallelo. Esempi ed esercizi. Generatori di f.e.m. Resistenza interna. Generatori di tensione e di corrente. Circuiti in corrente continua. Principi di Kirchhoff. Carica e scarica di un condensatore. Circuiti RC in DC

CAMPI MAGNETICI STATICI
Il campo magnetico. Legge di Ampère. Solenoidi e toroidi Dipolo magnetico. Il teorema di Gauss per il campo magnetico. Equivalenza di una spira percorsa da corrente con un dipolo magnetico. Fenomeni magnetici e struttura della materia. Cenno al ferromagnetismo.

CAMPI ELETTRICI E MAGNETICI VARIABILI E INTRODUZIONE ALL?ELETTRODINAMICA
Legge di induzione di Faraday-Lenz. Esempi ed applicazioni. Considerazioni energetiche. Alternatori e motori. Induttori ed induttanza. Energia immagazzinata in un campo magnetico. Mutua induttanza, Campi magnetici indotti. Corrente di spostamento. Cenno alle equazioni di Maxwell. Propagazione dell?onda elettromagnetica: trattazione qualitativa. Velocità della luce. Trasporto di energia. Cenno ai fenomeni ondulatori: interferenze e diffrazione.

INTRODUZIONE ALL?OTTICA
Riflessione, rifrazione. Il prisma e la scomposizione della luce. Le fibre ottiche. Introduzione all?ottica geometrica. Immagini. Proprietà delle lenti.

CIRCUITI IN CORRENTE ALTERNATA
Oscillazioni LC. L?analogia tra oscillazioni in corrente alternata e gli oscillatori in meccanica. Corrente alternata. Ciruiti in corrente alternata.
 
Modalità di Esame:
Prova scritta ed orale
 
Orario di Ricevimento:
Martedì 14.30-15.30
 
Testi Consigliati:
Fondamenti di Fisica - Halliday-Resnick-Walker
Ingegneria del software - Ingegneria del software
(Docente: Prof. MILANI Alfredo)
 
Periodo didattico: II semestre
 
Programma:
Il software: processo e prodotto
-Modelli di ciclo di vita
-Object orientation
-Tecniche, modelli e linguaggi per l' analisi dei requisiti, il progetto, l'implementazione e la verifica del software
-La manutenzione del software
-Caso di studio: Universal Modeling Language
Metriche di prodotto e di processo
-Qualità del software
-Pianificazione e controllo del processo produttivo
-Function points di Albrecth
Tecniche Formali di Test e Verifica
-La fase di test: prodotto e manutenzione. Test sistematici e incrementali.
-Test black box
-Test white box
-Tecniche formali cenni
Tecnologie di supporto al riuso
-Reuse metrics
-Design Pattern
Tecnologie di sviluppo e integrazione
-Secure Coding
-Integrazione del software
 
Modalità di Esame:
Prova scritta
 
Orario di Ricevimento:
 
Testi Consigliati:
"Ingegneria del software. Fondamenti e principi" - Mandrioli Dino , Ghezzi Carlo , Jazayeri Mehdi
Editore : Pearson Education Italia

"Design Patterns",E. Gamma, R. Helm, R. Johnson, J. Vlissides. Addison-Wesley, 2002.
Laboratorio di Algoritmi
(Docente: Dott.ssa BICOCCHI Rosanna)
 
Periodo didattico: I semestre
 
Programma:
Obiettivi del corso:
Implementare algoritmi operanti su strutture dati elementari:
liste, pile, code, alberi, grafi.

Programma:
Tipi di dati astratti: specifica sintattica e semantica,
implementazione.
Rappresentazione di insiemi.
Rappresentazione di tipi di dati astratti (gioco, contenitore, ecc.)
Liste semplici: specifica sintattica e semantica, rappresentazione
sequenziale e collegata.
Algoritmi operanti su liste semplici.
Liste bidirezionali: rappresentazione collegata .
Algoritmi operanti su liste bidirezionali.
Liste circolari.
Liste ordinate.
Alberi radicati: specifica sintattica e semantica, possibili
rappresentazioni.
Alberi binari: rappresentazione sequenziale e collegata. Algoritmi
di visita. Algoritmi operanti su alberi binari.
Alberi binari di ricerca. Algoritmi operanti su alberi binari di
ricerca: ricerca di una chiave, inserimento di un nodo,
cancellazione di un nodo.
Grafi: specifica sintattica e semantica, possibili rappresentazioni.
Algoritmi di visita.
 
Modalità di Esame:
l`esame e` costituito da una prova scritta, che deve essere superata con voto >= 18, seguita da una prova orale.
 
Orario di Ricevimento:
martedi ore 11-13, giovedi 14-16
 
Testi Consigliati:
A. A. Bertossi: ?Algoritmi e strutture di dati?, UTET, 2000.
Laboratorio di Sistemi Operativi
(Docente: Dott. MELACCI Pietro Tito)
 
Periodo didattico: II semestre
 
Programma:

Programma: Il sistema operativo UNIX.
Organizzazione a livelli (HW, Kernel, Tools, Shell).
La portabilità` di UNIX.
La storia di UNIX.
Formato dei comandi.
Il manuale UNIX in linea.
Comandi interattivi e non interattivi.
Interfaccia utente.
I codici speciali (eof, esc, lnext, intr, quit, start, stop).
La procedura di bootstrap.
Il processo init.
I processi utente.
I daemon.
La gestione dei file.
Il file system, la struttura gerarchica.
Le directory standard di UNIX.
I tipi di file di UNIX (file ordinari, directory, file speciali, pipe, link
simbolici).
I pathname.
I nomi dei file e i metacaratteri.
I meccanismi di protezione dei file (i diritti di accesso, i diritti di
accesso sulle directory).
Maschera di creazione dei file.
Modifica dei diritti di accesso ai file (modo numerico, modo simbolico).
Home directory.
Operazioni sui file ordinari (cp, mv, rm, ln).
Hard link, link simbolici (symlink).
Verifica del contenuto dei file ordinari.
Reperire informazioni sui file.
File e directory significativi di UNIX.
I file speciali (major number, minor number).
Le espressioni regolari.
La gestione dei processi.
Verifica dell`evoluzione dei processi
(stati di avanzamento di un processo UNIX).
Manipolazione dell`evoluzione dei processi.
La gestione dei segnali.
La creazione di un processo e l`esecuzione di un programma
(la primitiva exec, la primitiva fork).
La SHELL UNIX.
Le shell di UNIX, la Bourne shell e la C shell.
Il meccanismo di esecuzione dei comandi:
i comandi built-in ed i comandi esterni (primitive fork ed exec),
meccanismo di esecuzione di un comando.
Multitasking:
comandi foreground, comandi background (metacarattere &),
meccanismo di esecuzione di un commando in background.
Redirezione:
redirezione dello standard output (metacaratteri > e >>),
redirezione dello standard input (metacarattere < ),
redirezione dello standard error (nella Bourne shell e nella C shell),
here documents ( metacarattere <<).
Composizione dei comandi:
esecuzione seriale (metacarattere ;),
il meccanismo di esecuzione seriale;
pipeling (metacarattere |),
il meccanismo di esecuzione di una pipeline;
esecuzione con subshell (metacaratteri ( e )),
il meccanismo di esecuzione con subshell.
Esecuzione condizionale dei comandi utilizzando && e | |
Ambiente shell:
il file .profile e le variabili di ambiente nella Bourne shell,
il file .login e le variabili di ambiente nella C shell.
Caratteristiche tipiche della C shell (la history, aliasing, il job control).
La gestione del login (il file /etc/passwd).
Manipolazione testi.
L`editor vi.
Command mode, text input mode.
Le modifiche con ex.
Pattern di ricerca.
Le espressioni regolari dell`editor.
Interazione con la Shell.
Personalizzazione di vi.
Gestori di testi.
Linguaggi e strumenti di supporto alla programmazione.
Compilatori ed interpreti (opzioni, il file oggetto).
I compilatori Fortran, Pascal, C.
Debugger.
Librerie.
Strumenti di gestione dei file.
Gestione avanzata dei file.
Comandi filtro (comandi dell`algebra relazionale)
Confrontare file.
Selezionare file.
Occupazione della memoria.
Struttura interna del file system UNIX.
La suddivisione del file system (bootstrap, superblock, i-list, area dati).
Blocco di bootstrap.
Il super-block, i-node, i-number, l`area dati, la i-list, i link.
Struttura di un i-node.
L`indirizzamento indiretto ai blocchi dati.
Interpretazione del pathname.
Lista dei blocchi liberi.
Link multipli allo stesso file.
I file system montati, chiamate al sistema mount/unmount.
Monitoraggio del sistema.
Il linguaggio della SHELL.
Gli shell script.
Variabili, passaggio di parametri, strutture di controllo, login script.
Meccanismi di esecuzione di shell script.
La variabile PATH.
Ambiente di valutazione (le variabili di ambiente, le variabili
predefinite).
Il metacarattere ` (back apostrophe).
La history.
Aliasing.
Funzioni.
Bourne shell:
elementi del linguaggio,
costrutti di controllo (for, case, while, if),
funzioni,
esempi di shell script.
C shell:
elementi del linguaggio,
caratteristiche tipiche della C-shell,
variabili numeriche (simbolo @, operatori),
input/output,
espressioni (operatori),
costrutti di controllo (foreach, switch, while, if, repeat, goto),
esempi di shell script.
Debugging di shell script.
Comunicazioni.
La comunicazione immediata di messaggi.
Il sistema di posta elettronica, la funzione mail, i programmi mailer.
Connessione remota (telnet), modo comandi.
Trasferimento file (ftp), comandi di ftp.
Chiamate di sistema UNIX.
Chiamate relative ai file.
Chiamate relative ai processi.
X Window system.
 
Modalità di Esame:
Presentazione di un progetto, prova scritta che deve essere superata con voto >= 18, prova orale.
 
Orario di Ricevimento:
lunedi ore 10-11,martedi ore 9-12,giovedi ore 16-18
 
Testi Consigliati:
A. Bonsignori, A. Fabrizio: ''UNIX'', Jackson libri, 1993.
G. Glass: ''UNIX for Programmers and Users. A Complete Guide'',
Prentice Hall International Editions, 1993.
Linguaggi formali e Compilatori
(Docente: Prof. CARPI Arturo)
 
Periodo didattico: II semestre
 
Programma:
Generalità sui linguaggi di programmazione e compilatori
Alfabeto, parole, linguaggi, grammatiche, operazioni tra linguaggi
Analisi lessicale: automi a stati finiti, modello deterministico e non
deterministico, linguaggi regolari e teorema di Kleene, automa minimo e teorema
di Myhill-Nerode, grammatiche lineari destre, lemma di iterazione, analizzatori
lessicali.
Analisi sintattica: grammatiche non contestuali, grammatiche ambigue e linguaggi
inerentemente ambigui, lemma di iterazione per linguaggi non contestuali, forme
normali di Chomsky e Greibach, automi a pila, riconoscimento per pila vuota e
stato finale, caratterizzazione dei linguaggi non contestuali mediante automi a
pila, algoritmi di parsing:
Cocke-Kasami-Younger, LL(1), LR(1)
La gerarchia di Chomsky: linguaggi contestuali e monotoni, linguaggi ricorsivi e
ricorsivamente enumerabili.
Analisi semantica: cenni
 
Modalità di Esame:
Esame: prova scritta e orale
 
Orario di Ricevimento:
Giovedì 17-19, Venerdì 11-13
 
Testi Consigliati:
A.V. Aho, R. Sethi, J.D. Ullman, Compilers. Principles, Techniques and Tools, Addison Wesley
Sistemi Operativi - Sistemi Operativi I
(Docente: Prof. FORMISANO Andrea)
 
Periodo didattico: II semestre
 
Programma:
Generalità sui sistemi operativi. Processi e thread. Scheduling della CPU. Sincronizzazione dei processi. Blocco critico. Gestione della memoria centrale. Memoria virtuale. File system. Memoria secondaria. Nozioni base sul sistema di I/O.
 
Modalità di Esame:
prova scritta e orale
 
Orario di Ricevimento:
Lunedì dalle 17:00, Martedì dalle 17:00, (o su appuntamento).
 
Testi Consigliati:
A.Silberschatz, P.Galvin, G.Gagne. Sistemi Operativi. Settima ed. Addison-Wesley, 2006.
P.Deitel, H.Deitel, D.Choffnes. Sistemi Operativi. Terza edizione, 2005.
G.Glass e K.Ables. Unix for Programmers and Users. Terza edizione, 2003.
K.A.Robbins, S.Robbins. Unix system programming. 2004.
W.Stallings. Operating Systems. Internals and design Principles. Quinta edizione (anche in italiano). 2005.
Materiale fornito dal docente.

RECAPITI DEI DOCENTI

Dott.ssa BICOCCHI Rosanna bicocchi@fisica.unipg.it 5047
Prof. CARPI Arturo carpi@dipmat.unipg.it 5014
Dott. CECCONI Giorgio giorgio.cecconi@unipg.it 3796
Prof.ssa COLETTI Giulianella coletti@dipmat.unipg.it 5019
Prof. FORMISANO Andrea formis@dipmat.unipg.it
Dott. GERVASI Osvaldo osvaldo@unipg.it 5048
Dott. IANNAZZO Bruno iannazzo@mail.dm.unipi.it
Prof. LAGANA' Antonio lag@unipg.it 5527-5622
Dott. MELACCI Pietro Tito melacci@unipg.it 5047
Prof. MILANI Alfredo milani@dipmat.unipg.it 5049
Dott.ssa PALLOTTELLI Simonetta simona@unipg.it 5044
Prof.ssa PINOTTI Maria Cristina pinotti@unipg.it 5055
Dott.ssa POGGIONI VALENTINA poggioni@dipmat.unipg.it 5050
Dott. SANTOCCHIA Attilio attilio.santocchia@pg.infn.it 2708
Prof. TARANTELLI Francesco franc@thch.unipg.it 5531
Dott. TASSO Sergio sergio@unipg.it 5048