UNIVERSITÀ
DEGLI STUDI
DI UDINE
Guida ai programmi della Facoltà di
SCIENZE MATEMATICHE FISICHE E NATURALI 07 08
WITH INFORMATION IN ENGLISH
SCIENZE MATEMATICHE
FISICHE E NATURALI
ordinamento degli studi
e programmi dei corsi della
Facoltà di Scienze Matematiche, Fisiche e
Naturali
anno accademico 2007•2008
a cura di
Michela Coffieri
coordinamento editoriale
Centro comunicazione e stampa
Forum, Editrice Universitaria Udinese
progetto di copertina
cdm/associati con Ekostudio
stampa
La Tipografica
Campoformido (Ud)
Agosto 2007
FORUM
Editrice Universitaria Udinese srl
via Palladio, 8 o 33100 Udine
0432 26001 vox e 0432 296756 fax
3
sommario
5
7
20
Parte generale e ordinamento degli studi
La Facoltà di Scienze Matematiche, Fisiche e Naturali
Elenco dei docenti della Facoltà
22
22
28
33
38
43
44
45
51
55
60
64
69
77
Ordinamento didattico
Laurea di primo livello in Informatica
Laurea di primo livello in Tecnologie Web e Multimediali
Laurea di primo livello in Matematica
Laurea di primo livello in Biotecnologie
Master di primo livello in Open Distance Learning
Master di primo livello in Sistemi Informativi Territoriali
Altri corsi di master di primo livello
Laurea specialistica in Informatica
Laurea specialistica in Tecnologie dell’Informazione
Laurea specialistica in Matematica
Laurea specialistica in Fisica Computazionale
Laurea specialistica in Statistica e Informatica per la Gestione delle Imprese
Calendario delle lezioni
ALSI - Associazione dei Laureati in Scienze dell’Informazione
79
Programmi dei corsi
279
281
General information and curricula
Faculty of Mathematical, Physical and Natural Sciences
285
285
285
287
286
287
287
287
287
288
288
289
289
Curricula
Three-Year Laurea Course in Computer Science
Three-Year Laurea Course in Web and Multimedia Technologies
Three-Year Laurea Course in Mathematics
Three-Year Laurea Course in Biotechnologies
First level Master in Open Distance Learning
First level Master in Geographical Information Systems (GIS)
Other first level Master Courses
Laurea Specialistica in Computer Science
Laurea Specialistica in Information Technology
Laurea Specialistica in Mathematics
Laurea Specialistica in Computational Physics
Laurea Specialistica in Statistic and Computer Science for Enterprise Management
291
Programmes
452
454
455
Pianta della città di Udine
Presidenze di Facoltà e segreterie studenti
Strutture, indirizzi e numeri di telefono
Questa pubblicazione è un documento interno
dell’Università degli Studi di Udine e non viene posta in commercio
parte generale e
ordinamento
degli studi
7
parte generale e ordinamento
LA FACOLTÀ DI SCIENZE
MATEMATICHE, FISICHE
E NATURALI
La sede
La sede della Facoltà è in via delle Scienze, 208 (Loc. Rizzi) Udine - Tel. 0432
558681-4-7 - Fax 0432 558682; il sito web
della Facoltà si trova al seguente indirizzo:
http://www.uniud.it/didattica/facoltà/scienze;
l’indirizzo e-mail è: presidenza.fama
@uniud.it
L’offerta didattica
A partire dall’a.a. 2000/01 l’Università di
Udine ha dato avvio alla riforma degli
ordinamenti degli studi, come stabilito
dalla normativa ministeriale vigente e in
particolare dal Regolamento sull’autonomia didattica universitaria, il D.M.
509/1999. Questo sistema prevede una
diversa articolazione dei titoli di studio: la
Laurea (triennale), con l’obiettivo di assicurare allo studente un’adeguata padronanza di metodi e contenuti generali,
nonché l’acquisizione di specifiche conoscenze professionali; la Laurea specialistica (con ulteriori due anni), con l’obiettivo di fornire allo studente una formazione di livello avanzato per l’esercizio di
attività di elevata qualificazione in ambiti
specifici. Questa riforma comporta quindi un adeguamento del sistema universitario italiano agli ordinamenti europei,
prevedendo un titolo sostanzialmente
equivalente al Bachelor anglosassone.
Sono stati quindi progressivamente disattivati i corsi di laurea in Scienze dell’Informazione, quinto corso di laurea di questo
tipo in Italia, con il quale la Facoltà di
Scienze M.F.N. è stata istituita presso
l’Università degli Studi di Udine nel 1978
(D.P.R. 298 dell’11/6/1978) - e che successivamente era stato sostituito dal corso
di laurea quinquennale in Informatica - il
corso di laurea quadriennale in Matematica e il corso di Diploma Universitario in
Informatica.
Nell’anno accademico 2007/08, presso la
Facoltà di Scienze M.F.N., sono attivati i
seguenti corsi:
Laurea di I livello in:
Informatica (classe 26)
Matematica (classe 32)
Tecnologie web e multimediali (classe 26)
Biotecnologie - interfacoltà - (classe 1)
Master di I Livello in:
Open Distance Learning
Sistemi informativi territoriali
Laurea Specialistica in:
Informatica (classe 23/S)
Fisica Computazionale (classe 20/S)
Matematica (classe 45/S)
Tecnologie dell’informazione (classe 23/S)
Statistica e informatica per la gestione delle
imprese - interfacoltà - (classe 91/S)
Nell’ambito delle aree scientifiche della
Facoltà di Scienze sono inoltre attualmente attivati due corsi di Dottorato di
Ricerca: il Dottorato di Ricerca in Informatica, della durata di 3 anni, e il Dottorato di
Ricerca in Matematica e Fisica, della durata di 3 anni, entrambi con sede presso il
Dipartimento di Matematica e Informatica.
In base al D.M. 270 del 22.10.2004, è in
corso un’ulteriore riorganizzazione degli
ordinamenti che avrà effetto dal prossimo
anno accademico.
L’ATTUALE ORDINAMENTO
DIDATTICO
Crediti formativi
I corsi sono strutturati sulla base di un
nuovo sistema di misura delle attività formative, costituito dai crediti formativi
8
universitari (CFU). Un CFU corrisponde
a 25 ore di lavoro dello studente, generalmente suddivise in 8 ore di lezione in
aula e 17 ore di studio individuale.
Corso di Laurea
Il diploma di laurea di I livello si consegue dopo aver svolto attività per 180 crediti.
La durata normale dei corsi di laurea è di
3 anni ma, a differenza di quanto stabiliva
il vecchio ordinamento, ciò non preclude
la possibilità di conseguire il titolo in un
periodo di studi inferiore.
Corsi di Laurea Specialistica
Per approfondire le competenze acquisite
nei corsi di laurea triennali ed avviarsi a
svolgere attività che vanno oltre alla semplice gestione dell’innovazione ed implichino la creazione stessa di innovazione e
l’assunzione di più rilevanti responsabilità, gli studenti potranno proseguire la
loro formazione nell’ambito delle lauree
specialistiche. Le lauree specialistiche
prevedono l’acquisizione di ulteriori 120
crediti, pari ad una durata normale di 2
anni.
Master
Per acquisire competenze di specifico
interesse per il mondo produttivo i laureati triennali potranno frequentare dei
master di I livello e i laureati specialistici
potranno frequentare i master di II livello. I master di I e II livello prevedono
l’acquisizione di almeno ulteriori 60 crediti in un anno.
Insegnamenti a scelta individuale
Come dal D.M. 509/1999, in ogni curriculum sono previsti crediti di attività formativa a scelta individuale in misura fissata. La Facoltà di Scienze lascia la più
ampia libertà allo studente nel definire
questa parte del suo curriculum, purché
siano crediti aggiuntivi (cioè corrispon-
parte generale e ordinamento
denti ad argomenti non acquisibili nel
curriculum normale). Ad esempio riconosce corsi sostenuti presso qualunque
altra Facoltà dell’Ateneo udinese. In particolare, per gli studenti che si trasferiscono da altre sedi universitarie e/o altri
corsi di laurea, possono venire riconosciuti in questa tipologia anche crediti già
maturati all’atto del trasferimento.
Attività formative d’Ateneo
Ogni studente dell’Università di Udine
dovrà conseguire almeno i seguenti crediti formativi:
prove di conoscenza di
- lingua inglese
6 CFU
- informatica di base
3 CFU (*)
frequenza ed esame ai seguenti corsi
- comunicazione
1 CFU
- cultura d’impresa
1 CFU
(*) Per gli studenti della Facoltà di Scienze non è
prevista l’attività di Ateneo in informatica di base.
I corrispondenti 3 CFU rientrano nei crediti dei
corsi di informatica del I anno.
CORSI DI LAUREA DI I LIVELLO
Requisiti per l’accesso
In base al D.M. 509/99 art. 6, l’ammissione ai corsi laurea di I livello è subordinata al possesso di un diploma di scuola
secondaria superiore di durata quinquennale o quadriennale o di altro titolo di studio conseguito all’estero, riconosciuto
idoneo.
La Facoltà può attribuire agli studenti in
possesso di un diploma di durata quadriennale obblighi formativi aggiuntivi.
Immatricolazioni
Le domande di immatricolazione ai corsi
di laurea di I livello si accolgono dal 13
luglio 2007 al 21 settembre 2007 presso
gli sportelli della Ripartizione Didattica
(Segreteria Studenti) della Facoltà di
parte generale e ordinamento
Scienze M.F.N., via delle Scienze 208.
Per gravi e giustificati motivi il Rettore
potrà accogliere domande di immatricolazione presentate oltre il 21 settembre
2007, ma in ogni caso non oltre il termine
perentorio del 31 dicembre 2007.
Le domande di partecipazione alla prova di
ammissione al Corso di Laurea interfacoltà
in Biotecnologie si accolgono dal 13 luglio
2007 al 6 settembre 2007 presso gli sportelli della Ripartizione Didattica (Segreteria
Studenti) della Facoltà di Medicina Veterinaria, via delle Scienze 208.
Abbreviazioni di corso, passaggi, trasferimenti ai corsi del nuovo ordinamento
Coloro i quali sono già in possesso di una
laurea o di un diploma universitario o gli
studenti già iscritti a corsi di studi
dell’Università di Udine o di altri Atenei
possono presentare rispettivamente
istanza di immatricolazione con abbreviazione di corso, passaggio o trasferimento ai corsi del nuovo ordinamento
didattico.
Il Senato Accademico dell’Università di
Udine ha deliberato il seguente criterio
per la determinazione dell’anno di corso
cui iscrivere lo studente in base al riconoscimento di parte o tutta la sua carriera:
- iscrizione al I anno se i crediti riconosciuti sono inferiori a 40;
- iscrizione al II anno se i crediti riconosciuti sono compresi tra 40 e 100;
- iscrizione al III anno se i crediti riconosciuti sono superiori a 100.
Tale criterio costituisce un principio
generale ancorché indicativo in quanto le
competenti strutture didattiche potranno
adottare, con delibere motivate, soluzioni
diverse.
Preparazione
Iscritti al Corso di Laurea in Informatica e
al Corso di Laurea in Tecnologie web e multimediali
Per consentire a tutti gli studenti iscritti
9
al I anno dei corsi di laurea in Informatica e in Tecnologie web e multimediali di
acquisire un’adeguata preparazione per
frequentare con profitto i corsi (in ottemperanza a quanto disposto dall’art. 6 del
D.M. 509/99 sull’autonomia didattica e
recepito dai regolamenti didattici dei suddetti corsi di studio), la Facoltà organizza
un corso introduttivo, che si terrà dal 3 al
14 settembre 2007, tutti i giorni (da lunedì
a venerdì) dalle 9.00 alle 13.00, presso
l’aula H della sede dei Rizzi - Via delle
Scienze 208 - Udine, tranne il 10 settembre, quando il corso si svolgerà dalle 14.00
alle 18.00 in Aula 51, sempre della sede dei
Rizzi, e terminerà con un test che si terrà
il 19 settembre 2007, alle ore 9.30, presso
le aule H, I e 51 della sede dei Rizzi.
Gli studenti di Informatica che, in base al
test, risulteranno in difetto dei requisiti
necessari all’ammissione, si vedranno
assegnare 3 debiti formativi da colmare
seguendo un corso di recupero che verrà
precisato in seguito.
Gli studenti di Tecnologie web e multimediali che, in base al test, risulteranno in
difetto dei requisiti necessari all’ammissione, si vedranno assegnare 3 debiti formativi corrispondenti alla prima parte del
corso di Matematica di Base. Quelli che,
in base al test, risulteranno invece in possesso dei requisiti necessari all’ammissione, dovranno seguire soltanto la seconda parte del corso di Matematica di Base.
Chi non sosterrà il test si vedrà automaticamente attribuire i 3 debiti formativi.
Iscritti al Corso di Laurea in Matematica
L’accertamento delle conoscenze richieste agli iscritti di Matematica, in ottemperanza a quanto disposto dall’art. 6 del
D.M. 509/99 sull’autonomia didattica e
recepito dai regolamenti didattici dei suddetti corsi di studio, per gli studenti iscritti al I anno, potrà essere fatto dagli studenti mediante un’autovalutazione della
propria preparazione. A tal fine è stato
10
elaborato un questionario disponibile
sulla pagina web del corso di laurea in
Matematica, classe 32, alla voce ‘Informazioni per le matricole a.a. 2007/08’. Gli
studenti che, in seguito all’analisi del
questionario, trovassero la loro preparazione adeguata, firmeranno un’autodichiarazione in cui affermeranno di non
aver debiti formativi. Coloro che, invece,
ritenessero di non essere sufficientemente preparati, sono invitati a seguire un
corso introduttivo che si terrà dal 10 al 21
settembre 2007, tutti i giorni (da lunedì a
venerdì) dalle 9.00 alle 12.00 presso l’aula
51 della sede dei Rizzi, tranne il 19 settembre, quando il corso si svolgerà dalle
14.00 alle 17.00, sempre in aula 51.
Preiscritti al Corso di Laurea in Biotecnologie
Dal momento che nel corso di Matematica non sarà possibile riproporre in modo
approfondito gli argomenti di matematica tipici dei programmi delle scuole
medie superiori (equazioni e disequazioni, proprietà delle operazioni e delle
potenze, elementi di geometria analitica e
di trigonometria), gli studenti che non si
sentissero sufficientemente preparati su
tali argomenti sono vivamente invitati a
seguire le lezioni del corso introduttivo
che si terrà dal 10 al 21 settembre 2007, tutti
i giorni (da lunedì a venerdì) dalle 9.00
alle 12.00 presso l’aula 51 della sede dei
Rizzi, tranne il 19 settembre quando il
corso si svolgerà dalle 14.00 alle 17.00,
sempre in aula 51.
CORSI DI LAUREA SPECIALISTICA
Requisiti per l’accesso
Per essere ammessi al Corso di Laurea
Specialistica in Fisica Computazionale
occorre essere in possesso di un diploma
di laurea o di altro titolo di studio conseguito all’estero, riconosciuto idoneo
secondo la normativa vigente.
parte generale e ordinamento
Il possesso del titolo di laurea in Fisica del
vecchio ordinamento conseguito presso
qualunque Università o il possesso del
titolo di laurea in Fisica, classe 25 (ogni
curriculum), conseguito presso l’Università degli Studi di Trieste o il possesso del
titolo di laurea in Matematica, classe 32,
conseguito presso l’Università degli Studi
di Udine con un piano di studio che comprenda almeno 24 crediti di Fisica, non
richiedono alcuna condizione ulteriore in
termini di requisiti curricolari e di preparazione personale.
L’ammissione al Corso di Laurea specialistica per laureati in possesso di un titolo
di studio diverso da quelli sopra indicati è
subordinata al riconoscimento dei crediti
utili ai fini del conseguimento della laurea specialistica. L’ammissione viene
concessa se e solo se i crediti utili sono
almeno 120.
Qualora i crediti riconosciuti siano meno
di 180 vengono indicati specifici obblighi
formativi (debiti) da soddisfare nel I anno
di corso.
Per essere ammessi al Corso di Laurea
Specialistica in Informatica occorre essere
in possesso di un diploma di laurea o di
altro titolo di studio conseguito all’estero,
riconosciuto idoneo secondo la normativa vigente.
L’ammissione al Corso di Laurea specialistica è subordinata al riconoscimento dei
crediti utili ai fini del conseguimento
della laurea specialistica. L’ammissione
viene concessa se e solo se i crediti utili
sono almeno 120.
Il possesso del titolo di laurea in Informatica o Scienze dell’Informazione del vecchio ordinamento, conseguito presso
qualunque Università o il possesso del
titolo di laurea in Informatica, classe 26,
curriculum ‘Percorso base per le lauree
specialistiche’, conseguito presso l’Università degli Studi di Udine, non richiede
alcuna condizione ulteriore in termini di
parte generale e ordinamento
requisiti curricolari e di preparazione personale. Coloro che hanno conseguito la laurea in Informatica, classe 26, presso l’Università di Udine seguendo un curriculum
diverso da quello sopra indicato possono
comunque aver riconosciuti i 180 crediti
già conseguiti, sulla base del curriculum
che scelgono alla laurea specialistica.
Qualora i crediti riconosciuti siano meno
di 180 vengono indicati specifici obblighi
formativi (debiti) da soddisfare nel I anno
di corso.
Per essere ammessi al Corso di Laurea
Specialistica in Tecnologie dell’Informazione occorre essere in possesso di un diploma di laurea o di altro titolo di studio conseguito all’estero, riconosciuto idoneo
secondo la normativa vigente.
L’ammissione al Corso di Laurea specialistica è subordinata al riconoscimento dei
crediti utili ai fini del conseguimento
della laurea specialistica. L’ammissione
viene concessa se e solo se i crediti utili
sono almeno 120.
Il possesso del titolo di laurea in Informatica o Scienze dell’Informazione del vecchio ordinamento, conseguito presso
qualunque Università o il possesso del
titolo di laurea in TWM, classe 26, conseguito presso l’Università degli Studi di
Udine, non richiede alcuna condizione
ulteriore in termini di requisiti curricolari e di preparazione personale.
Qualora i crediti riconosciuti siano meno
di 180 vengono indicati specifici obblighi
formativi (debiti) da soddisfare nel I anno
di corso.
Per essere ammessi al Corso di Laurea
Specialistica in Matematica occorre essere in possesso di un diploma di laurea o di
altro titolo di studio conseguito all’estero,
riconosciuto idoneo secondo la normativa vigente.
L’ammissione al Corso di Laurea specialistica è subordinata al riconoscimento dei
11
crediti utili ai fini del conseguimento
della laurea specialistica. L’ammissione
viene concessa se e solo se i crediti utili
sono almeno 120.
Il possesso del titolo di laurea in Matematica del vecchio ordinamento conseguito
presso qualunque Università o del titolo
di laurea in Matematica, classe 32, conseguito presso l’Università di Udine, non
richiede alcuna condizione ulteriore in
termini di requisiti curricolari e di preparazione personale. I crediti acquisiti
durante la laurea triennale sono tutti riconosciuti a seconda del curriculum scelto.
Qualora i crediti riconosciuti siano meno
di 180 vengono indicati specifici obblighi
formativi (debiti) da soddisfare nel I anno
di corso.
Per essere ammessi al Corso di Laurea
Specialistica interfacoltà in Statistica e
Informatica per la Gestione delle Imprese
occorre essere in possesso di un diploma
di laurea o di altro titolo di studio conseguito all’estero, riconosciuto idoneo
secondo la normativa vigente.
L’ammissione al Corso di Laurea specialistica è subordinata al riconoscimento dei
crediti utili ai fini del conseguimento
della laurea specialistica. L’ammissione
viene concessa se e solo se i crediti utili
sono almeno 120.
Il possesso del titolo di laurea triennale in
Statistica e Informatica per la Gestione
delle Imprese, classe 37, conseguito presso la Facoltà di Economia dell’Università
degli Studi di Udine, non richiede alcuna
condizione ulteriore in termini di requisiti curricolari e di preparazione personale.
Qualora i crediti riconosciuti siano meno
di 180 vengono indicati specifici obblighi
formativi (debiti) da soddisfare nel I anno
di corso.
Immatricolazioni
Le domande di immatricolazione ai corsi
di laurea specialistica si accolgono dal 13
12
parte generale e ordinamento
luglio 2007 al 5 novembre 2007 presso
gli sportelli della Ripartizione Didattica
(Segreteria Studenti) della Facoltà di
Scienze M.F.N., via delle Scienze 208. È
possibile presentare oltre il termine del 6
novembre l’immatricolazione in ritardo
per giustificati motivi, ma in ogni caso
non oltre il termine perentorio del 15 aprile 2008. In particolare, si ritiene giustificata la domanda di immatricolazione presentata dagli studenti che hanno conseguito il titolo di laurea (di I livello o vecchio ordinamento) entro tale data.
Iscrizioni ad anni successivi al primo
L’iscrizione ad anni successivi al primo
per tutti i corsi di laurea avviene tramite
pagamento del bollettino delle tasse universitarie che viene recapitato per posta.
STRUTTURE COLLEGATE
ALLA FACOLTÀ
Dipartimenti
Tutti i docenti e i ricercatori universitari
afferiscono a strutture universitarie, dette
Dipartimenti, a cui è affidata l’organizzazione della ricerca scientifica. Presso i
Dipartimenti esistono laboratori e altre
strutture per la didattica avanzata. Attualmente i docenti della Facoltà di Scienze
afferiscono ai seguenti dipartimenti:
Dipartimento di Matematica e Informatica
via delle Scienze, 208 (Loc. Rizzi)
33100 Udine
Tel. 0432 558400
Fax: 0432 558499
http://www.uniud.it/ricerca/strutture/di
partimenti_scientifica/dimi
Dipartimento di Fisica
via delle Scienze, 208 (loc. Rizzi)
33100 Udine
Tel. 0432 558210
Fax: 0432 558222
http://www.uniud.it/ricerca/strutture/di
partimenti_scientifica/difa
Dipartimento di Scienze Statistiche
via Treppo, 18
33100 Udine
Tel. 0432 275570
Fax: 0432 503240
http://www.uniud.it/ricerca/strutture/di
partimenti_economica/diss
Laboratori
La Facoltà di Scienze M.F.N. dispone di due
laboratori di informatica.
Il Laboratorio 1 è attrezzato con 50 postazioni di lavoro, basate sull’architettura
thin-client/server che rappresenta una
moderna evoluzione degli ambienti di
rete, perché da un lato consente un accesso universale alle applicazioni in ambiente Unix e Windows, indipendentemente
dall’hardware del client, e dall’altro
garantisce una maggiore gestibilità,
espandibilità e sicurezza, realizzando
l’obiettivo della riduzione del TCO (Total
Cost of Ownership), mediante lo spostamento della parte applicativa dei programmi presso i server (Application Server).
Il Laboratorio 2 dispone di 40 stazioni di
lavoro in ambiente Linux e Windows
XPx64, integrate in una infrastruttura di
rete a dominio. La dotazione software dei
laboratori comprende i più diffusi strumenti di ‘produttività individuale’, numerosi applicativi per risolvere problemi
specifici, i principali linguaggi di programmazione e alcuni dei più importanti
ambienti di sviluppo per le architetture
disponibili.
Tutte le postazioni dispongono di una
connessione Fast Ethernet oppure Gigabit Ethernet alla rete locale LAN e sono
collegate a Internet. I servizi di rete vengono forniti da una batteria di server
Linux, Windows, Sun Solaris e da un
parte generale e ordinamento
NAS (Network Attached Storage), tutti
connessi alla dorsale Gigabit Ethernet
della LAN. I laboratori mettono a disposizione anche una decina di postazioni di
lavoro riservate alla connessione dei computer portatili personali degli studenti,
con un collegamento a Internet attraverso
una sottorete dedicata e protetta.
Tel. 0432 558689
Il Dipartimento di Matematica e Informatica dispone di laboratori Lab 1 e 2 per la
ricerca, lo svolgimento di tesi sperimentali e la didattica di tecnologie specialistiche. Questi laboratori sono dedicati alle
seguenti aree di ricerca: Basi di dati e
sistemi multimediali, Bioinformatica,
Verifica e calcolo parallelo, Dinamica dei
sistemi, Elaborazione dei dati, Elaborazione di immagini, Informatica industriale, Informatica medica e telemedicina, Intelligenza artificiale, Interazione
uomo-macchina, Matematica computazionale, Programmazione logica e calcolo
simbolico, Ricerca operativa, Robotica,
Verifica programmi, Visione artificiale e
sistemi real-time.
Presso il Dipartimento di Fisica si trovano
i seguenti laboratori: Rivelatori a semiconduttore, Sviluppo rilevatori ed elettronica, Analisi dati per la micrometereologia, Acquisizione dati, Calcolo parallelo.
Biblioteche
Gli studenti dei vari corsi di laurea e
diploma della Facoltà di Scienze M.F.N.
possono trovare libri di testo, opere e riviste scientifiche di loro interesse presso le
seguenti strutture:
Centro Interdipartimentale dei Servizi
Bibliotecari di Scienze (Via delle Scienze,
208 - Loc. Rizzi, Udine - Tel. 0432
558561), orario: dal lunedì al giovedì 9.00
- 18.45; venerdì 9.00 - 16.00; informazioni: http://cisbscienze.bib.uniud.it/
Centro Interdipartimentale dei Servizi
Bibliotecari di Economia (Via Tomadini,
30/a - Udine - Tel. 0432 249600); informazioni: http://ecolex.bib.uniud.it/
13
Il Centro Linguistico Audiovisivi (CLAV)
Via Zanon, 6 - Udine - Tel. 0432 275570,
organizza corsi di lingue straniere, a tutti
i livelli, tenuti da lettori di madrelingua,
test linguistici e prove di accertamento
della conoscenza della lingua inglese.
Organizza inoltre corsi di lingua italiana
per stranieri e mette a disposizione degli
studenti un servizio di autoapprendimento linguistico tramite un laboratorio linguistico e l’aula multimediale. Orario: da
lunedì a venerdì 9.00 - 13.00 / 14.30 18.00. Informazioni: [email protected]
http://www.uniud.it/didattica/servizi_st
udenti/servizi_linguistici/laboratori_aut
oapprendimento_linguistico
Il Centro Servizi Informatici e Telematici
(CSIT)
Via delle Scienze, 208 - Loc. Rizzi, Udine
- Tel. 0432 558900 - Fax: 0432 558911,
fornisce supporto all’attività didattica
avanzata ed all’attività scientifica. Gestisce la rete di Ateneo distribuita sulle
numerose sedi cittadine ed i collegamenti di questa con la rete GARR e con la rete
mondiale Internet. Fornisce agli utenti
l’accesso agli elaboratori centrali e alla
rete, anche all’esterno. Gli elaboratori del
centro, oltre a fornire servizi di calcolo
mediante librerie di programmi e compilatori per diversi linguaggi di programmazione, fungono da server per posta
elettronica e sistemi informativi distribuiti.
http://www.uniud.it/didattica/servizi_st
udenti/servizi_informatici_e_telematici
Servizi informatici
Per tutti gli studenti vengono resi disponibili i seguenti servizi informatici:
- il servizio SPES di posta elettronica che
consente agli studenti di comunicare tra
loro, con i docenti e con le strutture tecniche e amministrative;
- il servizio SINDY che permette, tra
l’altro, di iscriversi agli esami e di acqui-
14
sirne tutte le informazioni relative (date,
commissioni, voti, ecc.), nonché di reperire l’orario di ricevimento dei docenti,
visualizzare ed accettare i voti ricevuti
negli esami, ecc;
- il servizio ALEPH consente di consultare i cataloghi di tutte le biblioteche
dell’Ateneo e di prenotare elettronicamente i libri;
- il Portale Tirocini che permette di consultare il regolamento dei tirocini, il
workflow delle attività necessarie per attivare, svolgere e terminare un tirocinio e
accedere alla relativa modulistica.
Consultando il nuovo sito dell’Università
degli Studi di Udine (http://www.
uniud.it), costantemente aggiornato, gli
studenti possono accedere in tempo reale
ed autonomamente ad ogni tipo di informazione. In particolare, all’indirizzo
http://www.uniud.it/didattica/servizi_st
udenti/servizi_on_line/ si possono trovare informazioni su:
- Strutture didattiche (Aule didattiche, Aule
studio, Laboratori, Aule informatiche)
- Servizi linguistici (Laboratori d’autoapprendimento linguistico, Corsi di lingue, ecc.)
- Servizi audiovisivi e multimediali
- Servizi informatici e telematici (Alfabetizzazione informatica, Wi-Fi, Helpdesk,
Patente europea per il computer ECDL,
ecc.)
- Relazioni con il pubblico (URP)
- Orientamento e tutorato (CORT)
- Rapporti internazionali (CRIN)
- Segreterie didattiche
- Segreterie di facoltà
- Servizi per diversamente abili
- Mobilità internazionale studentesca
(programma Tempus, Leonardo Da
Vinci, Socrates/Erasmus, ecc.)
- Consultazione testi
- Tirocini e stage (Portale tirocini, Ufficio
tirocini)
- Borse e premi (Bandi per borse di studio, premi di laurea, ecc.)
- Tasse e Contributi Studenti (Borse di
studio ERDISU, Prestiti d’onore, Paga-
parte generale e ordinamento
mento tasse, Riduzioni ed esoneri tasse)
- Informazioni per studenti provenienti
dall’estero.
INFORMAZIONI DALLA FACOLTÀ:
COSA FARE E DOVE
La Ripartizione didattica (Segreteria studenti) delle Facoltà Scientifiche (Agraria,
Ingegneria, Scienze M.F.N. e Medicina
Veterinaria)
Via delle Scienze, 208 - Loc. Rizzi, Udine
- Tel. 0432 558380-9.
Orario di ricevimento: da lunedì a venerdì
dalle 9.30 alle 11.30, giovedì anche dalle
14.00 alle 16.00 a partire dal 6/9.
La Ripartizione didattica (Segreteria Studenti) delle Facoltà Scientifiche, situata
presso la sede dei Rizzi, ha il compito di
curare i rapporti amministrativi generali
fra gli studenti e l’Università. È a questo
Ufficio che ci si deve rivolgere (e non alla
Segreteria della Presidenza della Facoltà
di Scienze M.F.N.) per informazioni su
iscrizioni, tasse, trasferimenti da altre
sedi o da altri corsi di laurea, piani di studio, e per le procedure burocratiche relative. Presso la Ripartizione Didattica si
trova pure in distribuzione tutto il materiale informativo relativo alle Facoltà.
La Ripartizione didattica (Segreteria studenti) ‘Segreteria Affari Generali’ e
‘Esami di Stato - Diritto allo studio’
Via Mantica, 3 Udine - Tel. 0432 55668090-92
Orario di ricevimento: da lunedì a venerdì
dalle 9.30 alle 11.30, giovedì anche dalle
14.00 alle 16.00 a partire dal 6/9.
Questo ufficio cura i rapporti tra gli studenti universitari e le istituzioni esterne
all’Università. Ad esso ci si può rivolgere
per ricevere tutte le informazioni riguardo agli esami di Stato, all’esenzione tasse
e alle borse di studio.
http://www.uniud.it/didattica/servizi_st
udenti/tasse_contributi
parte generale e ordinamento
La Segreteria della Presidenza della
Facoltà
Via delle Scienze, 208 - Loc. Rizzi, Udine
- Tel. 0432 558684-7-1 - Fax 0432 558682
Orario di ricevimento studenti : lunedì,
mercoledì e venerdì dalle 12.00 alle 13.00
o per appuntamento.
La Segreteria della Presidenza cura
l’organizzazione dell’attività didattica
della Facoltà, il coordinamento con la
Ripartizione didattica e con gli altri uffici
dell’Ateneo e la divulgazione, tramite
bacheche e con puntuali aggiornamenti
del sito web della Facoltà, di qualsiasi
informazione utile agli studenti. È assai
raro che uno studente debba parlare di
persona con gli impiegati della segreteria,
in quanto la maggioranza delle pratiche
burocratiche che lo riguardano viene
espletata tramite la Segreteria studenti.
Inoltre cinque bacheche, organizzate per
argomenti, sono esposte nei pressi della
Segreteria di Presidenza:
1 - Albo Ufficiale della Facoltà per notizie
riguardanti concorsi, borse di studio, possibilità di stage, convenzioni con aziende
per tirocini, congressi, ecc. che possono
interessare gli studenti della Facoltà;
2 - Docenti: qui, oltre a notizie di interesse
dei docenti, viene esposta, anno per anno,
la composizione delle commissioni
d’esame dei vari corsi;
3 - Lauree: regolamenti di laurea e diploma universitario, il calendario annuale
delle lauree e le relative scadenze, possibilità di tesi e, in concomitanza delle varie
sessioni di laurea, elenchi dei laureandi
con relativi relatori e controrelatori, le
commissioni di laurea e gli orari;
4 - Esami: calendario esami e risultati
esami (questi ultimi esposti a cura dei
docenti);
5 - Corsi: tutte le notizie riguardanti il
calendario accademico, l’orario delle
lezioni, con eventuali sospensioni, spostamenti, ecc.; l’elenco degli insegnamenti attivati con i nominativi dei docenti, l’elenco dei docenti della Facoltà con i
15
loro numeri telefonici interni, gli avvisi
relativi a presentazione di corsi, seminari,
ecc.
Altre tre bacheche si trovano in prossimità delle aule ‘piccole’ (dalla 41 alla 49)
destinate alla Facoltà:
6 - Piani di Studio/ Tutorato: istruzioni e
comunicazioni riguardanti i piani di studio dei vari corsi, tabelle relative ai riconoscimenti in seguito a passaggi di corso
e trasferimenti, le modalità di attuazione
del tutorato per l’anno in corso, eventuali
comunicazioni del Docente-Tutore ai
propri ‘tutorati’, iniziative, cicli di lezioni,
seminari, ecc.;
7 - Bacheca per comunicazioni da e per i
rappresentanti degli studenti nel Consiglio
di Facoltà e nei Consigli di Corso di Laurea;
8 - Bacheca a disposizione degli studenti.
Si consiglia di leggere attentamente gli
avvisi della Facoltà. In ogni caso si prega
di non rivolgersi in Segreteria fuori
dell’orario di ricevimento esposto. Per
particolari esigenze è necessario fissare
un appuntamento. Il Preside riceve solo
per appuntamento.
Programmi di mobilità studenti in Europa
Socrates-Erasmus
Socrates è il programma dell’Unione
Europea che promuove la mobilità degli
studenti universitari all’estero, consentendo loro di seguire un periodo di studio
riconosciuto in un’Università dell’Unione Europea, ma anche in Paesi dell’Europa Orientale, quali Ungheria, Romania,
Polonia, Repubblica Ceca e Slovacchia,
con cui l’Università di Udine ha stipulato
accordi di collaborazione. A sostegno
degli studenti che intendono partecipare
ad uno scambio interuniversitario,
l’Unione Europea mette a disposizione
borse di mobilità, per contribuire alla
copertura dei costi aggiuntivi connessi
allo studio all’estero.
La Facoltà di Scienze M.F.N. è attualmente
convenzionata con le seguenti Università:
16
Technische Universitaet - Graz (A), coordinatore Prof. Pietro Corvaja
Facultés Universitaires Notre-Dame de la
Paix - Namur (B), coordinatore Prof. Luca
Chittaro
Katholieke Universiteit - Leuven (B),
coordinatore Prof. Dario Fasino
Universitaet Giessen (D) (solo per studenti dei corsi di laurea in Matematica),
coordinatore Dott. Mario Mainardis
University of Dortmund (D), coordinatore Dott. Mario Mainardis
Universidad de Alicante (E), coordinatore
Prof. Furio Ercolessi
Universidad de Castilla la Mancha (E),
coordinatore Prof. Marco Comini
Universidad de Murcia (E), coordinatore
Prof. Angelo Montanari
Universidad Politecnica de Valencia (E),
coordinatore Prof. Marco Comini
Ecole des Mines de Nancy (F), coordinatore Prof. Marino Miculan
Université Pierre et Marie Curie - Paris
VI (F), coordinatore Prof. Alessandro De
Angelis
NTNU Norwegian University of Science
and Technology - Trondheim (N), coordinatore Prof. Rossana Vermiglio
Instituto Superior Tecnico Lisboa (P),
coordinatore Prof. Alessandro De Angelis
Akademia Gòrniczo-Hutnicza - Krakòw
(PL), coordinatore Prof. Maria Staniszkis
Lunds Universitet (S), coordinatore Prof.
Alessandro De Angelis
University of Ljubljana (solo per studenti
dei corsi di laurea in Matematica) (SLO),
coordinatore Prof. Dikran Dikranjan
Istanbul Bilgi University (TR), coordinatore Prof. Vito Roberto
University of Leeds (UK) (solo per studenti dei corsi di laurea di indirizzo informatico), coordinatore Prof. Giovanna
D’Agostino.
I bandi di mobilità Socrates per l’Università di Udine vengono pubblicati annualmente, generalmente nel periodo marzoaprile.
La Facoltà reputa che un periodo di studi
parte generale e ordinamento
all’estero sia particolarmente significativo
nella formazione di uno studente e raccomanda pertanto un’ampia partecipazione a
questo programma.
Per informazioni rivolgersi allo Sportello
10 del CRIN, Via Mantica 5, oppure consultare il sito www.uniud.it/didattica/servizi_studenti/programma_socrates
Leonardo
Il Programma Leonardo promuove e
finanzia periodi di training professionale
per laureati e laureandi da svolgere presso le Piccole e Medie Imprese in un paese
europeo partner. L’Ateneo mantiene
regolarmente aggiornate le relative informazioni alla pagina http://www.uniud.it/
didattica/servizi_studenti/mobilita/programma_leonardo
Tirocini presso enti e aziende per laureandi
I regolamenti didattici dei corsi di laurea
in Informatica e in Tecnologie web e multimediali prevedono un periodo di tirocinio da effettuarsi presso aziende, università o enti di ricerca, sotto la supervisione
di un tutor aziendale e di un tutor accademico, nell’ambito di opportune convenzioni stipulate tra l’Università e l’azienda/ente. Attualmente sono attive oltre
280 convenzioni con aziende ed enti di
varie dimensioni e tipologie di attività,
dislocati non solo in Friuli-Venezia Giulia, ma anche in altre regioni d’Italia e
all’estero.
L’elenco delle aziende convenzionate, il
regolamento per i tirocini formativi (con
la descrizione delle procedure da seguire
per attivare, svolgere e terminare un tirocinio) e tutta la modulistica necessaria
sono disponibili sul Portale Tirocini
dell’Università di Udine: http://tirocini.
uniud.it. Inoltre, all’interno del Portale
Tirocini, ciascuno studente può utilizzare
il suo usuale account del sistema SINDY
per accedere all’Area Riservata, dove è
possibile:
parte generale e ordinamento
- consultare i dati sulla propria carriera
universitaria (esami sostenuti, media,
crediti acquisiti, ecc.);
- compilare una scheda descrivendo in
testo libero le proprie capacità e competenze.
Sulla base di queste informazioni il sistema sarà in grado di identificare e proporre allo studente i progetti di tirocinio a lui
più adatti.
Ulteriori informazioni in merito si possono richiedere all’Ufficio Tirocini e Job Placement dell’Università.
Tirocinio post-laurea e post-diploma
Nell’ambito di una convenzione quadro
stipulata tra la Facoltà e l’Associazione
degli Industriali della Provincia di Udine
è previsto, tra l’altro, lo svolgimento di
tirocini pratici di esperienza ed orientamento destinati ai neolaureati ed ai neodiplomati di questa Facoltà, ai fini di agevolare le loro scelte professionali mediante la conoscenza diretta del mondo del
lavoro e delle realtà produttive locali.
Career Day
Ogni anno la Facoltà organizza il ‘Career
Day’, un’iniziativa dedicata alla figura del
laureato in Informatica e Matematica, per
discutere le prospettive professionali e
occupazionali. All’incontro, aperto a tutti
gli studenti e i docenti della Facoltà, intervengono esponenti delle organizzazioni
rappresentative a livello locale del mondo
della produzione, dei servizi e delle professioni, per presentare e discutere le
opportunità di inserimento nel mondo
del lavoro.
Tutorato
Con questo termine si indicano tutte
quelle attività, atte a favorire un miglior
inserimento dello studente nella vita
d’Ateneo, predisposte dalla Facoltà,
d’intesa con il Centro Orientamento e
Tutorato (CORT) in accordo con quanto
disposto dalla Commissione Interna per
17
l’Orientamento e il Tutorato (CITO) e
dalla Commissione d’Ateneo per l’Orientamento e il Tutorato (CATO).
Se necessario vengono convocate assemblee docenti-studenti o ‘studenti anziani’studenti, per discutere e risolvere particolari problemi che possono essere comuni
ad alcuni gruppi di studenti: ad esempio
in relazione a passaggi da un corso
all’altro, a corsi non più attivati, al cambio
di indirizzo o orientamento, ecc.
Per questioni ‘tipiche’, ad esempio per i
piani di studio, i trasferimenti da un’altra
Facoltà, i passaggi di corso di laurea, gli
studenti possono rivolgersi alle rispettive
commissioni.
La Facoltà ha attivato un servizio di ‘Tutorato individuale’: gli studenti che lo desiderino possono scegliere, tra tutti i docenti della Facoltà, un tutore, previa verifica
della sua disponibilità. Il compito del
Tutore è quello di fornire allo studente un
supporto sul piano didattico e, nei limiti
del possibile, personale. Il tutore aiuta
infatti lo studente dei primi anni ad individuare un metodo idoneo per affrontare
lo studio e gli esami, considerando la
profonda differenza fra la preparazione
richiesta dall’Università rispetto a quella
della scuola secondaria. Per ciò che non è
di sua pertinenza il tutore indicherà allo
studente, caso per caso, quali sono gli
organi o le persone che possono rispondere alle sue domande.
I docenti e i ricercatori della Facoltà informano, tramite le bacheche di Facoltà, di
Dipartimento, dei Laboratori e mediante
le proprie pagine web, sui possibili argomenti di tesi. Su richiesta dei rappresentanti degli studenti nel Consiglio di
Facoltà o di Corso di Laurea, possono
essere organizzati degli incontri docentistudenti per gruppi di discipline affini
con delle brevi presentazioni degli argomenti elencati.
Tutte le notizie dettagliate relative al
Tutorato sono esposte nelle apposite
bacheche della Facoltà.
18
parte generale e ordinamento
L’ORGANIZZAZIONE DELLA DIDATTICA
Calendario accademico 2007/08
Calendario delle lezioni
I periodo didattico:
II periodo didattico:
III periodo didattico:
24.9.2007 - 30.11.2007
14.1.2008 - 19.3.2008
21.4.2008 - 20.6.2008
Periodi d’esame
I sessione:
II sessione:
III sessione e recupero:
3.12.2007 - 21.12.2007 e 7.1.2008 - 11.1.2008
26.3.2008 - 18.4.2008
23.6.2008 - 31.7 2008 e 1.9.2008 - 19.9.2008
Iscrizione agli esami
L’iscrizione agli esami può avvenire esclusivamente attraverso il servizio SINDY (iscrizione agli esami tramite Web). Per utilizzare tale servizio è sufficiente collegarsi al server web sindy.uniud.it. Alla richiesta di identificazione lo studente deve inserire la propria matricola (UserId) e la password assegnata per il primo accesso al servizio SPES
(posta elettronica agli studenti).
Vacanze accademiche
Natalizie: dal 22.12.2007 al 6.1.2008 compresi
Pasquali: dal 20 al 25 marzo compresi
Calendario di laurea anno accademico 2006/07
Corsi di Laurea in Scienze dell’Informazione, Informatica vecchio e nuovo ordinamento, Diploma universitario in Informatica, Tecnologie web e multimediali, Laurea
Specialistica in Informatica e Tecnologie dell’Informazione:
Appelli
Data laurea e diploma
Data consegna tesi e libretti
I appello
17 e 18 luglio 2007
2 luglio 2007
II appello
4 e 5 ottobre 2007
19 settembre 2007
III appello
13 e 14 dicembre 2007
28 novembre 2007
IV appello
10 e 11 aprile 2008
26 marzo 2008
Corso di Laurea in Matematica vecchio e nuovo ordinamento, Laurea Specialistica in
Matematica, Laurea Specialistica in Fisica Computazionale:
Appelli
Data laurea e diploma
Data consegna tesi e libretti
I appello
3 luglio 2007
15 giugno 2007
II appello
11 ottobre 2006
26 settembre 2007
III appello
12 dicembre 2006
27 novembre 2007
IV appello
9 aprile 2007
25 marzo 2008
19
parte generale e ordinamento
La domanda di ammissione all’esame di laurea si presenta presso lo sportello di Facoltà
della Ripartizione Didattica entro i seguenti termini:
Appelli del periodo estivo
(maggio - giugno - luglio - agosto)
entro il 30 aprile 2007
Appelli del periodo autunnale entro il 31 luglio 2007
(settembre - ottobre - novembre - dicembre)
Appelli del periodo invernale
(gennaio - febbraio - marzo - aprile)
L’Università di Udine aderisce alla banca
dati laureati ALMALAUREA, servizio che
rende disponibili on-line i curricula dei
laureati per facilitare il loro ingresso nel
mondo del lavoro o una loro diversa,
migliore collocazione. Informazioni in
merito:
http://www.uniud.it/didattica/post_laurea
ORGANI UFFICIALI DELLA FACOLTÀ
Il Consiglio di Facoltà
La Facoltà è retta dal Consiglio di Facoltà,
presieduto dal Preside (attualmente il
prof. Carlo Tasso, professore ordinario di
Sistemi di Elaborazione, rieletto per il
triennio 2007/08 - 2009/10), è composto
dai professori ordinari, straordinari ed
associati, nonché da rappresentanze elette degli assistenti, dei ricercatori e degli
studenti.
I rappresentanti degli studenti nel C.d.F.
per il biennio 2007-2009 sono:
Lorenzon Maria;
Bosa Elena;
Tellini Andrea.
I Consigli di Corso di Laurea
Per ogni corso di laurea è istituito un
Consiglio di Corso di Laurea con il compito di trattare tutte le problematiche inerenti la didattica. Tali consigli sono costituiti da tutti i docenti e ricercatori che
svolgono attività didattica presso tale
entro il 15 dicembre 2007
corso di laurea (ovvero che ricoprono per
titolarità, supplenza, affidamento, contratto, carico didattico sostitutivo o
aggiuntivo gli insegnamenti ufficiali attivati, anche per mutuazione, nell’ambito
del corso di Laurea o di Diploma Universitario), e dai rappresentanti degli studenti.
Presso la Facoltà di Scienze M.F.N. sono
stati istituiti:
- il Consiglio Unificato dei Corsi di Laurea
della classe 26 (Scienze e Tecnologie Informatiche) e Laurea Specialistica della classe
23/s (Scienze Informatiche) è attualmente
presieduto dal prof. Luca Chittaro, eletto
per il triennio 2004/05 - 2006/07, professore ordinario di Interazione UomoMacchina.
Per il biennio 2007-09 gli studenti non
hanno eletto i loro rappresentanti.
- il Consiglio di Corso di Laurea in Matematica, presieduto dal prof. Gianluca Gorni,
eletto per il triennio 2005/06 - 2007/08,
professore ordinario di Analisi Matematica.
Le rappresentanti degli studenti per il
biennio 2007-09 sono le seguenti:
Molaro Chiara;
Lorenzon Maria;
Gerola Silvia.
- il Consiglio di Corso di Laurea Specialistica
in Fisica Computazionale, presieduto dal
prof. Alessandro De Angelis, eletto per il
triennio 2005/06 - 2007/08, professore
straordinario di Fisica Sperimentale.
Per il biennio 2007-09 gli studenti non
hanno eletto i loro rappresentanti.
20
parte generale e ordinamento
Docenti della Facoltà all’1.6.2007
e Dipartimento di Afferenza
Professori di I fascia
Prof. Cecchini Carlo
Prof. Chittaro Luca
Prof. Corvaja Pietro
Prof. De Angelis Alessandro
Prof. Dikranjan Dikran
Prof. Gorni Gianluca
Prof. Honsell Furio
Prof. Marzollo Angelo
Prof. Montanari Angelo
Prof. Pace Luigi
Prof. Parlamento Franco
Prof. Pieroni Goffredo Giulio
Prof. Policriti Alberto
Prof. Roberto Vito
Prof. Serafini Paolo
Prof. Tasso Carlo
Prof. Vermiglio Rossana
Prof. Vidoni Paolo
Prof. Zanolin Fabio
Dip. Matematica e Informatica
Dip. Matematica e Informatica
Dip. Matematica e Informatica
Dip. Fisica
Dip. Matematica e Informatica
Dip. Matematica e Informatica
Dip. Matematica e Informatica
Dip. Matematica e Informatica
Dip. Matematica e Informatica
Dip. Scienze Statistiche
Dip. Matematica e Informatica
Dip. Matematica e Informatica
Dip. Matematica e Informatica
Dip. Matematica e Informatica
Dip. Matematica e Informatica
Dip. Matematica e Informatica
Dip. Matematica e Informatica
Dip. Scienze Statistiche
Dip. Matematica e Informatica
Professori di II fascia
Prof. Alessi Fabio
Prof. Comini Marco
Prof. Cortellezzi Luca
Prof. Cragnolini Paolo
Prof. D’Agostino Giovanna
Prof. Di Gianantonio Pietro
Prof. Dovier Agostino
Prof. Ercolessi Furio
Prof. Fasino Dario
Prof. Freddi Lorenzo
Prof. Giannozzi Paolo
Prof. Lancia Giuseppe
Prof. Lenisa Marina
Prof. Marcone Alberto Giulio
Prof. Miculan Marino
Prof. Milanese Vitaliano
Prof. Mizzaro Stefano
Prof. Panti Giovanni
Prof. Pascoletti Adriano
Prof. Piazza Carla
Prof. Rinaldi Franca
Prof. Santi Lorenzo
Dip. Matematica e Informatica
Dip. Matematica e Informatica
Dip. Fisica
Dip. Matematica e Informatica
Dip. Matematica e Informatica
Dip. Matematica e Informatica
Dip. Matematica e Informatica
Dip. Fisica
Dip. Matematica e Informatica
Dip. Matematica e Informatica
Dip. Fisica
Dip. Matematica e Informatica
Dip. Matematica e Informatica
Dip. Matematica e Informatica
Dip. Matematica e Informatica
Dip. Matematica e Informatica
Dip. Matematica e Informatica
Dip. Matematica e Informatica
Dip. Matematica e Informatica
Dip. Matematica e Informatica
Dip. Matematica e Informatica
Dip. Fisica
21
parte generale e ordinamento
Prof. Staniszkis Maria
Prof. Toppano Elio
Prof. Zucconi Francesco
Dip. Matematica e Informatica
Dip. Matematica e Informatica
Dip. Matematica e Informatica
Assistente
Prof. Trombetta Maurizio
Dip. Matematica e Informatica
Ricercatori
Dott. Baiti Paolo
Dott. Brajnik Giorgio
Dott. Cobal Marina
Dott. D’Angelo Antonio
Dott. Franceschet Massimo
Dott. Grassmann Hans
Dott. Lucido Silvia
Dott. Mainardis Mario
Dott. Michelutti Giovanni Luigi
Dott. Mirolo Claudio
Dott. Ranon Roberto
Dott. Scagnetto Ivan
Dott. Vitacolonna Nicola
Dip. Matematica e Informatica
Dip. Matematica e Informatica
Dip. Fisica
Dip. Matematica e Informatica
Dip. Matematica e Informatica
Dip. Fisica
Dip. Matematica e Informatica
Dip. Matematica e Informatica
Dip. Fisica
Dip. Matematica e Informatica
Dip. Matematica e Informatica
Dip. Matematica e Informatica
Dip. Matematica e Informatica
22
parte generale e ordinamento
ORDINAMENTO
DIDATTICO
LAUREA DI PRIMO LIVELLO IN
INFORMATICA
(classe 26 - Scienze e tecnologie
informatiche)
Durata del Corso
3 anni (180 crediti)
Sede del Corso
Udine, via delle Scienze 208
Caratteristiche e finalità del Corso
Il Corso di Laurea fornisce al laureato in
Informatica le competenze necessarie
per operare negli ambiti della progettazione, sviluppo, gestione e manutenzione
del software e di sistemi informatici, sia
in imprese produttrici nelle aree dei sistemi informatici e dei calcolatori, sia nelle
imprese, nelle amministrazioni pubbliche
e nei laboratori che utilizzano sistemi
informatici complessi. Inoltre, fornisce le
conoscenze teoriche e metodologiche che
sono alla base di una futura specializzazione volta a conseguire un master di primo
livello o una laurea di secondo livello.
In particolare, il laureato verrà preparato
per inserirsi rapidamente e professionalmente in progetti di sviluppo di software
e di sistemi integrati; avviare e gestire piccoli centri di elaborazione dati; fornire
supporto alle scelte della dirigenza in
materia di automazione e informatizzazione.
Il Corso di Laurea è organizzato in modo
da offrire i seguenti percorsi differenziati,
detti ‘curricula’, atti a soddisfare specifiche esigenze professionali:
- Progettazione Software;
- Servizi informatici per le aziende e la
pubblica amministrazione;
- Gestione e Pianificazione;
- Percorso base per le lauree specialistiche.
Il Corso di Laurea in Informatica è carat-
terizzato da una marcata presenza di
corsi di laboratorio e prevede inoltre la
possibilità di svolgere tirocini presso le
aziende, quale parte integrante del percorso formativo, facilitando così il trasferimento delle competenze dall’Università
alle aziende.
Nell’ambito del Corso viene inoltre fornita la possibilità di imparare l’inglese e di
acquisire abilità comunicative e organizzative.
Dall’Anno Accademico 2003/04 i Corsi
di Laurea in Informatica e Tecnologie
Web e Multimediali hanno ottenuto la certificazione di qualità ‘Bollino Grin’, rilasciata dal GRIN (l’Associazione italiana dei
docenti universitari di Informatica) in collaborazione con l’AICA (l’Associazione
Italiana per il Calcolo Automatico).
Requisiti specifici per l’accesso
L’ammissione al Corso di Laurea è subordinata al possesso di un’adeguata preparazione iniziale costituita dalle competenze
linguistiche e dalle conoscenze culturali
comuni ai licei e agli istituti tecnici, nonché dalle conoscenze matematiche di base
relative ai seguenti argomenti: aritmetica,
geometria analitica, equazioni e disequazioni di primo e secondo grado, funzioni
trigonometriche, logaritmiche ed esponenziali.
Sbocchi professionali
L’Informatica è attualmente in fortissima
espansione in tutti i settori.
La formazione globale che il Corso di Laurea impartisce permette l’impiego del laureato in ambiti molto diversi, dalle aziende
alla pubblica amministrazione, con compiti di programmazione, gestione dati, sviluppo di software, automazione.
La validità della nuova laurea triennale
risiede nell’esigenza, più volte espressa
dalle aziende italiane, di poter disporre di
personale informatico qualificato, possibilmente più giovane di un laureato secondo
il precedente ordinamento.
23
parte generale e ordinamento
Gli studenti che proseguiranno i loro studi
e conseguiranno la laurea specialistica
avranno anche l’opportunità di trovare
impiego in attività ad alto contenuto innovativo nei vari settori produttivi.
Infine, coloro che conseguiranno successivamente il Dottorato di ricerca in Informatica, potranno trovare occupazione
nell’Università e negli Enti di ricerca.
Ordinamento degli studi
Per conseguire la laurea lo studente deve
acquisire 180 crediti, suddivisi uniforme-
Insegnamenti/attività formative
mente in tre anni. Nel terzo anno il corso
si articola in quattro ‘curricula’.
I corsi sono programmati nel modo
seguente (per ogni corso viene indicato
anche il settore scientifico-disciplinare
corrispondente, secondo quanto stabilito
dal D.M. 509/1999 e successive integrazioni):
N.B.: Le seguenti informazioni sono aggiornate al 20 maggio 2007. Per i successivi
aggiornamenti consultare la pagina web della
Facoltà: http://www.uniud.it/didattica/facolta/scienze.
CFU
Periodo
didattico
S.S.D.
12
9
6
10
10
4
4
1-2-3
1-2
3
1-2-3
1-2-3
1-2-3
1-2-3
MAT/05
MAT/02
FIS/01
INF/01
INF/01
INF/01
INF/01
3
6
6
6
6
10
11
4
4
3
1
1
1
2-3
2-3
2-3
1-2
2-3
1-2
3
MAT/01
MAT/06
MAT/08
INF/01
INF/01
INF/01
INF/01
INF/01
INF/01
6
6
6
4
18
9
3
1
1
1
INF/01
ING-INF/05
INF/01
3
INF/01
Primo anno
Analisi matematica
Matematica discreta
Fisica
Programmazione
Architettura degli elaboratori
Laboratorio di programmazione
Laboratorio di architettura degli elaboratori
Secondo anno
Elementi di logica matematica
Calcolo delle probabilità e statistica
Calcolo scientifico
Fondamenti dell’informatica 1
Programmazione orientata agli oggetti
Algoritmi e strutture dati
Sistemi operativi
Laboratorio di algoritmi e strutture dati
Laboratorio di sistemi operativi
Aspetti sociali ed etica professionale
Terzo anno
Basi di dati
Ingegneria del software 1
Reti di calcolatori
Laboratorio di informatica avanzato (*)
Corsi specifici curricula
Insegnamenti a scelta dello studente (**)
Storia dell’informatica (**)
24
Comunicazione efficace
Tirocinio o lavoro di tesi
Prova finale
parte generale e ordinamento
1
6
3
3
6
6
6
1
3
2
INF/01
ING-INF/05
INF/01
6
6
6
2
2-3
2
INF/01
ING-INF/05
INF/01
6
6
6
1
2
2
MAT/09
MAT/09
ING-INF/05
6
6
6
1
2
2-3
MAT/01
INF/01
INF/01
6
3
FIS/01
6
3
FIS/01
6
1
FIS/02
6
1
FIS/01
- Corsi specifici curricula
Progettazione Software
Linguaggi di programmazione 1
Ingegneria del software 2
Interazione uomo-macchina 1
Servizi informatici per le aziende
Complementi di basi di dati
Sistemi informativi
Reti di calcolatori e sicurezza
Gestione e pianificazione
Ricerca operativa
Modelli e algoritmi per la gestione delle risorse
Sistemi esperti
Percorso base laurea specialistica
Logica matematica
Fondamenti dell’informatica 2
Metodi formali dell’informatica 1
Corsi facoltativi (***)
Campi e onde elettromagnetiche
(consigliata la frequenza al II anno)
Laboratorio di elettronica
(consigliata la frequenza al III anno)
Quantum computing
(consigliata la frequenza al III anno)
Fisica moderna
(consigliata la frequenza al III anno)
(*) Il Laboratorio avanzato è costituito da attività di laboratorio e professionalizzanti collegate ad uno dei
corsi del III anno e si conclude con una valutazione finale. Qualora il corso di laboratorio venisse correlato ad un corso a scelta dello studente preso dalla Laurea Specialistica in Informatica o Tecnologie
dell’Informazione, il suo valore sarà comunque di 4 CFU. Il laboratorio avanzato va scelto dallo studente consegnando alla Ripartizione Didattica l’apposito modulo.
(**) I crediti a scelta dello studente devono essere crediti aggiuntivi al curriculum e non duplicazioni,
seppure parziali, di corsi già previsti nei piani di studio. La Facoltà ha attivato per gli studenti interessati
il corso di Storia dell’informatica.
(***) Gli studenti che intendessero proseguire gli studi iscrivendosi al Corso di Laurea Specialistica in
Fisica Computazionale, avranno garantita l’approvazione di un piano di studi libero che abbia inserito i
18 crediti di fisica previsti. A tal fine, ferma restando l’obbligatorietà di seguire il corso di Fondamenti
dell’informatica 2, potranno sostituire i corsi di Logica matematica e Metodi formali dell’informatica con
due corsi di fisica e utilizzare 6 dei 9 crediti a scelta dello studente per un terzo corso di fisica.
parte generale e ordinamento
Gli studenti dovranno inoltre acquisire 6
CFU di Lingua Inglese e 1 CFU di Cultura d’Impresa.
Il CLAV fornisce i servizi didattici e stabilisce le modalità di svolgimento della
prova di Lingua Inglese; un’apposita
commissione d’Ateneo organizza didattica e modalità di svolgimento per il modulo di Cultura d’Impresa.
Propedeuticità
Ai fini di un ordinato svolgimento dei
processi di insegnamento e di apprendimento, si consiglia agli studenti di seguire queste propedeuticità nel sostenere gli
esami:
- Algoritmi e strutture dati: Analisi matematica, Architettura degli elaboratori;
Matematica discreta, Programmazione;
- Basi di dati: Algoritmi e strutture dati;
Elementi di logica matematica; Programmazione orientata agli oggetti; Sistemi
operativi;
- Calcolo delle probabilità e statistica: Analisi matematica; Matematica discreta;
- Calcolo scientifico: Analisi matematica;
Matematica discreta;
- Complementi di basi di dati: Basi di dati e
sistemi informativi;
- Elementi di logica matematica: Matematica discreta;
- Fondamenti dell’informatica 1: Analisi
matematica; Architettura degli elaboratori;
Matematica discreta; Programmazione;
- Fondamenti dell’informatica 2: Algoritmi
e strutture dati; Elementi di logica matematica; Calcolo delle probabilità e statistica; Calcolo scientifico; Fondamenti
dell’informatica 1;
- Ingegneria del software 1: Algoritmi e
strutture dati; Elementi di logica matematica; Programmazione orientata agli
oggetti; Sistemi operativi;
- Ingegneria del software 2: Ingegneria del
software 1;
- Interazione uomo-macchina: Sistemi operativi;
25
- Laboratorio informatico avanzato: Laboratorio di programmazione; Laboratorio
di architetture degli elaboratori; Laboratorio di algoritmi e strutture dati; Laboratorio di sistemi operativi;
- Linguaggi di programmazione 1: Algoritmi e strutture dati; Programmazione
orientata agli oggetti;
- Logica matematica: Elementi di logica
matematica; Calcolo delle probabilità e
statistica; Calcolo scientifico; Fondamenti dell’informatica 1;
- Metodi formali dell’informatica 1: Fondamenti dell’Informatica 1; Elementi di
logica matematica;
- Modelli e algoritmi per la gestione delle
risorse: Ricerca operativa;
- Programmazione orientata agli oggetti:
Architettura degli elaboratori; Programmazione;
- Reti di calcolatori: Algoritmi e strutture
dati; Elementi di logica matematica; Programmazione orientata agli oggetti;
Sistemi operativi;
- Reti di calcolatori e sicurezza: Reti di calcolatori;
- Ricerca operativa: Algoritmi e strutture
dati; Calcolo delle probabilità e statistica;
Calcolo scientifico;
- Sistemi esperti: Ingegneria del software 1;
- Sistemi informativi: Basi di dati e sistemi
informativi; Reti di calcolatori;
- Sistemi operativi: Architettura degli elaboratori; Programmazione.
Scelta curriculum e piani di studio individuali
Gli studenti che frequenteranno il terzo
anno di corso nell’a.a. 2007-08 devono
presentare alla Ripartizione Didattica la
scelta del curriculum e del laboratorio
avanzato entro il 21.9.2007.
Gli studenti che, per particolari obiettivi
formativi specificamente descritti e motivati, intendono seguire un piano di studi
diverso da quelli previsti dai curricula,
possono presentare domanda di approva-
26
zione di un piano di studio individuale
alla Ripartizione Didattica entro il
21.9.2007. Tali domande verranno quindi trasmesse alla Facoltà per l’approvazione.
Tutorato
Ogni studente può scegliere fra i docenti
della Facoltà il proprio tutore, che lo aiuterà ad inserirsi nella vita accademica e a
pianificare in modo più efficace i propri
studi.
La Facoltà può inoltre istituire apposite
commissioni per trattare problematiche
specifiche, come scelta del curriculum,
programmi di studio all’estero, orientamento alla scelta delle aziende dove effettuare il tirocinio.
Tirocinio
Il regolamento didattico del Corso di Laurea in Informatica prevede un periodo di
tirocinio da effettuarsi presso aziende,
università o enti di ricerca, sotto la supervisione di un tutor aziendale e di un tutor
accademico.
La durata prevista per il tirocinio va da 150
a 250 ore.
Il tirocinio si svolge nell’ambito di opportune convenzioni stipulate tra l’Università e l’azienda/ente.
Al momento della definizione di ogni singolo progetto viene verificata la sua valenza formativa.
L’attestazione di avvenuto tirocinio fa
parte della carriera universitaria dello studente.
Procedura per lo svolgimento del tirocinio
Lo studente che abbia superato esami corrispondenti ad almeno 120 crediti può
compilare la domanda di tirocinio on-line
sul Portale Tirocini (http://tirocini.uniud.
it/tirocini/public/scienze/index.jsp), da
dove è possibile scaricare tutta la modulistica relativa alla convenzione e al progetto formativo.
parte generale e ordinamento
Con l’aiuto del Portale e/o dell’Ufficio
Tirocini, lo studente individua l’azienda
presso la quale svolgere il tirocinio.
Una volta individuata l’azienda, se l’azienda è già convenzionata con la Facoltà di
Scienze M.F.N., lo studente compila il
progetto formativo (con l’aiuto del tutor
aziendale e di quello accademico, che
devono sottoscrivere il progetto) e consegna un originale all’azienda e uno alla
Segreteria di Presidenza della Facoltà. Se
l’azienda non è convenzionata, lo studente
sottopone il progetto formativo proposto
dall’azienda all’approvazione del tutor
accademico. Nel caso di parere positivo, si
stipula la convenzione (che deve essere
approvata anche dal Consiglio di Corso di
Laurea) e si procede alla sottoscrizione
del progetto formativo.
Al termine del progetto, il tutor accademico deve attestare nell’apposito libretto
(che si scarica dal Portale Tirocini) che lo
studente ha effettuato con profitto il tirocinio per il numero di ore risultanti dal
libretto stesso, sentito eventualmente il
tutor aziendale. Inoltre, il tirocinante e il
tutor aziendale devono compilare i rispettivi questionari, scaricabili dal Portale
Tirocini, che devono essere consegnati
dallo studente in Segreteria Studenti
assieme al libretto di tirocinio, per la registrazione dei relativi crediti.
La relazione scritta sull’attività svolta
durante il tirocinio può costituire il documento che verrà discusso come prova
finale.
Particolari tipologie di tirocinio
- Tirocini per studenti-lavoratori
Uno studente che si trovi nella condizione di studente-lavoratore dovrà allegare
alla domanda di tirocinio una dichiarazione che certifichi tale condizione, specificando qual è l’ambito di occupazione.
1) Studente-lavoratore in ambito informatico
Nel caso in cui lo studente lavori (come
parte generale e ordinamento
dipendente) in ambito informatico da
alcuni anni e sia in grado di documentare
la propria esperienza, gli verranno riconosciuti i crediti del tirocinio, senza dover
convenzionare l’azienda; sarà compito
della Commissione tirocini valutare se
l’attività lavorativa documentata può essere riconosciuta come crediti per il tirocinio. In caso affermativo, lo studente
dovrà svolgere come prova finale una tesi
da 3 crediti.
2) Studente-lavoratore non in ambito
informatico
Nel caso in cui lo studente non lavori in
ambito informatico, si cercherà di individuare un progetto che si possa svolgere
all’interno dell’azienda in cui lavora, con
cui dovrà essere stipulata una convenzione specifica con la Facoltà; in questo caso,
la convenzione avrà validità limitata al
solo progetto attuativo dello studente in
questione.
- Tirocini interni all’università
I tirocini svolti presso una struttura
dell’Università di Udine non necessitano
di una convenzione ad hoc, ma soltanto
del progetto formativo, in cui oltre al tutor
accademico della Facoltà dovrà essere
indicato il tutor aziendale, referente della
struttura presso la quale si svolge il tirocinio.
Lauree
L’esame di laurea in Informatica consiste
nella discussione pubblica di una tesi di
laurea.
Le tesi di laurea sono divise in tre categorie:
- Elaborato: è il risultato di un progetto di
esame documentato in forma scritta.
- Tirocinio: è la relazione riguardante un
progetto, concordato con un docente della
Facoltà, svolto durante il periodo di tirocinio.
- Tesi compilativa: è un lavoro di rassegna
con presentazione critica e bibliografia
ragionata.
27
Il voto finale, espresso in centodecimi, è
formato da una votazione di base e da due
incrementi.
La votazione di base è costituita dalla
media pesata delle votazioni riportate dal
candidato nei singoli esami di profitto,
trasformata poi in centodecimi. Il peso di
un esame è uguale al numero di crediti
attribuiti al relativo insegnamento. Sono
considerati solo gli esami con punteggio
numerico.
Il primo incremento da 0 a 4 punti è
determinato in base al rispetto dei tempi
previsti per il conseguimento del titolo di
studio e al numero delle lodi, secondo la
seguente formula:
min{ 0.04 M, α M + n 0.3 }
dove M è la media in centodecimi, n è il
numero di lodi conseguite negli esami di
profitto e α è un coefficiente che dipende
dai tempi richiesti per concludere il percorso di studi, e valutato secondo i
seguenti criteri:
α = 0.04 per le lauree conseguite entro le
prime due sessioni (periodo giugno-ottobre) del III anno effettivo di corso;
α = 0.035 e α = 0.03, rispettivamente, per
le successive sessioni autunnale e invernale (straordinaria);
α = 0.0225, α = 0.015, α = 0.0075 per le
prime tre sessioni (estate-autunno) del IV
anno effettivo di corso;
α = 0 per tempi di conseguimento della
laurea più lunghi.
Il secondo incremento è un numero compreso tra 0 e 7, determinato dalla commissione di laurea in base alla dissertazione e alla sua presentazione.
L’Elaborato può portare ad un incremento di punteggio minore o uguale a due.
È richiesta la nomina di un controrelatore
per le tesi di laurea in cui il relatore propone un incremento del secondo tipo
strettamente maggiore di 5 punti.
28
LAUREA DI PRIMO LIVELLO IN
TECNOLOGIE WEB E MULTIMEDIALI
(classe 26 - Scienze e tecnologie
informatiche)
Durata del Corso
3 anni (180 crediti)
Sede del Corso
Udine, via delle Scienze 208
Caratteristiche e finalità del Corso
Il Corso di Laurea fornisce conoscenze e
competenze per operare negli ambiti
dell’analisi, progettazione, sviluppo,
gestione e manutenzione di applicazioni
Internet/World Wide Web (WWW) e
multimediali, sia in ditte specializzate del
settore, che nelle imprese, nelle aziende
dei settori pubblico e privato, nei gruppi
editoriali, nelle amministrazioni e nei
laboratori che utilizzano sistemi web e
multimediali.
Le conoscenze maturate durante il corso
consentiranno al laureato di inserirsi
rapidamente in progetti di sviluppo di
applicazioni Web e multimediali; di selezionare, valutare, installare e mantenere
strumenti Web e multimediali proprietari o pubblici; di sviluppare servizi basati
su tecnologie Web e multimediali (ad
esempio, portali, commercio elettronico,
comunicazione aziendale su Internet,
informazione, intrattenimento e cultura
interattivi, accesso mobile alle informazioni); di configurare, gestire e analizzare
l’attività di siti Web e di reti di calcolatori;
di fornire supporto alle scelte della dirigenza in materia di presenza sul Web, di
offerta servizi Web e della loro integrazione con i sistemi informativi già utilizzati
in azienda; di valutare la facilità di utilizzo per gli utenti dei servizi.
Il Corso di laurea in Tecnologie Web e
Multimediali è caratterizzato da una marcata presenza di corsi di laboratorio e pre-
parte generale e ordinamento
vede inoltre la possibilità di svolgere tirocini presso le aziende, quale parte integrante del percorso formativo, facilitando
così il trasferimento delle competenze
dall’Università alle aziende. Nell’ambito
del corso viene inoltre fornita la possibilità
di imparare l’inglese e di acquisire abilità
comunicative e organizzative.
Dall’anno accademico 2004-05 è attivato il
Corso di Laurea Specialistica in Tecnologie
dell’Informazione, (classe 23S, Informatica) al quale possono accedere senza debiti
formativi i laureati della Laurea di primo
livello in Tecnologie Web e Multimediali.
Dall’Anno Accademico 2003/04 i Corsi di
Laurea in Informatica e Tecnologie Web e
Multimediali hanno ottenuto la certificazione di qualità ‘Bollino Grin’, rilasciata dal
GRIN (l’Associazione italiana dei docenti
universitari di Informatica) in collaborazione con l’AICA (l’Associazione Italiana per il
Calcolo Automatico).
Requisiti specifici per l’accesso
L’ammissione al Corso di Laurea è subordinata al possesso di un’adeguata preparazione iniziale costituita dalle competenze linguistiche e dalle conoscenze culturali comuni ai licei e agli istituti tecnici,
nonché dalle conoscenze matematiche di
base relative ai seguenti argomenti: aritmetica, geometria analitica, equazioni e
disequazioni di primo e secondo grado,
funzioni trigonometriche, logaritmiche
ed esponenziali.
Sbocchi professionali
Le tecnologie informatiche sono attualmente in fortissima espansione; tra quelle che più contribuiscono alla diffusione
di innovazione nella nostra società vi
sono le tecnologie relative alla comunicazione via Internet, ai servizi ed ai sistemi
che su di esse si basano. Il nuovo Corso di
Laurea triennale in Tecnologie Web e
Multimediali (TWM) si propone di
rispondere alla domanda di formazione
29
parte generale e ordinamento
che proviene, da un lato, dai settori della
cosiddetta ‘New Economy’ - che richiede
figure professionali in grado di prendere
parte alla progettazione, sviluppo e applicazione di sistemi hardware/software
innovativi - e, dall’altro, dai settori
dell’economia tradizionale, i quali devono introdurre tali sistemi nei propri cicli
produttivi e nei rapporti con l’utenza.
Ordinamento degli studi
Per conseguire la laurea lo studente deve
acquisire 180 crediti, suddivisi uniformemente in tre anni.
I corsi sono articolati nel modo seguente
(per ogni corso viene indicato anche il settore scientifico disciplinare corrispondente, secondo quanto stabilito dal D.M.
509/1999 e successive integrazioni):
N.B.: Le seguenti informazioni sono aggiornate al 20 maggio 2007 . Per i successivi
aggiornamenti consultare la pagina web
della Facoltà: http://www.uniud.it/didattica/facolta/scienze.
Insegnamenti/attività formative
CFU
Periodo
didattico
S.S.D.
12
3
6
6
4
8
6
4
1
3
1
1-2
1
2
1-2
1-2
1-2-3
2-3
2-3
3
3
3
MAT/05
MAT/01
MAT/02
INF/01
INF/01
INF/01
ING-INF/05
ING-INF/05
Algoritmi e strutture dati
Sistemi operativi
Laboratorio di sistemi operativi oppure
Laboratorio di tecnologie lato server (1a e 2a parte)
10
9
4
4
2-3
1-2-3
1-2-3
1
Programmazione orientata agli oggetti
Statistica applicata
Psicologia della comunicazione
Sistemi multimediali
Commercio elettronico
Laboratorio di sistemi multimediali
6
6
6
6
8
4
1-2
1
3
2-3
1-2
2-3
INF/01
ING-INF/05
NG-INF/05
INF/01 e
ING-INF/05
INF/01
SECS-S/01
M-PSI/01
ING-INF/05
INF/01
ING-INF/05
Primo anno
Analisi matematica
Matematica di base
Matematica discreta
Programmazione
Laboratorio di programmazione
Architettura degli elaboratori
Tecnologie web
Laboratorio di tecnologie web
Cultura d’Impresa (***)
Fisica
Comunicazione efficace
FIS/01
Secondo anno
30
parte generale e ordinamento
Terzo anno
Basi di dati
Ingegneria del software
Reti di calcolatori
Progetto di siti e portali web
Interazione uomo-macchina
Aspetti sociali ed etica professionale
Laboratorio avanzato: (*)
- Laboratorio di tecniche di comunicazione
- Laboratorio di tecnologie lato server (1a e 2a parte)
- Laboratorio di sistemi operativi
6
6
6
6
6
3
1
1
1
1
2
3
4
4
4
3
1
1
Insegnamenti a scelta dello studente (**)
Storia dell’informatica (**)
Tirocinio
Prova finale
9
3
12
3
3
INF/01
ING-INF/05
INF/01
ING-INF/05
INF/01
INF/01 e
ING-INF/05
ING-INF/05
INF/01
(*) La Facoltà offre due particolari laboratori avanzati:
Laboratorio avanzato di Tecniche di Comunicazione o Laboratorio avanzato di Tecnologie Lato Server. In
alternativa, lo studente può svolgere il Laboratorio di Sistemi Operativi oppure il Laboratorio Avanzato
associandolo ad uno degli insegnamenti del III anno del Corso di Laurea. Qualora il corso di laboratorio
venisse correlato ad un corso a scelta dello studente preso dalla Laurea Specialistica in Informatica o Tecnologie dell’Informazione, il suo valore sarà comunque di 4 CFU. Il Laboratorio avanzato va scelto dallo
studente consegnando alla Ripartizione Didattica l’apposito modulo.
(**) I crediti a scelta dello studente devono essere crediti aggiuntivi al curriculum e non duplicazioni,
seppure parziali, di corsi già previsti nei piani di studio. La Facoltà ha attivato per gli studenti interessati
il corso di Storia dell’informatica.
(***) Gli studenti di TWM devono seguire obbligatoriamente il corso di Cultura d’Impresa offerto dalla
Facoltà e non quello organizzato a livello di Ateneo.
Gli studenti dovranno inoltre acquisire 6
CFU di Lingua Inglese, di cui il CLAV fornisce i servizi didattici e stabilisce le
modalità di svolgimento della relativa.
Propedeuticità
Ai fini di un ordinato svolgimento dei
processi di insegnamento e di apprendimento, si consiglia agli studenti di seguire queste propedeuticità nel sostenere gli
esami:
- Algoritmi e strutture dati: Analisi matematica; Architettura degli elaboratori;
Matematica discreta, Programmazione;
- Basi di dati: Algoritmi e strutture dati;
Programmazione orientata agli oggetti;
Sistemi operativi;
- Commercio elettronico: Programmazione; Tecnologie Web;
- Ingegneria del software: Algoritmi e strut-
ture dati; Programmazione orientata agli
oggetti; Sistemi operativi;
- Interazione uomo-macchina: Sistemi operativi;
- Laboratorio informatico avanzato: Laboratorio di programmazione; Laboratorio
di tecnologie web; laboratorio di sistemi
operativi; Laboratorio di sistemi multimediali;
- Laboratorio di tecniche di comunicazione:
Psicologia della comunicazione;
- Programmazione orientata agli oggetti:
Architettura degli elaboratori; Programmazione;
- Progetto di siti e portali web: Sistemi operativi; Tecnologie web;
- Reti di calcolatori e sicurezza: Algoritmi e
strutture dati; Programmazione orientata
agli oggetti; Sistemi operativi; Tecnologie
web;
parte generale e ordinamento
- Sistemi multimediali: Programmazione;
Tecnologie web;
- Sistemi operativi: Architettura degli elaboratori; Programmazione;
- Statistica applicata: Analisi matematica;
Matematica discreta.
Piani di studio individuali
Lo studente, per particolari obiettivi formativi specificamente descritti e motivati, può presentare domanda di approvazione di un piano di studio individuale
alla Ripartizione Didattica entro il
21.9.2007. Tali domande verranno quindi trasmesse alla Facoltà per essere esaminate dalle commissioni didattiche
competenti per l’approvazione.
Tutorato
Ogni studente può scegliere fra i docenti
della Facoltà il proprio tutore, che lo aiuterà
ad inserirsi nella vita accademica e a pianificare in modo più efficace i propri studi.
La Facoltà potrà inoltre istituire apposite
commissioni per trattare problematiche
specifiche, come scelta del curriculum,
programmi di studio all’estero, orientamento alla scelta delle aziende dove effettuare il tirocinio.
Tirocinio
Il regolamento didattico del Corso di Laurea in Tecnologie Web e Multimediali
prevede un periodo di tirocinio da effettuarsi presso aziende, università o enti di
ricerca, sotto la supervisione di un tutor
aziendale e di un tutor accademico.
La durata prevista per il tirocinio va da
300 a 400 ore.
Il tirocinio si svolge nell’ambito di opportune convenzioni stipulate tra l’Università e l’azienda/ente.
Al momento della definizione di ogni singolo progetto viene verificata la sua valenza formativa.
L’attestazione di avvenuto tirocinio fa
parte della carriera universitaria dello studente.
31
Procedura per lo svolgimento del tirocinio
Lo studente che abbia superato esami corrispondenti ad almeno 120 crediti può compilare la domanda di tirocinio on-line sul Portale Tirocini (http://tirocini.uniud.it/tirocini/), da dove è possibile scaricare tutta la
modulistica relativa alla convenzione e al
progetto formativo.
Con l’aiuto del Portale e/o dell’Ufficio
tirocini, lo studente individua l’azienda
presso la quale svolgere il tirocinio.
Una volta individuata l’azienda, se l’azienda è già convenzionata con la Facoltà di
Scienze M.F.N., lo studente compila il
progetto formativo (con l’aiuto del tutor
aziendale e di quello accademico, che
devono sottoscrivere il progetto) e consegna un originale all’azienda e uno alla
Segreteria di Presidenza della Facoltà. Se
l’azienda non è convenzionata, lo studente
sottopone il progetto formativo proposto
dall’azienda all’approvazione del tutor
accademico. Nel caso di parere positivo, si
stipula la convenzione (che deve essere
approvata anche dal Consiglio di Corso di
Laurea) e si procede alla sottoscrizione
del progetto formativo.
Al termine del progetto, il tutor accademico deve attestare nell’apposito libretto
(che si scarica dal Portale Tirocini) che lo
studente ha effettuato con profitto il tirocinio per il numero di ore risultanti dal
libretto stesso, sentito eventualmente il
tutor aziendale. Inoltre il tirocinante e il
tutor aziendale devono compilare i rispettivi questionari, scaricabili dal portale
tirocini, che devono essere consegnati
dallo studente in Segreteria Studenti
assieme al libretto di tirocinio, per la registrazione dei relativi crediti.
La relazione scritta sull’attività svolta durante il tirocinio può costituire il documento
che verrà discusso come prova finale.
Particolari tipologie di tirocinio
- Tirocini per studenti-lavoratori
Uno studente che si trovi nella condizione di studente-lavoratore dovrà allegare
32
alla domanda di tirocinio una dichiarazione
che certifichi tale condizione, specificando
qual è l’ambito di occupazione.
1) Studente-lavoratore in ambito informatico
Nel caso in cui lo studente lavori (come dipendente) in ambito informatico da alcuni anni e
sia in grado di documentare la propria esperienza, gli verranno riconosciuti i crediti del
tirocinio, senza dover convenzionare l’azienda; sarà compito della Commissione tirocini
valutare se l’attività lavorativa documentata
può essere riconosciuta come crediti per il
tirocinio. In caso affermativo, lo studente
dovrà svolgere come prova finale una tesi da 3
crediti.
2) Studente-lavoratore non in ambito informatico
Nel caso in cui lo studente non lavori in ambito informatico, si cercherà di individuare un
progetto che si possa svolgere all’interno
dell’azienda in cui lavora, con cui dovrà essere stipulata una convenzione specifica con la
Facoltà; in questo caso, la convenzione avrà
validità limitata al solo progetto attuativo dello
studente in questione.
- Tirocini interni all’università
I tirocini svolti presso una struttura dell’Università di Udine non necessitano di una convenzione ad hoc, ma soltanto del progetto formativo, in cui oltre al tutor accademico della
Facoltà dovrà essere indicato il tutor aziendale, referente della struttura presso la quale si
svolge il tirocinio.
Lauree
L’esame di laurea in Tecnologie Web e Multimediali consiste nella discussione pubblica di
una tesi di laurea.
Le tesi di laurea sono divise in tre categorie:
- Elaborato: è il risultato di un progetto di
esame documentato in forma scritta.
- Tirocinio: è la relazione riguardante un progetto, concordato con un docente della
Facoltà, svolto durante il periodo di tirocinio.
- Tesi compilativa: è un lavoro di rassegna
con presentazione critica e bibliografia
ragionata.
Il voto finale, espresso in centodecimi, è
parte generale e ordinamento
formato da una votazione di base e da due
incrementi.
La votazione di base è costituita dalla
media pesata delle votazioni riportate dal
candidato nei singoli esami di profitto,
trasformata poi in centodecimi. Il peso di
un esame è uguale al numero di crediti
attribuiti al relativo insegnamento. Sono
considerati solo gli esami con punteggio
numerico.
Il primo incremento da 0 a 4 punti è
determinato in base al rispetto dei tempi
previsti per il conseguimento del titolo di
studio e al numero delle lodi, secondo la
seguente formula:
min{ 0.04 M, a M + n 0.3 }
dove M è la media in centodecimi, n è il
numero di lodi conseguite negli esami di
profitto e a è un coefficiente che dipende
dai tempi richiesti per concludere il percorso di studi, e valutato secondo i
seguenti criteri:
a = 0.04 per le lauree conseguite entro le
prime due sessioni (periodo giugno-ottobre) del III anno effettivo di corso;
a = 0.035 e a = 0.03, rispettivamente, per
le successive sessioni autunnale e invernale (straordinaria);
a = 0.0225, a = 0.015, a = 0.0075 per le
prime tre sessioni (estate-autunno) del IV
anno effettivo di corso;
a = 0 per tempi di conseguimento della
laurea più lunghi.
Il secondo incremento è un numero compreso tra 0 e 7, determinato dalla commissione di laurea in base alla dissertazione e alla sua presentazione.
L’Elaborato può portare ad un incremento di punteggio minore o uguale a due.
È richiesta la nomina di un controrelatore
per le tesi di laurea in cui il relatore propone un incremento del secondo tipo
strettamente maggiore di 5 punti.
parte generale e ordinamento
LAUREA DI PRIMO LIVELLO IN
MATEMATICA
(classe 32 - Scienze matematiche)
Durata del Corso
3 anni (180 crediti)
Sede del Corso
Udine, via delle Scienze 208
Caratteristiche e finalità del Corso
Il Corso di Laurea in Matematica fornisce
ai laureati, oltre alle conoscenze di base
nell’area della matematica e alle competenze computazionali e informatiche, la
capacità di comprendere e utilizzare
descrizioni e modelli matematici di situazioni concrete di interesse scientifico o
economico e di svolgere compiti tecnici o
professionali definiti, nei settori industriale, finanziario, dei servizi e della pubblica amministrazione, o nel campo
dell’apprendimento della matematica o
della diffusione della cultura scientifica.
In particolare, a una solida preparazione
nelle materie matematiche, fisiche e
informatiche di base viene affiancata già
nella prima fase una preparazione professionalizzante nelle varie direzioni già collaudate: generale, didattica, applicativa.
Tale preparazione potrà essere spesa
subito sul mercato del lavoro o utilizzata
per il proseguimento degli studi, fino
all’avviamento alla ricerca. Il Corso di
Laurea è quindi organizzato in modo da
offrire percorsi differenziati, detti ‘curricula’, atti a soddisfare le citate specifiche
esigenze professionali.
Nell’ambito del Corso viene inoltre fornita la possibilità di imparare l’inglese e di
acquisire abilità comunicative e organizzative.
Requisiti specifici per l’accesso
L’ammissione al Corso di Laurea è subordinata al possesso di un’adeguata prepa-
33
razione iniziale costituita dalle competenze linguistiche e dalle conoscenze culturali comuni ai licei e agli istituti tecnici,
nonché dalle conoscenze matematiche di
base relative ai seguenti argomenti: aritmetica, geometria analitica, equazioni e
disequazioni di primo e secondo grado,
funzioni trigonometriche, logaritmiche
ed esponenziali.
Sbocchi professionali
La laurea in Matematica consente in
generale di acquisire un tipo di mentalità
creativa e ricettiva che permette di sviluppare nelle più varie direzioni la preparazione di base già acquisita. Questa conoscenza, arricchita dalle competenze specifiche offerte dal Corso udinese, dovrebbe facilitare l’ingresso nel mondo del
lavoro permettendo di trovare un’occupazione in aree molto diversificate, andando molto spesso ad affiancare la figura
dell’ingegnere. Il laureato è infatti in
grado di sviluppare e gestire software
matematici, occuparsi della creazione di
modelli matematici in ambito tecnologico, economico, biologico, sanitario e
ambientale. Può quindi trovare occupazione in imprese appartenenti a settori
molto diversi fra loro, in particolare per la
realizzazione di sistemi informativi
aziendali.
Gli studenti che proseguiranno i loro
studi e conseguiranno la Laurea Specialistica avranno anche l’opportunità di trovare impiego in attività ad alto contenuto
innovativo nei vari settori produttivi. Fra
le opportunità future del laureato in
Matematica si segnala anche l’insegnamento, da intraprendere dopo la Scuola
di specializzazione per insegnanti.
Ordinamento degli studi
Per conseguire la laurea lo studente deve
acquisire 180 crediti, suddivisi uniformemente in tre anni. I corsi sono articolati
nel modo seguente (per ogni corso viene
34
indicato anche il settore scientifico disciplinare corrispondente, secondo quanto
stabilito dal D.M. 509/1999 e successive
integrazioni):
parte generale e ordinamento
N.B.: Le seguenti informazioni sono aggiornate al 20 maggio 2007. Per i successivi aggiornamenti consultare la pagina web della Facoltà:
http://www.uniud.it/didattica/facolta/scienze.
- Curriculum generale e Curriculum didattico
Insegnamenti/attività formative
CFU
Periodo
didattico
S.S.D.
6
6
6
6
6
6
6
6
6
2
1
1
2
3
1
2
1
2
3
3
1
2
MAT/03
MAT/02
MAT/02
MAT/05
MAT/05
MAT/03
MAT/03
FIS/01
INF/01
6
6
6
6
6
6
6
6
6
1
2
2
1
2
3
1
3
3
MAT/05
MAT/05
MAT/08
FIS/01
MAT/03
MAT/03
MAT/01
MAT/07
MAT/06
6
6
6
6
6
1
1
1
2
2
MAT/02
MAT/05
MAT/03
MAT/01
MAT/07
6
6
6
6
6
2
3
2
3
1
MAT/02
MAT/02
MAT/05
MAT/07
FIS/01
Primo anno
Aritmetica
Algebra 1
Algebra 2
Analisi matematica 1
Analisi matematica 2
Geometria 1
Geometria 2
Fisica 1
Informatica 1
Linguaggio matematico
Strumenti informatici per la matematica
Secondo anno
Analisi matematica 3
Analisi matematica 4
Analisi numerica 1
Fisica 2
Geometria 3
Geometria 4
Logica matematica 1
Meccanica razionale 1
Probabilità 1
Terzo anno
Algebra 3
Analisi matematica 5
Geometria 5
Logica matematica 2
Meccanica razionale 2
due insegnamenti a scelta tra:
Algebra 4
Algebra 5
Analisi matematica 6
Fisica matematica
Fisica moderna
35
parte generale e ordinamento
Fondamenti della matematica 1
Geometria 6
Matematiche complementari 1 (**)
Particelle e interazioni fondamentali
Insegnamenti a scelta dello studente (*)
Prova finale
6
6
6
6
12
7
3
3
3
2
MAT/04
MAT/03
MAT/04
FIS/01
CFU
Periodo
didattico
S.S.D.
6
6
6
6
6
6
6
6
6
2
1
1
2
3
1
2
3
1
2
3
1
2
MAT/03
MAT/02
MAT/02
MAT/05
MAT/05
FIS/01
MAT/03
MAT/03
INF/01
6
6
6
6
6
6
6
6
6
1
2
2
1
2
3
1
3
3
MAT/05
MAT/05
MAT/08
FIS/01
MAT/03
INF/01
MAT/01
MAT/07
MAT/06
6
6
6
6
6
2
2
1
1
2
MAT/08
MAT/07
MAT/09
MAT/06
MAT/06
6
6
6
1
1
2
MAT/05
FIS/01
MAT/09
- Curriculum applicativo
Insegnamenti/attività formative
Primo anno
Aritmetica
Algebra 1
Algebra 2
Analisi matematica 1
Analisi matematica 2
Fisica 1
Geometria 1
Geometria 2
Informatica 1
Linguaggio matematico
Strumenti informatici per la matematica
Secondo anno
Analisi matematica 3
Analisi matematica 4
Analisi numerica 1
Fisica 2
Geometria 3
Informatica 2
Logica matematica 1
Meccanica razionale 1
Probabilità 1
Terzo anno
Analisi numerica 2
Meccanica razionale 2
Ottimizzazione 1
Probabilità 2
Statistica 1
due insegnamenti a scelta tra:
- Analisi matematica 5
- Fisica moderna
- Ottimizzazione 2
36
- Particelle e interazioni fondamentali
- Statistica 2
Insegnamenti a scelta dello studente (*)
Prova finale
parte generale e ordinamento
6
6
12
7
2
3
FIS/01
MAT/06
(*) 12 CFU sono a scelta individuale dello studente tra i corsi attivati nell’Ateneo di Udine. I crediti a scelta dello studente devono comunque essere crediti aggiuntivi al curriculum e non duplicazioni, seppure
parziali, di corsi già previsti nei piani di studio.
(**) Gli insegnamenti di Matematiche Complementari 1 e 2 sono attivati ad anni alterni.
Gli studenti dovranno inoltre acquisire 6
CFU di Lingua Inglese e 1 CFU di Cultura d’Impresa.
Gli studenti del Corso di Laurea in Matematica devono seguire il corso di Comunicazione Efficace previsto per il Corso di
Laurea in Informatica e TWM; il CLAV
fornisce i servizi didattici e stabilisce le
modalità di svolgimento della prova di
Lingua Inglese; un’apposita commissione d’Ateneo organizza didattica e modalità di svolgimento per il modulo di Cultura d’impresa.
Scelta curriculum e piani di studio individuali
Gli studenti del Corso di Laurea in Matematica iscritti al II anno nell’anno accademico 2007/08 devono presentare la scelta del curriculum improrogabilmente agli
sportelli della Segreteria Studenti entro il
19.3.2008 (a conclusione del II periodo
didattico).
Gli studenti che, per particolari obiettivi
formativi specificamente descritti e motivati, intendono presentare un piano di
studi diverso da quelli previsti dai curricula, possono presentare domanda di
approvazione di un piano di studio individuale alla Ripartizione Didattica entro il
21.9.2007. Tali domande verranno quindi trasmesse alla Facoltà per l’approvazione.
Propedeuticità
Ai fini di un ordinato svolgimento dei
processi di insegnamento e di apprendi-
mento, si consiglia vivamente agli studenti di seguire queste propedeuticità nel
sostenere gli esami:
- Algebra 2: Algebra 1;
- Algebra 3: Algebra 2, Analisi Matematica
2, Geometria 2;
- Algebra 4: Algebra 2, Analisi Matematica
2, Geometria 2;
- Algebra 5: Algebra 2, Analisi Matematica
2, Geometria 2;
- Analisi Matematica 2: Analisi Matematica 1;
- Analisi Matematica 3: Analisi Matematica 2;
- Analisi Matematica 4: Algebra 1, Analisi
Matematica 3, Geometria 2;
- Analisi Matematica 5: Analisi Matematica 4, Algebra 2;
- Analisi Matematica 6: Analisi Matematica 4, Algebra 2;
- Analisi Numerica 1: Algebra 1, Analisi
Matematica 3, Geometria 2, Informatica
1;
- Analisi Numerica 2: Analisi Numerica 1;
- Fisica 2: Fisica 1, Analisi Matematica 2;
- Fisica Matematica: Fisica 2, Analisi
Matematica 4;
- Fisica Moderna: Algebra 1, Fisica 2, Geometria 1;
- Fondamenti della matematica 1 e 2: Algebra 1, Analisi Matematica 3, Geometria 2;
- Geometria 2: Geometria 1;
- Geometria 3: Geometria 2, Algebra 1,
Analisi Matematica 3;
- Geometria 4: Geometria 3, Algebra 2;
- Geometria 5: Algebra 2, Geometria 4;
- Geometria 6: Algebra 2, Geometria 4;
parte generale e ordinamento
- Informatica 2: Informatica 1;
- Logica Matematica 2: Logica Matematica
1;
- Matematica Finanziaria: Analisi Matematica 2;
- Matematiche Complementari 1 e 2: Algebra 1, Analisi Matematica 3, Geometria 2;
- Meccanica Razionale 1: Analisi Matematica 2, Fisica 1, Geometria 2;
- Meccanica Razionale 2: Meccanica Razionale 1;
- Ottimizzazione 1: Algebra 2, Analisi
Matematica 3, Geometria 2, Informatica
1;
- Ottimizzazione 2: Ottimizzazione 1;
- Particelle e interazioni fondamentali: Fisica 2;
- Probabilità 2: Probabilità 1, Analisi Matematica 3;
- Statistica 1: Probabilità 1;
- Statistica 2: Statistica 1.
Tutorato
Ogni studente può scegliere fra i docenti
della Facoltà il proprio tutore che lo potrà
aiutare ad inserirsi nella vita accademica
e a pianificare in modo più efficace le proprie attività formative.
La Facoltà può inoltre istituire apposite
commissioni per trattare problematiche
specifiche, come scelta del curriculum,
programmi di studio all’estero, orientamento alla scelta delle aziende dove effettuare l’eventuale tirocinio.
Lauree
La prova finale o esame di laurea consiste
nella discussione di un elaborato scritto,
la tesi di laurea, redatto sotto la supervisione di un relatore, che deve essere, o
essere stato al momento dell’assegnazione della tesi, un professore ufficiale della
Facoltà o un ricercatore confermato della
stessa.
La tesi si considera assegnata quando la
Segreteria Studenti riceve dallo studente
la domanda di laurea con l’apposito
37
modulo, recante titolo della tesi ed estremi del relatore, da questi debitamente
controfirmato.
La tesi di laurea, comprensiva di indice,
premessa, bibliografia, ed eventuali allegati prodotti dallo studente, va di norma
contenuta fra le 27 mila e le 54 mila battute, corrispondenti a 15-30 pagine. Indicativamente può essere costituita da un
lavoro di rassegna con presentazione critica e bibliografica ragionata, il risultato
di un progetto di esame o di un tirocinio
documentato in forma scritta.
La Segreteria di Presidenza ha il compito
di trasmettere alla Commissione Tesi di
Laurea copia dell’elenco dei laureandi
compilato dalla Ripartizione Didattica
alle scadenze previste. La Commissione
Tesi, presa visione del documento, designerà per ciascun laureando un controrelatore, scelto fra i docenti del Corso di
Laurea in Matematica della Facoltà. In
caso di impossibilità da parte del controrelatore designato, sarà compito di
quest’ultimo trovare un sostituto.
Il laureando discuterà la tesi di laurea con
la Commissione di Laurea, composta da
almeno sette componenti, fra cui, se possibile, relatore e controrelatore della tesi.
In caso di assenza o impedimento, relatore e controrelatore dovranno far pervenire alla Commissione di Laurea in forma
scritta un sintetico parere sulla tesi. La
discussione è pubblica e durerà orientativamente fra i 10 e i 15 minuti.
Dopo la discussione, la Commissione di
Laurea delibera in primo luogo sul superamento della prova finale e sul punteggio da attribuire all’elaborato e alla sua
esposizione. Il punteggio massimo che
può essere attribuito alla prova finale è di
5/110. Se i pareri di cui al punto precedente non risultassero pervenuti in
tempo utile, la Commissione di Laurea
ne prescinderà. La Commissione di Laurea passa poi a valutare il curriculum
degli studi. Si considererà anzitutto la
38
congruità della durata degli studi a partire
dalla prima immatricolazione, attribuendo, in caso di giudizio positivo, un punteggio di 2/110. Il giudizio sarà senz’altro
positivo per gli studenti immatricolati per
la prima volta al Corso di Laurea in Matematica (nuovo ordinamento) che si laureano rispettando la durata normale degli
studi. Si considererà poi l’eventuale presenza di risultati di eccellenza nel curriculum degli studi, attribuendo un punteggio di 0,08/110 ad ogni credito di
esame di profitto superato con la lode,
entro la soglia massima di 3/110. Si considererà infine la media dei voti degli esami
ponderata in base ai crediti attribuiti ai
singoli esami, trasformata in centodecimi.
Il voto finale di laurea sarà la somma,
debitamente arrotondata, delle valutazioni dei quattro elementi di giudizio (dissertazione, durata degli studi, lodi,
media), entro la soglia massima di
110/110.
L’attribuzione della lode può essere proposta solo se il voto risultante è 110/110 e
deriva da un arrotondamento per difetto.
La sua attribuzione viene deliberata su
voto unanime della Commissione.
parte generale e ordinamento
LAUREA DI PRIMO LIVELLO IN
BIOTECNOLOGIE
(classe 1 - Biotecnologie)
[Corso di Laurea interfacoltà:
Medicina veterinaria, Agraria,
Medicina e chirurgia,
Scienze matematiche, fisiche e naturali]
Durata del Corso
3 anni (180 crediti)
Posti disponibili
50
Curricula attivati
- Biotecnologie agrarie
- Biotecnologie medico veterinarie
- Biologia computazionale
- Biotecnologie mediche
Sede del Corso
Udine, via delle Scienze 208
Caratteristiche e finalità del Corso
Il Corso di Laurea in Biotecnologie si propone di preparare figure professionali
con un’adeguata conoscenza di base dei
sistemi biologici, interpretati in chiave
molecolare, cellulare e genomica. Il laureato in Biotecnologie dovrà inoltre possedere le basi culturali e sperimentali
delle tecniche (multidisciplinari) che
caratterizzano il campo in forte e continua espansione nel quale si troverà ad
operare. Gli obiettivi principali nel disegno del programma di preparazione per
lo studente sono: l’elevata flessibilità, una
solida preparazione di base e una buona
conoscenza delle tecnologie comuni
impiegate in ambito biologico (computazionale). È inoltre considerata fondamentale una conoscenza, in termini applicativi, dell’attività di laboratorio biomolecolare e diagnostico con un’adeguata conoscenza anche delle norme che si applicano al settore biotecnologico in riferimento agli aspetti tecnici, economici, giuridici
e bioetici.
parte generale e ordinamento
Sbocchi professionali
Il laureato troverà occupazione nei
seguenti ambiti professionali: gestione
tecnica ed economica delle imprese biotecnologiche; tecnico di laboratorio biomolecolare; attività di protezione ambientale di collaborazione e di diagnostica
nelle aziende sanitarie, pubbliche e private, biotecnologiche; attività di collaborazione e di pianificazione nella gestione
delle risorse vegetali e animali.
Il Corso di Laurea è organizzato in modo
da offrire i curricula di seguito elencati,
facenti capo alle differenti Facoltà coinvolte nel progetto e atti a soddisfare specifiche esigenze professionali:
- Biologia computazionale
Facoltà di Scienze matematiche, fisiche e
naturali
- Biotecnologie agrarie
Facoltà di Agraria
- Biotecnologie medico veterinarie
Facoltà di Medicina veterinaria
- Biotecnologie mediche
Facoltà di Medicina e chirurgia
Gli obiettivi specifici del curriculum in
Biologia computazionale sono atti a fornire le basi sia teoriche sia pratiche per operare in una disciplina nella quale gli
aspetti informatici e computazionali sono
caratterizzanti e promettenti. In particolare verranno fornite le basi per una corretta interpretazione degli aspetti algoritmici e matematici dei principali strumenti utilizzati nella moderna biologia molecolare, verrà fornita un’adeguata conoscenza di base dei principali linguaggi di
programmazione e di interrogazione per
basi di dati comunemente utilizzate in
campo biologico e si svilupperanno i prerequisiti per comprendere le funzionalità
e seguire lo sviluppo dei principali strumenti informatici impiegati nello studio
degli aspetti computazionali della genetica e della biologia molecolare.
39
Prova di ammissione
Il corso di Laurea in Biotecnologie prevede un numero massimo programmato di
60 iscritti per garantire un’efficace didattica in aula e in laboratorio a tutti gli studenti. Per essere ammessi al Corso di
Laurea, gli studenti dovranno superare
una prova di ammissione, che si svolgerà
il 13 settembre 2007 alle ore 14.30 presso
l’Aula H della sede dei Rizzi e sarà articolata nelle seguenti aree: matematica, fisica, chimica, biologia. Le domande di partecipazione alla prova di ammissione
vanno presentate dal 13 luglio 2007 al 6 settembre 2007, ore 12.00.
Calendario delle lezioni
I periodo didattico
- lezioni: dal 24/09/2007 al 30/11/2007
- esami: dal 03/12/2007 al 04/01/2008
II periodo didattico
- lezioni: dal 07/01/2008 al 14/03/2008
- esami: dal 17/03/2008 al 11/04/2008
III periodo didattico
- lezioni: dal 14/04/2008 al 20/06/2008
- esami: dal 23/06/2008 al 19/09/2008
Ordinamento degli studi
Per conseguire la laurea lo studente deve
acquisire 180 crediti, suddivisi uniformemente in tre anni.
Nel II e III anno il corso si articola in insegnamenti specifici relativi al curriculum
scelto dallo studente.
N.B.: Le seguenti informazioni sono aggiornate al 20 maggio 2007. Per i successivi
aggiornamenti consultare la pagina web
della Facoltà: http://www.uniud.it/didattica/facolta/scienze.
Il primo anno di corso prevede insegnamenti comuni a tutti e tre i curricula (per
ogni corso viene indicato anche il settore
scientifico disciplinare corrispondente,
secondo quanto stabilito dal D.M.
509/1999 e successive integrazioni):
40
parte generale e ordinamento
Insegnamenti/attività formative
CFU
Periodo
didattico
S.S.D.
Biochimica 1
Biologia 1
Biologia molecolare 1
Chimica generale
Chimica organica
Matematica
Fisica 1
Fisica 2
Genetica 1
Informatica
Introduzione alla biologia (*)
Introduzione alla zoologia (*)
Statistica 1
6
3
3
5
4
5
4
3
6
6
3
3
6
2-3
3
3
1
2
1
1
2
3
2-3
1
1
2
BIO/10
BIO/13
BIO/11
CHIM/03
CHIM/06
MAT/05
FIS/01
FIS/07
BIO/18
INF/01
BIO/04
BIO/05
SECS-S/01
CFU
Periodo
didattico
S.S.D.
5
6
9
9
3
3
6
7
5
2
1
2
3
3
2
1
1
3
INF/01
BIO/10
BIO/13
BIO/11
CHIM/01
FIS/07
BIO/18
MAT/09
INF/01
5
2
4=3+
1
4
3
2
1
4
3
3
8 = 4+
1+2
+1
1
2
1
INF/01
M-FIL/03
BIO/18
AGR/07
BIO/13
INF/01
BIO/12
MED/04
BIO/07
AGR/01
FIS/01
BIO/09
MED/04/05
BIO/12
- Curriculum Biologia computazionale
Insegnamenti/attività formative
Secondo anno
Algoritmi e strutture dati
Biochimica 2
Biologia 2
Biologia molecolare 2
Chimica analitica
Fisica applicata
Genetica 2
Matematica discreta
Sistemi Operativi
Terzo anno
Basi di dati
Bioetica
Bioinformatica AB (genomica strutturale)
Bioinformatica C (genomica funzionale)
Bioinformatica D
Diagnostica clinica
Diagnostica clinica (laboratorio)
Ecologia
Economia
Fisica 3
Fisiopatologia: applicazioni mediche
nelle biotecnologie
2
3
3
3
2
1
1
1
41
parte generale e ordinamento
Legislazione per le biotecnologie
Organismi geneticamente modificati (*)
Istologia (*)
Statistica 2
Corsi a scelta dello studente (*)
Tirocinio
Prova finale
3
3
3
4
9
8
6
2
3
2
2
IUS/01
AGR/07
BIO/17
SECS-S/01
(*) Nell’ambito dei corsi a scelta dello studente sono consigliati, ma non obbligatori, i seguenti corsi, attivati presso le rispettive Facoltà:
Introduzione alla biologia - CdL interfacoltà in Biotecnologie
Frequenza consigliata al I anno
Introduzione alla zoologia - Facoltà di Medicina veterinaria
Frequenza consigliata al I anno
Organismi geneticamente modificati - CdL interfacoltà in
Biotecnologie
Frequenza consigliata al III anno (**)
3
1
3
1
3
3
In alternativa, potranno venire inseriti, tra gli insegnamenti a scelta, insegnamenti
rientranti nella programmazione didattica delle quattro Facoltà coinvolte (Facoltà di
Agraria, Facoltà di Medicina e Chirurgia, Facoltà di Medicina Veterinaria, Facoltà di
Scienze M.F.N.).
(**) a coloro che non intendono proseguire nel Corso di Laurea Specialistica in Biotecnologie Agrarie, in
quanto l’insegnamento è già presente con il nome di ‘Piante transgeniche’.
Per i curricula relativi a Biotecnologie Agrarie, Mediche e Veterinarie si rimanda alle
Guide ai corsi delle rispettive Facoltà.
Piani di studio
Gli studenti dovranno inoltre acquisire 6
CFU di Lingua Inglese, di cui il CLAV fornisce i servizi didattici e stabilisce le
modalità di svolgimento della relativa
prova, e 1 CFU di Comunicazione.
Il credito di Cultura d’impresa è incluso
nei 3 CFU del corso di Economia.
Scelta del curriculum
Per motivi di disponibilità di posti, non
saranno ammessi più di 15 studenti per
ciascun curriculum. Le preferenze per i
vari curricula vanno espresse al momento
dell’iscrizione al secondo anno di corso. La
distribuzione degli studenti tra i vari curricula verrà effettuata tenendo conto delle
preferenze espresse e sulla base di una
graduatoria basata sul numero di crediti
conseguiti entro il 21.9.2007 e sui voti
conseguiti.
Trasferimenti e passaggi
Gli studenti provenienti da altri Atenei e
da altri corsi di laurea dell’Università di
Udine devono superare la prova di
ammissione.
Tirocinio
1. Al fine di realizzare momenti di alternanza tra studio e lavoro e di agevolare
l’acquisizione di conoscenze dirette sul
mondo del lavoro e delle professioni
secondo quanto previsto dal Decreto del
42
Ministero del Lavoro n. 142/1998, lo studente è tenuto a svolgere periodi di tirocinio formativo per un numero di crediti
pari ad almeno 8 crediti. Preferibilmente
il tirocinio è svolto in aziende ed istituzioni esterne all’Ateneo di Udine.
2. Il tirocinio può essere sostituito con
periodi di esercitazioni e con attività di
laboratorio in strutture interne all’Ateneo
di Udine, specialmente qualora non
siano presenti sul territorio enti o strutture esterne tali da permettere un corretto
espletamento del tirocinio.
3. L’attività di tirocinio è promossa e coordinata da un componente del Consiglio di
Corso di Laurea appositamente nominato.
Tutorato
Ad ogni studente, all’atto della immatricolazione, verrà attribuito un tutore scelto
fra i docenti della Facoltà che lo aiuterà ad
inserirsi nella vita accademica e a pianificare in modo più efficace i propri studi.
Lauree
L’esame di laurea in Biotecnologie consiste nella discussione pubblica di una tesi
di laurea. Le tesi di laurea sono divise in
due categorie:
- Tesi compilativa: è un lavoro di rassegna
con presentazione critica e bibliografia
ragionata;
- Tesi sperimentale: è un lavoro sperimentale, debitamente corredato con presentazione critica e bibliografia ragionata. È
previsto il vaglio di un controrelatore.
Il voto finale, espresso in centodecimi, è
formato da una votazione di base e da tre
incrementi, fino a un massimo di 11
punti. La votazione di base è costituita
dalla media pesata delle votazioni riportate dal candidato nei singoli esami di profitto, trasformata poi in centodecimi. Il
peso di un esame è uguale al numero di
crediti attribuiti al relativo insegnamento.
Sono considerati solo gli esami con punteggio numerico.
parte generale e ordinamento
Il primo incremento, da 0 a un massimo
di 4 punti, è determinato in base al rispetto dei tempi previsti per il conseguimento
del titolo di studio e al numero delle lodi,
secondo la seguente formula:
min{ 0.04 M, α M + n · 0.3 }
dove M è la media in centodecimi, n è il
numero di lodi conseguite negli esami di
profitto e a è un coefficiente che dipende
dai tempi richiesti per concludere il percorso di studi, e valutato secondo i
seguenti criteri:
- α = 0.04 per le lauree conseguite entro
le prime due sessioni (periodo giugnoottobre) del III anno effettivo di corso;
- α = 0.03 per le successive sessioni
autunnale e invernale (straordinaria);
- α = 0.02 per le prime tre sessioni (estate-autunno) del IV anno effettivo di corso;
- α = 0 per tempi di conseguimento della
laurea più lunghi.
Il secondo incremento è un numero
determinato dalla Commissione di laurea
in base alla dissertazione e alla presentazione, compreso tra 0 e 6 per la tesi sperimentale e tra 0 e 3 per la tesi compilativa.
Il terzo incremento è pari a 1 punto ed è
assegnato per gli studenti che avranno
usufruito di un periodo di studio all’estero di almeno 2 mesi.
parte generale e ordinamento
MASTER DI PRIMO LIVELLO
ON-LINE IN
OPEN DISTANCE LEARNING
Titolo rilasciato in modo congiunto con
l’Università di Macerata e l’Università di
Camerino.
Master erogato interamente via Web.
È rivolto a coloro che intendono approfondire le proprie competenze nell’ambito
del settore multidisciplinare della formazione, della comunicazione e delle tecnologie informatiche.
Requisiti per l’accesso
Per essere ammessi al Master in Open
Distance Learning (ODL) è richiesto il
Diploma di Laurea Triennale o di Laurea
Magistrale o di Laurea vecchio ordinamento (quadriennale o quinquennale) in
tutti i campi disciplinari, nonché coloro
che siano in possesso del titolo di studio
conseguito presso università straniere
previa dichiarazione di equivalenza del
titolo.
L’ammissione al corso avverrà secondo
specifiche modalità ed è previsto il pagamento di una tassa di iscrizione. Per
informazioni più dettagliate si consulti il
sito del Master: http://celfi.unimc.it/odl/.
Corso
Il Master ha durata annuale con percorso
formativo di 60 crediti (validi per 3 punti
in graduatoria docenti superiori) pari a
1500 ore di impegno complessivo, compreso lo studio individuale.
Il percorso formativo è organizzato in 11
moduli e si svolgerà totalmente on-line ad
eccezione della prova finale. È strutturato
in studio e attività didattiche sia individuali che di gruppo (per un totale di 45
crediti), attività di stage o di project work
(300 ore - 12 crediti).
I Moduli riguardano i seguenti argomenti: e-learning, storia e modelli; orienta-
43
mento e conoscenze di base; struttura
informatica degli ambienti di e-learning;
progettazione, usabilità e accessibilità;
comunicazione multimediale; Web 3D e
realtà virtuale; learning object; connettività ed interattività; knowledge management e information filtering su Web;
gestione delle risorse umane coinvolte
nell’e-learning; valutazione e qualità
dell’e-learning.
La frequenza di tutti i moduli è obbligatoria e verrà verificata sia in base al tracciamento, sia in base all’esecuzione delle
consegne. La valutazione delle competenze acquisite dallo studente nei diversi
insegnamenti sarà misurata lungo tutto il
percorso formativo.
La prova finale consiste nella discussione
di un progetto completo di documentazione e riferimenti teorici davanti ad una
apposita Commissione. I risultati conseguiti nelle prove intermedie concorreranno, insieme alla prova finale (3 crediti), a
determinare il voto finale di Master,
espresso in centesimi.
Figura professionale
Il campo dell’e-learning è in continua
espansione, sia nelle organizzazioni private che in quelle pubbliche, e richiede
figure professionali appositamente formate con competenze in differenti campi
e comunque capaci di operare interagendo con gli esperti dei settori coinvolti.
L’attualità delle tematiche richiede figure
professionali con profili nuovi con competenze nei tre settori della comunicazione, della formazione e dell’informatica.
In ognuno dei tre settori il Master prevede delle competenze finali sia a livello
base, che a livello esperto. Ogni candidato
al Master dovrà indicare in base alla sua
formazione, sia formale sia informale, in
quale di questi tre settori intende raggiungere il livello esperto. Per livello base
si intende: la conoscenza delle tematiche
principali, la conoscenza degli aspetti
44
anche tecnologici specifici, la capacità di
prendere decisioni, effettuare scelte e
operare con esperti del settore. Per livello
esperto si intende: la capacità di progettare e realizzare prodotti del settore.
Pertanto la figura professionale in uscita
è quella di un esperto che sappia progettare percorsi di formazione on-line sia
per la formazione iniziale sia per la formazione in servizio, sappia predisporre
l’ambiente on-line per tale formazione e
sappia gestire un corso di formazione online in qualità di direttore organizzativo o
tecnologico o didattico.
I crediti acquisiti nel Master in ODL possono essere utilizzati verso le Lauree Specialistiche in Informatica e Tecnologie
dell’Informazione dell’Università di
Udine.
parte generale e ordinamento
MASTER DI PRIMO LIVELLO IN
SISTEMI INFORMATIVI
TERRITORIALI
Il Master in Sistemi Informativi Territoriali è un corso post-universitario (di
primo livello), finalizzato all’approfondimento delle conoscenze teorico-pratiche
delle tematiche relative alla gestione del
territorio. Tale gestione è caratterizzata
oggigiorno da un notevole grado di complessità dovuto all’interrelazione tra i vari
aspetti ambientali, economici e legislativi
che ne condiziona attività e sviluppo, e
può trarre notevole beneficio dall’impiego degli strumenti offerti dalla moderna
tecnologia informatica. La crescente
domanda di utilizzo della cartografia
numerica e di applicazione dei sistemi
informativi geografici presso gli Enti Territoriali, necessita di figure di elevata professionalità in grado di operare con tali
strumenti nel contesto della gestione
delle risorse e della pianificazione territoriale ed ambientale. Tali figure richiedono la conoscenza approfondita delle
metodologie e delle tecniche di rilevamento e rappresentazione dei dati territoriali, della loro integrazione ed elaborazione, dell’impiego dei sistemi informativi territoriali e dei metodi d’analisi per i
processi di scelta e decisione in ambienti
complessi.
Ulteriori informazioni al sito:
http://www.uniud.it/didattica/post_laurea/master/primo
ALTRI CORSI DI MASTER
DI PRIMO LIVELLO
La Facoltà collabora alla realizzazione di
corsi di Master di primo livello. L’elenco
aggiornato è disponibile sul sito:
http://www.uniud.it/didattica/facolta/sci
enze
parte generale e ordinamento
LAUREA SPECIALISTICA IN
INFORMATICA
(classe 23/s - Lauree Specialistiche
in Informatica)
Durata del Corso
2 anni (120 crediti)
Sede del Corso
Udine, via delle Scienze 208
Finalità del Corso
Il Corso di Laurea Specialistica in Informatica (Classe 23/S) ha lo scopo di fornire ai laureati solide conoscenze sia dei
fondamenti che degli aspetti applicativi
dei vari settori dell’informatica, nonché
delle metodologie informatiche di analisi,
di progettazione e di valutazione.
Requisiti per l’accesso
Per essere ammessi al Corso di Laurea
Specialistica in Informatica occorre essere in possesso di un diploma di laurea o di
altro titolo di studio conseguito all’estero,
riconosciuto idoneo secondo la normativa vigente.
L’ammissione al Corso di Laurea Specialistica è subordinata al riconoscimento
dei crediti utili ai fini del conseguimento
della Laurea Specialistica. L’ammissione
viene concessa se e solo se i crediti utili
sono almeno 120.
Il possesso del titolo di laurea in Informatica o Scienze dell’Informazione del vecchio ordinamento, conseguiti presso qualunque Università o il possesso del titolo
di laurea in Informatica, classe 26, curriculum ‘Percorso base per le lauree specialistiche’, conseguito presso l’Università
degli Studi di Udine, non richiedono
alcuna condizione ulteriore in termini di
requisiti curricolari e di preparazione personale. Coloro che hanno conseguito la
laurea in Informatica, classe 26, presso
l’Università di Udine seguendo un curri-
45
culum diverso da quello sopra indicato
possono comunque aver riconosciuti i
180 crediti già conseguiti, sulla base del
curriculum che scelgono alla Laurea Specialistica.
Qualora i crediti riconosciuti siano meno
di 180 vengono indicati specifici obblighi
formativi (debiti) da soddisfare nel primo
anno di corso.
Caratteristiche del corso e organizzazione degli studi
Per conseguire la Laurea Specialistica lo
studente deve acquisire 120 crediti suddivisi uniformemente in due anni. Il piano
di studi prevede un insieme di insegnamenti obbligatori per tutti gli iscritti e
degli insegnamenti obbligatori per ciascun curriculum (i crediti relativi ad alcuni di questi insegnamenti possono essere
già stati acquisiti nel corso della precedente laurea triennale). Attualmente
sono previsti due diversi curricula:
- Linguaggi e algoritmi, orientato verso un
approfondimento metodologico, in particolare per quanto riguarda l’analisi degli
algoritmi, lo studio delle proprietà dei linguaggi di programmazione e l’applicazione di tecniche formali per verificare la
rispondenza del software ai requisiti;
- Progetto e sviluppo di sistemi software,
dedicato ad un approfondimento delle
principali applicazioni dei sistemi informatici, alla loro analisi, progettazione,
realizzazione e valutazione della qualità.
Adeguato risalto viene posto sulle applicazioni di carattere più innovativo.
Gli studenti possono acquisire i crediti
rimanenti attingendo ad un ulteriore
elenco di insegnamenti, a seconda del
curriculum scelto. È prevista attività di
laboratorio e di tesi.
Sbocchi professionali
I laureati potranno entrare nel mondo
dell’Informatica nelle sue varie sfaccettature, dalla ricerca all’applicazione. La pre-
46
parazione dei laureati specialistici in
informatica consente loro di proseguire
la propria carriera sia nel mondo della
ricerca che delle organizzazioni (pubbliche e private) dove possono dirigere,
gestire ed innovare processi di informatizzazione e automazione. L’approccio
seguito nell’ordinamento degli studi consentirà ai laureati di cogliere gli elementi evolutivi dell’Informatica, fornendo
nel contempo gli strumenti atti a rimanere aggiornati nel tempo. I laureati
potranno altresì accedere ai corsi di
Dottorato in Informatica, che già da
parte generale e ordinamento
anni vengono offerti dall’Università di
Udine.
Ordinamento degli studi
Sono attivati i seguenti corsi (per ogni
corso viene indicato anche il settore
scientifico disciplinare corrispondente,
secondo quanto stabilito dal D.M.
509/1999 e successive integrazioni):
N.B.: Le seguenti informazioni sono aggiornate al 20 maggio 2007. Per i successivi
aggiornamenti consultare la pagina web
della Facoltà: http://www.uniud.it/didattica/facolta/scienze.
Primo anno
Corsi
Algoritmi avanzati
Algoritmi e complessità
Commercio elettronico
Compilatori
Complementi di basi di dati
Design del suono
High performance computing
Ingegneria del software 2
Intelligenza artificiale
Interazione uomo-macchina 1
Linguaggi di nuova concezione
Linguaggi di programmazione 1
Linguaggi di programmazione 2
Logica matematica
Metodi formali dell’informatica 1
Progettazione e analisi orientate agli oggetti
Progettazione siti web
Reti di calcolatori e sicurezza
Ricerca operativa
Semantica dei linguaggi di programmazione
Sistemi informativi
Sistemi multimediali
Sistemi reattivi: automi, logica e algoritmi
Statistica matematica 1
Tecnologie XML
Teoria dei sistemi 1
Teoria dell’informazione
Teoria e tecniche di elaborazione dell’immagine
CFU
Periodo
didattico
S.S.D.
6
6
8
6
6
3
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
3
2
1-2
1
2
1
3
3
3
2
3
1
2
1
2-3
2
1
2
1
2
2-3
2-3
3
2
1
2
1
1
INF/01
INF/01
INF/01
INF/01
INF/01
ING-INF/05
MAT/08
ING-INF/05
ING-INF/05
INF/01
INF/01
INF/01
INF/01
MAT/01
INF/01
ING-INF/05
ING-INF/05
INF/01
MAT/09
INF/01
ING-INF/05
ING-INF/05
INF/01
MAT/06
INF/01
ING-INF/04
INF/01
ING-INF/05
47
parte generale e ordinamento
Secondo anno
Corsi
Basi di dati spaziali
Complementi di compilatori
Data warehouse
Fondamenti dell’informatica 2
Geometria computazionale
Grafica 3D interattiva
Immagini e multimedialità
Informatica medica
Interazione uomo-macchina 2
Linguaggi e modelli per global computing
Matematica computazionale
Model checking
Modelli e algoritmi per la gestione delle risorse
Ottimizzazione 1
Ottimizzazione 2
Personalizzazione dei contenuti web
Psicologia della comunicazione
Robotica
Sistemi esperti
Statistica matematica 2
Interpretazione astratta e analisi automatica del software
Tecnologie web
Teoria dei sistemi 2
Web information retrieval
Web semantico
Laboratori avanzati (2 corsi da 5 CFU ciascuno)
Corsi a scelta dello studente
Prova finale
Piani di studio
Tutti gli studenti devono acquisire 84
crediti per insegnamenti secondo il
seguente piano di studi:
1) un insieme di insegnamenti è obbliga-
CFU
Periodo
didattico
S.S.D.
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
10
6
20
2
2
(v.SIGI)
2
1
1
2
2
3
2-3
3
3
2
1
2
1
3
2-3
2
3
1
2-3
3
3
2
INF/01
INF/01
ING-INF/05
INF/01
ING-INF/04
ING-INF/05
ING-INF/05
ING-INF/05
INF/01
INF/01
MAT/08
INF/01
MAT/09
MAT/09
MAT/09
ING-INF/05
M-PSI/01
ING-INF/05
ING-INF/05
MAT/06
INF/01
ING-INF/05
ING-INF/04
ING-INF/05
ING-INF/05
torio per tutti gli iscritti alla Laurea Specialistica (i crediti relativi ad alcuni di
questi insegnamenti possono essere già
stati conseguiti nel corso della precedente laurea triennale).
Crediti obbligatori per tutti i curricula
Insegnamenti/attività formative
Compilatori
Complementi di basi di dati
Fondamenti dell’informatica 2
Intelligenza artificiale
Linguaggi di programmazione 1
CFU
6
6
6
6
6
48
parte generale e ordinamento
Linguaggi di programmazione 2
Logica matematica
Metodi formali dell’informatica 1
Ricerca operativa
Laboratori avanzati (2 corsi da 5 CFU ciascuno)
Corsi a scelta dello studente (*)
Prova finale
6
6
6
6
10
6
20
(*) La Facoltà ha attivato per gli studenti interessati il corso di Storia dell’informatica (3 CFU) da inserire
tra i corsi a scelta dello studente (6 CFU).
2) I rimanenti crediti (minori o uguali a
48) devono essere acquisiti fra gli insegnamenti previsti dal curriculum prescelto:
Curriculum ‘Linguaggi e algoritmi’: ha la
finalità di affinare le capacità di analizzare i problemi e progettare soluzioni informatiche innovative. Viene dato particola-
re rilievo allo studio degli algoritmi, dei
linguaggi di programmazione più opportuni per la loro implementazione e dei
metodi formali per la verifica della
rispondenza del software ai requisiti.
Nell’ambito del curriculum ‘Linguaggi e
algoritmi’ lo studente può scegliere uno
dei seguenti 2 pacchetti di insegnamenti:
LA1
Insegnamenti/attività formative
CFU
Linguaggi di nuova concezione
Linguaggi e modelli per il global computing
Semantica dei linguaggi di programmazione
Interpretazione Astratta e Analisi Automatica del Software
Allo studente rimangono fino a 24 crediti
da scegliere tra tutti i corsi attivati alle lauree specialistiche in Informatica e Tecnologie dell’Informazione. Almeno un
6
6
6
6
corso deve comunque obbligatoriamente
essere di Informatica (cioè appartenente
ai settori scientifico-disciplinari INF/01 o
ING-INF/05).
LA2
Insegnamenti/attività formative
CFU
Algoritmi avanzati
Algoritmi e complessità
High performance computing
Modelli e algoritmi per la gestione delle risorse
Sistemi reattivi: automi, logica e algoritmi
Allo studente rimangono fino a 18 crediti
da scegliere liberamente tra tutti i corsi
6
6
6
6
6
attivati alle lauree specialistiche in Informatica e Tecnologie dell’Informazione.
49
parte generale e ordinamento
Curriculum ‘Progetto e sviluppo di sistemi
software’: è volto a un approfondimento
delle principali applicazioni dei sistemi
informatici, alla loro analisi, progettazione, realizzazione e controllo di qualità.
Nell’ambito del curriculum ‘Progetto e
sviluppo di sistemi software’ lo studente
può scegliere uno dei seguenti 3 pacchetti di insegnamenti:
PS1
Insegnamenti/attività formative
CFU
Ingegneria del software 2
Progettazione e analisi orientate agli oggetti
Sistemi informativi
2 corsi a scelta tra:
- Data warehouse
- Informatica medica
- Personalizzazione dei contenuti web
- Progettazione siti web
- Reti di calcolatori e sicurezza
- Web information retrieval
Allo studente rimangono fino a 18 crediti
da scegliere liberamente tra tutti i corsi
6
6
6
6
6
6
6
6
6
attivati alle lauree specialistiche in Informatica e Tecnologie dell’Informazione.
PS2
Insegnamenti/attività formative
CFU
Interazione uomo-macchina 1
Interazione uomo-macchina 2
Ingegneria del software 2
2 corsi a scelta tra:
- Grafica 3D interattiva
- Progettazione siti web
- Psicologia della comunicazione
- Sistemi multimediali
Allo studente rimangono fino a 18 crediti
da scegliere liberamente tra tutti i corsi
6
6
6
6
6
6
6
attivati alle lauree specialistiche in Informatica e Tecnologie dell’Informazione.
PS3
Insegnamenti/attività formative
Ingegneria del software 2
Sistemi multimediali
Teoria e tecniche di elaborazione dell’immagine
CFU
6
6
6
50
2 corsi a scelta tra:
- Geometria computazionale
- Immagini e multimedialità
- Robotica
- Sistemi informativi
- Tecnologie web
Allo studente rimangono fino a 18 crediti
da scegliere liberamente tra tutti i corsi
attivati alle lauree specialistiche in Informatica e Tecnologie dell’Informazione.
Piani di studio individuali
Gli studenti che intendono proporre un
piano di studi individuale devono presentare domanda alla Ripartizione Didattica
entro il 5 ottobre 2007.
Lauree
L’esame di laurea specialistica in Informatica consiste nella discussione pubblica di una tesi di laurea. Le tesi di laurea
sono divise in tre categorie:
- Tesi compilativa: è un lavoro di rassegna
con presentazione critica e bibliografica
ragionata; è richiesta la nomina del controrelatore solo su esplicita richiesta del
relatore (punteggio massimo attribuibile
≤ 5 punti).
- Tesi sperimentale: lavoro comprensivo di
una parte compilativa (vedi sopra) e della
documentazione di un lavoro personale
del candidato, i cui risultati siano confrontati criticamente con la letteratura; è
richiesta la nomina del controrelatore
(punteggio massimo attribuibile < 9
punti).
- Tesi di ricerca: lavoro strutturato come
per una tesi sperimentale, con contributi
originali; è richiesta la nomina del controrelatore e del supervisore (punteggio
massimo attribuibile ≤ 11 punti).
Il voto finale, espresso in centodecimi, è
formato da una votazione di base e da un
incremento. La votazione di base è costituita tenendo conto dei voti riportati negli
parte generale e ordinamento
6
6
6
6
6
esami di profitto della Laurea Triennale e
della Laurea Specialistica secondo la
seguente formula: α1A + α2B
con α1 = 0.3 peso assegnato agli esami
della Laurea triennale e α 2 = 0.7 peso
assegnato agli esami della Laurea Specialistica.
I parametri A e B sono calcolati nel
seguente modo. A è la media pesata, con
decimali, delle votazioni riportate dal candidato nei singoli esami di profitto della
Laurea triennale i cui CFU sono stati riconosciuti per l’accesso alla Laurea Specialistica (con un massimo di 60 CFU di debito), trasformata poi in centodecimi. B è la
media pesata, con decimali, delle votazioni riportate dal candidato nei singoli
esami di profitto della Laurea Specialistica e negli esami, se previsti dal suo piano
di studi sostenuti in aggiunta per compensare il debito formativo assegnatogli
per l’accesso alla Laurea Specialistica),
trasformata poi in centodecimi. Per il calcolo della media non si tiene conto del
voto finale di Laurea triennale, dei crediti
relativi al tirocinio e di tutti quegli esami
con credito che non si concludono con
una votazione.
L’incremento è un numero razionale
compreso tra 0 ed 11, determinato dalla
commissione di laurea in base alla dissertazione ed alla sua presentazione. La
Commissione può anche tenere conto del
tempo impiegato dallo studente per completare il proprio curriculum di studio.
L’eventuale lode deve essere determinata
all’unanimità; in ogni caso è da tenere in
dovuto conto la presenza di lodi nel curriculum degli esami di profitto.
parte generale e ordinamento
LAUREA SPECIALISTICA IN
TECNOLOGIE DELL’INFORMAZIONE
(classe 23/S - Lauree Specialistiche
in Informatica)
Durata del Corso
2 anni (120 crediti)
Sede del Corso
Udine, via delle Scienze 208
Finalità del Corso
La Laurea Specialistica in Tecnologie
dell’Informazione (Classe 23/S) ha lo
scopo di formare una figura professionale esperta nelle moderne tecnologie
dell’informazione e della comunicazione,
con alta specializzazione nell’analisi,
nella progettazione, nella realizzazione e
nella gestione di sistemi innovativi complessi per la gestione dell’informazione e
della comunicazione, nell’ambito di organizzazioni sia pubbliche che private.
Requisiti per l’accesso
Per essere ammessi al Corso di Laurea
Specialistica in Tecnologie dell’Informazione occorre essere in possesso di un
diploma di laurea o di altro titolo di studio
conseguito all’estero, riconosciuto idoneo
secondo la normativa vigente.
L’ammissione al Corso di Laurea Specialistica è subordinata al riconoscimento
dei crediti utili ai fini del conseguimento
della Laurea Specialistica. L’ammissione
viene concessa se e solo se i crediti utili
sono almeno 120.
Il possesso del titolo di laurea in Informatica o Scienze dell’Informazione del vecchio ordinamento, conseguiti presso qualunque Università o il possesso del titolo
di laurea in TWM, classe 26, conseguito
presso l’Università degli Studi di Udine,
non richiedono alcuna condizione ulteriore in termini di requisiti curricolari e
di preparazione personale.
Qualora i crediti riconosciuti siano meno
51
di 180 vengono indicati specifici obblighi
formativi (debiti) da soddisfare nel primo
anno di corso.
Caratteristiche del Corso e organizzazione
Per conseguire la laurea lo studente deve
acquisire 120 crediti. Il piano di studi prevede un insieme di corsi obbligatori dedicati a rafforzare le conoscenze metodologiche e ad estendere le conoscenze di
base nei settori della programmazione,
dello sviluppo del software ed del progetto di database e di sistemi web.
I corsi a scelta dello studente rappresentano più di un terzo dei crediti formativi, e
coprono numerosi settori delle Tecnologie dell’Informazione ed in particolare di
aree che da anni sono oggetto di studio
presso l’Università di Udine. Ciò permette lo svolgimento di progetti didattici e
tesi all’interno dei Laboratori di ricerca, al
fianco dei ricercatori e nell’ambito di
numerosi progetti di ricerca e sviluppo di
interesse internazionale.
Sbocchi professionali
Le nuove esigenze del mercato del lavoro
nel campo delle Tecnologie dell’Informazione e della Comunicazione (ICT)
richiedono solide basi metodologiche,
forte specializzazione, profili tecnici e
professionali elevati. La Laurea Specialistica in Tecnologie dell’Informazione ha
lo scopo di costruire delle figure culturalmente e tecnicamente mature, in grado
di affrontare problematiche e fenomeni
che diventano sempre più complessi ed
articolati, di padroneggiare le tecnologie
più avanzate, in grado altresì di prendere,
in prospettiva, il ruolo di dirigenti gestori
ed innovatori, fornendo nel contempo
competenze e sensibilità applicative e tecnico-progettuali necessarie per inserirsi a
pieno titolo nel mondo dell’ICT.
Gli sbocchi professionali sono quindi
assai vasti: un obiettivo primario è costi-
52
tuito dalle organizzazioni che producono
o forniscono servizi nel specifico campo
dell’ICT, ma un altro enorme bacino è
rappresentato della organizzazioni che,
pur non operando nel settore dell’ICT,
utilizzano le nuove tecnologie informatiche come elemento fondamentale del
loro funzionamento e del loro vantaggio
competitivo, necessitando quindi di figure professionali in grado di orientare e
gestire le scelte in campo informatico, di
progettare soluzioni adeguate e personalizzate, di gestire processi di riorganizzazione basati sulle tecnologie informatiche, di gestire progetti di sviluppo di
sistemi informativi innovativi. Le competenze dei laureati riguardano tutti gli
parte generale e ordinamento
aspetti delle attività necessarie nell’ambito dell’intero ciclo di pianificazione, sviluppo, certificazione della qualità, e
gestione dei sistemi e dei progetti informatici.
Ordinamento degli studi
Sono attivati i seguenti corsi (per ogni
corso viene indicato anche il settore
scientifico disciplinare corrispondente,
secondo quanto stabilito dal D.M.
509/1999 e successive integrazioni):
N.B.: Le seguenti informazioni sono aggiornate al 20 maggio 2007. Per i successivi
aggiornamenti consultare la pagina web
della Facoltà: http://www.uniud.it/didattica/facolta/scienze.
Primo anno
Corsi
Algoritmi e complessità
Complementi di basi di dati
Design del suono
Fondamenti e metodi dell’informatica
Grafica 3D interattiva
Ingegneria del software 2
Linguaggi di programmazione
Metodi numerici per l’informatica
Progettazione e analisi orientate agli oggetti
Sistemi esperti
Sistemi informativi in rete
Tecnologie XML
Teoria dei sistemi
Teoria e tecniche di elaborazione dell’immagine
Web information retrieval
CFU
Periodo
didattico
S.S.D.
6
6
3
6
6
6
6
6
6
6
6
6
6
6
6
2
2
1
2-3
1
3
1
1
2
2
2-3
1
2
1
3
INF/01
INF/01
ING-INF/05
INF/01
ING-INF/05
ING-INF/05
INF/01
MAT/08
INF/01
ING-INF/05
ING-INF/05
INF/01
ING-INF/04
ING-INF/05
ING-INF/05
CFU
Periodo
didattico
S.S.D.
3
3
6
6
6
1
1
2
2
3
ING-INF/05
ING-INF/05
ING-INF/05
ING-INF/05
INF/01
Secondo anno
Corsi
E-government
E-learning
Immagini e multimedialità
Informatica medica
Interazione uomo macchina 2
53
parte generale e ordinamento
Personalizzazione di contenuti web
Qualità e certificazioni web
Ricerca operativa
Teoria dell’informazione
Sistemi mobili e wireless
Web design
Web semantico
Laboratori avanzati (*)
Corsi a scelta dello studente (**)
Prova finale
6
3
6
6
6
3
6
10
6
26
1
2
1
1
1
3
2
ING-INF/05
INF/01
MAT/09
INF/01
INF/01
ING-INF/05
ING-INF/05
(*) Gli studenti devono acquisire 10 CFU per attività di laboratorio (due corsi di laboratorio avanzato per
5 crediti ciascuno) associati ad uno dei corsi attivati, a scelta dello studente, oppure i corsi di Laboratorio
avanzato di Tecnologie Lato Server (5 CFU) e/o Laboratorio avanzato di Tecniche di Comunicazione (5
CFU), specificamente offerti dalla Facoltà.
(**) La Facoltà ha attivato per gli studenti interessati il corso di Storia dell’informatica (3 CFU) da inserire tra i corsi a scelta dello studente (6 CFU).
Piani di studio
Tutti gli studenti devono acquisire 78 crediti per insegnamenti secondo il seguente piano di studi:
1) un insieme di insegnamenti è obbliga-
torio per tutti gli iscritti alla Laurea Specialistica (i crediti relativi ad alcuni di
questi insegnamenti possono essere già
stati conseguiti nel corso della precedente
laurea triennale):
Insegnamenti/attività formative
Complementi di basi di dati
Ingegneria del software 2
Linguaggi di programmazione
Metodi numerici per l’informatica
Ricerca operativa
Teoria dei sistemi
un insegnamento a scelta tra:
- Fondamenti e Metodi dell’Informatica
- Teoria dell’Informazione
Laboratori avanzati (2 corsi da 5 CFU ciascuno)
Corsi a scelta dello studente
Prova finale
CFU
6
6
6
6
6
6
6
6
10
6
26
2) I rimanenti crediti devono essere acquisiti fra gli insegnamenti nel seguente elenco
di insegnamenti:
Insegnamenti/attività formative
Algoritmi e complessità
Complementi di tecniche di comunicazione
CFU
6
3
54
parte generale e ordinamento
Design del suono
E-government
E-learning
Fondamenti e metodi dell’informatica
Grafica 3D interattiva
Immagini e multimedialità
Informatica medica
Interazione uomo-macchina 2
Personalizzazione di contenuti web
Progettazione e analisi orientate agli oggetti
Qualità e certificazioni web
Sistemi esperti
Sistemi informativi in rete
Sistemi mobili e wireless
Tecnologie XML
Teoria dell’informazione
Teoria e tecniche di elaborazione dell’immagine
Web design
Web information retrieval
Web semantico
Piani di studio individuali
Gli studenti che intendono proporre un
piano di studi individuale devono presentare domanda alla Ripartizione Didattica
entro il 5 ottobre 2007.
Lauree
L’esame di laurea specialistica in Tecnologie dell’Informazione consiste nella discussione pubblica di una tesi di laurea. Le tesi
di laurea sono divise in tre categorie:
- Tesi compilativa: è un lavoro di rassegna
con presentazione critica e bibliografica
ragionata; è richiesta la nomina del controrelatore solo su esplicita richiesta del
relatore (punteggio massimo attribuibile
≤ 5 punti).
- Tesi sperimentale: lavoro comprensivo di
una parte compilativa (vedi sopra) e della
documentazione di un lavoro personale
del candidato, i cui risultati siano confrontati criticamente con la letteratura; è
richiesta la nomina del controrelatore
(punteggio massimo attribuibile < 9
punti).
3
3
3
6
6
6
6
6
6
6
3
6
6
6
6
6
6
3
6
6
- Tesi di ricerca: lavoro strutturato come
per una tesi sperimentale, con contributi
originali; è richiesta la nomina del controrelatore e del supervisore (punteggio
massimo attribuibile ≤ 11 punti).
Il voto finale, espresso in centodecimi, è
formato da una votazione di base e da un
incremento. La votazione di base è costituita tenendo conto dei voti riportati negli
esami di profitto della Laurea Triennale e
della Laurea Specialistica secondo la
seguente formula: α1A + α2B
con α1 = 0.3 peso assegnato agli esami
della Laurea triennale e α 2 = 0.7 peso
assegnato agli esami della Laurea Specialistica.
I parametri A e B sono calcolati nel
seguente modo. A è la media pesata, con
decimali, delle votazioni riportate dal candidato nei singoli esami di profitto della
Laurea triennale i cui CFU sono stati riconosciuti per l’accesso alla Laurea Specialistica (con un massimo di 60 CFU di debito), trasformata poi in centodecimi. B è la
media pesata, con decimali, delle votazio-
55
parte generale e ordinamento
ni riportate dal candidato nei singoli
esami di profitto della Laurea Specialistica e negli esami, se previsti dal suo piano
di studi sostenuti in aggiunta per compensare il debito formativo assegnatogli
per l’accesso alla Laurea Specialistica),
trasformata poi in centodecimi. Per il calcolo della media non si tiene conto del
voto finale di Laurea triennale, dei crediti
relativi al tirocinio e di tutti quegli esami
con credito che non si concludono con
una votazione.
L’incremento è un numero razionale
compreso tra 0 ed 11, determinato dalla
commissione di laurea in base alla dissertazione ed alla sua presentazione. La
Commissione può anche tenere conto del
tempo impiegato dallo studente per completare il proprio curriculum di studio.
L’eventuale lode deve essere determinata
all’unanimità; in ogni caso è da tenere in
dovuto conto la presenza di lodi nel curriculum degli esami di profitto.
LAUREA SPECIALISTICA IN
MATEMATICA
(classe 45/S - Matematica)
Durata del Corso
2 anni (120 crediti)
Sede del Corso
Udine, via delle Scienze 208
Caratteristiche e finalità del Corso
In generale il Corso di Laurea Specialistica in Matematica (classe 45/S) si pone
l’obiettivo formativo specifico di completare la formazione dello studente dotandolo di una solida preparazione di base
sia nelle discipline matematiche più tradizionali che in quelle di più recente sviluppo, mettendolo in condizione di
coglierne e sfruttarne i profondi collegamenti.
In particolare il Corso di Laurea, nei
rispettivi curricula, si propone l’obiettivo
specifico di:
Curriculum generale: fornire allo studente
una solida base matematica che gli permetta di proseguire gli studi verso il dottorato di ricerca e in generale di avviarsi
alla ricerca nella matematica più teorica;
Curriculum didattico: fornire allo studente
un’ulteriore preparazione, rispetto alla
laurea triennale, nella didattica della
matematica con competenze in quelle
discipline che nell’insegnamento tradizionalmente affiancano la matematica;
Curriculum applicativo: fornire allo studente, oltre ad una solida base e mentalità
matematica, quelle competenze specifiche che gli permettano di affrontare l’attività professionale con mentalità e capacità innovative in quei settori dove l’attività del matematico applicato è particolarmente richiesta, quali quello gestionale,
quello statistico-economico, quello computazionale, quello logico-informatico,
quello fisico-modellistico.
56
Requisiti per l’accesso
Per essere ammessi al Corso di Laurea
Specialistica in Matematica occorre essere in possesso di un diploma di laurea o di
altro titolo di studio conseguito all’estero,
riconosciuto idoneo secondo la normativa vigente.
L’ammissione al Corso di Laurea Specialistica è subordinata al riconoscimento
dei crediti utili ai fini del conseguimento
della laurea specialistica. L’ammissione
viene concessa se e solo se i crediti utili
sono almeno 120.
Il possesso del titolo di laurea in Matematica del vecchio ordinamento conseguito
presso qualunque Università o del titolo
di laurea in Matematica, classe 32, conseguito presso l’Università di Udine, non
richiede alcuna condizione ulteriore in
termini di requisiti curricolari e di preparazione personale. I crediti acquisiti
durante la laurea triennale sono tutti riconosciuti a seconda del curriculum scelto.
Qualora i crediti riconosciuti siano meno
di 180 vengono indicati specifici obblighi
formativi (debiti) da soddisfare nel primo
anno di corso.
Sbocchi professionali
Per quanto riguarda gli sbocchi professionali, proprio il carattere di novità dei contenuti del corso udinese dovrebbe garantire un facile ingresso nel mondo del lavoro. Conseguita la laurea, lo studente
dovrebbe aver acquisito una professionalità che gli permetterà di inserirsi agevolmente in diverse realtà produttive con
caratterizzanti elementi di innovazione
in ambienti gestionali, economici e di
progettazione. Si tratta di una figura professionale abbastanza nuova di cui si sentirà sempre più spesso l’esigenza nel
futuro. Finora certi tipi di competenza
parte generale e ordinamento
erano, nel mondo industriale, parzialmente assorbiti dall’ingegnere; data però
la maggior richiesta di efficienza e competitività sarà sempre più necessario
affiancare all’ingegnere il matematico
che contribuisca, con una lucida e rigorosa analisi sia quantitativa che qualitativa, alla formulazione di soluzioni
innovative ed efficienti. Naturalmente
rimangono sempre aperti i tradizionali
sbocchi occupazionali del laureato in
matematica: la ricerca e l’insegnamento. I futuri insegnanti di matematica
laureati a Udine avranno una competenza particolarmente adatta ai nuovi
programmi delle scuole secondarie che,
all’interno dei tradizionali corsi di
matematica, mirano anche a fornire
conoscenze di tipo logico-informatico e
fisico sperimentale e prevedono un
ampio uso di strumenti informatici. La
laurea in matematica consente inoltre di
acquisire un tipo di mentalità creativa e
ricettiva che permette di sviluppare nelle
più varie direzioni la preparazione di base
già acquisita. Il laureato si può trovare
così nella condizione di operare in modo
innovativo nei settori più vari oppure
‘crearsi’ un lavoro, come la realtà di oggi,
sempre più spesso, richiede.
Ordinamento degli studi
Crediti obbligatori per tutti, se non già
acquisiti nella laurea triennale (per ogni
corso viene indicato anche il settore
scientifico disciplinare corrispondente,
secondo quanto stabilito dal D.M.
509/1999 e successive integrazioni):
N.B.: Le seguenti informazioni sono aggiornate al 20 maggio 2007. Per i successivi
aggiornamenti consultare la pagina web
della Facoltà: http://www.uniud.it/didattica/facolta/scienze.
57
parte generale e ordinamento
Insegnamenti/attività formative
CFU
Periodo
didattico
S.S.D.
Primo e secondo anno
Algebra 3
Analisi matematica 5
Analisi matematica 6
Fisica moderna
Geometria 4
Informatica 2
Logica matematica 2
Ottimizzazione 1
Probabilità 2
Corsi a scelta dello studente
Laboratorio di matematica (**)
Prova finale
6
6
6
6
6
6
6
6
6
6
6
30
1
1
2
1
3
3
2
1
1
MAT/02
MAT/05
MAT/05
FIS/01
MAT/03
INF/01
MAT/01
MAT/09
MAT/06
Crediti obbligatori per il Curriculum generale e il Curriculum didattico (****), se non già
acquisiti nella laurea triennale:
Insegnamenti/attività formative
Algebra 4
Algebra 5
Analisi matematica 7
Geometria 5
Geometria 6
CFU
Periodo
didattico
S.S.D.
6
6
6
6
6
2
3
1
1
3
MAT/02
MAT/02
MAT/05
MAT/03
MAT/03
CFU
Periodo
didattico
S.S.D.
6
6
6
6
6
6
6
6
6
6
6
2o3
3
3
1
2
(tace)
3
2
3
1
2
MAT/05
MAT/07
MAT/04
MAT/03
MAT/03
MAT/01
MAT/04
FIS/01
MAT/03
MAT/01
MAT/02
Più 6 insegnamenti scelti fra:
Insegnamenti/attività formative
Analisi matematica 8 o 9
Fisica matematica
Fondamenti della matematica 1
Geometria 7 (*)
Geometria 9 (*)
Istituzioni di logica matematica 1 (*)
Matematiche complementari 1 (*)
Particelle e interazioni fondamentali
Teoria dei numeri 1 (*)
Teoria degli insiemi (*)
Topologia 1 (*)
58
parte generale e ordinamento
Crediti obbligatori per il Curriculum applicativo, se non già acquisiti nella laurea triennale:
Insegnamenti/attività formative
CFU
Periodo
didattico
S.S.D.
6
6
6
6
6
6
6
6
1o2
2
3
3
2
2
2
3
MAT/05
MAT/08
MAT/08
INF/01
MAT/09
MAT/09
SECS-S/01
SECS-S/01
Insegnamenti/attività formative
CFU
Periodo
didattico
S.S.D.
Analisi numerica 4
Matematica finanziaria (***)
Facoltà Economia
Metodi Monte Carlo
Modellistica e simulazione
Ottimizzazione 4
6
6
3
MAT/08
6
6
6
3
1
2
SECS-S/06
FIS/02
ING-INF/04
MAT/09
CFU
Periodo
didattico
S.S.D.
6
6
6
6
6
2o3
1o2
3
1, 3, 1, 2
MAT/02
MAT/05
MAT/08
MAT/03
6
6
6
6
6
3
1
2
2
3
SECS-S/06
FIS/02
ING-INF/04
MAT/09
FIS/01
MAT/03
Analisi matematica 7 o 8
Analisi numerica 2
Analisi numerica 3
Informatica 3
Ottimizzazione 2
Ottimizzazione 3
Statistica 1
Statistica 2
Più 2 insegnamenti scelti fra:
Più 1 insegnamento scelto fra:
Insegnamenti/attività formative
Algebra 4 o 5
Analisi matematica 7 o 8
Analisi numerica 4
Geometria 5 o 6 o 7 o 9
Matematica finanziaria (***)
Facoltà Economia
Metodi Monte Carlo
Modellistica e simulazione
Ottimizzazione 4
Particelle e interazioni fondamentali
Teoria dei numeri 1 (*)
(*) Gli insegnamenti di Matematiche Complementari 1 e 2, Istituzioni di Logica Matematica 1 e Teoria
degli Insiemi, Teoria dei Numeri 1 e 2, Geometria 7 e 8 e Geometria 9 e 10 e Topologia 1 e 2 sono attivati ad anni alterni.
(**) Il Laboratorio di Matematica è un’attività di approfondimento individuale che lo studente concorderà con il docente di uno dei corsi della laurea o della Laurea Specialistica in Matematica. Lo studente
discuterà con la commissione del corso prescelto i contenuti del lavoro svolto, producendo al presidente
di tale commissione idoneo materiale di documentazione.
parte generale e ordinamento
59
(***) Il corso di Matematica Finanziaria è mutuato dal corso Matematica Finanziaria - Corso progredito
della Facoltà di Economia.
(****) Per gli studenti interessati a proseguire con la SSIS (Scuola di Specializzazione per l’Insegnamento nella Scuola Secondaria), alla data attuale i seguenti esami del settore MAT/04 sono riconosciuti
come crediti dalla SSIS di Udine: Matematiche Complementari 1 e 2, Fondamenti della Matematica 1 e
2. Sul sito SSIS http://www.uniud.it/didattica/facolta/formazione/ssis si può reperire per ciascuna classe di insegnamento l’elenco aggiornato delle materie che costituiscono debito, se non sono state frequentate nel corso degli studi precedenti.
Lauree
L’esame di Laurea Specialistica/Magistrale in Matematica consiste nella
discussione di una dissertazione scritta,
detta Tesi di Laurea Magistrale, redatta
sotto la supervisione di un relatore.
Il relatore deve essere, o essere stato al
momento della assegnazione della tesi,
un docente di ruolo o un ricercatore,
membro della Facoltà o del Consiglio del
Corso di Laurea.
È data facoltà al relatore di proporre la
partecipazione alla supervisione della tesi
di un eventuale correlatore, anche esterno alla Facoltà o al Consiglio del Corso di
Laurea.
Ogni tesi viene scrutinata da un controrelatore. Su motivata richiesta del relatore,
lo scrutinio è affidato anche ad un secondo controrelatore, detto supervisore.
La discussione di ogni singola tesi è pubblica e dura orientativamente 20 - 30
minuti.
Il voto finale, espresso in centodecimi, è
dato dalla somma di una votazione di
base e di un incremento.
La votazione di base è calcolata in base
alla formula:
0.2 A + 0.8 B + C.
I parametri A, B, C sono calcolati nel
modo seguente:
A = punteggio conseguito dal laureando
nella sua Laurea Triennale o nel titolo di
studio equivalente per l’accesso alla Laurea Specialistica, eventualmente rapportato in centodecimi;
B = media pesata (in base ai crediti attri-
buiti ai singoli esami), con decimali e rapportata in centodecimi, delle votazioni
riportate dal laureando nei singoli esami
di profitto della Laurea Specialistica e
negli esami sostenuti per compensare
l’eventuale debito formativo assegnatogli
per l’accesso alla Laurea Specialistica; da
tale media sono esclusi gli esami che non
si concludono con un punteggio numerico finale;
C = numero di crediti di esami di profitto
(tra quelli considerati ai fini del parametro B) superati con la lode, moltiplicato
per 0.06/110 e troncato a 2/110 nel caso
in cui tale calcolo dia un risultato superiore a 2/110.
L’incremento è un numero compreso tra
zero e undici centodecimi, determinato
dalla Commissione in base alle valutazioni espresse dal relatore, dal controrelatore, da correlatore e supervisore ove previsti, da una valutazione complessiva del
curriculum degli studi del candidato e
dall’efficacia dell’esposizione della tesi.
Nell’ambito di tale incremento la Commissione di Laurea potrà tenere conto
della durata degli studi del candidato.
Se la somma del punteggio di base e
dell’incremento è maggiore o uguale a
110/110, il voto assegnato è 110/110 e la
Commissione passa a discutere l’eventuale attribuzione della lode, che viene
deliberata alle condizioni previste dal
vigente Regolamento Didattico di Ateneo
(ossia, attualmente, l’unanimità della
Commissione di Laurea, cfr. art. 126
comma 7).
60
parte generale e ordinamento
LAUREA SPECIALISTICA IN
FISICA COMPUTAZIONALE
(classe 20/S - Lauree Specialistiche
in Fisica)
Durata del Corso
2 anni (120 crediti)
Sede del Corso
Udine, via delle Scienze 208
Caratteristiche e finalità del Corso
Il Corso di Laurea Specialistica in Fisica
Computazionale, organizzato in collaborazione con la SISSA e l’Università di
Trieste, ha durata biennale ed è accessibile a studenti che abbiano superato un
triennio in corsi di laurea o di diploma
scientifici (Fisica, Matematica, Informatica, Chimica, Geologia, corsi di laurea
afferenti alla facoltà di Ingegneria); quindi anche agli studenti già in possesso di
un diploma di laurea con il vecchio ordinamento.
Il metodo delle Scienze fisiche è basato
sull’osservazione dei fenomeni naturali e
sull’elaborazione di teorie matematiche
che consentono di descriverne e di predirne i meccanismi più nascosti. E solo
grazie a uno stretto confronto fra questi
due modelli di pensiero che la moderna
tecnologia ha potuto veder la luce. Negli
ultimi 30 anni un terzo paradigma si è
aggiunto a quelli tradizionali della Fisica
sperimentale e teorica: quello della Fisica
computazionale. Grazie all’ausilio dei
computer è oggi possibile non solo risolvere le equazioni della Fisica teorica che
non potrebbero altrimenti essere affrontate, ma persino eseguire veri e propri
esperimenti virtuali (simulazioni) in cui
le proprietà della materia sono studiate in
condizioni non accessibili in laboratorio
(si pensi ad esempio alla cosmologia: grazie ai calcolatori oggi possiamo immaginare universi differenti da quello in cui
viviamo!).
Il Corso di Laurea Specialistica in Fisica
computazionale a Udine è progettato per
chi cerca occupazione nei settori di ricerca e sviluppo dell’industria, nella ricerca
pura di tipo computazionale, e nell’ingegneria di punta. Il programma di studi
costituisce una miscela ben equilibrata di
fisica teorica, sperimentale e di tecniche
avanzate di calcolo numerico.
Il Corso dura due anni. Un primo periodo
di 16 mesi è prevalentemente dedicato ai
corsi d’istruzione, che spaziano dall’informatica alla meccanica quantistica; di particolare rilievo sono i laboratori di acquisizione e di analisi on-line dei dati, una
ricchezza non comune nell’università italiana. Gli ultimi 8 mesi comportano un
tirocinio in attività di ricerca, che si conclude con una tesi. Tale attività può venire svolta, a scelta dello studente, in uno
dei seguenti indirizzi:
- metodi numerici in fisica della materia
condensata e della scienza dei materiali
(dinamica molecolare, meccanica statistica, sistemi complessi);
- metodi numerici ed analisi dei dati in
fisica ed astrofisica delle alte energie;
- fluidodinamica computazionale e alla
meteorologia;
- modellizzazione fisica e ad applicazioni
di ricerca informatica (quantum computing, reti neurali).
Particolare attenzione è rivolta al training. Gli studenti sono organizzati in piccoli gruppi, per essere seguiti con continuità; un tutoraggio personalizzato li
avvia e li guida nel loro percorso didattico,
fino al progetto di ricerca finale. I laboratori consentono a ciascuno studente l’uso
in prima persona di mezzi avanzati di elaborazione numerica, simbolica e grafica e
di acquisizione dati. Docenti e studenti
insieme costituiscono una squadra.
Requisiti specifici per l’accesso
Per essere ammessi al Corso di Laurea
Specialistica in Fisica Computazionale
occorre essere in possesso di un diploma
61
parte generale e ordinamento
di laurea o di altro titolo di studio conseguito all’estero, riconosciuto idoneo
secondo la normativa vigente.
Il possesso del titolo di laurea in Fisica del
vecchio ordinamento conseguito presso
qualunque Università o il possesso del
titolo di laurea breve in Fisica o in Informatica (ogni curriculum), conseguito
presso l’Università degli Studi di Trieste
o il possesso del titolo di laurea breve in
Matematica o in Informatica conseguito
presso l’Università degli Studi di Udine
con un piano di studio che comprenda
almeno 24 crediti di Fisica, non richiedono alcuna condizione ulteriore in termini
di requisiti curricolari e di preparazione
personale. In molte condizioni ciò si
applica anche ai titolari di laurea breve in
Ingegneria.
L’ammissione al Corso di Laurea Specialistica per laureati in possesso di un titolo
di studio diverso da quelli sopra indicati è
subordinata al riconoscimento dei crediti
utili ai fini del conseguimento della laurea specialistica. Qualora i crediti riconosciuti siano meno di 180 vengono indicati specifici obblighi formativi (debiti) da
soddisfare nel primo anno di corso.
Sbocchi professionali
Lo studio numerico dei fenomeni naturali e delle teorie fisiche richiede la padronanza di una varietà di tecniche, nonché
una creatività e flessibilità di pensiero, che
trovano un naturale impiego nel mondo
della ricerca e in tutte le moderne professioni tecnico-scientifiche. Metodi sviluppati e collaudati nell’ambito della fisica computazionale e legati alla ricerca pura sono
oggi indispensabili in svariati campi, come
ad esempio la meteorologia, la previsione
di eventi sismici, la modellizzazione
dell’equilibrio ecologico, la simulazione di
dispositivi e processi produttivi, e persino il
controllo dei rischi nei mercati finanziari,
oltre ad applicazioni nell’area biomedica.
Ordinamento degli studi
(per ogni corso viene indicato anche il settore scientifico disciplinare corrispondente, secondo quanto stabilito dal D.M.
509/1999 e successive integrazioni):
N.B.: Le seguenti informazioni sono aggiornate al 20 maggio 2007 Per i successivi
aggiornamenti consultare la pagina web
della Facoltà: http://www.uniud.it/didattica/facolta/scienze.
Per chi proviene da Matematica, Informatica o Ingegneria
Insegnamenti/attività formative
CFU
Periodi
didattici
S.S.D.
6
6
6
6
6
6
6
6
6
1
1
3
2
3
2
2
3
2
3
FIS/01
CHIM/03
INF/01
FIS/01
FIS/01
FIS/02
FIS/03
FIS/03
FIS/01
FIS/03
6
6
3
1
FIS/01
FIS/01
Primo anno
Complementi di meccanica
Chimica o
Informatica 1 o 2
Laboratorio di analisi dei dati
Laboratorio di strumentazione e misure fisiche
Meccanica quantistica
Meccanica statistica
Metodi Monte Carlo
Particelle e interazioni fondamentali
Struttura della materia
uno tra:
Laboratorio di elettronica
Fisica moderna
62
parte generale e ordinamento
Secondo anno
Modellistica e simulazione
due insegnamenti a scelta tra (*):
- Quantum computing
- Fisica delle alte energie
- Cosmologia e astrofisica delle particelle
- Fluidodinamica e turbolenza
- Fluidodinamica computazionale
- Laboratorio di acquisizione e analisi dei dati
- Metodi numerici per la struttura elettronica
- Simulazioni atomistiche di materiali
- Relatività generale
- Meteorologia computazionale
Insegnamento a scelta dello studente
Elaborato finale
6
1
ING-INF/04
6
6
6
6
6
6
6
6
6
6
6
36
1
3
3
1
3
1
2
1
3
2
FIS/02
FIS/04
FIS/05
FIS/01
FIS/01
FIS/01
FIS/03
FIS/03
FIS/02
FIS/06
(*) La scelta va fatta tra gli esami appartenenti a quei settori scientifico-disciplinari rispetto ai quali lo studente risulta in difetto di crediti. I crediti mancanti dipendono dal piano di studi scelto nella precedente
laurea.
Per chi proviene da Fisica
Insegnamenti/attività formative
CFU
Periodi
didattici
S.S.D.
6
6
6
6
6
6
6
6
6
1
3
2
3
2
2
3
3
2
FIS/01
FIS/01
FIS/03
FIS/03
FIS/02
FIS/01
INF/01
INF/01
MAT/08
Primo anno
Complementi di meccanica
Laboratorio di elettronica
Meccanica statistica
Metodi Monte Carlo
Meccanica quantistica
Laboratorio di analisi dei dati
Informatica 1
Informatica 2
Analisi numerica
Insegnamento a scelta tra quelli attivati nel corso
di laurea triennale in Informatica (*)
6
(*) La scelta va fatta tra gli esami appartenenti a quei settori scientifico-disciplinari rispetto ai quali lo studente risulta in difetto di crediti. I crediti mancanti dipendono dal piano di studi scelto nella precedente
laurea.
Secondo anno
Modellistica e simulazione
due insegnamenti a scelta tra:
- Quantum computing
- Fisica delle alte energie
- Cosmologia e astrofisica delle particelle
6
1
ING-INF/04
6
6
6
1
3
3
FIS/02
FIS/04
FIS/05
63
parte generale e ordinamento
- Fluidodinamica e turbolenza
6
- Fluidodinamica computazionale
6
- Laboratorio di acquisizione e analisi dei dati
6
- Metodi stocastici per sistemi quantistici a molti corpi 6
- Metodi numerici per la struttura elettronica
6
- Simulazioni atomistiche di materiali
6
- Relatività generale
6
- Meteorologia computazionale
6
- Insegnamento dell’area informatica a scelta
6
Elaborato finale
36
1
3
1
3
2
1
3
2
FIS/01
FIS/01
FIS/01
FIS/03
FIS/03
FIS/03
FIS/02
FIS/06
(*) La scelta va fatta tra gli esami appartenenti a quei settori scientifico-disciplinari rispetto ai quali lo studente risulta in difetto di crediti. I crediti mancanti dipendono dal piano di studi scelto nella precedente
laurea.
Tutorato
Gli studenti sono organizzati in piccoli
gruppi, per essere seguiti con continuità;
un tutoraggio personalizzato li avvia e li
guida nel loro percorso didattico, fino al
progetto di ricerca finale.
Lauree
L’esame di laurea in Fisica Computazionale consiste nella discussione pubblica
di una tesi di laurea. La tesi di laurea è un
lavoro comprensivo di una parte compilativa e di un eventuale lavoro personale del
candidato. Ogni tesi di laurea è presentata da un relatore. È richiesta la nomina di
un controrelatore. Per incrementi maggiori o uguali a 8 punti, è richiesta la
nomina di un supervisore.
La Commissione Tesi di Laurea, costituita da 3 membri nominati dal Consiglio di
Corso di Laurea, ha il compito di designare i controrelatori e gli eventuali supervisori se richiesto dal relatore. I relatori
debbono essere membri del Consiglio di
Corso di Laurea o della Facoltà. I controrelatori devono essere membri di questa
Università o delle Università consorziate.
Il voto finale, espresso in centodecimi, è
formato a partire dalla somma di una
votazione di base e da un incremento.
La votazione di base è costituita dalla
somma di tre addendi A1, A2 e A3:
- A1 è la media pesata delle votazioni
riportate dal candidato nei singoli esami
di profitto effettivamente sostenuti
all’interno della laurea specialistica (sono
quindi esclusi gli esami convalidati dal
precedente curriculum dello studente),
trasformata poi in centodecimi. Il peso di
un esame è uguale al numero di crediti
attribuiti al relativo insegnamento; sono
considerati solo gli esami con punteggio
numerico.
- A2 si calcola considerando 0,1/110 per
ogni credito di esame di profitto superato
con la lode. Se il calcolo di A2 con il criterio sopra descritto dà un risultato superiore a 3/110, A2 viene considerato uguale a 3/110.
- A3 è un premio di 3 punti assegnato agli
studenti che abbiano superato tutti gli
esami di profitto entro il 31 maggio del
secondo anno di corso.
L’incremento è un numero compreso tra
0 e 10, determinato dalla Commissione
di Laurea in base alla dissertazione, alla
sua presentazione e a quanto indicato ai
punti precedenti del presente regolamento.
Se la somma della votazione di base e
dell’incremento è maggiore o uguale a
110, il voto assegnato è 110, e si passa alla
discussione della lode. L’eventuale lode
deve essere determinata all’unanimità.
64
LAUREA SPECIALISTICA IN
STATISTICA E INFORMATICA PER
LA GESTIONE DELLE IMPRESE
(classe 91/S - Lauree Specialistiche in
Statistica economica, finanziaria
ed attuariale)
[Corso di Laurea interfacoltà:
Economia e Scienze M.F.N.]
Durata del Corso
2 anni (120 crediti)
Curricula attivati
- Curriculum base (Statistica e informatica per la gestione delle imprese)
- Curriculum Statistica per l’analisi dei
mercati finanziari
- Curriculum statistico-informatico
Sede del Corso
Udine, via Tomadini 30/A
Caratteristiche e finalità del Corso
Il Corso di Laurea Specialistica in Statistica e Informatica per la Gestione delle
Imprese (SIGI) si fonda sull’integrazione
fra discipline statistiche, matematiche,
informatiche, economiche ed aziendali
dando luogo a percorsi formativi caratterizzati da elevata flessibilità, destinati a
formare manager dell’informazione
quantitativa, sia per l’ambito aziendale,
sia per l’ambito delle applicazioni economico-finanziarie. Il corso mira a formare
figure con elevata professionalità nel
campo delle discipline statistiche, con
una specifica attenzione alle applicazioni
in ambito economico-finanziario e all’elaborazione dell’informazione in ambito
aziendale. Pertanto il corso di studi fornisce solide conoscenze per quanto riguarda la metodologia statistica e i suoi aspet-
parte generale e ordinamento
ti applicativi, abbinate a competenze di
base sulla scienza economica, sia generale che aziendale. Inoltre, viene curata la
formazione sugli aspetti di base dell’informatica con l’obiettivo di far conoscere i
fondamenti necessari per l’utilizzazione
dei sistemi di elaborazione dati e dei
sistemi informativi aziendali anche con
riferimento agli aspetti progettuali e analitici.
Il Corso di Laurea è organizzato in modo
da offrire, oltre al curriculum ‘base’ (Statistica e Informatica per la gestione delle
imprese) sopra descritto, altri due percorsi
formativi o ‘curricula’, atti a soddisfare specifiche esigenze professionali. Il curriculum ‘Statistica per l’analisi dei mercati
finanziari’, che mira a formare un esperto
dell’analisi quantitativa del rischio finanziario. Maggiore enfasi viene posta sullo
studio dei modelli econometrici della volatilità e del rischio finanziario, all’analisi
delle serie temporali e alla matematica
applicata alla finanza. Il curriculum ‘statistico-informatico’, che mira a formare un
esperto nel campo della gestione ed analisi
dei dati, che sappia organizzare, analizzare
e trasmettere informazioni usando metodologie statistiche ed informatiche avanzate. Maggiore enfasi viene posta sullo studio
integrato delle discipline statistiche ed
informatiche con l’obiettivo di fornire le
abilità necessarie per l’applicazione delle
proprie conoscenze nell’ambito della
gestione aziendale e della pubblica amministrazione e nel contesto della ricerca sperimentale.
Calendario delle lezioni
A differenza degli altri corsi della Facoltà,
il Corso di Laurea segue il calendario
della Facoltà di Economia, ovvero:
65
parte generale e ordinamento
I periodo
II periodo
III periodo
IV periodo
inizio lezioni
fine lezioni
sessione esami regolare
22.10.2007
07.01.2008
03.03.2008
05.05.2008
30.11.2007
15.02.2008
18.04.2008
13.06.2008
03.12.2007 - 21.12.2007
18.02.2008 - 29.02.2008
21.04.2008 - 02.05.2008
16.06.2008 - 27.06.2008
Esami recupero
30.06.2008 - 18.07.2008
Vacanze
I periodi delle vacanze natalizie e pasquali sono le stesse fissate a livello di Ateneo.
Sbocchi professionali
Il corso di laurea in SIGI ha come scopo
la formazione di una figura di elevata professionalità nel campo delle discipline
statistiche, con una specifica attenzione
alle applicazioni in ambito economico e
informatico. In particolare, il laureato
specialistico in SIGI, oltre ad essere un
esperto nella produzione e gestione
dell’informazione quantitativa, nella valorizzazione dei patrimoni informativi di
aziende ed istituzioni e nella definizione
delle scelte tecnologiche, dispone delle
competenze necessarie al coordinamento
di attività e valutazione di servizi e politiche ed alla formulazione di scenari per le
strategie di mercato e di promozione
dell’impresa. L’integrazione tra competenze di tipo matematico, statistico, statistico
applicato, economico ed informatico costituisce la caratteristica distintiva del percorso formativo rispondendo sia all’esigenza
di un rapido e qualificato inserimento nel
mondo del lavoro, sia all’esigenza di formare laureati in grado di accedere con suc-
cesso a corsi Master e al dottorato di ricerca. Il laureato può occupare diverse posizioni professionali nell’ambito di aziende
pubbliche e private, quali ad esempio:
ricercatore e consulente presso enti di
ricerca locali, nazionali e internazionali e
centri studi pubblici e privati, funzionario
con responsabilità di analisi e previsione a
sostegno di processi decisionali presso
aziende private e organismi pubblici anche
internazionali; analista di basi di dati; analista finanziario, analista di sistemi di qualità; funzionario nell’area dei sistemi informativi aziendali.
Ordinamento degli studi
Per conseguire la laurea lo studente deve
acquisire 120 crediti, suddivisi uniformemente in due anni. Il corso si articola in
un nucleo base di insegnamenti comuni
e in insegnamenti specifici relativi al curriculum scelto dallo studente.
- Curriculum ‘base’ Statistica e Informatica per la Gestione delle Imprese
(per ogni corso viene indicato anche il settore scientifico disciplinare corrispondente, secondo quanto stabilito dal D.M.
509/1999 e successive integrazioni)
66
Insegnamenti/attività formative
parte generale e ordinamento
CFU
S.S.D.
Primo anno
Sistemi informativi aziendali corso progredito
5
Commercio elettronico
5
Data mining
5
Processi stocastici
5
Statistica 2
5
Marketing 2 o Economia e gestione delle imprese 2
5
Econometria delle serie temporali
5
Metodi statistici per la valutazione
5
5 crediti tra i seguenti insegnamenti:
5
- Modelli di gestione del portafoglio
- Matematica generale corso progredito 2
- Matematica finanziaria corso progredito
- Modelli di gestione del rischio
- Pianificazione delle attività produttive (tace a.a. 07/08)
5 crediti tra i seguenti insegnamenti:
5
- Modelli demografici
- Analisi delle serie temporali
2 insegnamenti scelti tra:
10
- Finanza aziendale
- Economia degli intermediari finanziari
- Organizzazione aziendale (primo modulo)
Insegnamenti/attività formative
ING-INF/05 o INF/01
ING-INF/05 o INF/01
SECS-S/01
SECS-S/01
SECS-S/01
SECS-P/08
SECS-P/05
SECS-S/01
SECS-S/06
SECS-S/06
SECS-S/06
SECS-S/06
MAT/09
SECS-S/04
SECS-S/03
SECS-P/09
SECS-P/11
SECS-P/10
CFU
S.S.D.
5
5
5
10
5
5
5
ING-INF/05 o INF/01
SECS-S/01
SECS-P/08
SECS-P/05
Secondo anno
Architettura e reti
Statistica computazionale
Strategie d’impresa 1 o Marketing relazionale 1
Metodi dinamici per l’economia 1 e 2
Tirocinio o insegnamento a scelta area informatica
Insegnamento a scelta dello studente
5 crediti a scelta tra i seguenti insegnamenti:
- Marketing relazionale 1
- Marketing relazionale 2
- Organizzazione aziendale (secondo modulo)
- Econometria dei dati panel (tace a.a. 07/08)
- Metodi numerici per la finanza
- Microeconomia corso progredito
Prova finale
SECS-P/08
SECS-P/08
SECS-P/10
SECS-P/05
SECS-S/06
SECS-P/01
20
67
parte generale e ordinamento
- Curriculum Statistica per l’Analisi dei Mercati Finanziari
Insegnamenti/attività formative
CFU
S.S.D.
5
5
5
5
5
5
5
5
5
5
5
5
ING-INF/05 o INF/01
SECS-S/06
SECS-S/06
SECS-S/06
SECS-S/01
SECS-S/01
SECS-S/01
SECS-P/05
SECS-P/09
SECS-P/10
SECS-S/01
ING-INF/05 o INF/01
CFU
S.S.D.
5
5
5
10
5
5
5
SECS-S/01
SECS-S/04
SECS-S/06
SECS-P/05
Primo anno
Sistemi informativi aziendali corso progredito
Modelli di gestione del portafoglio
Matematica finanziaria corso progredito
Matematica generale corso progredito 2
Data mining
Processi stocastici
Statistica 2
Econometria delle serie temporali
Finanza aziendale
Economia degli intermediari finanziari
Metodi statistici per la valutazione
Architettura e reti o Commercio elettronico
Insegnamenti/attività formative
Secondo anno
Statistica computazionale
Analisi delle serie temporali
Metodi numerici per la finanza
Metodi dinamici per l’economia 1 e 2
Tirocinio o insegnamento a scelta area informatica
Insegnamento a scelta dello studente
5 crediti tra i seguenti insegnamenti:
- Modelli di gestione del rischio
- Econometria dei dati panel (tace a.a. 07/08)
Prova finale
SECS-S/06
SECS-P/05
20
- Curriculum Statistico e Informatico
Insegnamenti/attività formative
CFU
S.S.D.
5
5
5
5
5
5
5
5
5
5
ING-INF/05 o INF/01
ING-INF/05 o INF/01
SECS-S/01
SECS-S/01
SECS-S/01
SECS-P/05
SECS-P/10
SECS-S/01
SECS-S/04
SECS-S/03
Primo anno
Sistemi informativi aziendali corso progredito
Commercio elettronico
Data mining
Processi stocastici
Statistica 2
Econometria delle serie temporali
Organizzazione aziendale (primo modulo)
Metodi statistici per la valutazione
Modelli demografici
Analisi delle serie temporali
68
parte generale e ordinamento
1 insegnamento a scelta tra:
5
- Matematica generale corso progredito 2
- Pianificazione delle attività produttive (tace a.a. 07/08)
1 insegnamento a scelta tra:
5
- Finanza aziendale
- Economia degli intermediari finanziari
Insegnamenti/attività formative
SECS-S/06
MAT/09
SECS-P/09
SECS-P/11
CFU
S.S.D.
5
5
10
5
5
5
ING-INF/05 o INF/01
SECS-S/01
SECS-P/05
Secondo anno
Architettura e reti
Statistica computazionale
Metodi dinamici per l’economia 1 e 2
Tirocinio o insegnamento a scelta area informatica
Insegnamento a scelta dello studente
1 insegnamento a scelta tra:
- Marketing relazionale 1
- Organizzazione aziendale (secondo modulo)
- Econometria dei dati panel (tace a.a. 07/08)
- Microeconomia corso progredito
1 insegnamento a scelta tra:
- Sistemi mobili e wireless
- Complementi di basi di dati
- Interazione uomo-macchina
- Tecnologie web e multimediali
- Siti e portali web
Prova finale
SECS-P/08
SECS-P/10
SECS-P/05
SECS-P/01
5
ING-INF/05 o INF/01
ING-INF/05 o INF/01
ING-INF/05 o INF/01
ING-INF/05 o INF/01
ING-INF/05 o INF/01
20
69
parte generale e ordinamento
CALENDARIO DELLE LEZIONI
Corsi, Crediti, Periodi didattici, Docenti
CORSO DI LAUREA IN INFORMATICA
I anno
Insegnamenti
Corso Introduttivo
Analisi Matematica
Architettura degli Elaboratori e lab.
Fisica
Matematica Discreta
Programmazione e laboratorio
CFU
12
14
6
9
14
P.D.
Docenti
Trombetta
1 - 2 - 3 Gorni
1 - 2 - 3 Di Gianantonio
3
Santi
1 - 2 Mainardis
1 - 2 - 3 Mirolo - Alessi
II anno
Algoritmi e Strutture Dati e lab.
14
Calcolo delle Probabilità e Statistica
6
Calcolo Scientifico
6
Elementi di Logica Matematica
3
Fondamenti dell’Informatica 1
6
Programmazione Orientata agli Oggetti 6
Sistemi Operativi e laboratorio
15
Aspetti Sociali ed Etica Professionale
3
Campi e Onde Elettromagnetiche*
6
2-3
1
1
1
2-3
2-3
1-2
3
3
Policriti
Pace
Vermiglio
Marcone
Honsell
Mirolo
Scagnetto - Lenisa
Piva
Michelutti
III anno
Basi di Dati
Complementi di Basi di Dati
Fondamenti dell’Informatica 2
Ingegneria del Software 1
Ingegneria del Software 2
Interazione Uomo-Macchina 1
Linguaggi di Programmazione 1
Logica Matematica
Metodi Formali dell’Informatica 1
Modelli e Alg. per la Gest. delle Risorse
Reti di Calcolatori
Reti di Calcolatori e Sicurezza
Ricerca Operativa
Sistemi Esperti
Sistemi Informativi
Comunicazione Efficace
Fisica Moderna*
Laboratorio di Elettronica*
Quantum Computing*
Storia dell’Informatica*
1
2
2
1
3
2
1
1
2-3
2
1
2
1
2
2-3
3
1
3
1
3
Montanari
Montanari
Dovier
Tasso
Pighin - Marzona
Chittaro
Comini
D’Agostino
Lenisa
Rinaldi (m. Ottim. 3 - L.S. Mat.)
Toppano
Miculan (mut. L.S. Inf.)
Serafini
Tasso
Tasso - Pighin
Marzollo (mut. TWM)
De Angelis (mut. L.S. FC)
Santi (mut. L.S. FC)
De Angelis (mut. L.S. FC)
Bonfanti - Giangrandi
* corsi facoltativi
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
1
6
6
6
3
70
parte generale e ordinamento
CORSO DI LAUREA IN TECNOLOGIE WEB E MULTIMEDIALI
I anno
Insegnamenti
CFU P.D.
Corso introduttivo
Analisi Matematica
Architettura degli Elaboratori
Fisica
Matematica di Base
Matematica Discreta
Programmazione e laboratorio
Tecnologie Web e laboratorio
Cultura d’Impresa
Comunicazione Efficace
Docenti
Trombetta (mut. L. Inf.)
12
1-2
Freddi
8 1 - 2 - 3 Di Gianantonio (mut. L. Inf.)
3
3
Grassmann
3
1
D’Agostino
6
2
Panti
10
1-2
Mizzaro - Coppola
10 2 - 3 Roberto
1
3
Rolla
1
3
Marzollo
II anno
Algoritmi e Strutture Dati
10 2 - 3
Commercio Elettronico
8
1-2
Programmazione Orientata agli Oggetti 6
1-2
Psicologia della Comunicazione
6
3
Sistemi Multimediali e laboratorio
10 2 - 3
Sistemi Operativi e laboratorio
13 1 - 2 - 3
Statistica Applicata
6
1
Storia dell’Informatica*
3
3
Piazza
Pugliese
Milanese
Gabrielli
Toppano - Ranon
Brajnik - D’Angelo
Vidoni
Bonfanti - Giangrandi (mut. L. Inf.)
*corso facoltativo
III anno
Basi di Dati
Ingegneria del Software
Interazione Uomo-Macchina
Progetto di Siti e Portali Web
Reti di Calcolatori
Aspetti Sociali ed Etica Professionale
Lab. Tecniche di Comunicazione
Lab. Tecnologie Lato Server
6
6
6
6
6
3
4
4
1
1
2
1
1
3
3
1
Franceschet
Tasso (mut. L. Inf.)
Chittaro (mut. L. Inf.)
Brajnik (mut. L.S. Inf.)
Toppano (mut. L.S. Inf.)
Piva (mut. L. Inf.)
Marzollo
Della Mea - Scagnetto
CORSO DI LAUREA IN MATEMATICA
I anno
Insegnamenti
Corso introduttivo
Algebra 1
Algebra 2
Analisi Matematica 1
Analisi Matematica 2
CFU P.D.
6
6
6
6
2
3
1
2
Docenti
Cragnolini
Dikranjan
Lucido
Baiti
Cecchini
71
parte generale e ordinamento
Aritmetica
Fisica 1
Geometria 1
Geometria 2
Informatica 1
Linguaggio Matematico
Strumenti Informatici per la Matemat.
6
6
6
6
6
2
1
1
3
1
2
3
1
2
Corvaja
Ercolessi
Corvaja
Corvaja
Alessi
Parlamento
Gorni
II anno
Analisi Matematica 3
Analisi Matematica 4
Analisi Numerica 1
Comunicazione Efficace
Fisica 2
Geometria 3
Geometria 4
Informatica 2
Logica Matematica 1
Meccanica Razionale 1
Probabilità 1
6
6
6
1
6
6
6
6
6
6
6
1
2
2
3
1
2
3
3
1
3
3
Trombetta
Zanolin
Fasino
Marzollo (mut. L. TWM)
De Angelis
Cragnolini
Cragnolini
Piazza
Parlamento
Ansoldi
Cecchini
III anno
Algebra 3
Algebra 4
Algebra 5
Analisi Matematica 5
Analisi Matematica 6
Analisi Numerica 2
Fisica Matematica
Fisica Moderna
Geometria 5
Geometria 6
Logica Matematica 2
Matematiche Complementari 1
Meccanica Razionale 2
Ottimizzazione 1
Ottimizzazione 2
Particelle e Interazioni Fondamentali
Probabilità 2
Statistica 1
Statistica 2
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
1
2
3
1
2
2
3
1
1
3
2
3
2
1
2
2
1
2
3
Mainardis
Lucido (mut. L.S. Mat.)
Panti
Gorni
Gorni
Vermiglio
Ansoldi
De Angelis (mut. L.S. F.C.)
Zucconi
Zucconi
Parlamento
Marcone (mut. L.S. Mat.)
Freddi
Rinaldi
Rinaldi
Cobal (mut. L.S. F.C.)
Vidoni
Pace
Pace
72
parte generale e ordinamento
CORSO DI LAUREA INTERFACOLTÀ IN BIOTECNOLOGIE
- Curriculum Biologia Computazionale
I anno
Insegnamenti
CFU
P.D.
Biochimica 1
Biologia 1
Biologia Molecolare 1
Chimica Generale
Chimica Organica
Fisica 1
Fisica 2
Genetica 1
Informatica
Introduzione alla Biologia (*)
Introduzione alla Zoologia (*)
Matematica
Statistica 1
6
3
3
5
4
4
3
6
6
3
3
5
6
2-3
3
3
1
2
1
2
3
2-3
1
1
1
2
II anno
Algoritmi e Strutture Dati
Biochimica 2
Biologia 2
Biologia Molecolare 2
Chimica Analitica
Fisica Applicata
Genetica 2
Matematica Discreta
Sistemi Operativi
5
6
9
9
3
3
6
7
5
3
1
2-3
2-3
2
1
1
1
2
5
2
4
4
3
3
4
3
3
1
2
1
2
3
3
3
1
1
8
3
3
4
2
2
3
2
III anno
Basi di dati
Bioetica
Bioinformatica 1
Bioinformatica 2
Bioinformatica 3
Diagnostica Clinica
Ecologia
Economia
Fisica 3
Fisiopatologia: Applicazioni
Mediche nelle Biotecnologie
Legislazione per le Biotecnologie
Organismi Geneticamente Modificati*
Statistica 2
(*) Corsi facoltativi.
Docenti
De Angelis
Policriti - Vitacolonna
Zanolin
Vidoni
Serafini
Lancia
Miculan
Vitacolonna
Lancia
73
parte generale e ordinamento
CORSO DI LAUREA SPECIALISTICA IN INFORMATICA
I anno
Insegnamenti
CFU
P.D.
Docenti
6
6
8
6
6
3
6
6
6
6
6
6
6
6
6
6
6
6
6
3
2
1-2
1
2
1
3
3
3
2
3
1
2
1
2-3
2
1
2
1
Policriti
Piazza
Pugliese (mut. TWM)
Staniszkis
Montanari (mut. L. Inf.)
Toppano (mut. L.S. Tec. I.)
Fasino
Pighin - Marzona (mut. L. Inf.)
Tasso
Chittaro (mut. L. Inf.)
Dovier
Comini (mut. L. Inf.)
Comini
D’Agostino (mut. L. Inf.)
Lenisa (mut. L. Inf.)
Mizzaro
Brajnik
Miculan - Dal Cin
Serafini (mut. L. Inf.)
6
6
6
2
2-3
2-3
Alessi
Pighin - Tasso (mut. L. Inf.)
Toppano (mut. TWM)
6
6
3
6
6
6
6
3
2
3
1
2
1
1
Montanari
Pace (mut. L. Mat.)
Bonfanti - Giangrandi (m.L. Inf.)
Franceschet (mut. L.S. Tec. I.)
Pascoletti
Dovier
Roberto
II anno
Basi di Dati Spaziali
Complementi di Compilatori
Datawarehouse
6
6
6
2
2
Montanari - Chiarandini
Staniszkis
Marzona (m. SIGI - Fac. Econ.)
Fondamenti dell’Informatica 2
Geometria Computazionale
Grafica 3D Interattiva
Immagini e Multimedialità
Informatica Medica
Interazione Uomo-Macchina 2
Interpret. Astr. e Analisi Autom. del Sofware
6
6
6
6
6
6
6
2
1
1
2
2
3
1
Dovier (mut. L. Inf.)
Pascoletti
Ranon (mut. L.S. Tecn. Inf.)
Roberto
Della Mea
Chittaro
Comini
Algoritmi Avanzati
Algoritmi e Complessità
Commercio Elettronico
Compilatori
Complementi di Basi di Dati
Design del Suono
High Performance Computing
Ingegneria del Software 2
Intelligenza Artificiale
Interazione Uomo-Macchina 1
Linguaggi di Nuova Concezione
Linguaggi di Programmazione 1
Linguaggi di Programmazione 2
Logica Matematica
Metodi Formali dell’Informatica 1
Progettaz. e Analisi Orientate agli Ogg.
Progettazione Siti Web
Reti di Calcolatori e Sicurezza
Ricerca Operativa
Semantica dei Linguaggi di
Programmazione
Sistemi Informativi
Sistemi Multimediali
Sistemi Reattivi: Automi,
Logica e Algoritmi
Statistica Matematica 1
Storia dell’Informatica (corso facoltativo)
Tecnologie XML
Teoria dei Sistemi 1
Teoria dell’Informazione
Teoria e Tecniche di Elab. dell’Imm.
74
parte generale e ordinamento
Linguaggi e Modelli per Global Computing
Matematica Computazionale
Model Checking
Modelli e Algoritmi per la Gest. delle Risorse
6
6
6
6
2-3
3
3
2
Ottimizzazione 1
Ottimizzazione 2
Personalizzazione dei Contenuti Web
Psicologia della Comunicazione
Robotica
Sistemi Esperti
Statistica Matematica 2
Tecnologie Web
Teoria dei Sistemi 2
Web Information Retrieval
Web Semantico
6
6
6
6
6
6
6
6
6
6
6
1
2
1
3
2-3
2
3
2-3
3
3
2
Miculan - Lenisa
Vermiglio (mut. A.N.3 L.S. Mat.)
D’Agostino
Rinaldi (mut. Ottimizz. 3 L.S. Mat.)
Rinaldi (mut. L. Mat.)
Rinaldi (mut. L. Mat.)
Tasso
Gabrielli (mut. TWM)
D’Angelo
Tasso (mut. L. Inf.)
Pace (mut. L. Mat.)
Roberto (mut. TWM)
Pascoletti
Mizzaro (mut. L.S. T. I.)
Gugliotta (mut. L.S. Tec. I.)
CORSO DI LAUREA SPECIALISTICA IN TECNOLOGIE DELL’INFORMAZIONE
I anno
Insegnamenti
CFU
P.D.
Docenti
Algoritmi e Complessità
Complementi di Basi di Dati
Design del Suono
Fondamenti e Metodi dell’Informatica
Grafica 3D Interattiva
Ingegneria del Software 2
Linguaggi di Programmazione
Metodi Numerici per l’Informatica
Progettazione e Analisi Orientate agli Ogg.
Sistemi Esperti
Sistemi Informativi in Rete
Tecnologie XML
Teoria dei Sistemi
Teoria e Tecniche di Elab. dell’Imm.
Web Information Retrieval
6
6
3
6
6
6
6
6
6
6
6
6
6
6
6
2
2
1
2-3
1
3
1
1
2
2
2-3
1
2
1
3
Piazza (mut. L.S.Inf.)
Montanari (mut. L. Inf.)
Toppano
Honsell (mut. F.I. 1 - L. Inf.)
Ranon
Pighin - Marzona (mut. L. Inf.)
Comini (mut. L. Inf.)
Fasino
Mizzaro (mut. L.S. Inf.)
Tasso (mut. L. Inf.)
Tasso - Pighin (mut. L. Inf.)
Franceschet (mut. L.S. Tec. I.)
Pascoletti (mut. L.S. Inf.)
Roberto (mut. L.S. Inf.)
Mizzaro
II anno
E-government
E-learning
Immagini e Multimedialità
Informatica Medica
Interazione Uomo-macchina 2
Personalizzazione dei Contenuti Web
Qualità e Certificazione web
Ricerca Operativa
3
3
6
6
6
6
3
6
1
1
2
2
3
1
2
1
Gugliotta
Roberto
Roberto (mut. L.S. Inf.)
Della Mea (mut. L.S. Inf.)
Chittaro (mut. L.S. Inf.)
Tasso (mut. L.S. Inf.)
Brajnik
Serafini (mut. L. Inf.)
75
parte generale e ordinamento
Sistemi Mobili e Wireless
Storia dell’Informatica*
6
3
1
3
Teoria dell’Informazione
Web Design
Web Semantico
6
3
6
1
3
2
Chittaro
Bonfanti - Giangrandi
(m. L. Inf.)
Dovier (mut. L.S. Inf.)
Omero
Gugliotta
* corso facoltativo
CORSO DI LAUREA SPECIALISTICA IN MATEMATICA
I e II anno
Insegnamenti
CFU
P.D.
Algebra 3
Algebra 4
Algebra 5
Analisi Matematica 5
Analisi Matematica 6
Analisi Matematica 7
Analisi Matematica 8
Analisi Matematica 9
Analisi Numerica 2
Analisi Numerica 3
Analisi Numerica 4
Fisica Matematica
Fisica Moderna
Geometria 4
Geometria 5
Geometria 6
Geometria 7
Geometria 9
Informatica 2
Informatica 3
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
1
2
3
1
2
1
2
3
2
3
3
3
1
3
2
3
1
2
3
3
Logica Matematica 2
Matematiche Complementari 1
Matematica Finanziaria
6
6
6
2
3
3
Metodi Monte Carlo
Modellistica e Simulazione
Ottimizzazione 1
Ottimizzazione 2
Ottimizzazione 3
Particelle e Interazioni Fondamentali
Probabilità 2
Statistica 1
6
6
6
6
6
6
6
6
3
1
1
2
2
2
1
2
Docenti
Mainardis (mut. L. Mat.)
Lucido
Panti (mut. L. Mat.)
Gorni (mut. L. Mat.)
Gorni (mut. L. Mat.)
Zanolin
Baiti
Zanolin
Vermiglio (mut. L. Mat.)
Vermiglio
Vermiglio
Ansoldi (mut. L. Mat.)
De Angelis (mut. FC)
Cragnolini (mut. L. Mat.)
Zucconi (mut. L. Mat.)
Zucconi (mut. L. Mat.)
Cragnolini
Zucconi
Piazza (mut. L. Mat.)
Policriti (mut. Alg. Av. - L.S.
Inf.)
Parlamento (mut. L. Mat.)
Marcone
Pressacco (mut. Mat. Finanziaria c.so progredito - Fac.
Economia)
Ercolessi (mut. FC)
Pascoletti (mut. FC)
Rinaldi (mut. L. Mat.)
Rinaldi (mut. L. Mat.)
Rinaldi
Cobal (mut. FC)
Vidoni (mut. L. Mat.)
Pace (mut. L. Mat.)
76
Statistica 2
Teoria degli Insiemi
Teoria dei Numeri 1
Topologia 1
parte generale e ordinamento
6
6
6
6
3
1
3
2
Pace (mut. L. Mat.)
Marcone
Corvaja
Dikranjan
CORSO DI LAUREA SPECIALISTICA IN FISICA COMPUTAZIONALE
I anno
Insegnamenti
CFU
Analisi Numerica
6
Chimica
6
Complementi di Meccanica
6
Fisica Moderna
6
Informatica 1
6
Informatica 2
6
Laboratorio di Analisi Dati
6
Laboratorio di Elettronica
6
Lab. di Strumenti e Misure di Fisica
6
Meccanica Quantistica
6
Meccanica Statistica
6
Metodi Monte Carlo
6
Particelle e Interazioni Fondamentali
6
Struttura della Materia
6
II anno
Cosmologia e Astrofisica delle Particelle 6
Fisica delle Alte Energie
6
Fluidodinamica Computazionale
6
Fluidodinamica e Turbolenza
6
Lab. Acquisizione e Analisi dei Dati
6
Metodi Num. per la Struttura Elettronica 6
Meteorologia Computazionale
6
Modellistica e Simulazione
6
Quantum Computing
6
Simulazioni Atomistiche di Materiali
6
P.D.
2
1
1
1
3
3
2
3
3
2
2
3
2
3
3
3
3
1
1
2
2
1
1
1
Docenti
Vermiglio (mut. A.N. 2 - L. Mat.)
Del Zotto (mut. Agraria)
De Angelis
Alessi (mut. L. Mat.)
Milanese
Vitale
Santi
Grassman - Giannozzi
Giannozzi
Giugliarelli
Ercolessi
Cobal
Giannozzi
Persic - Longo - Valdarnini
De Angelis - De Lotto
Cortelezzi
Soldati
Santi
Giannozzi
Stel
Pascoletti
De Angelis
Ercolessi
77
parte generale e ordinamento
ALSI
Associazione dei Laureati in
Scienze dell’Informazione
Dal 1990 opera a Udine l’Associazione Nazionale dei Laureati in Scienze dell’Informazione e Informatica (ALSI). L’ALSI, nata come espressione locale dei Laureati in Scienze dell’informazione della Regione Friuli Venezia Giulia, ha assunto in pochi anni connotazioni nazionali. L’associazione, che è libera e al di fuori di ogni schieramento politico o ideologico, si è posta lo scopo di promuovere la figura del laureato in Scienze
dell’informazione e di tutelarne la professionalità, di contribuire alla sua crescita culturale e di favorire lo scambio di esperienze e di idee tra i soci.
Tale azione viene svolta attraverso iniziative volte a richiamare l’attenzione dell’opinione pubblica sulla funzione del laureato in Scienze dell’Informazione nella vita economica e produttiva, sociale e amministrativa; organizzando conferenze e seminari su
questioni scientifiche e tecniche che possono essere oggetto di interesse per quanti
sono impiegati in attività professionali, sia come dipendenti sia come liberi professionisti.
L’ALSI, in particolare, si prefigge la creazione ed attuazione di leggi e norme in materia professionale volte all’istituzione di un Ordine dei Laureati e di un Albo Professionale. A questo proposito l’ALSI ha redatto e fatto presentare in Parlamento una propria
proposta di legge atta a regolamentare le professioni di Dottore Informatico e Tecnico
Informatico. L’associazione inoltre sostiene i laureati in Scienze dell’Informazione che
prestano la loro opera presso le amministrazioni pubbliche o private nelle rivendicazioni morali o economiche.
All’associazione possono aderire, in qualità di soci ordinari, tutti i laureati in Scienze
dell’Informazione o Informatica. Possono inoltre entrare a far parte dell’associazione,
in qualità di soci studenti, gli iscritti al Corso di Laurea in Scienze dell’Informazione o
Informatica.
È prevista la possibilità di associarsi in qualità di soci affiliati per quanti, per la loro formazione tecnica o scientifica o per l’attività svolta, sono interessati agli scopi dell’associazione.
Chi fosse interessato a ricevere informazioni in merito all’associazione può scrivere ai
seguenti indirizzi:
[email protected]
[email protected]
http://www.alsi.it
Tel. 0468 3825905
ALSI c/o Presidenza Facoltà di Scienze M.F.N.
via delle Scienze, 208 (Loc. Rizzi) - 33100 Udine - Fax. 0432 558682
programmi
dei corsi
81
programmi - informatica triennale
CORSO DI LAUREA
IN INFORMATICA
ALGORITMI E STRUTTURE DATI
Docente
Prof. Alberto Policriti
Crediti
10
Finalità del corso
Il corso si propone di introdurre ai fondamenti della teoria degli algoritmi, delle
strutture dati e all’analisi della complessità computazionale di programmi. Il
principale obiettivo del corso è presentare
le principali problematiche e tecniche
relative al disegno e alla progettazione di
algoritmi. Ci si propone inoltre di introdurre i metodi di base utilizzati per stabilire la complessità di programmi e i criteri utilizzati per scegliere e progettare
strutture dati. Dopo aver superato l’esame
si ritiene che lo studente sia in grado di
risolvere algoritmicamente problemi
classici e scegliere motivatamente le
strutture dati adatte ad ottenere soluzioni
computazionalmente efficienti. Sia in
grado di porre limiti superiori sufficientemente precisi e indipendenti dall’architettura alla complessità computazionale
di programmi di media difficoltà.
Programma
1. Introduzione e nozioni preliminari.
Elementi di logica e teoria degli insiemi.
Alberi e grafi. Matematica discreta e analisi asintotica. Modelli di calcolo per la
determinazione della complessità degli
algoritmi. Problemi ricorsivi e aspetti
algoritmici. 2. Algoritmi di ricerca e ordinamento Algoritmi primitivi di ordinamento e ricerca: selection-sort, insertionsort, bubble-sort, heap-sort. Algoritmi
ricorsivi: quick-sort, merge-sort. Analisi
della complessità e limiti inferiori. Algoritmi lineari non basati sul confronto:
counting-sort, radix-sort, bucket-sort.
Determinazione dell’elemento medio. 3.
Strutture dati Strutture dati primitive:
liste, pile, code, heap. Algoritmi e strutture dati per la gestione e manipolazione
di insiemi: tabelle hash, alberi di ricerca,
bilanciamento, red-black alberi e B-alberi.
Algoritmi e strutture dati per il problema
Union-Find. 4. Algoritmi sui grafi. Tecniche di rappresentazione di grafi orientati e non orientati. Algoritmi di visita in
ampiezza e profondità. Algoritmi di visita
su alberi. Calcolo delle componenti fortemente connesse. Algoritmi per la determinazione di topological-sort, minimum
spanning tree (Prim e Kruskal), cammino
minimo da una sorgente (Dijkstra, Bellmann-Ford) cammini minimi da sorgenti multiple (Floyd-Warshall, Johnson).
Bibliografia
- Appunti delle lezioni.
- T.H. CORMEN, C.E. LEISERSON, R.L. RIVEST, Introduction to Algorithms, MIT Press,
Second edition, 2001 (anche in italiano).
Altri testi utili:
- A.V. AHO, J.E. HOPCROFT, J.D. ULLMAN,
Data Structures and Algorithms, AddisonWesley, 1983.
- A.V. AHO, J.E. HOPCROFT, J.D. ULLMAN,
The Design and Analysis of Computer Algorithms, Addison-Wesley, 1974.
- D.E. KNUTH, Selected Papers in Computer
Science Cambridge, University Press,
1996.
- R.E. TARJAN, Data Structures and Network
Algorithms, SIAM, 1983.
ANALISI MATEMATICA
Docente
Prof. Gianluca Gorni
Crediti
12
82
programmi - informatica triennale
Finalità del corso
Fornire i concetti e le tecniche di base del
calcolo infinitesimale e integrale in modo
conciso e adatto alle applicazioni. La teoria viene presentata con un buon livello di
rigore formale negli enunciati e in quelle
dimostrazioni che si decide di svolgere in
dettaglio. Si addestrano gli studenti al calcolo, anzitutto con carta e penna, ma
anche, se possibile, usando il computer.
Un’enfasi del corso è nel familiarizzare
gli studenti col significato intuitivo, geometrico o dinamico dei concetti di limite,
derivata e integrale, in modo che venga
loro spontaneo applicare tali strumenti
anche a problemi che non si presentino
matematicamente già formalizzati.
Programma
Numeri reali, funzioni, limiti e continuità, derivate, integrali, serie, applicazioni.
Modalità d’esame
Ci sono due modi per acquisire i crediti: il
modo principale consiste in 3 compitini
scritti durante l’anno, tipicamente senza
orale; l’altro modo consiste in un singolo
scritto, più un orale negli appelli fra giugno e settembre; i dettagli del regolamento sono disponibili nel sito personale del
docente,
all’indirizzo
http://www.dimi.uniud.it/gorni/.
Bibliografia
G.C. B AROZZI , Primo Corso di Analisi
Matematica, Zanichelli.
ARCHITETTURA DEGLI
ELABORATORI
Docente
Prof. Pietro Di Gianantonio
Crediti
10
Finalità del corso
Il corso ha lo scopo di illustrare la struttura e il funzionamento di un computer
nelle sue diverse componenti. Il percorso
didattico inizia con lo studio delle parti
elementari che costituiscono un calcolatore e considera componenti sempre più
complesse fino ad arrivare allo studio di
architetture complete di calcolatori. Per
meglio evidenziare i legami fra il livello
hardware e quello software, il corso tratta
la programmazione in linguaggio assembly.
Programma
Introduzione: prospettiva storica sulle
architetture degli elaboratori, concetti
base, livelli d’astrazione nell’analisi di
un’architettura. Reti logiche: porte logiche elementari, algebre booleane, circuiti
combinatori d’uso frequente, progettazione circuiti sequenziali, chip di memoria. Rappresentazione delle informazioni: sistema di numerazione binario, conversione tra basi, rappresentazione di
numeri interi e reali, rappresentazione di
caratteri, codici di rilevamento errori.
Processore: ciclo di fetch-decode-execute,
data path, unità di controllo, presentazione dettagliata di un semplice microprocessore, pipeline, processori superscalari,
predizione di salto, esecuzione fuori ordine, Pentium IV, Sparc. Linguaggio Macchina: Evoluzione dei linguaggi macchina, tipi di dati, indirizzamento, tipi
d’istruzioni, formati istruzioni.
Input/Output: programmed I/O, interrupt, DMA, dispositivi periferici, collegamenti mediante bus, meccanismi d’arbitraggio e sincronizzazione del bus, architettura di un tipico PC, bus PCI, SCSI,
USB, dischi magnetici, RAID, dischi ottici. Gerarchie di Memoria: meccanismi di
funzionamento della memoria cache e
della memoria virtuale, paginazione e
segmentazione, MMU. Architetture ad
elaborazione parallela: tipologie di calco-
programmi - informatica triennale
latori paralleli, multiprocessori e multicomputer, Interconnessione fra processori, cache coherence, architetture UMA,
NUMA, COW e MPP. Programmazione
assembly. Architettura del MIPS. Istruzioni MIPS: assegnamento, salto, aritmetiche-logiche. Modalità d’indirizzamento,
chiamate di funzione, direttive all’assemblatore.
Modalità d’esame
L’esame si compone di una prova scritta,
di una prova di laboratorio, e di una prova
orale. Durante il corso, vengono svolti tre
compitini. Gli studenti che superano
positivamente i compitini sono esonerati
dalla prova scritta.
Bibliografia
A.S. TANENBAUM, Architettura dei calcolatori, un approccio strutturato, Pearson,
2006.
ASPETTI SOCIALI ED ETICA
PROFESSIONALE
Docente
Dott. Antonio Piva
Crediti
3
Programma
Gli obiettivi principali del corso sono:
rendere lo studente consapevole del contesto sociale e delle implicazioni sociali
ed etiche conseguenti alle innovazioni
tecnologiche nel campo dell’informatica;
rendere lo studente consapevole delle
implicazioni deontologiche della propria
attività professionale, nei confronti dei
clienti e utenti, e responsabilizzarlo sulle
conseguenze a tutti i livelli del proprio
operato.
In particolare il corso prevede la trattazione dell’informatica giuridica ed il
83
Diritto dell’ICT, con particolare attenzione alle innovazioni apportate da internet.
Verranno trattate le seguenti tematiche:
- Liberalizzazione delle telecomunicazioni a livello internazionale e nell’ordinamento italiano
- La privacy e la sicurezza; nozione e
sviluppo di privacy: dalle linee guida
dell’OCSE del 1980 alla direttiva europea,
la normativa italiana in materia di dati
personali, le disposizioni applicabili alla
rete, gli obblighi per gli Internet Service
Provider, la gestione della sicurezza, le
misure minime ed idonee sulla sicurezza, il Documento programmatico della
sicurezza, le figure giuridiche previste.
- La tutela della segretezza della posta
elettronica nell’ordinamento italiano e
negli altri ordinamenti.
- La proprietà intellettuale e il diritto
d’autore; dalle origini del diritto d’autore
alla proprietà intellettuale nella società
dell’informazione; la normativa internazionale, europea ed italiana in materia. La
tutela giuridica del software: Il diritto
d’autore sul software e la sua brevettabilità; la durata del diritto, i beni oggetto del
diritto, in particolare il software e le banche dati. La tutela delle banche dati e delle
opere multimediali.
- I Domain Names di internet e gli aspetti
giuridici; le procedure di registrazione ed
il grabbing. Il DN ed il marchio, analisi di
alcuni casi di protezione giuridica ed
alcune decisioni dei tribunali italiani; le
autorità preposte alla registrazione ed al
controllo degli accessi; la risoluzione dei
conflitti.
- L’utilizzo dei link nei Web ed alcuni casi
giuridici.
- La firma digitale e la carta d’identità elettronica; il documento elettronico e la sua
validità giuridica nell’ordinamento italiano; la crittografia: storia, evoluzione, tecniche di sicurezza sulla rete; la riservatezza, l’integrità, l’autenticazione ed il non
84
programmi - informatica triennale
ripudio; le certification autority riconosciute dal CNIPA ed i certificati elettronici; le normative italiane ed europee sulla
firma elettronica; firma autografa e digitale a confronto; la data certa nei documenti elettronici. Accenni sulla carta
d’identità elettronica e la posta elettronica
certificata. L’informatica nella Pubblica
Amministrazione: il piano di E-Government ed il nuovo codice dell’amministrazione digitale.
- Il commercio elettronico; le direttive
dell’Unione Europea in materia; i contratti mediante Internet, i contratti ad oggetto informatico ed i contratti telematici; la
tutela dei consumatori in Internet e le
normative di riferimento per i contratti
conclusi fuori dai locali commerciali; la
pubblicità in rete: definizioni e disciplina
legale, i banner, lo spamming nell’ordinamento italiano.
- La criminalità informatica e il diritto
penale in internet; la tutela dei beni informatici, la violazione del domicilio informatico, l’accesso abusivo e gli hackers, la
normativa penale di riferimento.
- La ricerca delle informazioni giuridiche.
- La qualità (facoltativo). Storia ed
evoluzione della qualità, dalle norme ISO
9000:1994 alle Vision 2000; la loro
applicabilità alle più diverse situazioni ed
organizzazioni, la terminologia, il Sistema di Gestione della Qualità, i principi
della qualità, i requisiti delle norme,
l’approccio ai processi, il manuale, le verifiche ispettive, la gestione delle non
conformità, delle azioni preventive e correttive, la soddisfazione del cliente, risorse umane ed il miglioramento continuo.
BASI DI DATI E SISTEMI
INFORMATIVI
Docente
Prof. Angelo Montanari
Crediti
6
Programma
Parte 1 - Concetti di base
Ruolo e funzionalità di una base di dati;
astrazioni sui dati; modelli concettuali,
logici e fisici dei dati; istanze e schemi;
indipendenza logica e fisica dei dati; linguaggi per la definizione e la manipolazione dei dati; i sistemi per la gestione
delle basi di dati (DBMS); amministratore e utenti di una base di dati; il dizionario
dei dati; la struttura generale di una base
di dati.
Parte 2 - Il modello Entità/Relazioni (ER)
Metodologie e modelli per il progetto: il
ciclo di vita dei sistemi informativi e le
metodologie di progettazione di basi di
dati; i costrutti di base del modello concettuale Entità/Relazioni (ER): tipi e
istanze di entità e relazioni, attributi
(semplici, composti, a singolo valore, a
valore multiplo, derivati) e chiavi (identificatori interni ed esterni, le nozioni di
entità debole, entità proprietaria, chiave
parziale e relazione identificante), dominio di un attributo e utilizzo di NULL,
vincoli associati alle relazioni (partecipazione e rapporto di cardinalità), relazioni
ricorsive e ruoli, relazioni di grado superiore al secondo, i diagrammi ER; documentazione di schemi ER: tecniche di
documentazione, regole aziendali (vincoli di integrità e regole di derivazione);
costrutti avanzati del modello ER: specializzazioni e categorie. Modellazione dei
dati in UML: i diagrammi delle classi
(classi, associazioni, molteplicità, identificatori, generalizzazioni).
Parte 3 - Il modello relazionale, l’algebra
relazionale e il calcolo relazionale
Il modello relazionale: nozioni di base,
definizione delle relazioni, definizione
dei vincoli sulle relazioni (che coinvolgono un’unica relazione o più relazioni),
operazioni di aggiornamento delle relazioni; l’algebra relazionale: le operazioni
di base, interrogazioni in algebra relazionale, operazioni addizionali, ottimizzazione algebrica, i limiti dell’algebra relazionale; il calcolo relazionale: nozioni di
85
programmi - informatica triennale
base, calcolo relazionale dei domini e
delle tuple, il legame con l’algebra relazionale.
Parte 4 - Il linguaggio SQL
La definizione dei dati in SQL; interrogazioni in SQL; istruzioni di aggiornamento in SQL; altre definizioni dei dati in
SQL (vincoli di integrità generici, viste,
specifica di vincoli di addizionali sotto
forma di asserzioni); SQL e sicurezza
(controllo discrezionale degli accessi
basato sui privilegi); il DBMS MySQL.
Parte 5 - La progettazione delle basi di dati.
La progettazione concettuale dei dati: raccolta e analisi dei requisiti, criteri generali di rappresentazione, strategie di progetto, qualità di uno schema concettuale,
strumenti CASE per la progettazione dei
dati; la progettazione logica dei dati: analisi delle prestazioni su schemi ER,
ristrutturazione di schemi ER (analisi
delle ridondanze, eliminazione delle
gerarchie, partizionamento /accorpamento di entità e/o relazioni, scelta degli
identificatori principali), traduzione del
modello ER nel modello relazionale; la
teoria della progettazione delle basi di
dati relazionali: dipendenze funzionali,
ragionamento sulle dipendenze funzionali, scomposizione di relazioni, scomposizioni lossless-join, scomposizioni che
conservano le dipendenze, forme normali per gli schemi di relazione (1NF, 2NF,
3NF e BCNF), scomposizioni losslessjoin in BCNF, scomposizioni in 3NF che
conservano le dipendenze.
Bibliografia
Testi adottati:
- P. A TZENI , S. C ERI , S. P ARABOSCHI , R.
TORLONE, Basi di Dati: Modelli e Linguaggi
di Interrogazione, (seconda edizione),
McGraw-Hill, 2006.
- R. ELMASTRI, S. NAVATHE, Fundamentals
of Database Systems (5th Edition), Pearson
International Education/Addison Wesley,
2007.
In alternativa:
- R. ELMASTRI, S. NAVATHE, Sistemi di basi
di dati. Fondamenti, (quarta edizione),
Pearson Education Italia/Addison
Wesley, 2004.
Altri testi di riferimento:
- J.D. ULLMAN, Principles of Databases and
Knowledge-Base Systems (Volume I), Computer Science Press, 1988.
- S. ABITEBOUL, R. HULL, V. VIANU, Foundations of Databases, Addison-Wesley,
1995.
- A. ALBANO, G. GHELLI, R. ORSINI, Fondamenti di basi di dati, Zanichelli, 2005.
- C.J. DATE, An Introduction to Databases
Systems, (7th Edition), Addison-Wesley,
2000.
- SILBERSCHATZ, H.F. KORTH, S. SUDARSHAN, Database System Concepts, (4th Edition), McGraw-Hill, 2002.
- L. WELLING, L. THOMSON, MySQL Tutorial, Pearson Education Inc., 2004.
CALCOLO DELLE PROBABILITÀ E
STATISTICA
Docente
Prof. Luigi Pace
Crediti
6
Finalità del corso
L’obiettivo del corso è introdurre lo studente a quelli che sono i concetti fondamentali del Calcolo delle probabilità e
della Statistica, quale strumentazione di
base per lo studio dei fenomeni aleatori.
Tali nozioni verranno presentate sottolineando l’ambito delle applicazioni.
Programma
- Introduzione al calcolo delle probabilità
Richiami di calcolo combinatorio; fenomeni aleatori; spazi di probabilità; gli
assiomi della probabilità; probabilità con-
86
dizionata e legge delle probabilità composte; indipendenza stocastica fra eventi;
teorema di Bayes.
- Variabili casuali unidimensionali
Definizione di variabile casuale (v.c.); la
funzione di ripartizione; v.c. discrete e
v.c. assolutamente continue; funzioni di
densità e loro proprietà; media, mediana,
moda, varianza e momenti di ordine successivo; disuguaglianze notevoli; funzione generatrice dei momenti e sue proprietà; le principali distribuzioni di probabilità discrete e assolutamente continue.
- Variabili casuali multidimensionali
V.c. bivariate discrete e assolutamente
continue; funzione di ripartizione congiunta; distribuzioni di probabilità marginali; indipendenza tra due v.c.; covarianza e coefficiente di correlazione; distribuzioni di probabilità condizionate;
somme di v.c.
- Convergenza e teoremi limite
Successioni di v.c.; convergenza in probabilità; legge debole dei grandi numeri;
convergenza in distribuzione; teorema
centrale del limite.
- Introduzione all’inferenza statistica
Il problema dell’inferenza statistica;
modelli statistici parametrici; statistiche
campionarie; media campionaria; varianza campionaria.
- Stima puntuale e intervallare
Introduzione alla stima puntuale e intervallare; stime e stimatori; proprietà degli
stimatori; metodo della massima verosimiglianza; il metodo dei momenti; intervalli di confidenza e coefficiente di confidenza; intervallo di confidenza per la
media e per la varianza di una popolazione normale; il caso di una popolazione
bernoulliana; intervalli di confidenza
approssimati.
- Verifica di ipotesi
Introduzione alla teoria dei test statistici;
test di ipotesi sulla media e sulla varianza
di una popolazione normale; test per una
programmi - informatica triennale
percentuale; verifica di ipotesi sulla
media per grandi campioni.
Modalità d’esame
L’esame consiste in una prova scritta
seguita, per i sufficienti, da una prova
orale. Entrambe le prove dovranno essere
superate nello stesso appello.
Bibliografia
- Appunti delle lezioni.
- G. CICCHITELLI, Probabilità e Statistica,
seconda edizione, Maggioli, 1992.
- P. BALDI, Calcolo delle Probabilità e Statistica, McGraw-Hill, 1992.
CALCOLO SCIENTIFICO
Docente
Prof. Rossana Vermiglio
Crediti
6
Finalità del corso
Il corso è di tipo introduttivo e vuole portare lo studente ad avere familiarità con
alcune delle tematiche di base dell’analisi
numerica attraverso l’analisi teorica e la
sperimentazione dei principali metodi.
Al termine del corso lo studente saprà
riconoscere, analizzare e risolvere numericamente alcuni problemi della matematica del continuo; individuare e usare in
modo appropriato le risorse informatiche
(algoritmi, tempo macchina, memoria)
necessarie per la loro risoluzione; conoscere i vincoli di precisione e di tempo
imposti dalle risorse disponibili ed infine
saper stimare l’attendibilità dei risultati
numerici ottenuti ed interpretarli.
Programma
Numeri e aritmetica di macchina, analisi
degli errori; equazioni non lineari; richiami di algebra lineare, norme di vettori e
87
programmi - informatica triennale
matrici, prodotto scalare; risoluzione di
sistemi lineari con metodi diretti; approssimazione di dati e funzioni: interpolazione polinomiale, polinomiale a tratti,
trigonometrica, funzioni splines; splines
parametriche e curve di Bezier; soluzione
di sistemi sovradeterminati e minimi
quadrati, lineari metodo QR, la decomposizione a valori singolari SVD e sue applicazioni; integrazione e differenziazione
numerica; analisi di Fourier. Le esercitazioni saranno integrate con l’insegnamento del MATLAB ed esperienze in
laboratorio. dove saranno trattati alcuni
esempi e casi di studio di interesse per
l’informatica.
Prerequisiti
Matematica discreta, Analisi Matematica,
esperienze di base di programmazione.
Computazionale. Il corso contiene materiale sulle onde che introduce lo studio di
concetti di base della Meccanica Quantistica.
Programma
Approfondimento dei concetti fondamentali dell’elettrodinamica classica. Le
equazioni di Maxwell. Le onde in sistemi continui meccanici. Le onde elettromagnetiche. Ottica ondulatoria. Teoria
della relatività speciale. Interazione
luce-materia, irraggiamento da parte di
cariche accelerate, sorgenti di radiazione.
Modalità d’esame
L’esame consiste in una prova scritta.
Bibliografia
Dispense del corso.
Modalità d’esame
Prova scritta e orale.
COMPLEMENTI DI BASI DI DATI
Bibliografia
- Dispense del docente disponibili in rete.
- A. QUARTERONI, F. SALERI, Introduzione
al calcolo scientifico, Springer Verlag,
2002.
- C. M OLER , Numerical computing with
Matlab, Siam, 2005.
CAMPI E ONDE
ELETTROMAGNETICHE
Docente
Dott. Giovanni Luigi Michelutti
Crediti
6
Finalità del corso
Il corso ha un carattere culturale, di completamento dello studio iniziato nel corso
di Fisica, ed inoltre è propedeutico al
Corso di Laurea Specialistica in Fisica
Docente
Prof. Angelo Montanari
Crediti
6
Programma
Parte 1 - La progettazione delle basi di dati
(complementi).
La progettazione concettuale delle basi di
dati e il modello Dataflow: i costrutti di
base del modello Dataflow (processi, flussi dei dati, depositi dei dati e interfacce),
diagrammi contesto e diagrammi di flusso dei dati, progetto funzionale basato sul
modello Dataflow; progetto di sistemi
informativi: un approccio integrato alla
progettazione delle funzioni e dei dati
(sintesi degli schemi ER esterni e loro
integrazione). La progettazione logica dei
dati: soddisfacibilità e violazione di
dipendenze funzionali, chiusura di insie-
88
mi di dipendenze, un calcolo delle dipendenze (gli assiomi di Armstrong), chiusura di insiemi di attributi, algoritmi per il
calcolo della chiusura di insiemi di attributi, insiemi di dipendenze logicamente
equivalenti, coperture minimali, scomposizioni e loro proprietà, forme normali e
normalizzazione, algoritmi per la determinazione di scomposizioni in specifiche
forme normali.
Parte 2 - Il linguaggio SQL (complementi).
SQL e i linguaggi di programmazione:
introduzione, approcci alla programmazione per basi di dati, le procedure
memorizzate, i trigger, SQL embedded
statico (interrogazioni semplici e complesse, l’utilizzo dei cursori) e dinamico
(esecuzione immediata ed esecuzione in
due fasi), l’utilizzo di librerie di funzioni:
SQL/CLI (Call Level Interface), ODBC e
JDBC (cenni).
Parte 3 – L’organizzazione fisica dei dati.
Memorizzazione dei record ed organizzazione dei file primari: introduzione, strumenti e tecniche per la gestione della
memoria secondaria, buffering dei blocchi, memorizzazione di file di record su
disco, operazioni sui file, file di record
non ordinati (heap file), file di record
ordinati (sorted file), tecniche di hashing,
altre possibili organizzazioni dei file primari, uso della tecnologia RAID per
parallelizzare l’accesso a disco. Strutture
di indicizzazione dei file: tipi di indici
ordinati di livello singolo (primari, di clustering, secondari), indici multilivello,
indici multilivello dinamici che utilizzano B-alberi e B + -alberi, altri tipi di indici.
Parte 4 - Tecnologia delle basi di dati centralizzate.
La nozione di transazione: introduzione,
proprietà desiderabili delle transazioni,
scheduling e recupero delle transazioni,
tecniche di serializzazione, supporto alle
transazioni in SQL. Tecniche di controllo
programmi - informatica triennale
della concorrenza: problematiche, architettura, anomalie delle transazioni concorrenti, tecniche basate su viste, conflitti, locking a due fasi (2PL e 2PL stretto) e
timestamp, tecniche multiversione, granularità dei data item. Il gestore del buffer: architettura del buffer manager, primitive per la gestione del buffer, politiche
di gestione del buffer, relazione tra il
gestore del buffer e il file system. Tecniche di controllo dell’affidabilità: concetti
di base, architettura del controllore
dell’affidabilità, memoria stabile, organizzazione del log, gestione delle transazioni, gestione dei guasti. Elaborazione e
ottimizzazione delle interrogazioni: i
cataloghi di sistema; ottimizzazione delle
interrogazioni (rappresentazione interna
delle interrogazioni, profili delle relazioni, ottimizzazione basata sui costi); progettazione fisica di una base di dati. La
sicurezza nelle basi di dati: introduzione,
controllo obbligatorio degli accessi per
supportare livelli multipli di sicurezza, la
sicurezza nelle basi di dati statistiche
(cenni).
Parte 5 - Basi di dati distribuite.
Introduzione ai DBMS distribuiti, elementi di base dell’architettura client-server, frammentazione dei dati, allocazione
dei dati, livelli di trasparenza, tipi di sistemi
di basi di dati distribuite, elaborazione delle
interrogazioni in basi di dati distribuite,
controllo della concorrenza e dell’affidabilità nelle basi di dati distribuite.
Parte 6 - Basi di dati e World Wide Web
(cenni).
Nozioni di base (Internet, World Wide
Web, HTML, protocollo HTTP), gateway
e form, tecniche e strumenti per l’accesso
a basi di dati attraverso il Web, accesso a
basi di dati tramite programmi CGI, strumenti di sviluppo, limiti del protocollo
CGI, soluzioni basate sul server, soluzioni
basate sul client, sistemi informativi sul
web, progettazione concettuale di applicazioni web.
programmi - informatica triennale
Parte 7 - Argomenti conclusivi (cenni).
Basi di dati per il supporto alle decisioni
(data warehouse); dati semistrutturati in
XML; basi di dati a oggetti e ibride (ad
oggetti e relazionali); basi di dati attive;
basi di dati temporali e spaziali.
Bibliografia
Testi adottati:
- P. A TZENI , S. C ERI , P. F RATERNALI , S.
P ARABOSCHI , R. T ORLONE , Basi di Dati:
Architetture e Linee di Evoluzione, McGrawHill, 2003.
- R. ELMASTRI, S. NAVATHE, Fundamentals
of Database Systems, (5th Edition), Pearson International Education / Addison
Wesley, 2007.
In alternativa:
- R. ELMASTRI, S. NAVATHE, Sistemi di basi
di dati. Complementi, (quarta edizione),
Pearson Education Italia / Addison
Wesley, 2005.
Altri testi di riferimento:
- J.D. ULLMAN, Principles of Databases and
Knowledge-Base Systems, Volume I, Computer Science Press, 1988.
- SILBERSCHATZ, H.F. KORTH, S. SUDARSHAN, Database System Concepts, (4th Edition), McGraw-Hill, 2002.
- A. ALBANO, Costruire sistemi per basi di
dati, Addison-Wesley, 2001.
- A. ALBANO, G. GHELLI, R. ORSINI, Fondamenti di basi di dati, Zanichelli, 2005.
- P. A TZENI , S. C ERI , S. P ARABOSCHI , R.
TORLONE, Basi di Dati: Modelli e Linguaggi
di Interrogazione, (seconda edizione),
McGraw-Hill, 2006.
COMUNICAZIONE EFFICACE
Docente
Prof. Angelo Marzollo
Crediti
1
89
Finalità del corso
Il corso (pari ad un credito formativo) è
mutuato da quello di Laboratorio di Tecniche di Comunicazione, e coincide con
le prime otto lezioni di quest’ultimo. Il
corso si prefigge di dotare gli studenti di
alcuni strumenti operativi essenziali
nell’ambito della comunicazione, tali da
facilitare il loro inserimento nel mondo
del lavoro.
Programma
Si analizzeranno le capacità comunicative individuali così come esse emergono
in contesti collettivi (ad esempio lettura e
presa di parola in pubblico) ed interpersonali (ad esempio preparazione ed esposizione del proprio curriculum vitae, incontri e colloqui di lavoro, ecc.). Questo consentirà di evidenziare i punti critici in tali
contesti comunicativi e di fornire elementi utili al loro superamento, grazie anche
all’intervento di esperti specifici.
Bibliografia
Data la brevità del corso e il suo carattere
nettamente operativo la frequenza è
necessaria per affrontare l’esame e non
può essere sostituita dalla semplice lettura di testi. Tuttavia, si indicheranno materiali aggiuntivi o integrativi agli studenti
che desiderino approfondire argomenti
specifici.
Modalità d’esame
L’esame consisterà in una prova di comunicazione (scritta ed eventualmente
anche orale) il più possibile aderente a
situazioni che lo studente dovrà affrontare nella sua vita lavorativa e sociale. Gli
studenti che superino l’esame di Laboratorio di Tecniche di Comunicazione, le
cui prime otto lezioni affrontano gli argomenti sopra descritti, sono esentati dal
sostenere separatamente l’esame di
Comunicazione Efficace, ottenendone
automaticamente l’idoneità.
90
programmi - informatica triennale
CORSO INTRODUTTIVO
Docente
Dott. Maurizio Trombetta
Finalità del corso
Lo scopo del corso è quello di livellare la
preparazione degli studenti che si iscrivono al primo anno del Corso di Laurea in
Informatica, rimediando alle lacune che
essi possono avere sui concetti di base e le
nozioni essenziali per affrontare i corsi di
Analisi Matematica e di Matematica
Discreta.
Programma
Argomenti trattati: insiemi, elementi e
sottoinsiemi. Relazioni di equivalenza e
d’ordine. Applicazioni. numeri naturali,
interi, razionali, reali. Equazioni e disequazioni. Funzioni elementari: funzioni
razionali, goniometriche, esponenziali e
logaritmiche. Elementi di geometria analitica e di geometria euclidea.
Modalità d’esame
Test scritto.
Bibliografia
Testo consigliato:
M. TROMBETTA, Corso introduttivo di Matematica, Forum, Udine, 2004.
ELEMENTI DI LOGICA MATEMATICA
Docente
Prof. Alberto Marcone
Crediti
3
Pagina del corso
http://www.dimi.uniud.it/marcone/ElLo
gica.html
Finalità del corso
Lo scopo del corso è quello di acquisire gli
elementi di base della logica matematica,
con particolare attenzione ai metodi algoritmici.
Programma
Calcolo preposizionale: sintassi e semantica, soddisfacibilità e conseguenza logica, trasformazione in forma normale congiuntiva o disgiuntiva, tableau semantici.
Calcolo dei predicati: sintassi e semantica, soddisfacibilità e conseguenza logica,
tableau semantici. Traduzione dal linguaggio naturale al linguaggio formale.
Modalità d’esame
Prova scritta, con prova orale facoltativa.
Bibliografia
Dispense del docente.
FISICA
Docente
Prof. Lorenzo Santi
Crediti
6
Finalità del corso
Il corso fornisce le conoscenze di base
della Fisica. Questo comprende nozioni
di Meccanica, di Termodinamica e di
Elettromagnetismo. L’impostazione del
corso è essenzialmente operativa, nel
senso che la capacità di risolvere problemi è considerata determinante.
Programma
Introduzione alla Fisica, ordini di grandezza, unità di misura. Cinematica.
Forze e principi della Dinamica. Energia
cinetica e potenziale. Forza gravitazionale
e potenziale gravitazionale, leggi di
Keplero. Urti, conservazione della quantità di moto. Termodinamica. Forze elettriche e magnetiche. Introduzione ai cir-
91
programmi - informatica triennale
cuiti elettrici. Introduzione elementare
alle onde elettromagnetiche.
casa. Per chi non frequenta il corso:
esame orale.
Modalità d’esame
L’esame consiste in una prova scritta.
Bibliografia
- K.S. KRANE, Modern Physics, (second edition), Wiley, 1996.
- Appunti di lezione.
Bibliografia
TIPLER, Introduzione alla Fisica, Zanichelli.
Dispense del corso.
FISICA MODERNA
FONDAMENTI DELL’INFORMATICA 1
Docente
Prof. Furio Honsell
Docente
Prof. Alessandro De Angelis
Crediti
6
Crediti
6
Finalità del corso
Far riflettere gli studenti sulle limitazioni
dei procedimenti algoritmici, limiti sia
intrinseci sia dettati dalle risorse a disposizione. Gli studenti incontreranno il
concetto di funzione calcolabile, di linguaggio formale, di automa, di classe di
complessità e le loro reciproche relazioni.
Dopo aver superato l’esame si ritiene che
lo studente: conosca l’esistenza di problemi intrinsecamente irrisolvibili per via
algoritmica; abbia una chiara idea delle
relazioni note tra le classi di complessità
logaritmica, polinomiale deterministica e
non deterministica, esponenziale; conosca le prime nozioni relative ai linguaggi
formali e alle loro relazioni con gli automi.
Pagina del corso
http://www.fisica.uniud.it/~deangeli/fismod/corsofismod.html
Finalità del corso
Introdurre la Fisica Quantistica e la Relatività. Il corso è indirizzato agli studenti
di Fisica Computazionale, Matematica,
Informatica e Ingegneria.
Prerequisiti
Fisica 1 e 2. Analisi applicata alle funzioni
di una e più variabili.
Programma
Caduta della fisica classica. La prima formulazione della meccanica quantistica.
Equazione di Schroedinger ed applicazioni. Conduzione e semiconduttori; funzionamento dei dispositivi elettronici a
semiconduttore. Cenni sulla computazione quantistica. Relatività speciale e formulazione covariante dell’elettromagnetismo. Cenni sulla fisica delle particelle
elementari e la cosmologia.
Modalità d’esame
Per chi frequenta il corso: compiti per
Programma
- Calcolabilità. Modelli di calcolo: la Macchina di Turing. Funzioni calcolabili e
problemi decidibili. Enumerazione delle
funzioni calcolabili, funzione universale.
Tesi di Church. Esistenza di problemi
non decidibili. Problemi semidecidibili.
- Complessità. Macchine di Turing con
risorse limitate. Classi di complessità.
Alcune classi: P, NP, EXP, PSPACE.
Riduzioni polinomiali e problemi com-
92
programmi - informatica triennale
pleti. NP-completezza, teorema di Cook,
esempi di problemi NP completi.
- Linguaggi formali. Grammatiche a
struttura di frase. Linguaggi regolari,
espressioni regolari, automi finiti. Linguaggi liberi dal contesto, alberi di derivazione, automi a pila.
Bibliografia
- Appunti delle lezioni.
- N.J. CUTLAND, Computability: An Introduction to Recursive Function Theory, Cambridge Univ. Press, Cambridge 1980.
- J.E. HOPCROFT, J.D. ULLMAN, Introduction to Automata, Languages and Computation, Addison-Wesley, Reading 1979.
FONDAMENTI
DELL’INFORMATICA 2
Docente
Prof. Agostino Dovier
Crediti
6
Finalità del corso
Approfondire le competenze degli argomenti già trattati nel corso di Fondamenti dell’Informatica I. Dopo aver superato
l’esame si ritiene che lo studente sia in
grado di discutere la decidibilità o meno
(la polinomialità o meno) di problemi,
anche utilizzando tecniche raffinate di
riduzione, e conosca gli aspetti rilevanti
della teoria dei linguaggi formali.
Programma
Il corso si divide in tre parti: linguaggi
formali, calcolabilità e complessità. Linguaggi formali. Richiami sui linguaggi
regolari. Automi a stati finiti deterministici e non-deterministici, e loro equivalenza. Espressioni regolari. Pumping
Lemma per i linguaggi regolari e sue
applicazioni. Proprietà di chiusura e di
decidibilità dei linguaggi regolari. Il teorema di Myhill-Nerode; unicità e determinazione dell’automa minimo. Linguaggi
liberi dal contesto. Grammatiche libere
dal contesto e alberi di derivazione.
Grammatiche ambigue. Le forme normali di Chomsky e di Greibach. Il pumping
lemma per i linguaggi liberi e le sue
applicazioni. Proprietà di chiusura e di
decidibilità dei linguaggi liberi. Grammatiche lineari destre e sinistre, grammatiche di tipo 0 e 1 e gerarchia di Chomsky.
Calcolabilità. Richiamo dei formalismi
delle funzioni primitive ricorsive, ricorsive parziali e Macchine di Turing. Equivalenza tra le funzioni ricorsive parziali e le
funzioni Turing-calcolabili. Calcolabilità
e Linguaggi di Programmazione. Il linguaggio While: Sintassi, semantica e funzioni While-calcolabili. Turing completezza del linguaggio While. Il linguaggio
For. Equivalenza tra funzioni For-calcolabili e funzioni primitive ricorsive. Indecidibilità dell’halting problem senza aritmetizzazione. Il teorema S-m-n per la
While calcolabilità e gli Specializzatori. Il
Teorema di ricorsione di Kleene, il Teorema di Rice e le proprietà di programmi e
il Teorema di Rice-Shapiro. Applicazioni
alla programmazione. Riducibilità funzionale. Studio della relazione. Insiemi
ricorsivi e completi. Insiemi creativi e
produttivi. Secondo Teorema di Ricorsione e Teorema di Myhill. Insiemi semplici: esistenza di un insieme semplice.
Complessità. Problemi e linguaggi. Problemi decisionali e funzionali. Classi di
Complessità in tempo deterministiche:
Riassunto dei principali risultati. Classi
non deterministiche e classi in spazio.
Principali risultati. Riduzioni, completezza, ed esempi. Teoremi di Cook. NP-completezza di alcuni problemi fondamentali
mediante riduzione.
Modalità d’esame
Prova scritta ed orale.
programmi - informatica triennale
Bibliografia
- A. DOVIER, R. GIACOBAZZI, Fondamenti
dell’Informatica: Linguaggi Formali, Calcolabilità e Complessità, disponibile on-line.
- N.J. CUTLAND, Computability: An Introduction to Recursive Function Theory, Cambridge Univ. Press, Cambridge 1980.
- J.E. HOPCROFT, J.D. ULLMAN, Introduction to Automata, Languages and Computation, Addison-Wesley, Reading, 1979.
- C.H. P APADIMITRIOU , Computational
Complexity, Addison Wesley, 1995.
INGEGNERIA DEL SOFTWARE 1
Docente
Prof. Carlo Tasso
Crediti
6
Finalità del corso
Obiettivo del corso è l’introduzione ai
concetti di base dell’Ingegneria del
Software, settore dell’informatica dedicato allo studio delle metodologie, delle tecniche e degli strumenti utilizzati nella
produzione industriale del software. In
particolare il corso descrive vari modelli
del processo di sviluppo del software presentando i problemi relativi alle varie fasi
del ciclo di vita, con particolare riferimento all’analisi dei requisiti e alla specifica,
al progetto, al testing, agli standard ed al
controllo di qualità.
Programma
- Concetti e definizioni di base dell’Ingegneria del Software.
Introduzione. Origini e motivazioni
dell’Ingegneria del Software. Definizioni
di base: prodotti software, caratteristiche
generali dei prodotti software, distribuzione dei costi. Processi per lo sviluppo
del software, modello dei processi: processi primari, di supporto e di gestione;
93
ciclo di vita, metodologia di sviluppo.
Modelli generali dei processi: modello a
cascata; sviluppo incrementale; modello a
spirale di Boehm, gestione del rischio;
discussione ed esempi. Visibilità del processo di sviluppo. Ingegneria dei sistemi.
Definizioni e problemi. Ambiente di un
sistema. Modello contractor/sub-contractor per l’acquisizione del sistema. Fasi del
processo di ingegnerizzazione dei sistemi: definizione dei requisiti, progetto,
sviluppo dei sotto-sistemi, integrazione,
installazione, funzionamento, evoluzione e dismissione. Obiettivi del sistema.
Architettura di un sistema, componenti
funzionali. Fattori umani, problematiche
relative all’interfaccia affidabilità, resilienza.
- Gestione di un Progetto Software.
Gestione di un progetto software. Attività
di gestione. Personale. Pianificazione del
progetto: piano di progetto, struttura e
contenuti. Concetti di milestone e derivable. Schedulazione del progetto; rappresentazioni grafiche: diagramma delle attività, dei tempi, del personale. Cammino
critico.
- Requisiti di un sistema Software.
Ingegnerizzazione dei requisiti. Definizione del concetto di requisito. Attività di
definizione, analisi e specificazione dei
requisiti. Processo di ingegnerizzazione
dei requisiti. Documentazione dei requisiti. Validazione dei requisiti: review sui
requisiti, parametri di validazione. Evoluzione dei requisiti: requisiti duraturi,
volatili, mutabili emergenti, consequenziali, di compatibilità. Analisi dei requisiti: definizione e processo d’esecuzione.
- Tecniche di modellizzazione dei sistemi.
Modellizzazione dei sistemi. Modelli
data-flow (DFD): definizioni ed esempi.
Inadeguatezza dei modelli DFD a rappresentare aspetti di controllo e di sincronizzazione. Automi a stati finiti: definizioni
ed esempi. Reti di Petri posti-transizioni:
94
definizioni, esempi, valutazioni. Modelli
object oriented: modelli d’eredità, di
aggregazione e di utilizzo dei servizi. Linguaggio UML e principali diagrammi.
Data dictionary.
- Definizione dei requisiti e specificazione del software.
Definizione e specificazione dei requisiti:
modalità e tecnica di redazione. Uso di
linguaggio naturale e di moduli in linguaggio strutturato. Linguaggi per la
descrizione dei programmi (PDL). Definizione dei requisiti per interfacce
software. Requisiti non funzionali, classificazione. Specificazione del software:
definizione. Criteri di accettazione. Relazioni tra specificazione e progetto. Il
ruolo delle specifiche formali.
- Prototipizzazione del Software.
Prototipizzazione: definizione. Motivazioni, obiettivi, approcci. Prototipizzazione: approccio evolutionary, approccio
throw-away, approccio incrementale.
Strumenti per la prototipizzazione. Prototipizzazione dell’interfaccia utente.
- Generalità e Progetto Architetturale.
Progetto del software. Stadi del processo
di progetto. Metodi di progetto: approccio
Top-down, metodi strutturati, strategie
funzionali e object oriented. Documentazione del progetto. Parametri di qualità
del
progetto:
coesione,
accoppiamento,comprensibilità e adattabilità. Porgetto architetturale: definizione, sistema, sotto-sistema, modulo.
Modelli per la strutturazione dei sistemi
software: modello basato su data base
condiviso, modello client-server, concetto
di tipo di dati astratto e modello basato su
Macchine Astratte. Modelli del controllo;
controllo centralizzato: modello callreturn e modello basato su manager di
controllo; controllo basato sugli eventi:
modello broadcast e modello a interrupt.
Modelli di scomposizione in moduli:
data-flow e object oriented. Architetture
specifiche del dominio: generiche e di
programmi - informatica triennale
riferimento, esempi. Architetture distribuite, architetture 2- e 3-tier, thin e fat
client, middleware.
- Progettazione Object-Oriented.
Definizioni di base della tecnologia
object-oriented. Progettazione objectoriented (OOD): caratteristiche e vantaggi. Analisi object-oriented e OOD: differenze. Identificazione di Oggetti e Classi
basata sul linguaggio naturale. Interfacce
tra oggetti (esempi in ADA e C++). Il
ruolo dell’astrazione. Classi riusabili,
astrazione, standardizzazione e altri criteri di progettazione delle classi. Gerarchia
di Aggregazione. Diagramma dei servizi.
Progettazione dell’interfaccia tra oggetti.
Diagrammi UML per la progettazione
OO.
- Progettazione funzionale.
Progettazione funzionale: definizione.
Progettazione data-flow. Decomposizione strutturale e diagrammi di struttura.
Trasformazione dei diagrammi data-flow
in diagrammi di struttura. Progetto di
dettaglio (o esecutivo). Modello
fetch&amp; execute per i sistemi interattivi. Confronto delle diverse strategie di
progetto.
- Verifica e Validazione.
Processi di supporto. Il controllo di qualità dei prodotti software: la verifica e la
validazione, definizioni secondo ISO
12207. Verifica e validazione statiche e
dinamiche. Testing e ispezione. Validazione tecnica e sociale. Obiettivi e problematiche generali del testing. Testing
statistico e di identificazione dei difetti.
Debugging.
- Testing del Software
Processo di debugging. Pianificazione e
organizzazione dei test. Strategie di test.
Il test incrementale. La metodologia Big
Bang. Strategie di testing top down e bottom up. Test dinamico black box (funzionale) e white box (strutturale). Il concetto di test case. Dati di test. Classi di
equivalenza. La verifica statica. Il processo di ispezione.
95
programmi - informatica triennale
- Introduzione al Dependability del Software.
Definizione di dependability (fidatezza) e
sue dimensioni: affidabilità, disponibilità, sicurezza e protezione (safety). Concetto di affidabilità. Fallimenti, guasti,
errori. Metriche di affidabilità. Unità di
tempo: tempo di esecuzione, di calendario, cronometrico. Confronto del concetto
di affidabilità per il software e per
l’hardware. Distribuzione probabilistica
delle misure di affidabilità. Classificazione delle conseguenze dei malfunzionamenti. Possibili usi delle misure di affidabilità.
- Qualità del Software.
Concetto di standard: standard de jure, de
facto, aperto, proprietario. Il ruolo
dell’ISO e delle organizzazioni nazionali.
Definizione di qualità del SW secondo lo
standard ISO 8402. Controllo di Qualità
secondo ISO 9000. Modello di qualità
del software secondo ISO 9126: parametri di funzionalità, affidabilità, usabilità,
efficienza, manutenibilità, portabilità.
Gestione della qualità. Politica di qualità.
Sistema qualità, controllo e assicurazione
di qualità. Scope e pianificazione delle
attività di assicurazione della qualità.
Qualità di un prodotto basata sulla qualità
del processo di produzione. Review di
qualità. Check di qualità ed azioni correttive. Documentazione dei review di qualità. Processo di valutazione e metriche
dei parametri di qualità secondo ISO
9126. Standard ISO 9000 per la gestione
ed assicurazione della qualità: ISO 9001,
9002, 9003 e 9004, manuale della qualità. Standard ISO 9000-3: linee guida
per l’applicazione dello standard ISO
9001 al software. Certificazione di qualità
ed accreditamento.
- Standard sul Ciclo di Vita.
Standard ISO 12207 sul ciclo di vita del
software. Definizione dei vari processi
software. Definizione dei ruoli degli esecutori dei processi: acquirente, fornitore,
proprietario, sviluppatore, operatore,
manutentore. Prospettiva contrattuale.
Processi di monitoraggio e tailoring del
ciclo vita.
Modalità d’esame
Esame scritto e orale.
Bibliografia
- I. S OMMERVILLE , Software Engineering,
seventh edition, Addison-Wesley, Harlow, UK, 2004.
Anche in edizione italiana:
- I. SOMMERVILLE, Ingegneria del software,
settima edizione, Pearson AddisonWesley, Milano, 2005.
- G. GUIDA, C. TASSO, Design and Development of Knowledge-Based Systems: from Life
Cycle to Development Methodology, John
Wiley & Sons, Chichester, UK, 1994.
- Materiale didattico (slide, testi esami ed
esercitazioni)
disponibile
su
http://twm.dimi.uniud.it
INGEGNERIA DEL SOFTWARE 2
Docente
Prof. Maurizio Pighin, Dott. Anna Marzona
Crediti
6
Finalità del corso
Obiettivo del corso è l’approfondimento
delle principali tematiche dell’Ingegneria
del Software. Viene richiamato il ciclo di
progettazione e di vita di un prodotto
Software. Vengono poi studiati e
approfonditi gli argomenti più avanzati,
quali il configuration management, le
metodologie di test, la progettazione dei
sistemi, le metriche teoriche ed operative,
i più noti modelli di qualità di prodotto e
di processo, le metodiche di pianificazione e controllo, i principali strumenti di
96
lavoro. Nel correlato corso di Laboratorio
avanzato (4 CFU) viene svolto un casestudy completo, seguendo un processo di
sviluppo di un progetto Software in tutte
le fasi sia del ciclo di vita (specifiche, progetto, codifica, test, rilascio, manutenzione) che operativo (pianificazione, analisi
costi, metriche, organizzazione del lavoro, consuntivazioni economiche)
Programma
Introduzione e Richiami Generali: le
motivazioni del Software Engineering.
Richiami alle definizioni di base. La
dimensione economica del problema. I
fattori di complessità del processo di sviluppo. Configuration Management: Le
motivazioni del Configuration Management. Il CM-Planning. Trattamento delle
versioni. Assemblaggio dei componenti e
System Building. Ingegneria del Software Esistente: L’I.S.E: definizioni e problematiche. Le metodologie di re-engineering. Le metodologie di riuso. Lo sviluppo
per il riuso e tramite il riuso. Verifica e
Validazione: i risultati teorici negativi.
Strategie di test. Test dinamico. Le catene
di test. I test di regressione. L’automazione del test e l’analisi mutazionale. Test
statico. Cenni sui metodi formali di test.
Metriche: le definizioni generali. Gli
obiettivi delle misure. Le scale di misurazione. Le misure di controllo e predittive.
Il data collection. Gli attributi interni e le
loro misurazioni. La metrica di Halstead.
La metrica di Albrecht. La metrica di
McCabe ed altre metriche di complessità.
Gli attributi esterni e le loro misurazioni
Modelli di qualità: la certificazione di
qualità e i principali modelli di certificazione di processo e di prodotto: richiami
al modello ISO 9000, il modello CMM,
cenni su altri modelli: BOOTSTRAP,
BOOTSTRAP, SYNQUEST, SPICE. Il
modello IS0 9126. Valutazione e stima
dei costi: l’analisi prestazioni/costo e
l’analisi delle decisioni. La stima dei costi
programmi - informatica triennale
del Software. Richiamo modello COCOMO. Altri modelli di stima. Pianificazione e Controllo del Processo Produttivo:
l’organizzazione e gestione dei gruppi di
lavoro. La pianificazione ed i suoi obiettivi. I diagrammi di Pert e gli schemi di
Gantt. Manutenzione: costi, stime, misurazioni, dinamica del processo manutentivo. Il modello COCOMO. Extreme programming: metodologie organizzative:
pianificazione, testing. Tecniche di sviluppo Strumenti di lavoro: la tecnologia
CASE: Tools, Ambienti. Le funzionalità.
Gli strumenti di supporto nelle varie fasi
del processo di sviluppo.
Modalità d’esame
L’esame consiste nella discussione del
progetto fatto durante il laboratorio.
Alternativamente lo studente può sostenere una prova scritta/orale sugli argomenti del programma.
Bibliografia
- R.S. PRESSMAN, Principi di Ingegneria del
Software, McGrawHill, 4th ed., 2005.
- I. SOMMERVILLE, Software Engineering, 7th
ed., Addison Wesley P.C., 2004.
- N.E. F ENTON , S.L. P FLEEGER , Software
Metrics - A Rigorous and Practical Approach, 2 nd edition, PWS Publishing Company, 1997.
- A. B INATO , A. F UGGETTA , L. S FARDINI ,
Ingegneria del Software, creatività e metodo,
Pearson-Addison Wesley, 2006.
- C. GHEZZI, M. JAZAYERI, D. MANDRIOLI,
Ingegneria del Software - Fondamenti e
Principi, 2nd ed., Pearson-Prentice Hall,
2004.
- AA.VV., Metriche del software - esperienze
e ricerche, Franco Angeli, 2006.
- Materiale didattico disponibile sul sito
d’Ateneo.
programmi - informatica triennale
INTERAZIONE UOMO-MACCHINA 1
Docente
Prof. Luca Chittaro
Crediti
6
Finalità del corso
Scopo del corso è di introdurre i principi,
le metodologie di progettazione e le diverse scelte implementative per la costruzione di software che sia usabile in modo
semplice, intuitivo, produttivo ed affidabile dagli utenti a cui è rivolto. Il raggiungimento di questo obbiettivo richiede lo
studio di tre diverse tematiche: l’uomo
(caratteristiche psicologiche dell’utente);
la macchina (strumenti per la realizzazione di interfacce con il mondo esterno);
l’interazione (analisi, progetto, valutazione di interfacce uomo-macchina). Oltre a
presentare le nozioni di base della disciplina, il corso pone anche l’accento su
alcuni sviluppi recenti di particolare
importanza, quali le interfacce 3D ed il
groupware.
Programma
- Introduzione: obiettivi dell’Interazione
Uomo-Macchina e sua importanza nei
diversi settori applicativi dell’Informatica.
- Aspetti psicologici dell’Interazione
Uomo-Macchina: psicologia cognitiva.
Canali sensoriali. Limitazioni e aspettative umane nei processi percettivi. Percezione visiva. Percezione auditiva. Percezione tattile. Movimento. La Memoria
umana: sensoriale, a breve termine, a
lungo termine. Differenze individuali.
Modelli mentali. Metafore. Errori umani:
slip e mistake.
- Periferiche per l’Interazione UomoMacchina: periferiche per l’inserimento
di testo. Periferiche per il puntamento e
posizionamento. Periferiche 3D. Periferi-
97
che per l’output visivo, auditivo, tattile.
Periferiche ed interfacce per utenti disabili.
- Modelli e paradigmi di Interazione
Uomo-Macchina: modelli per caratterizzare le fasi dell’interazione. Aspetti ergonomici dell’interazione. Stili di interazione: dai linguaggi di comando alle interfacce 3D. Interfacce a finestre (WIMP).
Progetto dei menù e delle icone. Paradigmi di interazione.
- Interazione Uomo-Macchina e Ciclo di
Vita del Software: analisi dei requisiti di
usabilità. Principi di usabilità. User-centred design. Usability Engineering. Tecniche di prototyping. Tecniche per favorire la creatività. Documentazione delle
scelte di progetto.
- Environment, User, Task Analysis:
determinazione del contesto dell’interazione con modelli socio-tecnici. Il metodo
USTM/CUSTOM. Analisi dei compiti
degli utenti. Il metodo HTA. Modelli predittivi: GOMS, KLM.
- Metodi Formali nell’Interazione UomoMacchina: State transition network ed
altre notazioni diagrammatiche. Notazioni testuali. Progetto ed analisi di dialogo
mediante state transition network.
- Guidelines e Standard per le Interfacce
Utente: definizione. Scelta ed uso di guidelines. Esempi di guidelines: MITRE,
Apple, Microsoft, guidelines IBM per
interfacce 3D. Lo standard ISO 9241.
- Strumenti per l’Implementazione di
Interfacce Utente: Windowing System.
Tecniche di programmazione. Toolkit.
Caso di studio: il toolkit di Java. User
Interface Management System.
- Valutazione di Usabilità: scopo della
valutazione. Strumenti di registrazione.
Osservazione dell’utente. Raccolta di opinioni. Interviste. Questionari. Esperimenti. Valutazione predittiva. Cognitive
walkthrough. Valutazione interpretativa.
- Help: assistenza all’utente. Requisiti di
un help system. Principali approcci.
98
programmi - informatica triennale
Interfacce adattive ed adattabili.
- Computer-Supported Cooperative
Work: Groupware. La comunicazione
mediata dal calcolatore. E-mail e sistemi
di comunicazione testuale. Videoconferenza. Ambienti collaborativi virtuali.
Sistemi workflow. Aspetti sperimentali
ed organizzativi del lavoro cooperativo.
- Recenti Paradigmi di Interazione
Uomo-Macchina: Ubiquitous Computing. Realtà virtuale. Tipologie di realtà
virtuale. Il linguaggio VRML. Interfacce
multi-sensoriali (o multi-modali). Information visualization. Ipertesti. Interfacce
multimediali e ipermediali.
Bibliografia
- A. DIX, J. FINLAY, G. ABOWD, R. BEALE,
Human Computer Interaction, third edition, Prentice Hall, 2003. - J. PREECE, Y.
R OGERS , H. S HARP , D. B ENION , S. H OL LAND, T. CAREY, Human Computer Interaction, Addison Wesley, 1994.
LABORATORIO DI ALGORITMI E
STRUTTURE DATI
Docente
Dott. Massimo Franceschet
Crediti
4
Finalità del corso
Scopo del corso è la realizzazione di algoritmi di una certa complessità, che operano su strutture dati articolate, e la determinazione sperimentale delle relative
prestazioni. In questo modo si intende
dare un supporto concreto ai fini di una
migliore comprensione delle idee e dei
concetti discussi nel corso teorico di Algoritmi e Strutture Dati. Si assume una
conoscenza non superficiale di un linguaggio di programmazione imperativa.
Programma
- Misura dei tempi di calcolo e confronto
fra diversi ordini di complessità. Stime
teoriche dei tempi di calcolo nel caso di
semplici algoritmi, notazione O-grande.
Misure dei tempi, errore relativo, discussione dei risultati sperimentali. Limiti
dell’analisi asintotica e ruolo delle costanti moltiplicative.
- Stima del tempo medio. Generatori di
numeri casuali, tempo medio, varianza,
intervalli di confidenza.
- Code tuning. Tecniche per migliorare
l’efficienza di alcuni programmi. Eliminazione delle chiamate di procedura,
macroespansione. Valutazione sperimentale.
- Sperimentazione di algoritmi e strutture
dati sviluppati nel corso teorico. Algoritmi di ordinamento; realizzazione di altre
strutture dati e algoritmi (da determinare).
Bibliografia
- S. Martini, appunti disponibili sulla pagina web.
- T.H. Cormen, C.E. Leiserson, R.L.
Rivest, Introduction to Algorithms, second
edition, MIT Press, 2001.
LABORATORIO DI ARCHITETTURA
DEGLI ELABORATORI
Docente
Prof. Pietro Di Gianantonio
Crediti
4
Finalità del corso
Il laboratorio ha lo scopo di far sperimentare concretamente allo studente, mediante la realizzazione di brevi progetti al calcolatore, alcuni dei temi di rilievo trattati
nel corso di Sistemi di Elaborazione/Architettura degli Elaboratori.
99
programmi - informatica triennale
Programma
Tipi di progetto: reti logiche: progetto e
simulazione di reti combinatorie e
sequenziali in ambiente Macintosh. Realizzazione di librerie di componenti digitali di base, e loro uso per la costruzione
modulare di sistemi digitali più complessi. Rappresentazioni numeriche: algoritmi concernenti la rappresentazione e
l’elaborazione di numeri interi senza
segno, con segno, reali in virgola fissa e in
virgola mobile. Programmazione Assembler: sviluppo di programmi mirato ad
esplorare le diverse caratteristiche
dell’Assembler MIPS: direttive all’assemblatore, istruzioni di assegnamento e
confronto, le varie modalità di indirizzamento, sfruttamento dei condition codes,
strutture di controllo, istruzioni aritmetico-logiche, manipolazione singoli bit,
subroutine, allocazione/deallocazione di
memoria sullo stack. Oltre alle tecniche
di programmazione Assembler di base,
verranno affrontate anche alcune tecniche avanzate, in particolare per l’implementazione e trattamento in assembler
di strutture dati (vettori, stringhe, matrici,
insiemi, liste), e per la gestione delle eccezioni.
Modalità d’esame
L’esame consiste nella preparazione da
parte dello studente di una breve relazione scritta su un progetto volto a riassumere le diverse tematiche affrontate in
laboratorio. Il progetto da svolgere va
richiesto al docente e la relativa relazione
va consegnata prima dello svolgimento
dell’esame orale di Sistemi di Elaborazione/Architettura degli Elaboratori.
LABORATORIO DI ELETTRONICA
Docente
Prof. Lorenzo Santi
Crediti
6
Finalità del corso
Lo scopo del corso è di fornire le basi per
la comprensione dell’elettronica moderna. Il corso include anche una serie di
sessioni di laboratorio.
Programma
Circuits. Introduzione alla Fisica dei
semiconduttori. Diodi, transistor bipolari
e FET. La fabbricazione dei circuiti integrati digitali. La famiglia logica TTL.
Memorie RAM, DRAM etc. Convertitori
ADC e DAC. La tecnologia di una moderna applicazione (il lettore di CD ROM).
Modalità d’esame
L’esame consiste in una prova pratica.
Bibliografia
- HOROWITZ, HILL, The Art of Electronics,
2nd ed., Cambridge University Press.
- Dispense del corso.
Maggiori dettagli e aggiornamenti
http://www.fisica.uniud.it/~milotti/Dida
tticaUD/Elettronica/ArgomentiSvolti.ht
ml
LABORATORIO DI
PROGRAMMAZIONE
Docente
Dott. Alberto Ciaffaglione
Crediti
4
Finalità del corso
- Acquisizione di familiarità con il calcolatore e, più specificamente, con gli
ambienti di sviluppo di programmi.
- Consapevolezza delle varie fasi di sviluppo di un programma, in particolare com-
100
programmi - informatica triennale
pilazione, caricamento/collegamento e
debugging.
- Conoscenza dei costrutti di base di un
linguaggio di programmazione e capacità
di utilizzarlo per formalizzare semplici
programmi.
Programma
- Esercizi per familiarizzare con i principali costrutti dei linguaggi di programmazione.
- Realizzazione di semplici programmi
ricorsivi e iterativi.
- Realizzazione di programmi che fanno
uso di tipi di dato strutturati.
- Verifica delle singole componenti di un
programma e del programma complessivo.
- Realizzazione di un progetto a partire
dagli strumenti disponibili nell’ambiente
di sviluppo: formulazione di un problema
e implementazione di un programma che
lo risolve.
- Sviluppo della capacità di documentare
la realizzazione di un progetto: stesura di
una relazione con specifiche e analisi del
problema, soluzione tecnica adottata e
discussione dei risultati.
LABORATORIO DI SISTEMI
OPERATIVI
Docente
Dott. Ivan Scagnetto
Crediti
4
Programma
1. Il sistema Operativo UNIX: struttura,
interfaccia utente, varianti (Solaris,
Linux). La shell UNIX:
ruolo e varianti, procedura di login, organizzazione del file system, manuale online, la shell bash: espansione del pathname, ridirezione del I/O, pipe, job in back-
ground, il comando history, editing della
linea di comando, completamento di
comandi, gli editor vi e (X)Emacs, il
comando make.
Comandi principali della shell: gestione
di file, gestione di processi, monitoraggio
della memoria,
comandi filtro: ricerca, ordinamento, editing.
Shell script: variabili, passaggio dei parametri, strutture di controllo, login script.
2. Basi di Linguaggio C.
3. Programmazione di sistema: controllo
di processi,
file system, comunicazione tra processi, threads e multithreading.
LINGUAGGI DI
PROGRAMMAZIONE 1
Docente
Prof. Marco Comini
Crediti
6
Finalità del corso
Il corso di Linguaggi 1, in congiunzione
con il corso di Linguaggi 2, intende fornire una conoscenza delle caratteristiche
dei vari paradigmi di programmazione,
cercando il più possibile di evitare di concentrarsi su uno specifico linguaggio,
andando bensì a presentare i principi che
guidano la progettazione, realizzazione e
implementazione dei moderni linguaggi
di programmazione. Con solida conoscenza delle caratteristiche ‘universali’ si
potrà così in futuro imparare nuovi linguaggi in pochissimo tempo.
A questa visione generale si giunge attraverso la descrizione dei principali paradigmi di programmazione: imperativo,
funzionale, logico e logico-funzionale.
Questi paradigmi, oltre a essere esaminati nei loro aspetti pragmatici più immediati, sono analizzati e confrontati sulla
101
programmi - informatica triennale
base dei principi generali, in modo tale da
permettere una comprensione critica
della maggior parte dei linguaggi di uso
comune. In questo modo si intende sviluppare uno spirito critico che permetta
di arrivare ad una programmazione consapevole in cui saper scegliere il paradigma più adatto a seconda del problema da
risolvere e sapere quali costrutti di un linguaggio usare, e a quale costo.
I due corsi intendono inoltre fornire una
conoscenza relativamente approfondita
(soprattutto dell’aspetto programmativo)
dei paradigmi di programmazione dichiarativa (funzionale, logico e logico-funzionale) che, grazie alla loro espressività, si
prestano naturalmente quale base di sviluppo di software corretto.
Il corso di Linguaggi 1, in particolare, tratterà i concetti generali, il paradigma
imperativo e quello funzionale. Il corso di
Linguaggi 2 completerà la presentazione
dei paradigmi dichiarativi: logico e logicofunzionale.
Programma
1. Paradigma Imperativo
- Macchine astratte, Interpretazione e
Compilazione
- Descrivere un linguaggio di Programmazione (Sintassi e Semantica)
- I nomi e l’ambiente
- La gestione della memoria
- Strutturare il controllo
- p-code
- Astrarre sul controllo (Metodi di passaggio dei parametri)
- Strutturare i dati
- Type checking monomorfo e polimorfo
2. Paradigma Funzionale
- Introduzione alla Programmazione
Funzionale
- High-order Programming
- Il linguaggio Haskell (list comprehensions, partial applications of curried functions, sections, non-strict functions, infinite data structures, case expressions,
pattern matching)
- Types, Classes and Overloading
- Haskell’s monadic I/O
- Standard Haskell Classes
- Monads
- Modules
Bibliografia
- M. GABBRIELLI, S. MARTINI, Linguaggi di
Programmazione - Principi e Paradigmi,
McGraw-Hill, ISBN 88-386-6261-4.
- HUDAK, FASEL, A Gentle Introduction to
Haskell, 1992.
Libri e testi di consultazione:
- B. W ADLER , Introduction to Functional
Programming Using Haskell, ISBN
0134843460, Prentice Hall PTR, 1998.
- N.D. JONES, C.K. GOMARD, P. SESTOFT,
Partial Evaluation and Automatic Program
Generation, Prentice Hall, Englewood
Cliffs, NJ, 1993.
LOGICA MATEMATICA
Docente
Prof. Giovanna D’Agostino
Crediti
6
Programma
Teoremi di Completezza e Compattezza per
la logica predicativa.
Il metodo di risoluzione per logica classica proposizionale.
Teorema di compattezza e completezza
di risoluzione proposizionale.
Logica predicativa, forma premessa e
Skolemizzazione;
Modelli di Herbrand, Teorema di Herbrand. Teorema di Compattezza.
Algoritmo di Unificazione.
Teorema di completezza della Risoluzione Predicativa.
Indecidibilità della logica al prim’ordine.
Espressività della logica al prim’ordine.
Giochi di Ehrenfeucht-Fraissè. Caratte-
102
programmi - informatica triennale
rizzazione algebrica e logica.
Macchine di Turing e modelli finiti.
Teorema di Trankhenbrot sull’indecidibilità della soddisfacibilità nei modelli finiti.
Teorema di Fagin sulla caratterizzazione
logica di NP.
Bibiografia
A. NERDODE, R.A. SHORE, Logic for Applications, Springer.
L. LIBKIN, Elements of Finite Model Theory,
Springer.
MATEMATICA DISCRETA
Docente
Dott. Mario Mainardis
Crediti
9
Finalità del corso
Introdurre gli strumenti fondamentali di
Matematica Discreta, Algebra e Geometria con particolare attenzione alle loro
applicazioni in Informatica.
Programma
Insiemi ed applicazioni. Aritmetica:
numeri interi, divisori e multipli, algoritmo di Euclide, cenni sulle equazioni
lineari diofantee, numeri primi, fattorizzazione, congruenze, rappresentazione
n-adica dei numeri interi; numeri complessi,. Strutture algebriche: gruppi, sottogruppi, classi laterali, sottogruppi normali, quozienti, omomorfismi; anelli,
ideali. Algebra Lineare: spazi vettoriali,
dipendenza lineare, basi, applicazioni
lineari, matrici, determinante, autovalori
ed autovettori.
Modalità d’esame
Prova scritta ed eventuale esame orale.
Bibliografia
Libro di testo
A. FACCHINI, Algebra e Matematica Discreta, Decibel-Zanichelli, 2001.
METODI FORMALI
DELL’INFORMATICA 1
Docente
Prof. Marina Lenisa
Crediti
6
Finalità del corso
In sistemi informatici ‘life-critical’, o a
forte impatto ambientale, oppure in produzioni su larga scala, che comporterebbero costi ingenti di correzione, le tradizionali tecniche di certificazione del
software, basate solo su testing, sono inadeguate. La verifica formale rigorosa del
software è pertanto divenuta un requisito
essenziale nella produzione industriale di
sistemi software complessi. Questo processo comporta l’introduzione e l’utilizzo
di tecniche logico-matematiche per specificare rigorosamente la semantica dei
programmi e per verificarne la correttezza rispetto a questa semantica. Scopo di
questo corso è quello di introdurre le problematiche ed i concetti fondamentali
della verifica del software nonché alcuni
dei ‘metodi formali’ più in uso per realizzare questo scopo.
Programma
Verranno discusse la semantica operazionale strutturata, la semantica denotazionale, i sistemi di riscrittura e svariati
sistemi formali alla Hoare per stabilire
proprietà di programmi sequenziali e
concorrenti. In particolare, saranno studiati e sperimentati sistemi per stabilire
la correttezza parziale e totale di programmi deterministici, programmi
103
programmi - informatica triennale
paralleli che comunicano attraverso la
condivisione di variabili, programmi
paralleli con primitive di sincronizzazione, programmi distribuiti che comunicano attraverso lo scambio di messaggi,
programmi non deterministici. Particolare attenzione sarà dedicata allo studio di
proprietà di fairness.
Modalità d’esame
L’esame è costituito da una prova scritta
ed una orale.
Bibliografia
- K. A PT , E.R. O LDEROG , Verification of
Sequential and Concurrent Programs,
GTCS Springer Verlag, New York, 1997.
- Appunti del corso.
MODELLI E ALGORITMI PER LA
GESTIONE DELLE RISORSE
Docente
Prof. Franca Rinaldi
Algoritmi approssimati e schemi di
approssimazione polinomiali. Esempi.
Metodi di ricerca locale: Simulated
Annealing e Tabu Search. Esempi.
- Problemi di routing (18 ore)
Problemi di arc routing. I problemi del
postino cinese e del postino rurale e loro
varianti. Problemi di node routing. Il Travelling Salesman Problem, il Vehicle
Routing Problem e loro varianti. Per i
diversi problemi verranno presentati
modelli di ILP e metodi di risoluzione
esatti e/o euristici.
- Problemi di schedulazione (18 ore) Definizione, analisi e classificazione dei problemi di schedulazione. Problemi ad una
macchina. Problemi su macchine parallele. Open Shop, Flow Shop e Job Shop.
Modalità d’esame
L’esame consiste in una prova orale.
Bibliografia
Materiale bibliografico fornito dal docente.
Crediti
6
Finalità del corso
Obiettivo del corso è presentare le principali metodologie modellistiche utilizzate
nel settore della gestione e pianificazione
integrata dei trasporti e della produzione
e le relative tecniche risolutive. A completamento della panoramica dei metodi
dell’Ottimizzazione, vengono inoltre
introdotte alcune tecniche euristiche di
ricerca locale e la classe degli algoritmi
approssimati. Al termine del corso lo studente dovrebbe essere in grado di modellare un problema non troppo complesso
di gestione e pianificazione e proporre
adeguati strumenti di risoluzione.
Programma
- Algoritmi approssimati e metodi di
ricerca locale (12 ore)
PROGRAMMAZIONE
Docente
Dott. Claudio Miralo
Dott. Fabio Alessi
Crediti
10
Pagina del corso
http://www.dimi.uniud.it/claudio/teaching/programmazione/
Finalità del corso
Il corso si propone di sviluppare le competenze culturali e metodologiche di base
per affrontare i problemi che ammettono
soluzioni algoritmiche, stimolando l’analisi critica degli strumenti a disposizione
dell’informatico. Al termine del corso lo
104
studente dovrebbe aver acquisito le capacità operative necessarie a progettare e
formalizzare semplici programmi, applicando i paradigmi funzionale e objectoriented, e ad analizzare almeno a livello
intuitivo gli elementi critici per il corretto
comportamento in relazione alle specifiche.
Prerequisiti
Conoscenze matematiche di base, del
livello fornito nella scuola superiore.
Programma
Parte I - Astrazione procedurale (linguaggio funzionale Scheme). Algoritmi basati
sul calcolo di espressioni numeriche e
non numeriche. Procedure come astrazione di espressioni. Costrutti di scelta e
valori di verità. Definizioni ricorsive.
Modello di valutazione per sostituzione e
riduzione. Ricorsione generale e ricorsione di coda (tail recursion). Approccio iterativo come ricorsione di coda. Dimostrazioni di correttezza per induzione e concetto di invariante nella ricorsione di
coda. Costrutto let.
Parte II - Astrazione sui dati (linguaggio
Scheme). Introduzione all’astrazione sui
dati attraverso semplici dati strutturati.
Specifica astratta di una struttura dati e
diversità delle scelte realizzative. Dati di
dimensione variabile: liste. Strutture dati
dal punto di vista dell’utilizzatore e dal
punto di vista dell’implementatore. Pile e
code. Alberi e alberi di valutazione delle
espressioni. Esempi notevoli.
Parte III - Astrazione relativa allo stato
(linguaggi Scheme e Java a confronto).
Concetto di stato e paradigma imperativo/sequenziale. Vettori e operazioni relative. Rivisitazione delle strutture di dati
elementari attraverso il paradigma imperativo. Matrici. Costi computazionali di
un algoritmo. Tecniche di memorization
e programmazione dinamica. Principali
comandi e costrutti del linguaggio Java.
programmi - informatica triennale
Programmi iterativi. Invarianti e correttezza dei programmi iterativi; problema
della terminazione. Modello funzionale
come semantica di un programma imperativo. Elementi di programmazione
object-oriented in Java: classi e oggetti;
campi, costruttori e metodi. Concetto di
invariante di classe e linguaggi per la formalizzazione e per la verifica runtime di
asserzioni. Esempi notevoli. Concetti
ricorrenti: Approccio imperativo e approccio ricorsivo; invarianti; livelli di astrazione; forme di astrazione; stato e transizione di stato; approccio object-oriented.
Ulteriori informazioni sul corso e sulle
lezioni, in particolare gli esempi discussi
in classe e i temi d’esame, sono resi
disponibili attraverso le pagine del corso
all’indirizzo: http://www.dimi.uniud.it/
claudio/teaching/programmazione/
Modalità d’esame
L’esame di Programmazione prevede tre
prove di accertamento, che si svolgono al
termine dei tre periodi didattici in cui è
articolato il corso, una prova di Laboratorio (corso affiancato di Laboratorio di Programmazione) e una prova orale. All’orale
sono ammessi gli studenti che hanno
conseguito una valutazione complessiva
di almeno 15 punti su 30 nelle tre prove di
accertamento e che hanno inoltre superato la prova di Laboratorio. La discussione
orale è opzionale per valutazioni delle
prove di accertamento comprese fra 20 e
28 punti. La prova di Laboratorio e la
prova orale, nel caso quest’ultima venga
sostenuta, concorrono alla valutazione
finale nei termini di una media pesata. La
valutazione di una singola prova di accertamento viene espressa nei seguenti livelli: ottimo, buono, discreto, sufficiente,
quasi sufficiente, insufficiente. La valutazione complessiva delle prove di accertamento o dei recuperi che vertono sull’intero programma viene espressa con un
punteggio da 18 a 30, se sufficiente; da 15
programmi - informatica triennale
a 17, se consente di sostenere la prova
orale; insufficiente altrimenti. Infine, la
valutazione della prova di laboratorio
viene espresse in una scala A - B - C quando la prova è superata. Il primo appello
scritto di Programmazione consiste normalmente nello svolgimento della terza
prova di accertamento. A partire dal
secondo appello sono invece previste
(unicamente) prove scritte di recupero,
che vertono sull’intero programma del
corso, rivolte a coloro che non abbiano
potuto partecipare alle prove di accertamento o abbiano conseguito una valutazione insufficiente per l’ammissione
all’orale. Indipendentemente dalla valutazione, le prove scritte di recupero non
consentono l’esonero dalla discussione
orale.
Bibliografia
- M. H AILPERIN , B. K AISER , K. K NIGHT ,
Concrete Abstractions: An Introduction to
Computer Science Using Scheme,
Brooks/Cole Publishing Company, 1999
(ISBN: 0-534-95211-9).
- J. LEWIS, W. LOFTUS, Java - Fondamenti di
progettazione software, Addison-Wesley,
2000 (Edizione italiana 2001; ISBN: 887192-092-9).
- Appunti tratti dalle lezioni; esempi ed
esercizi pubblicati sulle pagine web del
corso.
PROGRAMMAZIONE ORIENTATA
AGLI OGGETTI
Docente
Dott. Claudio Mirolo
Crediti
6
Pagina del corso
http://www.dimi.uniud.it/claudio/teaching/prog_oo/
105
Finalità del corso
L’obiettivo principale del corso è quello di
discutere il paradigma della programmazione orientata agli oggetti come evoluzione della programmazione strutturata e
della costruzione di tipi di dati astratti,
introdotti nel corso di Programmazione.
Verranno inoltre presentate le caratteristiche di base di un linguaggio di programmazione orientato agli oggetti. I
concetti saranno introdotti soprattutto
attraverso la discussione di esempi. Al
termine del corso lo studente dovrebbe
aver acquisito capacità di problem solving
per progettare soluzioni object-oriented,
basate sulla definizione di un insieme di
moduli interagenti fra di loro.
Prerequisiti
Corso di Programmazione; alcuni dei
contenuti dei corsi di Matematica Discreta e Analisi Matematica.
Programma
Gli argomenti principali trattati durante il
corso sono indicati qui di seguito. Gli
esempi sono sviluppati utilizzando il linguaggio di programmazione Java. Concetti e metodologie Nozioni di base:
moduli interagenti, messaggi e metodi,
responsabilità, classi e istanze, gerarchie
di classi ed ereditarietà, overriding di
metodi, eccezioni. Progettazione orientata agli oggetti: identificazione delle componenti e definizione delle responsabilità; definizione del comportamento e
delle interazioni fra moduli; specifica
dell’interfaccia; concetto di stato. Benefici
della programmazione orientata agli
oggetti: incapsulamento delle informazioni, maggiore affidabilità e potenzialità
di riutilizzo del codice, condivisione di
codice, polimorfismo, rapidità di prototipazione. Ereditarietà: sottoclassi, tipi e
compatibilità per sostituzione. Specializzazione e altre forme di ereditarietà. Ereditarietà del codice ed ereditarietà del
106
programmi - informatica triennale
comportamento. Selezione dinamica dei
metodi. Confronto fra ereditarietà e composizione relative a classi; composizione
dinamica. Classi nidificate. Clonazione.
Polimorfismo e variabili polimorfe. Overloading. Overriding: sostituzione e raffinamento. Metodi astratti. Modelli di progetto (design patterns): composite; decorator; factory method; flyweight; observer; prototype; proxy; strategy. Paradigma
model-view-controller. Linguaggio di programmazione Java Caratteristiche e
costrutti principali del linguaggio Java.
Realizzazioni di classi in Java: struttura di
un programma; campi per rappresentare
le variabili di stato; costruttori; attributi di
campi e metodi; istanziazione di oggetti;
ereditarietà e interfacce. Classi interne e
organizzazione del codice. Modello degli
eventi in Java. Gestione delle eccezioni.
Thread multiple di esecuzione e sincronizzazione. Garbage collection. Alcune
caratteristiche avanzate dell’ambiente di
programmazione basato su Java. Progetto
di interfacce verso l’utente (GUI) attraverso la libreria Application Windowing
Toolkit (AWT) di Java: componenti e
layout manager. Input e output in Java.
Altre classi di utilità: Math, Random,
System, String. Grafica elementare in
Java. Classi Collection: Vector e confronto
con gli array; Dictionnary. Applet e programmazione per la rete. Discussione di
esempi in Java. Concetti ricorrenti: Livelli
di astrazione; astrazione sui dati; stato;
approccio object-oriented; incapsulamento dell’informazione; riutilizzo del codice. Ulteriori informazioni sul corso e
sulle lezioni, in particolare gli esempi
discussi in classe e i temi d’esame, sono
resi disponibili attraverso le pagine del
corso
all’indirizzo:
http://www.dimi.uniud.it/claudio/teaching/prog_oo/
agli Oggetti prevede due prove di accertamento, che si svolgono al termine dei due
periodi didattici in cui è articolato il corso,
e una prova orale. All’orale sono ammessi gli studenti che hanno conseguito una
valutazione complessiva di almeno 15
punti su 30 nelle due prove di accertamento. La discussione orale non è obbligatoria per valutazioni delle prove di
accertamento comprese fra 20 e 28 punti.
Opzionalmente, ai fini della discussione
orale, il candidato può concordare con il
docente la realizzazione di un progetto di
programmazione che applichi concetti e
metodologie introdotti durante il corso.
In tal caso, la discussione del progetto
costituirà la parte prevalente della prova
orale. Nel caso venga sostenuta, la prova
orale concorre alla valutazione finale nei
termini di una media pesata. La valutazione di una singola prova di accertamento viene espressa nei seguenti livelli: ottimo, buono, discreto, sufficiente, quasi
sufficiente, insufficiente. La valutazione
complessiva delle prove di accertamento
o dei recuperi che vertono sull’intero programma viene espressa con un punteggio
da 18 a 30, se sufficiente; da 15 a 17, se
consente di sostenere la prova orale;
insufficiente altrimenti. Il primo appello
scritto di Programmazione Orientata agli
Oggetti consiste normalmente nello svolgimento della seconda prova di accertamento. A partire dal secondo appello
sono invece previste (unicamente) prove
scritte di recupero, che vertono sull’intero
programma del corso, rivolte a coloro che
non abbiano potuto partecipare alle prove
di accertamento o abbiano conseguito
una valutazione insufficiente per
l’ammissione all’orale. Indipendentemente dalla valutazione, le prove scritte
di recupero non consentono l’esonero
dalla discussione orale.
Modalità d’esame
L’esame di Programmazione Orientata
Bibliografia
- T. BUDD, Understanding Object-Oriented
107
programmi - informatica triennale
Programming with Java, Addison-Wesley,
2000 (ISBN: 0-201-61273-9).
- Appunti tratti dalle lezioni. Testi sul linguaggio Java.
- D. ARNOW, G. WEISS, Introduction to Programming Using Java: an Object-Oriented
Approach, Addison-Wesley, 1998 (ISBN:
0-201-31184-4). Oppure:
- J. LEWIS, W. LOFTUS, Java - Fondamenti di
progettazione software, Addison-Wesley,
2000 (Edizione italiana 2001; ISBN: 887192-092-9).
Testi per consultazione:
- B. LISKOV, J. GUTTAG, Program Development in Java, Addison-Wesley, 2000.
- X. JIA, Object Oriented Software Development Using Java, Addison-Wesley, 2002.
- B. ECKEL, Thinking in Java, Prentice Hall,
2000.
- K.A. L A M B E R T , M. O S B O R N E , A Framework for Program Design and Data
Structures, Brooks/Cole, 2000.
in questo campo, quali la teoria quantistica dell’informazione ed il teletrasporto
quantistico.
Programma
Basi matematiche. Spazi di Hilbert. Meccanica quantistica. Sistemi composti.
Teoria classica della computazione e della
complessità. Teoria quantistica della
computazione. Algoritmi quantistici.
Possibili realizzazioni sperimentali.
Cenni di teoria quantistica dell’informazione. Argomenti avanzati di teoria
dell’informazione quantistica.
Modalità d’esame
L’esame si svolgerà sotto forma di discussione di una tesina su argomenti di ricerca inerenti il corso.
Bibliografia
- Appunti del docente.
- M. NIELSEN, I. CHUANG, Quantum Computation and Quantum Information, Cambridge University Press, 2000.
QUANTUM COMPUTING
Docente
Prof. Alessandro De Angelis
Pagina del corso
http://www.fisica.uniud.it/~riccardo/teaching/physics/qc2001.html
Crediti
6
Finalità del corso
Scopo del corso è di fornire un’introduzione al Quantum Computing, sia negli
aspetti di base sia in quelli più avanzati.
Nella prima parte del corso verranno
discussi ed analizzati i fondamenti matematici e concettuali della meccanica
quantistica; nella seconda parte verranno
applicati tali concetti alla teoria della computazione quantistica, analizzandone i
contenuti innovativi e sottolineandone le
differenze rispetto alla teoria classica. Il
corso fornirà anche alcune nozioni di
base su argomenti di punta della ricerca
RETI DI CALCOLATORI
Docente
Prof. Elio Toppano
Crediti
6
Finalità del corso
L’obiettivo del corso è quello di introdurre i concetti fondamentali delle moderne
reti di calcolatori e fornire allo studente le
necessarie conoscenze per affrontare
l’analisi e lo studio di una rete distribuita
di calcolatori. In particolare, saranno presentate le caratteristiche generali delle
108
reti, la loro topologia, l’architettura ed i
principali protocolli utilizzati per la trasmissione delle informazioni tra calcolatori.
Programma
- Introduzione alle reti di calcolatori.
Scopi, applicazioni, evoluzione storica,
caratteristiche e struttura a livelli, tipologie di rete, architetture di rete, stratificazioni, tipi e primitive di servizio, protocolli di rete, controllo di flusso e controllo
di errore, messaggi e pacchetti, strategie
di commutazione (circuito e pacchetto),
indirizzamento, instradamento ed interconnessione.
- Principali componenti di una rete e tecniche di trasmissione dati.
Mezzi trasmissivi elettrici e ottici, banda
di un segnale, capacità di canale, I e II
Teorema di Nyquist, Teorema di Shannon, attenuazione e distorsione, cenni
alla trasmissione dati analogica e alla trasmissione dati digitale, principali componenti di una rete (modem, multiplexer,
bridge, switch, router).
- Il modello ISO/OSI.
Architettura, servizi e protocolli. Il livello
fisico. Il livello datalink. Protocolli per il
controllo di flusso (Stop&Wait, Go-BackN, Sliding Window) e per il controllo di
errore (controllo di parità, codici CRC).
Calcolo dell’efficienza dei protocolli di
livello datalink. Protocollo HDLC.
- Il livello di rete.
Tecniche di instradamento (routing by
network, address label swapping, source
routing), architettura di un router e tabelle di instradamento, algoritmi di routing
statico (fixed directory routing, flooding e
selective flooding) e dinamico (distance
vector e link state). Il protocollo IP, formato del pacchetto IP e indirizzamento
IP, classi di indirizzi, sottoreti e netmask.
Protocolli ARP, IGP, RIP, OSPF, BGP.
Protocollo Ipv6, formato dei pacchetti,
header opzionali. Protocollo Network
programmi - informatica triennale
Address Translation (NAT).
- Il livello di trasporto.
Servizi ed indirizzi del livello di trasporto,
creazione, gestione e chiusura di una
connessione. Il problema delle due armate. Protocollo Hand-Shake a tre vie. Il
livello di trasporto in Internet: i protocolli
UPD (User datagram protocol) e TCP
(Transport control protocol). • Il livello
delle applicazioni: Applicazioni di Rete:
Domain Name Server (DSN), Simple
Mail Transfer Protocol (SMTP), Simple
Network Management Protocol (SNMP),
la posta elettronica, telnet, file transfer
protocol (FTP).
- Progetto topologico di una rete di calcolatori.
Progettazione topologica, cenni alla teoria dei grafi, matrice di traffico, matrice di
costo e assegnazione di flusso, affidabilità
di una rete, analisi di connettività, reti di
flusso, taglio minimo e capacità del taglio
in una rete, algoritmo di Ford-Fulkerson,
flusso massimo, connettività d’arco, percorsi arco-disgiunti, connettività di nodo,
esempi.
- Analisi delle prestazioni di una rete di
calcolatori.
Cenni alla teoria delle code, definizione
di Kendall, sistemi a nascita e morte, catene di Markov, intensità del traffico,
approssimazione di indipendenza di
Kleinrock, numero medio di pacchetti in
una rete, ritardo medio di pacchetto, Teorema di Little, esempi ed esercizi.
- Approfondimenti.
Reti ISDN e ISDN a larga banda. Reti
ATM.
Modalità d’esame
L’esame si compone di una prova scritta e
di una prova orale. La prova scritta richiede di svolgere esercizi inerenti gli argomenti del corso. La prova orale consiste
nella discussione di alcuni degli argomenti trattati a lezione.
programmi - informatica triennale
Bibliografia
Testi consigliati:
- A.S. T ANEMBAUM , Computer Networks,
(quarta edizione), Addison-Wesley, pubblicato in Italia da Pearson Education Italia, 2003.
Testi di approfondimento:
- J. KUROSE, K. ROSS, Internet e Reti di Calcolatori, seconda edizione, McGraw-Hill,
2003
- D. COMER, Internetworking con TCP/IP,
Addison-Wesley, pubblicato in Italia da
Pearson Education Italia, 2002.
- M. BALDI, P. NICOLETTI, Internetworking,
McGraw-Hill, 1999.
- R. ADINOLFI, Reti di Computer, seconda
edizione, McGraw-Hill, 1999.
- F. HALSALL, Reti di Calcolatori e Sistemi
Aperti, quarta edizione, Addison Wesley,
1998.
RETI DI CALCOLATORI
E SICUREZZA
Docente
Prof. Marino Miculan
Crediti
6
Finalità del corso
L’obiettivo del corso è quello di studiare
ed approfondire i concetti principali relativi al funzionamento delle reti wireless e
alla sicurezza delle reti. In particolare, lo
studente dovrà acquisire competenze
specifiche riguardo le caratteristiche
principali e il funzionamento delle reti
wireless. Dovrà inoltre acquisire competenze specifiche nell’ambito dei principali requisiti di sicurezza di una rete di calcolatori, della progettazione di adeguate
politiche di sicurezza e acquisire conoscenze sui principali protocolli per la
sicurezza di rete.
109
Programma
Reti locali wireless. Classificazione,
Spread Spectrum (Direct Sequence, Frequency Hopping), Reti IEEE 802.11. Lo
strato fisico e MAC di IEEE 802.11. Bluetooth: architettura ed applicazioni.
Sicurezza nelle reti di calcolatori. Livelli
di sicurezza, diagnostica e monitoraggio
di una rete, protezione delle connessioni
alla rete, autenticazione, integrità, riservatezza, paternità. Principio di sicurezza
minima. Valutazione della sicurezza di
un sistema. Orange book
Cenni di crittografia. Crittoanalisi, cifrari
per trasposizione, cifrari monoalfabetici e
polialfabetici. Cifrari poligrafici e cifrari
composti. Crittografia moderna. Crittografia contemporanea. Algoritmi a chiave
segreta: DES, IDEA e 3DES, AES. Algoritmi a chiave pubblica: RSA. Esempi.
Firma digitale e gestione delle chiavi.
Sicurezza nei protocolli di rete. Sicurezza
a livello fisico nelle reti wireless: WEP,
WPA. Sicurezza livello di rete: protocollo
IPsec. Definizione e progettazione di uno
screening router, packet filtering. Virtual
Private Network (VPN). Sicurezza a livello di trasporto: protocolli SSL e TLS. Sicurezza a livello di applicazione: Protocollo
SET.
Difesa perimetrale di una rete. Teoria e
architetture dei firewall: multihomed
host, bastion host, DMZ. Proxy server.
Esempio di un firewall. Server e reti civetta. Sistemi di Intrusion Detection (IDS) e
real-time IDS. Sistemi di prevenzione
dell’intrusione (IPS).
Attacchi esterni ad una rete. Classificazione degli attacchi ad una rete. Le porte
di comunicazione ed i relativi servizi.
Tecniche di raccolta delle informazioni
(footprinting, enumerazione delle reti,
interrogazione dei DNS) e scansioni
(ping scanning, port scanning, etc.).
Attacchi di tipo DOS. Attacchi basati sulla
predizione del numero di sequenza e
dirottamento di sessione TCP. Attacco
110
programmi - informatica triennale
man-in-the-middle. Strumenti di attacco
di un hacker.
Difesa di una rete. Difesa contro l’acquisizione di informazioni. Difesa contro i
tentativi di ingresso non autorizzato.
Modelli per la definizione di un piano di
sicurezza.
Modalità d’esame
L’esame si compone di una prova scritta e
di una prova orale facoltativa. La prova
scritta richiede lo svolgimento di alcuni
esercizi inerenti gli argomenti del corso e
la risposta ad alcune domande teoriche.
Bibliografia
- A.S. T ANEMBAUM , Reti di calcolatori,
quarta edizione, Addison-Wesley, pubblicato in Italia da Pearson Education Italia,
2003.
- W. S TALLINGS , Crittografia e sicurezza
delle reti, McGraw-Hill, 2004.
- W.R. C H E S W I C K , S.M. B E L L O V I N , A.
RUBIN, Firewalls e sicurezza in rete, Pearson-Addison Wesley, 2003.
Propedeuticità
Reti di Calcolatori.
RICERCA OPERATIVA
Docente
Prof. Paolo Serafini
Crediti
6
Pagina del corso
http://www.dimi.uniud.it/~serafini/ROI
NF0607.html
Finalità del corso
La Ricerca Operativa si occupa di problemi di gestione efficiente affrontati con
modelli matematici e algoritmici. Il corso
vuole fornire allo studente gli strumenti
principali per progettare un modello a
partire da un problema reale e la necessaria comprensione delle strutture matematiche e algoritmiche dei modelli, con
particolare riguardo alla programmazione lineare. A questo fine vengono presentati doversi modelli e per la maggior parte
i modelli sono risolti usando Excel o pacchetti di programmazione lineare.
Programma
- Introduzione alla programmazione
lineare. Modellizzazione: identificazione
delle grandezze, dei vincoli e degli obiettivi. Ottimi di Pareto. Esempio della dieta:
modello di programmazione lineare.
Analisi di sensibilità. Identificazione di
ulteriori obiettivi. Frontiera efficiente.
Vincoli di interezza. Proprietà della programmazione lineare Struttura geometrica. Vertici e soluzioni di base. Problema
duale. Complementarità. Cenni del metodo del simplesso. Metodo branch-andbound per variabili intere.
- Modelli di percorsi 1. Programmazione
Dinamica. Principio di ottimalità. Equazione ricorsiva. Cammini minimi (Bellman-Ford, Dijkstra, Floyd-Warshall).
- Modelli di percorsi 2. Cammini minimi
con capacità: reti di flusso. Flussi di costo
minimo. Massimo flusso. Minimi tagli.
- Modelli di percorsi 3. Problema del commesso viaggiatore (formulazione con
piani di taglio). Circuiti Euleriani. Accoppiamento. Minimi alberi di supporto
(Kruskal e Prim).
- Modelli di allocazione. Assegnamento.
Knapsack. Bin packing. Modelli di turnazione. Generazione di colonne: cutting
stock, massimo flusso.
- Schedulazione. Schedulazione a risorsa
infinita: PERT. Schedulazione a risorsa
finita: problemi a una macchina, macchine parallele, flow-shop, job-shop e openshop. Il piano dettagliato delle lezioni si
trova al sito http://www.dimi.
uniud.it/~serafini/ROINF0607.html
programmi - informatica triennale
Modalità d’esame
Esame orale.
Bibliografia
- Dispense disponibili on-line.
- P. SERAFINI, Ottimizzazione, Zanichelli,
Bologna 2000.
- L. SCHRAGE, LINDO: An Optimization
Modeling System, Palo Alto Scientific
Press, 1991.
N.B.: Informazioni sulla Ricerca Operativa e l’Ottimizzazione si trovano anche al
sito dell’INFORMS (Institute for Operations Research and Management Science) http://www.informs.org/ oppure al
sito del CIRO (Centro Interuniversitario
in
Ricerca
Operativa)
http://www.disp.uniroma2.it/ciro/index.
html.
SISTEMI OPERATIVI
Docente
Dott. Ivan Scagnetto
Prof. Marina Lenisa
Crediti
11
Programma
1. Aspetti generali: ruolo del sistema operativo (SO) in un sistema di calcolo; evoluzione dei SO; tipi di SO (batch/interattivi, time-sharing/dedicati, real-time,
paralleli, distribuiti, sistemi embedded...); richiami sull’architettura di un
sistema di calcolo (livelli di esecuzione
delle istruzioni, gestione delle interruzioni, gestione dell’I/O); il SO come gestore
di risorse: processi, memoria, dispositivi,
file, interazione con l’utente;
i l
SO come macchina virtuale: il nucleo, le
chiamate di sistema; struttura di un sistema operativo (monolitico, a livelli, macchine virtuali, exokernel, microkernel
client-server); esempi: Unix tradizionale,
111
Linux, Solaris, Mach, Windows NT.
2. Processi e Thread: il concetto di processo: definizione e ruolo, il descrittore di
processo; la manipolazione dei processi:
la creazione/terminazione di un processo, grafo degli stati di un processo, la
commutazione di contesto, lo scheduling
di processi;
i processi leggeri
(threads): modello a thread, thread a livello utente vs. a livello kernel, soluzioni
ibride, thread pop-up, passaggio da
thread singolo a multithread; ruolo del
nucleo: gestione interruzioni e traps, operazioni di wait e signal su condizioni di
attesa; lo scheduling dei processori: concetti di base, criteri di scheduling, algoritmi di scheduling, scheduling di sistemi a
multiprocessore, scheduling real-time.
3. Programmazione concorrente: race
condition e sezioni critiche; mutua esclusione; sincronizzazione tra processi e
memorie condivise; scambio messaggi;
primitive di comunicazione e sincronizzazione: semafori, mutex, monitor, scambio di messaggi; problemi classici: produttore/consumatore,
filosofi,
lettori/scrittori, barbiere; stallo: definizione, modelli per lo stallo, identificazione,
prevenzione.
4. Gestione della memoria: gerarchie di
memoria: registri, cache, memoria centrale, memoria virtuale, dischi; il binding
degli indirizzi, spazi logici e fisici di indirizzamento, la rilocazione; tecniche di
allocazione: contigua, la paginazione, la
segmentazione; la frammentazione; la
memoria virtuale: paginazione a richiesta, algoritmi di sostituzione delle pagine,
il thrashing, il modello Working set.
5. Input/Output: tipi di dispositivi di I/O principi dell’hardware di I/O; gestione a
basso livello dei dispositivi di I/O - PIO,
DMA, DVMA; il trattamento delle interruzioni, i driver di I/O - I/O bloccante,
non bloccante, asincrono - interfaccia per
le applicazioni;
i dischi - algoritmi di
schedulazione dei dischi.
112
programmi - informatica triennale
6. Il file system: il file, attributi, operazioni, struttura fisica; metodi di accesso
sequenziale, diretto, a indice; le directory
e la struttura logica di un file system: piatta, gerarchica, a grafo; la protezione; la
consistenza; implementazione dei file
system: organizzazione, allocazione e
gestione spazio libero, backup e restore;
struttura di un disco: gestione delle partizioni, gestione delle aree di swap; il caso
di Unix: UFS, EXT2. Tabelle in kernel. Il
Virtual File System. Risoluzione dei
nomi in inode; operazioni su dischi, partizioni e file system; cenni ai journaled file
system.
7. Sistemi con processori multipli: concetti
generali - processori strettamente/debolmente accoppiati; multiprocessori - aspetti
hardware, software. Limitazioni; multicomputer - aspetti hardware - comunicazione a basso livello, a livello utente - RPC
- memoria condivisa distribuita; sistemi
distribuiti - servizi e protocolli di rete, e
distribuiti - il modello client/server, protocolli - modello ISO/OSI, la suite TCP/IP
- middleware di comunicazione; modelli
distribuiti basati sulla migrazione dei
dati, della computazione, dei processi; su
coordinazione distribuita; chiamate di
procedure remote (RPC) - esempio di servizio distribuito: NFS.
8. Cenni a problematiche di sicurezza.
SISTEMI ESPERTI
Docente
Prof. Carlo Tasso
Crediti
6
Finalità del corso
Obiettivo del corso è l’introduzione alle
tecniche di base per la realizzazione dei
sistemi basati sulla conoscenza e dei
sistemi esperti, ed in particolare i mecca-
nismi per la rappresentazione della conoscenza e gli algoritmi di ragionamento, i
sistemi per il ragionamento non monotono, e le tecniche di modellizzazione concettuale. Vengono altresì trattate ed analizzate sperimentalmente alcune applicazioni significative nel campo della ricerca
e filtraggio di informazioni su Web,
affrontato con tecniche tradizionali e con
tecniche di intelligenza artificiale.
Programma
Introduzione alle problematiche
dell’Intelligenza Artificiale. Definizione
di Sistema Basato sulla Conoscenza. Rappresentazione della Conoscenza e Algoritmi di ragionamento. Le reti semantiche. I frame. Le regole di produzione.
Grafi Concettuali. Sistemi per il Ragionamento Non Monotono. ATMS. JTMS.
Architetture a Blackboard. Tecniche di
modellizzazione concettuale. Classificazione Euristica e Task Generici. Interfacce Intelligenti e Modellizzazione
dell’Utente nei Sistemi di Reperimento e
Filtraggio dell’Informazione su Web.
Esercitazioni: Una serie di esercitazioni
in laboratorio sarà dedicata all’approfondimento delle tematiche applicative relative alla ricerca di informazioni si Web.
Modalità d’esame
Sono previsti: lo svolgimento di un seminario da parte di ciascuno studente
nell’ultima settimana del corso su una
tematica rilevante ed un esame orale.
Bibliografia
- Materiale didattico (slide e testi esercitazioni) disponibile su http://twm.dimi.
uniud.it/
- G. GUIDA, C. TASSO, Design and Development of Knowledge-Based Systems, J. Wiley,
1994.
- D. FUM, Intelligenza Artificiale, Il Mulino, 1994.
- C. TASSO, P. OMERO, La Personalizzazio-
programmi - informatica triennale
ne dei Contenuti Web - e-commerce, i-access,
e-government, Franco Angeli, Milano,
2002.
SISTEMI INFORMATIVI
Docente
Prof. Carlo Tasso
Prof. Maurizio Pighin
Crediti
6
Finalità del corso
Obiettivo del corso è la definizione delle
problematiche informatiche nell’ambito
di un’organizzazione (pubblica o privata)
che intenda automatizzare i propri sistemi informativi. Si inquadrano le competenze del responsabile Sistemi Informativi e/o di chi sviluppa software per l’organizzazione, analizzando le problematiche
applicative che dovrà affrontare, con uno
sguardo ai risvolti tecnologici e ai rapporti di fornitura.
Programma
Introduzione: Concetti generali sull’informatica aziendale - Impatto dell’informatica nelle aziende - Impatto macroeconomico dell’ICT. Struttura dell’azienda e
del suo sistema informativo - Concetto di
esigenza informativa - Scomposizione
del sistema informativo - Portafoglio
applicativo: sistemi operazionali e istituzionali - Sistema informativi direzionale Varie categorie di sistemi informativi:
TPS, Transaction Processing System;
MIS, Management Information System;
DSS, Decision Support System; ESS, Executive Support System - Introduzione al
Knowledge Management, agli strumenti
ICT tradizionali ed avanzati per il Knowldge Management - Costi e Performance:
Meccanismi di misurazione generali.
Valutazione di Sistemi Informativi. Ana-
113
lisi costi benefici. Analisi del rischio.
Gestione di un Progetto Informatico:
Organizzazione risorse e processi decisionali. Metodologie di gestione e pianificazione di progetto. Tecniche di Project
Management. Software e Hardware
Selection. Sistemi operazionali - Finalità
dei sistemi operazionali - Informazione
operativa - Rappresentazione della realtà Potenzialità informatica - Composizione
dei sistemi informativi operazionali Scomposizione per i sistemi operazionali
di base - Sistemi di supporto primario
all’ERP - Estensioni dell’ERP - Sistemi
tecnici ERP: l’area amministrativa, logistica, vendite, acquisti, produttiva - Obiettivi - Strutture di base - Procedure di base
- Flussi evoluti Sistemi Aziendali avanzati: E-Commerce, CRM, DataWarehouse,
DataMining, Business Intelligence. Laboratorio Avanzato di Sistemi Informativi
Analisi di un case-study industriale.
Modalità d’esame
L’esame consiste in un progetto di gruppo su problematiche reali, seguito da un
colloquio orale. In alternativa è prevista
una prova scritta/orale sugli argomenti
del programma.
Bibliografia
Libri di testo:
- G. BRACCHI, C. FRANCALANCI, G. MOTTA,
Sistemi Informativi e aziende in rete,
McGraw-Hill Italia, Milano, 2001.
- M. PIGHIN, A. MARZONA, Sistemi Informativi Aziendali - Struttura e Applicazioni,
Pearson Education Italia, 2005
Ulteriori testi di consultazione:
- M. DE MARCO, Sistemi Infomativi Aziendali, Franco Angeli Edizioni, Milano
2000.
- G. BRACCHI, G. MOTTA, Processi Aziendali e Sistemi Informativi, Franco Angeli edizioni, Milano 2000.
- P.F. CAMUSSONE, Il Sistema Informativo
Aziendale, Etas 2000.
114
programmi - informatica triennale
- D. AMOUR, E-Business (R)Evolution, Tecniche Nuove, 2000.
STORIA DELL’INFORMATICA
Docente
Dott. Corrado Bonfanti
Dott. Paolo Giangrandi
Crediti
3
Finalità del corso
Il corso fornisce una panoramica generale sulle tappe fondamentali che hanno
caratterizzato la storia degli strumenti di
calcolo, approfondendo in particolare
l’evoluzione delle tecnologie del computer elettronico moderno. Si evidenzia
come gli attuali computer non siano il
frutto del lavoro di un singolo inventore e
di una singola idea geniale, bensì il risultato dei contributi di moltissimi studiosi e
sperimentatori appartenenti a diverse
discipline; contributi che, nelle varie epoche, hanno dato luogo a diversi filoni concettuali e tecnologici, talvolta complementari e altre volte divergenti.
Programma
- Gli antichi strumenti di calcolo. L’era dei
calcolatori meccanici: calcolatori analogici e calcolatori digitali.
- Macchine programmabili: automi meccanici, telaio Jacquard, strumenti musicali automatici, Charles Babbage.
- I sistemi meccanografici a schede perforate.
- Le radici concettuali del computer: dal
programma di Leibniz alle macchine di
Turino.
- I pionieri del calcolo elettronico, l’architettura di von Neumann e i primi calcolatori a programma memorizzato.
- L’evoluzione delle tecnologie: dal mainframe al personal computer.
- Gli ambienti applicativi e l’evoluzione
del software.
- Oltre il calcolo scientifico: sviluppo
dell’industria e del mercato in uno scenario mondiale.
- Reti telematiche: dalle origini a Internet.
- L’informatica in Italia.
Bibliografia
- Appunti delle lezioni.
- M.R. WILLIAMS, A History of Computing
Technology, Prentice-Hall, 1985.
- M. D A V I S , Il calcolatore universale,
Adelphi, 2003.
- C. B ONFANTI , Mezzo secolo di futuro.
L’informatica italiana compie cinquant’anni, Mondo Digitale, n. 3/2004.
Durante il corso verranno forniti anche
gli indirizzi di diversi siti web dove sono
reperibili numerosi documenti multimediali sulla storia dell’informatica.
115
programmi - TWM triennale
CORSO DI LAUREA IN
TECNOLOGIE WEB
E MULTIMEDIALI
ALGORITMI E STRUTTURE DATI
Docente
Prof. Carla Piazza
Crediti
10
Finalità del corso
Il corso si propone di introdurre ai fondamenti della teoria degli algoritmi, delle
strutture dati e all’analisi della complessità computazionale di programmi. Il
principale obiettivo del corso è presentare
le principali problematiche e tecniche
relative al disegno e alla progettazione di
algoritmi. Ci si propone inoltre di introdurre i metodi di base utilizzati per stabilire la complessità di programmi e i criteri utilizzati per scegliere e progettare
strutture dati. Dopo aver superato l’esame
si ritiene che lo studente sia in grado di
risolvere algoritmicamente problemi
classici e scegliere motivatamente le
strutture dati adatte ad ottenere soluzioni
computazionalmente efficienti. Sia in
grado di porre limiti superiori sufficientemente precisi e indipendenti dall’architettura alla complessità computazionale
di programmi di media difficoltà.
Programma
1. Introduzione e nozioni preliminari
Introduzione. Elementi di logica e teoria
degli insiemi. Alberi e grafi. Matematica
discreta e analisi asintotica. Modelli di
calcolo per la determinazione della complessità degli algoritmi. Problemi ricorsivi e aspetti algoritmici. 2. Algoritmi di
ricerca e ordinamento Algoritmi primitivi
di ordinamento e ricerca: selection-sort,
insertion-sort, bubble-sort, heap-sort.
Algoritmi ricorsivi: quick-sort, mergesort. Analisi della complessità e limiti
inferiori. Algoritmi lineari non basati sul
confronto: counting-sort, radix-sort,
bucket-sort. Determinazione dell’elemento medio. 3. Strutture dati Strutture
dati primitive: liste, pile, code, heap.
Algoritmi e strutture dati per la gestione e
manipolazione di insiemi: tabelle hash,
alberi di ricerca, bilanciamento, red-black
alberi e B-alberi. Algoritmi e strutture
dati per il problema Union-Find. 4. Algoritmi sui grafi Tecniche di rappresentazione di grafi orientati e non orientati.
Algoritmi di visita in ampiezza e profondità. Algoritmi di visita su alberi. Calcolo
delle componenti fortemente connesse.
Algoritmi per la determinazione di topological-sort, minimum spanning tree
(Prim e Kruskal), cammino minimo da
una sorgente (Dijkstra, Bellmann-Ford)
cammini minimi da sorgenti multiple
(Floyd-Warshall, Johnson).
Bibliografia
- Appunti delle lezioni.
- T.H. CORMEN, C.E. LEISERSON, R.L. RIVEST, Introduction to Algorithms, second edition, MIT Press, 2001 (anche in italiano).
Altri testi utili:
- A.V. AHO, J.E. HOPCROFT, J.D. ULLMAN,
Data Structures and Algorithms, AddisonWesley, 1983.
- A.V. AHO, J.E. HOPCROFT, J.D. ULLMAN,
The Design and Analysis of Computer Algorithms, Addison-Wesley, 1974.
- D.E. KNUTH, Selected Papers in Computer
Science Cambridge, University Press,
1996.
- R.E. TARJAN, Data Structures and Network
Algorithms, SIAM, 1983.
ANALISI MATEMATICA
Docente
Prof. Lorenzo Freddi
116
programmi - TWM triennale
Crediti
12
Finalità del corso
Fornire i concetti e le tecniche di base del
calcolo infinitesimale e integrale in modo
conciso e adatto alle applicazioni. La teoria viene presentata con un buon livello di
rigore formale negli enunciati e in quelle
dimostrazioni che si decide di svolgere in
dettaglio. Si addestrano gli studenti al calcolo, innanzi tutto con carta e penna, ma
anche se possibile usando il computer.
Un’enfasi del corso è nel familiarizzare
gli studenti col significato intuitivo geometrico o dinamico dei concetti di limite,
derivata e integrale, in modo che venga
loro spontaneo applicare tali strumenti
anche a problemi che non si presentino
matematicamente già formalizzati.
Programma
Numeri reali, funzioni, limiti e continuità, derivate, integrali, serie, applicazioni.
Modalità d’esame
Ci sono due modi acquisire i crediti: il
modo principale consiste in 2-3 compitini
scritti durante l’anno, tipicamente senza
orale; l’altro modo consiste in un singolo
scritto, più un orale negli appelli fra giugno e settembre; i dettagli del regolamento saranno comunicati dal docente durante il corso e resi disponibili in rete.
Bibliografia
- P. B AITI , L. F REDDI , Corso integrato di
Matematica per le Scienze Naturali e Applicate, Forum Editrice Universitaria Universitaria Udinese (disponibile in settembre).
- Dispense a cura del docente.
ARCHITETTURA
DEGLI ELABORATORI
Docente
Prof. Pietro Di Gianantonio
Crediti
8
Finalità del corso
Il corso ha lo scopo di illustrare la struttura e il funzionamento di un computer
nelle sue diverse componenti. Il percorso
didattico inizia con lo studio delle parti
elementari che costituiscono un calcolatore e considera componenti sempre più
complesse fino ad arrivare allo studio di
architetture complete di calcolatori. Per
meglio evidenziare i legami fra il livello
hardware e quello software, il corso tratta
la programmazione in linguaggio assembly.
Programma
Introduzione: prospettiva storica sulle
architetture degli elaboratori, concetti
base, livelli d’astrazione nell’analisi di
un’architettura. Reti logiche: porte logiche elementari, algebre booleane, circuiti
combinatori d’uso frequente, chip di
memoria. Rappresentazione delle informazioni: sistema di numerazione binario, conversione tra basi, rappresentazione di numeri interi e reali, rappresentazione di caratteri, codici di rilevamento
errori. Processore: ciclo di fetch-decodeexecute, data path, unità di controllo, presentazione dettagliata di un semplice
microprocessore, pipeline, processori
superscalari, predizione di salto, esecuzione fuori ordine, Pentium IV, Sparc.
Linguaggio Macchina: Evoluzione dei linguaggi macchina, tipi di dati, indirizzamento, tipi d’istruzioni, formati istruzioni. Input/Output: programmed I/O,
interrupt, DMA, dispositivi periferici, collegamenti mediante bus, meccanismi
programmi - TWM triennale
d’arbitraggio e sincronizzazione del bus,
architettura di un tipico PC, bus PCI,
SCSI, USB, dischi magnetici, RAID,
dischi ottici. Gerarchie di Memoria: meccanismi di funzionamento della memoria
cache e della memoria virtuale, paginazione e segmentazione, MMU. Programmazione assembly. Architettura del
MIPS. Istruzioni MIPS: assegnamento,
salto, aritmetiche-logiche. Modalità
d’indirizzamento, chiamate di funzione,
direttive all’assemblatore.
Modalità d’esame
L’esame si compone di una prova scritta e
di una prova orale. Durante il corso, vengono svolti tre compitini. Gli studenti che
superano positivamente i compitini sono
esonerati dalla prova scritta.
Bibliografia
Testo adottato:
- A.S. TANENBAUM, Architettura dei calcolatori, un approccio strutturato, Pearson,
2006.
ASPETTI SOCIALI
ED ETICA PROFESSIONALE
Docente
Dott. Antonio Piva
Crediti
3
Programma
Gli obiettivi principali del corso sono:
rendere lo studente consapevole del contesto sociale e delle implicazioni sociali
ed etiche conseguenti alle innovazioni
tecnologiche nel campo dell’informatica;
rendere lo studente consapevole delle
implicazioni deontologiche della propria
attività professionale, nei confronti dei
clienti e utenti, e responsabilizzarlo sulle
conseguenze a tutti i livelli del proprio
operato.
117
In particolare il corso prevede la trattazione dell’informatica giuridica ed il Diritto
dell’ICT con particolare attenzione alle
innovazioni apportate da internet.
Verranno trattate le seguenti tematiche:
- liberalizzazione delle telecomunicazioni
a livello internazionale e nell’ordinamento italiano;
- la privacy e la sicurezza: nozione e sviluppo di privacy: dalle linee guida
dell’OCSE del 1980 alla direttiva europea,
la normativa italiana in materia di dati
personali, le disposizioni applicabili alla
rete, gli obblighi per gli Internet Service
Provider, la gestione della sicurezza, le
misure minime ed idonee sulla sicurezza, il documento programmatico della
sicurezza, le figure giuridiche previste;
- la tutela della segretezza della posta elettronica nell’ordinamento italiano e negli
altri ordinamenti; - la proprietà intellettuale e il diritto d’autore: dalle origini del
diritto d’autore alla proprietà intellettuale
nella società dell’informazione; la normativa internazionale, europea ed italiana in
materia. La tutela giuridica del software:
Il diritto d’autore sul software e la sua brevettabilità; la durata del diritto, i beni
oggetto del diritto in particolare il software e le banche dati. La tutela delle banche
dati e delle opere multimediali;
- i Domain Names di internet e gli aspetti
giuridici; le procedure di registrazione ed
il grabbing. Il DN ed il marchio, analisi di
alcuni casi di protezione giuridica ed
alcune decisioni dei tribunali italiani; le
autorità preposte alla registrazione ed al
controllo degli accessi; la risoluzione dei
conflitti;
- l’utilizzo dei link nei Web ed alcuni casi
giuridici;
- la firma digitale e la carta d’identità elettronica; il documento elettronico e la sua
validità giuridica nell’ordinamento italiano; la crittografia: storia, evoluzione, tecniche di sicurezza sulla rete; la riservatezza, l’integrità, l’autenticazione ed il non
118
programmi - TWM triennale
ripudio; le certification autority riconosciute dal CNIPA ed i certificati elettronici; le normative italiane ed Europee sulla
firma elettronica; firma autografa e digitale a confronto; la data certa nei documenti elettronici. Accenni sulla Carta
d’Identità elettronica e la Posta elettronica certificata. L’Informatica nella Pubblica Amministrazione: il piano di EGovernment ed il nuovo
c o d i c e
dell’amministrazione digitale;
- il commercio elettronico; le direttive
dell’Unione Europea in materia; i contratti mediante Internet, i contratti ad oggetto informatico ed i contratti Telematici; la
tutela dei consumatori in Internet e le
normative di riferimento per i contratti
conclusi fuori dai locali commerciali; La
pubblicità in rete: definizioni e disciplina
legale, i banner, lo spamming nell’ordinamento italiano;
- la criminalità informatica e il diritto
penale in internet; la tutela dei beni informatici, la violazione del domicilio informatico, l’accesso abusivo e gli hackers, la
normativa penale di riferimento;
- la ricerca delle informazioni giuridiche;
- la qualità (facoltativo): storia ed evoluzione della qualità, dalle norme ISO
9000:1994 alle Vision 2000; la loro
applicabilità alle più diverse situazioni ed
organizzazioni, la terminologia, il Sistema di Gestione della Qualità, i principi
della qualità, i requisiti delle norme,
l’approccio ai processi, il manuale, le verifiche ispettive, la gestione delle non
conformità, delle azioni preventive e correttive, la soddisfazione del cliente, risorse umane ed il miglioramento continuo.
BASI DI DATI
Docente
Dott. Massimo Francheschet
Crediti
6
Programma
Parte 1 - Concetti di base
Ruolo e funzionalità di una base di dati;
astrazioni sui dati; modelli concettuali,
logici e fisici dei dati; istanze e schemi;
indipendenza logica e fisica dei dati; linguaggi per la definizione e la manipolazione dei dati; i sistemi per la gestione
delle basi di dati (DBMS); amministratore e utenti di una base di dati; il dizionario
dei dati; la struttura generale di una base
di dati.
Parte 2 - Il modello Entità/Relazioni (ER)
Metodologie e modelli per il progetto: il
ciclo di vita dei sistemi informativi e le
metodologie di progettazione di basi di
dati; i costrutti di base del modello concettuale Entità/Relazioni (ER): tipi e
istanze di entità e relazioni, attributi
(semplici, composti, a singolo valore, a
valore multiplo, derivati) e chiavi (identificatori interni ed esterni, le nozioni di
entità debole, entità proprietaria, chiave
parziale e relazione identificante), dominio di un attributo e utilizzo di NULL,
vincoli associati alle relazioni (partecipazione e rapporto di cardinalità), relazioni
ricorsive e ruoli, relazioni di grado superiore al secondo, i diagrammi ER; documentazione di schemi ER: tecniche di
documentazione, regole aziendali (vincoli di integrità e regole di derivazione);
costrutti avanzati del modello ER: specializzazioni e categorie. Modellazione dei
dati in UML: i diagrammi delle classi
(classi, associazioni, molteplicità, identificatori, generalizzazioni).
Parte 3 - Il modello relazionale, l’algebra
relazionale e il calcolo relazionale
Il modello relazionale: nozioni di base,
definizione delle relazioni, definizione
dei vincoli sulle relazioni (che coinvolgono un’unica relazione o più relazioni),
operazioni di aggiornamento delle relazioni; l’algebra relazionale: le operazioni
di base, interrogazioni in algebra relazionale, operazioni addizionali, ottimizza-
119
programmi - TWM triennale
zione algebrica, i limiti dell’algebra relazionale; il calcolo relazionale: nozioni di
base, calcolo relazionale dei domini e
delle tuple, il legame con l’algebra relazionale.
Parte 4 - Il linguaggio SQL
La definizione dei dati in SQL; interrogazioni in SQL; istruzioni di aggiornamento in SQL; altre definizioni dei dati in
SQL (vincoli d’integrità generici, viste,
specifica di vincoli di addizionali sotto
forma di asserzioni); SQL e sicurezza
(controllo discrezionale degli accessi
basato sui privilegi); il DBMS MySQL.
Parte 5 - La progettazione delle basi di dati
La progettazione concettuale dei dati: raccolta e analisi dei requisiti, criteri generali di rappresentazione, strategie di progetto, qualità di uno schema concettuale,
strumenti CASE per la progettazione dei
dati; la progettazione logica dei dati: analisi delle prestazioni su schemi ER,
ristrutturazione di schemi ER (analisi
delle ridondanze, eliminazione delle
gerarchie, partizionamento /accorpamento di entità e/o relazioni, scelta degli
identificatori principali), traduzione del
modello ER nel modello relazionale; la
teoria della progettazione delle basi di
dati relazionali: dipendenze funzionali,
ragionamento sulle dipendenze funzionali, scomposizione di relazioni, scomposizioni lossless-join, scomposizioni che
conservano le dipendenze, forme normali per gli schemi di relazione (1NF, 2NF,
3NF e BCNF), scomposizioni losslessjoin in BCNF, scomposizioni in 3NF che
conservano le dipendenze.
Bibliografia
Testi adottati:
- P. A TZENI , S. C ERI , S. P ARABOSCHI , R.
TORLONE, Basi di Dati: Modelli e Linguaggi
di Interrogazione, (seconda edizione),
McGraw-Hill, 2006.
- R. ELMASTRI, S. NAVATHE, Fundamentals
of Database Systems, (5th edition), Pearson
International Education / Addison
Wesley, 2007.
In alternativa:
- R. ELMASTRI, S. NAVATHE, Sistemi di basi
di dati. Fondamenti, (quarta edizione),
Pearson Education Italia / Addison
Wesley, 2004.
Altri testi di riferimento:
- J.D. ULLMAN, Principles of Databases and
Knowledge-Base Systems (volume I), Computer Science Press, 1988.
- S. ABITEBOUL, R. HULL, V. VIANU, Foundations of Databases, Addison-Wesley,
1995.
- A. ALBANO, G. GHELLI, R. ORSINI, Fondamenti di basi di dati, Zanichelli, 2005.
- C.J. Date, An Introduction to Databases
Systems, (7 th edition), Addison-Wesley,
2000.
- SILBERSCHATZ, H.F. KORTH, S. SUDARSHAN, Database System Concepts, (4th edition), McGraw-Hill, 2002.
- L. WELLING, L. THOMSON, MySQL Tutorial, Pearson Education Inc., 2004.
COMMERCIO ELETTRONICO
Docente
Dott. Roberto Pugliese
Crediti
8
Finalità del corso
Scopo del corso è di analizzare in dettaglio i principali passi, le problematiche da
affrontare e le soluzioni esistenti per la
progettazione di servizi di commercio
elettronico. In particolare, verranno analizzate le diverse dimensioni che è necessario conoscere al fine di sviluppare iniziative efficaci di commercio elettronico:
l’acquirente (ad es., stili di acquisto, problematiche di fiducia, problematiche di
usabilità), il fornitore del servizio (ad es.,
Internet marketing, merchandising, stra-
120
tegie di commercio elettronico), il servizio (struttura dei siti di commercio elettronico attuali e linee di tendenza evolutive), il progetto del servizio (tipiche problematiche da affrontare, strumenti
disponibili, linee guida, supporto
all’acquirente nella navigazione, ricerca e
confronto fra prodotti).
Programma
- Concetti base di commercio elettronico.
Definizione di E-commerce (EC). EC vs.
E-business. Pure vs. Partial EC. ‘Brickand-mortar’ vs. EC. Cenni storici ed evoluzione tecnologica (EFT, EDI, VAN,
Internet, Intranet, Extranet). Business
models. Esempi di business models innovativi. Supply chain. Tipologie di portali.
Discipline che contribuiscono all’EC.
- Tipologie di Commercio Elettronico.
Business-to-Business (B2B). Business-toConsumer (B2C). Consumer-to-Consumer (C2C). Intra-business. Altre tipologie. Casi di studio stranieri ed italiani. Emarket. E-exchange. Dynamic pricing.
Interorganizational Information
Systems. Mobile Commerce.
- Impatto dell’e-commerce sulle aziende e
sulle organizzazioni. strategic systems,
Total Quality Management (TQM), Justin-time (JIT), Business Process Re-engineering (BPR), Alleanze, uso dell’Information Technology (IT) ed EC. Vantaggi
e svantaggi del commercio elettronico.
Caso di studio dettagliato: le agenzie viaggi ed EC. La digitalizzazione di prodotti,
servizi e processi. Disintermediazione e
reintermediazione. Effetti sulle attività
commerciali tradizionali.
- Applicazioni Business-to-consumer
(B2C). Caso di studio dettagliato: la vendita di libri on-line. Caratteristiche e funzionalità necessarie in un sito B2C. Il processo d’acquisto. Il comportamento dei
consumatori nel processo d’acquisto.
Ausili on-line al processo d’acquisto. Etailing business models. Esempi di busi-
programmi - TWM triennale
ness model B2C, Direct Marketing. Strategie ‘Click-and-mortar’. Channel conflict.
- Internet Marketing. Marketing plan.
Marketing vs. Merchandising. Ruolo
delle ricerche di mercato nel commercio
elettronico. Metodi per le ricerche di mercato tradizionali ed on-line. Segmentazione. Il comportamento dei consumatori
on-line: tipologie. Peculiarità della situazione italiana. Caratteristiche personali e
demografiche degli utenti Internet. Strategie di personalizzazione e marketing
one-to-one.
- Customer Relationship Management
(CRM). Tipi di funzionalità offerte ai
clienti. Strumenti di servizio ai clienti.
Uso di Agenti Intelligenti nelle diverse
fasi del processo d’acquisto. Call center/Teleweb.
- Internet Advertising. Scopi e motivazioni per la pubblicità su Internet. Ad views,
impressions. Clickthrough ratio. CPM.
Tipi di banner. Targeted (one-to-one)
advertising. Metodi di advertisement.
Strategie pull e push. Eventi e promozioni on-line. Valutare l’efficacia della pubblicità su Internet. I cataloghi on-line.
- Applicazioni Business-to-business
(B2B). Company-centric B2B. From Traditional to Internet-Based EDI. E-Marketplaces and B2B. Extranets. B2B Support
Services.
- Altri tipi di applicazioni del Commercio
Elettronico. Consumer-to-Consumer
(C2C). Dynamic Pricing, Auction. Service
Industries, Online Publishing, and
Knowledge Dissemination. Intrabusiness, e-Government. E-Communities.
- Mobile Commerce. Wireless and mobile
technologies. M-commerce applications.
Mobile marketing, advertising and customer service. Location-based commerce.
Current limitations of M-commerce.
- Realizzazione di servizi di Commercio
Elettronico. Infrastructure. Tools. Page
design. Web programming. E-Commerce
121
programmi - TWM triennale
Security. Electronic Payment Systems.
Order Fulfillment, Logistics, and Supply
Chain Management.
- Interfacce utente per applicazioni di
Commercio Elettronico. Linee guida.
Progetto dell’interfaccia. Recenti tendenze evolutive: interfacce per one-to-one ecommerce, mobile commerce, experiential e-commerce.
Modalità d’esame
L’esame si compone di una prova scritta.
Bibliografia
- E. TURBAN, J. LEE, D. KING, M. WARKENTIN, H.M. CHUNG, Electronic Commerce: a
Managerial Perspective, 2nd edition, Prentice-Hall, 2002.
- G.P. SCHNEIDER, J.T. PERRY, Electronic
Commerce, 2 nd edition, Thomson Learning, 2001.
COMUNICAZIONE EFFICACE
Docente
Prof. Angelo Marzollo
Crediti
1
Finalità del corso
Il corso (pari ad un credito formativo) è
mutuato da quello di Laboratorio di Tecniche di Comunicazione, e coincide con
le prime otto lezioni di quest’ultimo. Il
corso si prefigge di dotare gli studenti di
alcuni strumenti operativi essenziali
nell’ambito della comunicazione, tali da
facilitare il loro inserimento nel mondo
del lavoro.
Programma
Si analizzeranno le capacità comunicative individuali così come esse emergono
in contesti collettivi (ad esempio lettura e
presa di parola in pubblico) ed interperso-
nali (ad esempio preparazione ed esposizione del proprio curriculum vitae, incontri e colloqui di lavoro, ecc.). Questo consentirà di evidenziare i punti critici in tali
contesti comunicativi e di fornire elementi utili al loro superamento, grazie anche
all’intervento di esperti specifici.
Modalità d’esame
L’esame consisterà in una prova di comunicazione (scritta ed eventualmente
anche orale) il più possibile aderente a
situazioni che lo studente dovrà affrontare nella sua vita lavorativa e sociale. Gli
studenti che superino l’esame di Laboratorio di Tecniche di Comunicazione, le
cui prime otto lezioni affrontano gli argomenti sopra descritti, sono esentati dal
sostenere separatamente l’esame di
Comunicazione Efficace, ottenendone
automaticamente l’idoneità.
Bibliografia
Data la brevità del corso e il suo carattere
nettamente operativo la frequenza è necessaria per affrontare l’esame e non può
essere sostituita dalla semplice lettura di
testi. Tuttavia, si indicheranno materiali
aggiuntivi o integrativi agli studenti che
desiderino approfondire argomenti
specifici.
CORSO INTRODUTTIVO
Docente
Dott. Maurizio Trombetta
Finalità del corso
Lo scopo del Corso è quello di livellare la
preparazione degli studenti che si iscrivono al primo anno del Corso di Laurea in
Informatica, rimediando alle lacune che
essi possono avere sui concetti di base e le
nozioni essenziali per affrontare i Corsi
di Analisi Matematica e di Matematica
Discreta.
122
programmi - TWM triennale
Programma
Argomenti trattati: Insiemi, elementi e
sottoinsiemi. Relazioni di equivalenza e
d’ordine. Applicazioni. Numeri naturali,
interi, razionali, reali. Equazioni e disequazioni. Funzioni elementari: funzioni
razionali, goniometriche, esponenziali e
logaritmiche. Elementi di geometria analitica e di geometria euclidea.
Modalità d’esame
Test scritto.
Bibliografia
Testo consigliato:
- M. T ROMBETTA , Corso introduttivo di
matematica, Forum, Udine, 2004.
CULTURA D’IMPRESA
vigionamento al post-vendita: l’e-business e l’e-commerce; vengono illustrate,
in particolare, le prospettive nel campo
della gestione dei processi decisionali,
della logistica, della catena del valore,
dell’integrazione dei database interni, del
marketing, dei servizi di approvvigionamento (e-procurement) e di quelli alla
clientela (CRM). Infine vengono trattati
argomenti tipicamente aziendali, al fine
di contribuire alla comprensione di cosa è
una azienda, di quali sono alcuni procedimenti topici e di come ci si lavora; argomenti trattati in particolare: le Società
secondo il Codice Civile; il Project Management per la pianificazione ed il monitoraggio dei progetti; il Sistema di Qualità; i profili professionali nel settore ICT
con la necessità indotta di una formazione continua.
Docente
Ing. Carlo Alberto Rolla
FISICA
Crediti
1
Docente
Dott. Hans Grassmann
Finalità del corso
Il Corso si propone di fornire agli studenti una panoramica del mondo aziendale
dal punto di vista delle tecnologie ICT
(Information e Communication Technologies), e dell’impatto che queste tecnologie hanno sull’organizzazione aziendale,
come strumento essenziale a supporto
della necessaria innovazione. Partendo
da una disanima dell’evoluzione tecnologica e del conseguente ruolo dell’ICT
nell’Impresa, da considerazioni di illustri
personalità sull’impatto che l’ICT ed
Internet, in particolare, hanno sulle
Imprese, vengono esaminati alcuni dei
servizi che sono stati resi disponibili (telelavoro, sviluppo cooperativo, e-learning,
ecc.) e due dei principali sistemi informativi a disposizione delle Imprese, per
gestire tutto il ciclo aziendale, dall’approv-
Crediti
3
Finalità del corso
Gli obiettivi didattici del corso sono due:
(a) Far comprendere agli studenti le leggi
che descrivono il moto di un punto materiale e la propagazione della luce (ottica
geometrica). (b) Addestrare gli studenti a
risolvere semplici problemi.
Programma
- Cinematica: introduzione. Moto di un
punto materiale: vettori posizione, velocità, accelerazione. Moto rettilineo: caduta libera dei gravi; caduta in un mezzo
resistivo; oscillatore armonico semplice.
Moto piano: moto circolare; moto di un
proietto; moto planetario.
- Urti elastici.
programmi - TWM triennale
- Propagazione della luce: introduzione;
riflessione; rifrazione; principio di Fermat. Ottica geometrica: lenti; specchi;
prismi.
Modalità d’esame
Prova scritta.
Bibliografia
- Appunti delle lezioni.
- M. VILLA, F. VETRANO, P. COFRANCESCO,
Elementi di fisica (capitoli 3 e 14), Mc
Graw-Hill.
INGEGNERIA DEL SOFTWARE
Docente
Prof. Carlo Tasso
Crediti
6
Finalità del corso
Obiettivo del corso è l’introduzione ai
concetti di base dell’Ingegneria del
Software, settore dell’informatica dedicato allo studio delle metodologie, delle tecniche e degli strumenti utilizzati nella
produzione industriale del software. In
particolare il corso descrive vari modelli
del processo di sviluppo del software presentando i problemi relativi alle varie fasi
del ciclo di vita, con particolare riferimento all’analisi dei requisiti e alla specifica,
al progetto, al testing, agli standard ed al
controllo di qualità.
Programma
- Concetti e definizioni di base dell’Ingegneria del Software.
Introduzione. Origini e motivazioni
dell’Ingegneria del Software. Definizioni
di base: prodotti software, caratteristiche
generali dei prodotti software, distribuzione dei costi. Processi per lo sviluppo
del software, modello dei processi: pro-
123
cessi primari, di supporto e di gestione;
ciclo di vita, metodologia di sviluppo.
Modelli generali dei processi: modello a
cascata; sviluppo incrementale; modello a
spirale di Boehm, gestione del rischio;
discussione ed esempi. Visibilità del processo di sviluppo. Ingegneria dei sistemi.
Definizioni e problemi. Ambiente di un
sistema. Modello contractor/sub-contractor per l’acquisizione del sistema. Fasi del
processo di ingegnerizzazione dei sistemi: definizione dei requisiti, progetto,
sviluppo dei sotto-sistemi, integrazione,
installazione, funzionamento, evoluzione e dismissione. Obiettivi del sistema.
Architettura di un sistema, componenti
funzionali. Fattori umani, problematiche
relative all’interfaccia affidabilità, resilienza.
- Gestione di un Progetto Software.
Gestione di un progetto software. Attività
di gestione. Personale. Pianificazione del
progetto: piano di progetto, struttura e
contenuti. Concetti di milestone e derivable. Schedulazione del progetto; rappresentazioni grafiche: diagramma delle attività, dei tempi, del personale. Cammino
critico.
- Requisiti di un sistema Software.
Ingegnerizzazione dei requisiti. Definizione del concetto di requisito. Attività di
definizione, analisi e specificazione dei
requisiti. Processo di ingegnerizzazione
dei requisiti. Documentazione dei requisiti. Validazione dei requisiti: review sui
requisiti, parametri di validazione. Evoluzione dei requisiti: requisiti duraturi,
volatili, mutabili emergenti, consequenziali, di compatibilità. Analisi dei requisiti: definizione e processo d’esecuzione.
- Tecniche di modellizzazione dei sistemi.
Modellizzazione dei sistemi. Modelli
data-flow (DFD): definizioni ed esempi.
Inadeguatezza dei modelli DFD a rappresentare aspetti di controllo e di sincronizzazione. Automi a stati finiti: definizioni
124
ed esempi. Reti di Petri posti-transizioni:
definizioni, esempi, valutazioni. Modelli
object oriented: modelli d’eredità, di
aggregazione e di utilizzo dei servizi. Linguaggio UML e principali diagrammi.
Data dictionary.
- Definizione dei requisiti e specificazione del software.
Definizione e specificazione dei requisiti:
modalità e tecnica di redazione. Uso di
linguaggio naturale e di moduli in linguaggio strutturato. Linguaggi per la
descrizione dei programmi (PDL). Definizione dei requisiti per interfacce
software. Requisiti non funzionali, classificazione. Specificazione del software:
definizione. Criteri di accettazione. Relazioni tra specificazione e progetto. Il
ruolo delle specifiche formali.
- Prototipizzazione del Software.
Prototipizzazione: definizione. Motivazioni, obiettivi, approcci. Prototipizzazione: approccio evolutionary, approccio
throw-away, approccio incrementale.
Strumenti per la prototipizzazione. Prototipizzazione dell’interfaccia utente.
- Generalità e Progetto Architetturale.
Progetto del software. Stadi del processo
di progetto. Metodi di progetto: approccio
Top-down, metodi strutturati, strategie
funzionali e object oriented. Documentazione del progetto. Parametri di qualità
del progetto: coesione, accoppiamento,comprensibilità e adattabilità. Progetto architetturale: definizione, sistema,
sotto-sistema, modulo. Modelli per la
strutturazione dei sistemi software:
modello basato su data base condiviso,
modello client-server, concetto di tipo di
dati astratto e modello basato su Macchine Astratte. Modelli del controllo; controllo centralizzato: modello call-return e
modello basato su manager di controllo;
controllo basato sugli eventi: modello
broadcast e modello a interrupt. Modelli
di scomposizione in moduli: data-flow e
object oriented. Architetture specifiche
programmi - TWM triennale
del dominio: generiche e di riferimento,
esempi. Architetture distribuite, architetture 2- e 3-tier, thin e fat client, middleware.
- Progettazione Object-Oriented.
Definizioni di base della tecnologia
object-oriented. Progettazione objectoriented (OOD): caratteristiche e vantaggi. Analisi object-oriented e OOD: differenze. Identificazione di Oggetti e Classi
basata sul linguaggio naturale. Interfacce
tra oggetti (esempi in ADA e C++). Il
ruolo dell’astrazione. Classi riusabili,
astrazione, standardizzazione e altri criteri di progettazione delle classi. Gerarchia
di Aggregazione. Diagramma dei servizi.
Progettazione dell’interfaccia tra oggetti.
Diagrammi UML per la progettazione
OO.
- Progettazione funzionale.
Progettazione funzionale: definizione.
Progettazione data-flow. Decomposizione strutturale e diagrammi di struttura.
Trasformazione dei diagrammi data-flow
in diagrammi di struttura. Progetto di
dettaglio (o esecutivo). Modello fetch execute per i sistemi interattivi. Confronto
delle diverse strategie di progetto.
- Verifica e Validazione.
Processi di supporto. Il controllo di qualità dei prodotti software: la verifica e la
validazione, definizioni secondo ISO
12207. Verifica e validazione statiche e
dinamiche. Testing e ispezione. Validazione tecnica e sociale. Obiettivi e problematiche generali del testing. Testing statistico e di identificazione dei difetti.
Debugging.
- Testing del Software.
Processo di debugging. Pianificazione e
organizzazione dei test. Strategie di test.
Il test incrementale. La metodologia Big
Bang. Strategie di testing top down e bottom up. Test dinamico black box (funzionale) e white box (strutturale). Il concetto
di test case. Dati di test. Classi di equivalenza. La verifica statica. Il processo di
ispezione.
125
programmi - TWM triennale
- Introduzione alla Dependability del
Software.
Definizione di dependability (fidatezza) e
sue dimensioni: affidabilità, disponibilità, sicurezza e protezione (safety). Concetto di affidabilità. Fallimenti, guasti,
errori. Metriche di affidabilità. Unità di
tempo: tempo di esecuzione, di calendario, cronometrico. Confronto del concetto
di affidabilità per il software e per
l’hardware. Distribuzione probabilistica
delle misure di affidabilità. Classificazione delle conseguenze dei malfunzionamenti. Possibili usi delle misure di affidabilità.
- Qualità del Software.
Concetto di standard: standard de jure, de
facto, aperto, proprietario. Il ruolo
dell’ISO e delle organizzazioni nazionali.
Definizione di qualità del SW secondo lo
standard ISO 8402. Controllo di Qualità
secondo ISO 9000. Modello di qualità
del software secondo ISO 9126: parametri di funzionalità, affidabilità, usabilità,
efficienza, manutenibilità, portabilità.
Gestione della qualità. Politica di qualità.
Sistema qualità, controllo e assicurazione
di qualità. Scope e pianificazione delle
attività di assicurazione della qualità.
Qualità di un prodotto basata sulla qualità
del processo di produzione. Review di
qualità. Check di qualità ed azioni correttive. Documentazione dei review di qualità. Processo di valutazione e metriche
dei parametri di qualità secondo ISO
9126. Standard ISO 9000 per la gestione
ed assicurazione della qualità: ISO 9001,
9002, 9003 e 9004, manuale della qualità. Standard ISO 9000-3: linee guida
per l’applicazione dello standard ISO
9001 al software. Certificazione di qualità
ed accreditamento.
- Standard sul Ciclo di Vita.
Standard ISO 12207 sul ciclo di vita del
software. Definizione dei vari processi
software. Definizione dei ruoli degli esecutori dei processi: acquirente, fornitore,
proprietario, sviluppatore, operatore,
manutentore. Prospettiva contrattuale.
Processi di monitoraggio e tailoring del
ciclo vita.
Modalità d’esame
Esame scritto e orale.
Bibliografia
- I. SOMMERVILLE, Software Engineering, 7th
edition, Addison-Wesley, Harlow, UK,
2004.
Anche in edizione italiana:
- I. SOMMERVILLE, Ingegneria del software,
settima edizione. Pearson AddisonWesley, Milano, 2005.
- G. GUIDA, C. TASSO, Design and Development of Knowledge-Based Systems: from Life
Cycle to Development Methodology, John
Wiley & Sons, Chichester, UK, 1994.
- Materiale didattico (slide, testi, esami ed
esercitazioni)
disponibile
su
http://twm.dimi.uniud.
INTERAZIONE UOMO-MACCHINA 1
Docente
Prof. Luca Chittaro
Crediti
6
Finalità del corso
Scopo del corso è di introdurre i principi,
le metodologie di progettazione e le diverse scelte implementative per la costruzione di software che sia usabile in modo
semplice, intuitivo, produttivo ed affidabile dagli utenti a cui è rivolto. Il raggiungimento di questo obbiettivo richiede lo
studio di tre diverse tematiche: l’uomo
(caratteristiche psicologiche dell’utente);
la macchina (strumenti per la realizzazione di interfacce con il mondo esterno);
l’interazione (analisi, progetto, valutazione di interfacce uomo-macchina). Oltre a
126
presentare le nozioni di base della disciplina, il corso pone anche l’accento su
alcuni sviluppi recenti di particolare
importanza, quali le interfacce 3D ed il
groupware.
Programma
- Introduzione: obiettivi dell’Interazione
Uomo-Macchina e sua importanza nei
diversi settori applicativi dell’Informatica.
- Aspetti psicologici dell’Interazione
Uomo-Macchina: psicologia cognitiva.
Canali sensoriali. Limitazioni e aspettative umane nei processi percettivi. Percezione visiva. Percezione auditiva. Percezione tattile. Movimento. La Memoria
umana: sensoriale, a breve termine, a
lungo termine. Differenze individuali.
Modelli mentali. Metafore. Errori umani:
slip e mistake.
- Periferiche per l’Interazione UomoMacchina: periferiche per l’inserimento
di testo. Periferiche per il puntamento e
posizionamento. Periferiche 3D. Periferiche per l’output visivo, auditivo, tattile.
Periferiche ed interfacce per utenti disabili.
- Modelli e paradigmi di Interazione
Uomo-Macchina: modelli per caratterizzare le fasi dell’interazione. Aspetti ergonomici dell’interazione. Stili di interazione: dai linguaggi di comando alle interfacce 3D. Interfacce a finestre (WIMP).
Progetto dei menu e delle icone. Paradigmi di interazione.
- Interazione Uomo-Macchina e Ciclo di
Vita del Software: analisi dei requisiti di
usabilità. Principi di usabilità. User-centred design. Usability Engineering. Tecniche di prototyping. Tecniche per favorire la creatività. Documentazione delle
scelte di progetto.
- Environment, User, Task Analysis:
determinazione del contesto dell’interazione con modelli socio-tecnici. Il metodo
USTM/CUSTOM. Analisi dei compiti
degli utenti. Il metodo HTA. Modelli pre-
programmi - TWM triennale
dittivi: GOMS, KLM.
- Metodi formali nell’Interazione UomoMacchina: State transition network ed
altre notazioni diagrammatiche. Notazioni testuali. Progetto ed analisi di dialogo
mediante state transition network.
- Guidelines e standard per le Interfacce
Utente: definizione. Scelta ed uso di guidelines. Esempi di guidelines: MITRE,
Apple, Microsoft, guidelines IBM per
interfacce 3D. Lo standard ISO 9241.
- Strumenti per l’implementazione di
Interfacce Utente: Windowing System.
Tecniche di programmazione. Toolkit.
Caso di studio: il toolkit di Java. User
Interface Management System.
- Valutazione di usabilità: scopo della
valutazione. Strumenti di registrazione.
Osservazione dell’utente. Raccolta di opinioni. Interviste. Questionari. Esperimenti. Valutazione predittiva. Cognitive
walkthrough. Valutazione interpretativa.
- Help: assistenza all’utente. Requisiti di
un help system. Principali approcci.
Interfacce adattive ed adattabili.
- Computer-Supported Cooperative
Work: Groupware. La comunicazione
mediata dal calcolatore. E-mail e sistemi
di comunicazione testuale. Videoconferenza. Ambienti collaborativi virtuali.
Sistemi workflow. Aspetti sperimentali
ed organizzativi del lavoro cooperativo.
- Recenti paradigmi di Interazione
Uomo-Macchina: Ubiquitous computing. Realtà virtuale. Tipologie di realtà
virtuale. Il linguaggio VRML. Interfacce
multi-sensoriali (o multi-modali). Information visualization. Ipertesti. Interfacce
multimediali e ipermediali.
Bibliografia
- A. DIX, J. FINLAY, G. ABOWD, R. BEALE,
Human Computer Interaction, 3rd edition,
Prentice Hall, 2003.
- J. P REECE , Y. R OGERS , H. S HARP , D.
B ENION , S. H OLLAND , T.C AREY , Human
Computer Interaction, Addison Wesley,
1994.
programmi - TWM triennale
LABORATORIO TECNICHE
DI COMUNICAZIONE
Docente
Prof. Angelo Marzollo
Crediti
4
Finalità del corso
Il corso nel suo complesso ha un duplice
scopo. Il primo, e prevalente, consiste nel
contribuire a fornire agli studenti molteplici strumenti atti ad affrontare con sicurezza e competenza compiti di tipo comunicativo che li attendono non solo a livello
universitario (ad esempio stesura di elaborati e tesi di laurea) ma anche, e soprattutto, nella vita sociale e nel mondo del
lavoro, ad iniziare dai più semplici (stesura di CV e colloqui d’assunzione) fino ad
altri, più articolati, in cui si richiede un
ruolo attivo e consapevole (preparazione
e redazione di relazioni, partecipazioni a
riunioni professionali, comunicazioni a
congressi, interventi in pubblico, e così
via).
Il secondo scopo del corso è quello di fornire agli studenti nozioni di base e terminologia per interpretare alcune attuali
realtà ed evoluzioni culturali, sociali,
ambientali ed economiche, con particolare riguardo alla crescente importanza dei
mass media e di Internet
Programma
Si partirà da un’analisi delle capacità
comunicative individuali così come esse
emergono in contesti collettivi (ad esempio lettura e presa di parola in pubblico)
ed interpersonali (ad esempio preparazione ed esposizione del proprio curriculum
vitae, incontri e colloqui di lavoro, etc.).
Questo consentirà di evidenziare i punti
critici in tali contesti comunicativi e di
fornire elementi utili al loro superamento, grazie anche all’intervento di esperti
specifici.
127
Si affronteranno poi alcuni argomenti di
psicologia cognitiva come base per la
modellizzazione dell’espressione orale e
scritta e guida per le tecniche tese ad un
suo miglioramento. Si continuerà con
cenni sul ruolo della lingua nel quadro
generale della comunicazione, e con
un’analisi delle differenze più importanti
fra lingua parlata e lingua scritta, incluso
il ruolo della punteggiatura e d’espressioni deittiche.
Si daranno alcune utili nozioni di semantica e di pragmatica, anche in riferimento
all’importanza del contesto, e s’indicherà
l’uso più appropriato di dizionari di diverso tipo, inclusi quelli analogici. Si richiameranno infine alcuni concetti fondamentali della retorica classica, ci si soffermerà sui suoi attuali grandi sviluppi, in
particolare in ambito pubblicitario, e si
daranno esempi di tecniche televisive nel
presentare notizie.
Si tratteranno, infine, alcune caratteristiche di linguaggi scientifici, tecnici informatici e gestionali, per concludere con
qualche analisi e sintesi di testi settoriali.
Il corso sarà completato da seminari
tenuti da esperti in campi specifici.
A fine corso si ritiene che lo studente sia
in grado di esprimersi in modo più efficace, tanto in forma scritta che in altre
forme, e in particolare abbia anche una
maggior consapevolezza di aspetti essenziali dell’affermazione di sé, specie nei
rapporti professionali.
Il carattere pratico piuttosto che teorico di
questo corso richiede la sua frequenza da
parte degli studenti che scelgano di includerlo nel loro piano di studi.
Modalità d’esame
L’esame consiste in una prova scritta e in
un colloquio orale riguardanti argomenti
trattati nelle lezioni e nei Seminari.
Per quanto riguarda la bibliografia
aggiuntiva, il docente discuterà d’anno in
anno con ciascuno studente quali testi
128
leggere approfonditamente, come base
per riflessioni personali sugli argomenti
scelti, di cui egli darà poi conto nella
prova scritta.
Bibliografia
- A. TESTA, Farsi capire, Rizzoli, Milano,
2000.
Si tratta di un’ampia, ragionata e abbastanza completa rassegna di argomenti di
base relativi alla Comunicazione, compilata da una nota esperta di pubblicità.
Vi compaiono molte citazioni di opere
concettualmente fondamentali quali
quelle di Paul Watzlawick, di Gregory
Bateson, e di altri autori, cui si aggiunge
la riproduzione di parecchie voci tratte da
importanti e pertinenti enciclopedie.
Si consiglia la lettura di questo testo agli
studenti che vogliano approfondire questioni generali nella comunicazione, sia
teoriche sia pratiche. Dovrebbero leggere
tutto il volume, e scegliere poi alcuni
argomenti d’approfondimento, magari
consultando alcune delle fonti da cui
l’autrice rimanda nelle sue note e citazioni.
- P. TABOSSI, Il linguaggio, Il Mulino, Bologna, 1999.
Uno schematico manuale, di facile lettura
e completo nel suo genere, che introduce
il linguaggio come una fondamentale
forma di comunicazione, vista soprattutto da un punto di vista psicolinguistico.
Si esaminano da questo punto di vista i
meccanismi fisici e cognitivi che ci permettono di capire le parole e le frasi, di
parlare e conversare, di scrivere e di leggere, e si accenna ad alcune difficoltà che
invalidano queste capacità.
- T. DE MAURO, Prima lezione sul linguaggio, Laterza, Bari, 2002.
Sulla base di profondi riferimenti culturali, espressi in modo molto chiaro, questa breve introduzione rappresenta un
incisivo invito ad un uso più appropriato,
e quindi più efficace, di parole e frasi.
programmi - TWM triennale
- G. LONGO, Il Nuovo Golem, come il computer cambia la nostra cultura, Laterza,
Bari, 1998.
Si tratta di un’approfondita riflessione
sugli effetti della diffusione dei computer
sulla scienza, sulla cultura e sulla società.
Essa può fornire utili spunti critici, specie
a chi in qualche modo fa parte del mondo
dell’informatica, e che condivida o meno
le tesi di Longo.
- G. SARTORI, Homo Videns, Laterza, Bari,
1999.
Questo libro non è strettamente attinente
alle nozioni impartite durante il corso, né
alle capacità che si ripromette di stimolare, ma fornisce un interessante e allarmato stimolo critico nel considerare il diffuso modo di apprendere la realtà, e di formarsi concetti, mediante il mezzo televisivo. Soprattutto, ma non solo, da parte di
bambini.
Il volume, di lettura molto facile, contiene
anche alcune critiche radicali, quasi provocatorie, sul contenuto della grande
maggioranza dei programmi televisivi,
estese anche ad alcuni modi di usare
Internet e di credere che sostituiscano
più tradizionali maniere di comunicare.
Si tratta di un argomento complementare, che si consiglia a studenti particolarmente interessati.
- G. COSENZA, Semiotica dei nuovi Media,
Laterza, Bari, 2004.
Si tratta di una ricerca su applicazioni
della Semeiotica all’esame dei nuovi
media considerati come testi da analizzare. Questo libro, abbastanza specializzato, richiede l’acquisizione di nozioni preliminari di linguistica, e comunque un
interesse alla filosofia del linguaggio. È
consigliato solo a studenti che vogliano
dedicare all’argomento un impegno
superiore a quello richiesto per affrontare
l’esame.
129
programmi - TWM triennale
LABORATORIO DI SISTEMI
MULTIMEDIALI
Crediti
4
Docenti
Prof. Elio Toppano
Dott. Roberto Ranon
Pagina del corso
http://www.dimi.uniud.it/~dangelo/Lab
OS/labos.html
Crediti
4
Finalità del corso
Obiettivo del Laboratorio è quello di mettere a disposizione allo studente
dell’annesso corso di S.O. quegli strumenti pratici essenziali a comprendere
gli aspetti salienti dei moderni sistemi
operativi. Le lezioni sono basate essenzialmente sulla discussione di esempi e la
presentazione di esercizi alla cui soluzione gli studenti sono chiamati a confrontarsi.
Finalità del corso
Il laboratorio intende fornire le conoscenze pratiche e operative per la realizzazione di prodotti multimediali.
Programma
Linguaggi di marcatura per l’integrazione e la sincronizzazione di oggetti multimediali: SMIL 2.0. Linguaggi per la
modellizzazione di ambienti virtuali:
VRML. Analisi e utilizzo di programmi
per la grafica (Jasc Paint Shop Pro 7.04) e
l’editing audio e video (Sound Forge XP
della Sonic Foundry, Cool Edit 2000
della Syntrillium e Premiere della Adobe).
Sviluppo di siti utilizzando Dreamweaver
e Flash di Macromedia.
Modalità d’esame
L’esame consiste nella discussione orale
di un progetto realizzato in SMIL o
VRML.
Bibliografia
Oltre ai materiali distribuiti a lezione si
consiglia il seguente testo:
- T. KENNEDY, M. SLOWINSKI, SMIL Adding
Multimedia to the Web, SAMS Publishing,
2002.
LABORATORIO DI SISTEMI
OPERATIVI
Docente
Dott. Antonio D’Angelo
Programma
1. La shell di Unix
1.1 Cenni storici allo sviluppo dei Sistemi;
1.2 Installazione di un Sistema Linux;
1.3 Ruolo delle shell in Unix;
1.4 Comandi principali, ridirezione,
variabili predefinite, script;
1.5 Strumenti per la configurazione e il
mantenimento dei sistemi;
1.6 Applicazioni alle reti di calcolatori:
esecuzione remota di comandi.
2. Programmazione di sistema in Unix
2.1. Uso del compilatore g++: programmi
e generazione del codice;
2.2. Breve introduzione all’uso del linguaggio C;
2.3 Mantenimento del software: il comando make;
2.4 Multithreading, gestione delle interruzioni software e semafori;
2.5 Comunicazione fra programmi: introduzione all’uso delle socket;
2.6 Simulazione dell’interazione con
l’ambiente mediante I/O asincrono.
3. Comunicazione fra calcolatori
3.1 Protocolli per la comunicazione;
3.2 Esempi applicativi per HTML, Javascript, CGI, Perl;
130
3.3 Impiego del multithreading;
3.4 Interruzioni SIGALRM e SIGPOLL/SIGIO;
3.5 Comunicazione continua mediante
socket non connesse.
4. Gestione dei servizi di sistema
4.1 Accesso e controllo della configurazione di sistema;
4.2 Il server Apache;
4.3 Il Mail server;
4.4 Iptables, il firewall di Unix.
Modalità d’esame
Sviluppo di esercizi individuali e di gruppo proposti nel corso delle lezioni secondo le modalità indicate.
Bibliografia
- G. GLASS, K. ABLES, UNIX for Programmers and Users, Prentice Hall, seconda
edizione, 1999.
- P. CORNES, The Linux A-Z, Prentice Hall,
1997.
- K. HAVILAND, D. GRAY, B. SALAMA, UNIX
System Programming, Addison Wesley,
seconda edizione, 1999.
- C. B ROWN , Unix Distributed Programming, Prentice-Hall 1994.
- A. SILBERSCHATZ, P. GALVIN, Sistemi Operativi, quarta edizione, Addison Wesley,
1996.
- H. DEITEL, P. DEITEL, D. CHOFFNES, Sistemi Operativi, terza edizione, Pearson
Education Italia, 2005.
- S. LEFFLER, M. MCKUSICK, M. KARELS, J.
QUARTERMAN, The Design and Implementation of the 4.3BSD UNIX Operating
System, Addison Wesley, 1990.
- R. THOMAS, L. ROGERS, J. YATES, OSBORNE, Advanced Programmer’s Guide to Unix
System V, McGrawHill, 1986.
- A. B ERSON , Client Server Architectures,
seconda edizione, McGraw Hill, 1996.
- A. D’ANGELO, Dispense del corso, disponibile sul Web.
programmi - TWM triennale
LABORATORIO DI
TECNOLOGIE LATO SERVER
Docenti
Dott. Ivan Scagnetto
Dott. Vincenzo Della Mea
Crediti
4
Programma
- Introduzione alle tecnologie lato server:
funzionamento di un server web, CGI,
scripting.
- Introduzione a PHP. Il linguaggio ed
esercizi (cookies, Mysql, images).
- Introduzione a Java 2 Enterprise Edition
ed alle servlet.
- Tomcat (installazione, struttura delle
directory, file di configurazione, utilizzo),
esempi di servlet (dalla stesura del codice
sorgente al dispiegamento sul server).
- Approfondimenti sulle servlet: metodo
destroy, lettura di parametri dal file
web.xml, thread-safety, tener traccia del
client tramite cookie e sessioni, scrivere
nei file di log di Tomcat, file WAR (deployment con il Tomcat Web Manager).
- Introduzione a JSP.
- Introduzione a JDBC.
- Un esempio complesso con JSP: costruzione di un front end per un negozio virtuale.
- Introduzione ai CMS. Esercizi con Zope
e Plone.
- Altre tecniche lato server: templates,
MVC, web services. Esercizi in PHP.
- Introduzione a Java 2 Enterprise Edition
ed alle servlet.
- Tomcat (installazione, struttura delle
directory, file di configurazione, utilizzo),
esempi di servlet (dalla stesura del codice
sorgente al dispiegamento sul server).
131
programmi - TWM triennale
LABORATORIO DI
TECNOLOGIE WEB
Docente
Prof. Vito Roberto
Crediti
4
Programma
Oggetto del corso sono i linguaggi di
annotazione (markup): SGML, HTML,
XML. Obiettivi del corso sono: acquisire
familiarità con tali linguaggi, con i browser e con strumenti software per la redazione assistita (authoring) di documenti
su web; acquisire maggiore padronanza
di alcuni degli argomenti discussi nel
corso di Tecnologie web. Gli argomenti
principali trattati durante il corso sono i
seguenti: la documentazione in rete sui
linguaggi di markup; linguaggi di markup
e loro evoluzione dalla loro formulazione
originaria (SGML); sintassi HTML; redazione di documenti ipertestuali con
HTML; i browser; strumenti di redazione
assistita di pagine HTML più diffusi sul
mercato; il linguaggio XML e le evoluzioni recenti. Dopo aver superato l’esame lo
studente deve essere in grado di: utilizzare bene HTML, browsers e almeno uno
strumento di redazione di pagine web;
conoscere ed utilizzare XML.
MATEMATICA DISCRETA
Docente
Prof. Giovanni Panti
Crediti
6
Finalità del corso
Fornire gli strumenti fondamentali di
matematica di base, algebra e algebra
lineare. Abituare alla formalizzazione e al
rigore logico. Fornire un vocabolario
matematico corretto e preciso.
Programma
Monoidi, gruppi, sottogruppi normali e
omomorfismi. Gruppi di permutazioni.
Anelli, ideali, polinomi. Domini Euclidei
e algoritmo di Euclide. Spazi vettoriali,
basi, applicazioni lineari. Sistemi di equazioni lineari, determinante, autovalori e
autovettori.
Modalità d’esame
Prova scritta ed eventuale esame orale.
Bibliografia
Vedere http://www.dimi.uniud.it/
~panti/didattica/MD/programma_MD.h
tml
MATEMATICA DI BASE
Docente
Prof. Giovanna D’Agostino
Crediti
3
Programma
- Insiemi, funzioni e relazioni.
- Numeri naturali: principio d’induzione,
divisibilità e numeri primi, algoritmo di
euclide. Metodi dimostrativi: ragionamento per assurdo, dimostrazione per
casi, contronominale. Equivalenze e partizioni, aritmetica modulo n, congruenze.
- Il sistema crittografico RSA.
- Cardinalità di insiemi.
- Ordinamenti.
- Matrici.
132
Bibliografia
Viene utilizzato lo stesso testo del corso
di Matematica Discreta, vedi
http://www.dimi.uniud.it/~panti/didattica/MD/programma_MD.html
PROGETTO DI SITI E PORTALI WEB
Docente
Dott. Giorgio Brajnik
Crediti
6
Pagina del corso
www.dimi.uniud.it/giorgio/dida/psw/ps
w.html
Finalità del corso
Se è facile convincersi che la nostra sia
una società dell’informazione, meno facile è controllare la crescente complessità
delle attività di acquisizione, organizzazione ed accesso all’informazione. Infatti
gli sviluppi della tecnologia informatica e
dei flussi dell’informazione sono fenomeni che si alimentano vicendevolmente
e che portano l’uomo ad interagire con
ambienti virtuali la cui complessità è in
rapida crescita.
Il corso ha lo scopo di investigare gli
aspetti informatici su cui si basano l’organizzazione e l’accesso all’informazione.
Nel contesto di siti e applicazioni web: (1)
comprendere i concetti di architettura
dell’informazione e di struttura e modelli
dell’interazione (sapere cosa sono, come
li si definisce, costruisce, analizza, e valuta); (2) saper valutare l’usabilità e accessibilità di un sito web (sia di aspetti concettuali che tecnici); (3) conoscere gli aspetti
principali legati alle fasi di analisi e sviluppo di un sistema informativo complesso; (4) acquisire una conoscenza di
programmi - TWM triennale
base sulle tecnologie sottostanti il web.
Non è un corso su HTML, né Dreamweaver, Flash o JSF. I quattro punti evidenziati sopra sono relativamente stabili
rispetto all’evolvere della tecnologia, e
quelli più difficili da sviluppare nel
mondo del lavoro. Per questa ragione il
corso si concentra su di essi, piuttosto che
su specifiche tecnologie.
Programma
- Processi informativi e sistemi informativi; scopo di un processo informativo; la
persuasione, la centralità dell’utente;
- natura di un sistema informativo: struttura conversazionale, contenuto, presentazione; tipologie di siti web; tipologie di
motori di ricerca;
- architettura informativa, struttura
dell’interazione;
- concetti di base dell’interazione: azione,
gesto, modalità, obiettivo, compito, processo, attività, scenario; fenomeni e
modelli dell’interazione: apprendimento
esplorativo, il ciclo dell’interazione;
- accessibilità e usabilità: concetti, linee
guida, tecnologie assistive, esempi, la
normativa Stanca;
- le indagini di accessibilità e usabilità:
linee guida, metodi (user testing, heuristic evaluation, heuristic walkthrough);
metriche, strumenti; stesura dei rapporti;
- user-centered design: fasi, problemi,
metodi per l’analisi e lo sviluppo di sistemi basati su web: definizione del problema, casi d’uso, modelli dei compiti;
l’impiego dei casi d’uso per la stesura dei
requisiti; documenti di studio di fattibilità, analisi competitiva; tecniche di acquisizione e raccolta delle informazioni.
Bibliografia
- G. BRAJNIK, E. TOPPANO, Creare siti web
multimediali, Pearson Education, Addison-Wesley, 2007.
133
programmi - TWM triennale
- R. P OLILLO , Plasmare il web, Apogeo,
2006 (soprattutto i capitoli da 3 a 10).
- J. THATCHER et al., Web Accessibility: Web
Standards and Regulatory Compliance,
FriendsofEd, 2006 (capitoli da 4 a 15).
PROGRAMMAZIONE E
LABORATORIO
Docenti
Prof. Stefano Mizzaro
Dott. Paolo Coppola
Crediti
6
Finalità del corso
Si vogliono introdurre le nozioni di base
della programmazione: i concetti di algoritmo, programma e linguaggio di programmazione, la scrittura di programmi,
l’uso delle API di un linguaggio. Lo strumento usato è il linguaggio di programmazione Java.
Programma
- La programmazione strutturata. I mattoni di base di un programma Java (e
della quasi totalità dei linguaggi di programmazione): variabili, tipi, espressioni, strutture di controllo (sequenza, selezione, iterazione), array, metodi, ricorsione.
- Tipi di dati astratti e occultamento delle
informazioni. Come costruire programmi più grandi e complicati, ma comunque modificabili, estendibili, comprensibili, ecc.: il concetto di Tipo di Dato
Astratto (TDA) e i principi dell’incapsulamento e dell’occultamento delle informazioni.
- I fondamenti della programmazione
orientata agli oggetti (OO). La programmazione OO come un’evoluzione dai
TDA. I concetti di: oggetti, classi, istanze,
scambio messaggi, eredità e polimorfi-
smo (cenni). Alcuni aspetti specifici della
programmazione OO in Java: classi
astratte, interfacce, package.
- Le API (Application Programming
Interface) del Java. Le ‘librerie’ da usare
per scrivere programmi non banali: per la
gestione dei file, per la costruzione di
interfacce utente grafiche, per implementare applet.
- Teorie della computabilità e della complessità (cenni). I concetti di funzione
computabile (ovvero: che cosa può fare
un programma?) e di complessità computazionale (ovvero: come valutare
l’efficienza di un programma, in termini di velocità di esecuzione, in modo
teorico).
Modalità d’esame
Scritto (o prove di accertamento durante
l’anno), progetto e orale.
Bibliografia
Il testo principale su cui si basano quasi
tutte le lezioni teoriche è:
- S. MIZZARO, Introduzione alla programmazione con il linguaggio Java, Franco
Angeli, Milano, terza edizione, 2001.
ISBN 88-464-1696-1.
Per le esercitazioni di laboratorio ci si
baserà su:
- P. COPPOLA, S. MIZZARO, Laboratorio di
programmazione in Java, Apogeo, 2004.
ISBN: 88-503-2145-7.
- A lezione verrà segnalato o fornito altro
materiale (lucidi, pagine Web, dispense,
altri testi consigliati).
PROGRAMMAZIONE ORIENTATA
AGLI OGGETTI
Docente
Prof. Vitaliano Milanese
Crediti
6
134
programmi - TWM triennale
Finalità del corso
Il corso di Programmazione Orientata
agli Oggetti (OOP) intende affrontare le
problematiche più significative del paradigma ad oggetti inteso quale estensione
e superamento del paradigma imperativo. Come tale, il corso verterà principalmente sugli aspetti seguenti: confronto
tra lo sviluppo di programmi imperativi e
la progettazione di applicazioni basate su
oggetti; approfondimento degli aspetti
tipici della OOP (classi, oggetti, metodi,
messaggi, ereditarietà, polimorfismo);
analisi delle modalità di interazione con
l’ambiente operativo secondo il modello
di gestione degli eventi (operazioni di
I/O, eccezioni, multithreading, concorrenza); generazione di interfacce grafiche; costruzione di applet per applicazioni in rete. Linguaggio di riferimento:
Java2.
Bibliografia
- B. E CKEL , Thinking in Java, Apogeo,
2003.
- S. MAZZANTI, V. MILANESE, Programmazione di applicazioni grafiche in Java, Apogeo, 2006.
PSICOLOGIA DELLA
COMUNICAZIONE
Docente
Dott. Silvia Gabrielli
Crediti
6
Finalità del corso
Il corso si articola in tre blocchi di lezioni:
la psicologia generale (che presenta un
quadro introduttivo e culturale su cui
costruire le conoscenze successive), la
comunicazione e la metodologia della
ricerca (per poter verificare in modo
oggettivo qualsiasi ipotesi bisogna saper
condurre una ricerca in modo corretto e
valido).
Il corso ha un valore formativo con un
duplice obiettivo, generale e specifico. In
senso ampio, ci si propone di avvicinare
gli studenti alla psicologia in quanto
scienza che studia l’uomo, le sue attività,
i suoi vissuti, il suo mondo interiore e
sociale, i processi che sottostanno al suo
comportamento, in modo da ampliare la
cultura di base riguardo ad aspetti della
vita quotidiana. In modo specifico, il
corso ha lo scopo di far acquisire un insieme di conoscenze psicologiche che saranno utili alle attività future degli studenti
(es., percezione di immagini, ruolo delle
emozioni, corretto utilizzo della comunicazione nel proprio campo per conoscerne potenzialità e limiti), e di far acquisire
un metodo scientifico nella conduzione
di esperimenti per evitare errori ed ottenere risultati validi.
Programma
Psicologia Generale
- Cenni sulla percezione: assenza e presenza fenomenica; l’organizzazione figura-sfondo; la costanza di grandezza e
forma; spazio, distanza e movimento;
influenze sulla percezione.
- La coscienza e l’attenzione.
- L’apprendimento e la memoria: condizionamento classico ed operante;
l’apprendimento verbale; modelli di
memoria.
- Il pensiero: la formazione dei concetti; la
soluzione dei problemi; la creatività; il
pensiero prevenuto e il pregiudizio.
- Le motivazioni e le emozioni.
Comunicazione
- I modelli della comunicazione.
- Il processo di comunicazione.
- La comunicazione non verbale.
- La comunicazione persuasiva.
- La captologia.
Metodologia della Ricerca
- Differenze tra senso comune e scienza.
programmi - TWM triennale
- Come si fa una ricerca? Fasi operative.
- Il campionamento.
- Disegni di ricerca: sperimentali, quasisperimentali, presperimentali, correlazionali.
- Validità interna ed esterna di una ricerca.
Modalità d’esame
L’esame è costituito da una prova scritta.
Bibliografia
- L. ANOLLI, P. LEGRANZI, Psicologia Generale, Il Mulino, 2001. Capitolo 1: sottoparagrafi 1.1 e 1.2 (pag. 9-13). Capitolo 2:
tutto (pag. 47-75). Capitolo 3: paragrafi 1 e
2 (pag. 77-86). Capitolo 4: paragrafi 1 e 2
(pag. 103-133). Capitolo 5: tutto (pag. 137166). Capitolo 6: tutto (pag. 169-202).
Capitolo 7: tutto (pag. 203-230). Capitolo
8: paragrafi 1, 2, 3, 4 (pag. 233-261).
- D.H. MCBURNEY, Metodologia della ricerca in psicologia, Il Mulino, 1986. Capitoli
completi: 3, 4, 5, 6, 7, 8, 10.
- R. C IALDINI , Le armi della persuasione,
Giunti, 2005.
RETI DI CALCOLATORI
Docente
Prof. Elio Toppano
Crediti
6
Finalità del corso
L’obiettivo del corso è quello di introdurre i concetti fondamentali delle moderne
reti di calcolatori e fornire allo studente le
necessarie conoscenze per affrontare
l’analisi e lo studio di una rete distribuita
di calcolatori. In particolare, saranno presentate le caratteristiche generali delle
reti, la loro topologia, l’architettura ed i
principali protocolli utilizzati per la trasmissione delle informazioni tra calcolatori.
135
Programma
- Introduzione alle reti di calcolatori.
Scopi, applicazioni, evoluzione storica,
caratteristiche e struttura a livelli, tipologie di rete, architetture di rete, stratificazioni, tipi e primitive di servizio, protocolli di rete, controllo di flusso e controllo
di errore, messaggi e pacchetti, strategie
di commutazione (circuito e pacchetto),
indirizzamento, instradamento ed interconnessione.
- Principali componenti di una rete e tecniche di trasmissione dati. Mezzi trasmissivi elettrici e ottici, banda di un
segnale, capacità di canale, I e II Teorema
di Nyquist, Teorema di Shannon, attenuazione e distorsione, cenni alla trasmissione dati analogica e alla trasmissione dati digitale, principali componenti di
una rete (modem, multiplexer, bridge,
switch, router).
- Il modello ISO/OSI. Architettura, servizi e protocolli. Il livello fisico. Il livello
datalink. Protocolli per il controllo di flusso (Stop&amp;Wait, Go-Back-N, Sliding
Window) e per il controllo di errore (controllo di parità, codici CRC). Calcolo
dell’efficienza dei protocolli di livello
datalink. Protocollo HDLC.
- Il livello di rete. Tecniche di instradamento (routing by network, address label
swapping, source routing), architettura di
un router e tabelle di instradamento,
algoritmi di routing statico (fixed directory routing, flooding e selective flooding)
e dinamico (distance vector e link state). Il
protocollo IP, formato del pacchetto IP e
indirizzamento IP, classi di indirizzi, sottoreti e netmask. Protocolli ARP, IGP,
RIP, OSPF, BGP. Protocollo Ipv6, formato dei pacchetti, header opzionali. Protocollo Network Address Translation
(NAT).
- Il livello di trasporto. Servizi ed indirizzi
del livello di trasporto, creazione, gestione e chiusura di una connessione. Il problema delle due armate. Protocollo Hand-
136
Shake a tre vie. Il livello di trasporto in
Internet: i protocolli UPD (User datagram protocol) e TCP (Transport control
protocol).
- Il livello delle applicazioni: Applicazioni
di Rete: Domain Name Server (DSN),
Simple Mail Transfer Protocol (SMTP),
Simple Network Management Protocol
(SNMP), la posta elettronica, telnet, file
transfer protocol (FTP).
- Progetto topologico di una rete di calcolatori. Progettazione topologica, cenni
alla teoria dei grafi, matrice di traffico,
matrice di costo e assegnazione di flusso,
affidabilità di una rete, analisi di connettività, reti di flusso, taglio minimo e capacità del taglio in una rete, algoritmo di
Ford-Fulkerson, flusso massimo, connettività d’arco, percorsi arco-disgiunti, connettività di nodo, esempi.
- Analisi delle prestazioni di una rete di
calcolatori Cenni alla teoria delle code,
definizione di Kendall, sistemi a nascita e
morte, catene di Markov, intensità del
traffico, approssimazione di indipendenza di Kleinrock, numero medio di pacchetti in una rete, ritardo medio di pacchetto, Teorema di Little, esempi ed esercizi.
• Approfondimenti. Reti ISDN e ISDN a
larga banda. Reti ATM.
Modalità d’esame
L’esame si compone di una prova scritta e
di una prova orale. La prova scritta richiede di svolgere esercizi inerenti gli argomenti del corso. La prova orale consiste
nella discussione di alcuni degli argomenti trattati a lezione.
Bibliografia
Testo consigliato:
- A.S. T ANEMBAUM , Computer Networks,
quarta edizione, Addison-Wesley, pubblicato in Italia da Pearson Education Italia,
2003.
Testi di approfondimento:
programmi - TWM triennale
- J. KUROSE, K. ROSS, Internet e Reti di Calcolatori, McGraw-Hill, seconda edizione,
2003.
- D. COMER, Internetworking con TCP/IP,
Addison-Wesley, pubblicato in Italia da
Pearson Education Italia, 2002.
- M. BALDI, P. NICOLETTI, Internetworking,
McGraw-Hill, 1999.
- R. ADINOLFI, Reti di Computer, seconda
edizione, McGraw-Hill, 1999.
- F. HALSALL, Reti di Calcolatori e Sistemi
Aperti, quarta edizione, Addison Wesley,
1998.
SISTEMI OPERATIVI
Docente
Dott. Giorgio Brajnik
Crediti
9
Pagina del corso
www.dimi.uniud.it/giorgio/dida/so/so.h
tml
Programma
Scopo e contenuti: i sistemi operativi
sono parte essenziale di un sistema di calcolo. È pertanto necessario che uno studente di tecnologie web possieda le basi
per comprendere le principali problematiche relative all’efficace utilizzo (da utente, da progettista, da programmatore, da
amministratore di rete) di un sistema
operativo moderno. Allo scopo di fornire
tali basi, durante il corso verranno discussi alcuni concetti fondamentali relativi ai
sistemi operativi e alle loro funzionalità
primarie (gestione dei processori, della
memoria e dei dispositivi di
ingresso/uscita). Inoltre, data l’importanza che applicazioni concorrenti e distribuite hanno nell’ambito del web, un
moderno informatico non può non conoscere tecniche di programmazione con-
programmi - TWM triennale
corrente, le quali sono strettamente correlate alle funzionalità del sistema operativo. Il corso tratterrà tale argomento discutendo i principi di base e le tecniche più
importanti per la realizzazione di applicazioni concorrenti in Java legate al web.
Verrà anche diffusamente trattato (più di
metà delle lezioni) il compito dell’amministratore del sistema, nel contesto di un
sistema GNU/Linux, coprendo in dettaglio le attività di installazione ed aggiornamento del sistema, l’uso della shell, la
configurazione, gestione e monitoraggio
dei servizi di rete, lo svolgimento dei
backup, la gestione della sicurezza del
sistema.
Articolazione: il corso è articolato in 80
ore di lezione.
Attività pratica: il corso accessorio di
Laboratorio di Sistemi Operativi offre
l’opportunità allo studente di mettere in
pratica le nozioni apprese e di verificarne
la comprensione. Inoltre tale corso offrirà
le nozioni di base relative all’uso di linguaggi di scripting e relative all’amministrazione di un sistema Linux. Per ulteriori dettagli consultare www.dimi.
uniud.it/giorgio/dida/so/so.html
SISTEMI MULTIMEDIALI
Docente
Prof. Elio Toppano
Crediti
6
Finalità del corso
Il corso intende fornire un insieme di
conoscenze di base - concettuali, procedurali e metodologiche - finalizzate sia
all’analisi e valutazione di prodotti multimediali sia alla loro progettazione, realizzazione e distribuzione. Particolare attenzione viene rivolta allo studio delle caratteristiche dei singoli media - testo, imma-
137
gini audio e video - e alle problematiche
che emergono dalla loro integrazione.
Accanto agli aspetti più propriamente tecnici e metodologici si affrontano anche
tematiche relative agli effetti pragmatici e
sociali dell’uso dei multimedia.
Programma
Processi informativi e siti web. Elementi
di semiotica applicata ai siti web. Modelli
concettuali di media, multimedia e ipermedia. Testi alfabetici. La scrittura su
web. Immagini digitali: grafica pittorica e
vettoriale. Elaborazione delle immagini
bit mapped. Colore: caratteristiche del
colore, spazi colore, gestione del colore.
Tecniche di compressione di immagini
(con e senza perdite). Formati di archiviazione di testi e immagini. Cenni di
semiotica visiva. Suoni: caratteristiche
fisiche e percettive. Rappresentazione
digitale di suoni. Supporti e formati di
archiviazione dei suoni. Elaborazione dei
suoni. Psicologia dell’udito: mascheramento e segregazione del suono. Compressione audio. Audio e musica: lo standard MIDI. Sintesi del suono. Spazializzazione e modellizzazione di ambienti
acustici. Uso del suono nei prodotti multimediali. Video analogico e digitale. Formati dei segnali video. Compressione
video. La famiglia degli standard MPEGx. Il processo di produzione video. Progettazione e integrazione di media. Progettazione orientata all’utente. Usabilità e
accessibilità dei prodotti multimediali.
Metodologie di progetto di ipermedia. Lo
standard ISO 14915. Aspetti legali legati
al multimedia: la legge sul diritto d’autore. Video e audio streaming. Architetture
per lo streaming. Protocolli per lo streaming. Applicazioni dei multimedia con
particolare riguardo al campo dell’e-learning.
Modalità d’esame
L’esame consiste in una prova scritta e
138
programmi - TWM triennale
nella discussione orale di un progetto realizzato in SMIL o VRML.
dovranno essere superate nello stesso
appello.
Bibliografia
Oltre ai materiali distribuiti a lezione si
consigliano i seguenti testi:
- N.P. CHAPMAN, J.CHAPMAN, Digital Multimedia, John Wiley & Sons, 2000.
- L. T OSCHI (a cura di), Il linguaggio dei
nuovi media, Apogeo, 2002.
Bibliografia
- L. PACE, A. SALVAN, Introduzione alla Statistica (I Statistica Descrittiva), Cedam,
Padova, 1996.
- G. CICCHITELLI, Probabilità e Statistica,
Maggioli Editore, 1984.
- Appunti delle lezioni.
STATISTICA APPLICATA
STORIA DELL’INFORMATICA
Docente
Prof. Vidoni Paolo
Crediti
6
Finalità del corso
L’obiettivo del corso è introdurre lo studente a quelli che sono i concetti fondamentali della Statistica descrittiva e inferenziale, quale strumentazione di base
per l’analisi dei dati e lo studio dei fenomeni aleatori. Tali nozioni verranno presentate sottolineando l’ambito delle
applicazioni pur senza tralasciare gli
aspetti formali.
Programma
- Statistica descrittiva: Caratteri statistici;
Serie, seriazioni e distribuzioni di frequenza; Indici di posizione e di variabilità.
- Calcolo delle Probabilità: Probabilità elementare; Variabili casuali; Modelli probabilistici; Variabili casuali multivariate e
convergenza.
- Inferenza statistica: Stima puntuale;
Intervalli di confidenza; Verifica di ipotesi; Cenni sull’Analisi della varianza.
Modalità d’esame
L’esame consiste in una prova scritta
seguita, per i sufficienti, da una prova
orale. La prova scritta e la prova orale
Docenti
Dott. Corrado Bonfanti
Dott. Paolo Giangrandi
Crediti
3
Finalità del corso
Il corso fornisce una panoramica generale sulle tappe fondamentali che hanno
caratterizzato la storia degli strumenti di
calcolo, approfondendo in particolare
l’evoluzione delle tecnologie del computer elettronico moderno. Si evidenzia
come gli attuali computer non siano il
frutto del lavoro di un singolo inventore e
di una singola idea geniale, bensì il risultato dei contributi di moltissimi studiosi e
sperimentatori appartenenti a diverse
discipline; contributi che, nelle varie epoche, hanno dato luogo a diversi filoni concettuali e tecnologici, talvolta complementari e altre volte divergenti.
Programma
- Gli antichi strumenti di calcolo. L’era dei
calcolatori meccanici: calcolatori analogici e calcolatori digitali.
- Macchine programmabili: automi meccanici, telaio Jacquard, strumenti musicali automatici, Charles Babbage.
- I sistemi meccanografici a schede perforate.
- Le radici concettuali del computer: dal
139
programmi - TWM triennale
programma di Leibniz alle macchine di
Turino.
- I pionieri del calcolo elettronico, l’architettura di von Neumann e i primi calcolatori a programma memorizzato.
- L’evoluzione delle tecnologie: dal mainframe al personal computer.
- Gli ambienti applicativi e l’evoluzione
del software.
- Oltre il calcolo scientifico: sviluppo
dell’industria e del mercato in uno scenario mondiale.
- Reti telematiche: dalle origini a Internet.
- L’informatica in Italia.
Bibliografia
- Appunti delle lezioni.
- M.R. WILLIAMS, A History of Computing
Technology, Prentice-Hall, 1985.
- M. D A V I S , Il calcolatore universale,
Adelphi, 2003.
- C. B ONFANTI , Mezzo secolo di futuro.
L’informatica
italiana
compie
cinquant’anni, Mondo Digitale, n.3/2004.
Durante il corso verranno forniti anche
gli indirizzi di diversi siti web dove sono
reperibili numerosi documenti multimediali sulla storia dell’informatica.
TECNOLOGIE WEB
Docente
Prof. Vito Roberto
Crediti
6
Programma
Il corso si propone di presentare agli studenti il World Wide Web, le tecnologie
informatiche e le implicazioni sociali che
da esso traggono origine: una panoramica generale, corredata da esercitazioni di
laboratorio, che anticipa i contenuti di
corsi successivi e inserisce lo studente
nelle problematiche dell’intero corso di
laurea. Vengono introdotti i concetti fondamentali delle reti di calcolatori: protocolli, formati, linguaggi, tecnologie, con
enfasi sull’HyperText Transfer Protocol
ed il linguaggio HTML. La sicurezza delle
reti viene affrontata tramite elementi di
crittografia e tecniche di autenticazione.
Le tecnologie multimediali vengono
introdotte attraverso formati e standard di
compressione e di rappresentazione dei
dati audio, video, immagini, di grafica ed
animazione. Vengono trattati aspetti
dell’interattività sul web (linguaggi di
script) e dell’interazione uomo-macchina
nel progetto di pagine web e di interfacce
grafiche basate su web. Concludono il
corso problematiche di interesse sociale:
la privatezza dei dati, la proprietà intellettuale su Internet e le implicazioni internazionali ed interculturali.
140
programmi - matematica triennale
CORSO DI LAUREA
IN MATEMATICA
ALGEBRA 1
ALGEBRA 2
Docente
Dott. Maria Silvia Lucido
Docente
Prof. Dikran Dikranjan
Crediti
6
Crediti
6
Finalità del corso
Lo scopo dei corsi di Algebra 1 e 2 è di sviluppare le capacità algebriche e di ragionamento dello studente. Verranno introdotte le strutture algebriche fondamentali, gruppi, anelli e campi, sottolineando le
loro connessioni con le altre aree della
matematica.
Finalità del corso
Lo scopo dei corsi di Algebra 1 e 2 è di sviluppare le capacità algebriche e di ragionamento dello studente. Verranno introdotte le strutture algebriche fondamentali, gruppi, anelli e campi, sottolineando le
loro connessioni con le altre aree della
matematica.
Programma
- Prerequisiti su insiemi e operazioni tra
insiemi.
- I numeri complessi.
- I numeri interi: congruenze.
- Prime nozioni di teoria dei gruppi: gruppi e sottogruppi.
- Classi laterali di un sottogruppo, il teorema di Lagrange.
- Sottogruppi normali, gruppo quoziente.
- Omomorfismi, i teoremi di omomorfismo, il teorema di corrispondenza.
- Gruppi ciclici, periodo di un elemento,
Teorema di struttura dei gruppi abeliani
finiti (senza dimostrazione).
- Prodotti diretti.
- Gruppi di permutazioni: decomposizione in cicli disgiunti.
- Gruppi di automorfismi: coniugio, il
gruppo di automorfismi di un gruppo
ciclico.
Bibliografia
- Appunti del docente.
Programma
- Prime nozioni di teoria degli anelli: sottoanelli e ideali.
- Congruenze e anello quoziente.
- Omomorfismi e il teorema dell’omomorfismo.
- Prodotti diretti e anelli di matrici.
- Ideali massimali e ideali primi di un
anello commutativo.
- Anelli di polinomi, algoritmo della divisione.
- Domini d’integrità: elementi irreducibili e primi.
- Domini di fattorizzazione unica, domini
euclidei e domini di ideali principali.
- Campo di quozienti di un dominio
d’integrità.
- Teoria dei campi - prime nozioni, radici
dell’unità.
- Anelli di polinomi su un campo: radici,
teorema di Ruffini.
- Polinomi irriducibili su un campo, fattorizzazione, criterio di Eisenstein.
- Campi algebricamente chiusi, numeri
reali e complessi, polinomi irriducibili su
R e su C.
Bibliografia
- Appunti del docente.
141
programmi - matematica triennale
ALGEBRA 3
Docente
Prof. Mario Mainardis
Crediti
6
Programma
- Azioni di gruppi, di anelli e di K-algebre.
- Azioni di gruppi: G-insiemi, sotto-Ginsiemi, omomorfismi, quozienti, orbite,
equazione delle orbite, azioni transitive e
primitive, applicazioni: Teoremi di
Sylow, centro di un p-gruppo finito, Teorema di Schur-Zassenhaus, semplicità
dei gruppi speciali lineari proiettivi.
- Azioni di Anelli: R-moduli, sottomoduli,
omomorfismi, quozienti, moduli ciclici,
moduli irriducibili, prodotto tensoriale di
moduli, teorema di struttura dei moduli
finitamente generati su domini a ideali
principali, applicazioni: forma canonica
razionale, forma di Jordan delle matrici.
- Azioni di algebre: A-moduli, sottomoduli, omomorfismi, quozienti, moduli ciclici, moduli irriducibili, Teorema di Wedderburn-Artin, cenni sulle rappresentazioni lineari di gruppi.
Bibliografia
- M. MAINARDIS, Appunti di teoria dei gruppi, file pdf scaricabile dall’indirizzo:
http://users.dimi.uniud.it/~mario.mainardis/classnotes.htm
- N. JACOBSON, Basic Algebra 1.
- I.N. HERSTEIN, Algebra.
- M. ASCHBACHER, Finite Groups.
- J. ALPERIN, R.B. BELL, Groups and Representations.
ALGEBRA 4
Docente
Dott. Maria Silvia Lucido
Crediti
6
Finalità del corso
La classificazione delle algebre di Lie
semisemplici in un campo algebricamente chiuso e di caratteristica 0.
Programma
Definizioni, algebre di matrici, gl(n,K),
sl(n, K), u(n,k), t(n,K). Algebre ortogonali
e simplettiche. Algebre nilpotenti. Teorema di Engel. Algebre risolubili. Teorema
di Lie. Criterio di Kartan. Forma di KIlling. Algebre semisemplici. Teorema di
Weyl. Decomposizione in spazi di radici.
Rappresentazioni irriducibili di sl(2,K).
Proprietà razionali e integrali. Sistemi di
radici e loro classificazione.
Prerequisiti
Geometria 1 e 2; Algebra 1 e 2.
ALGEBRA 5
Docente
Prof. Giovanni Panti
Crediti
6
Finalità del corso
Introdurre le nozioni fondamentali di
Algebra Commutativa e di Teoria delle
Categorie.
Programma
Anelli commutativi e ideali. Moduli.
Localizzazione. Decomposizione primaria. Categorie e funtori. Trasformazioni
naturali.
Modalità d’esame
Esame orale.
Bibliografia
- A TIYAH , M AC D ONALD , Introduction to
142
programmi - matematica triennale
Commutative Algebra, Addison Wesley.
- ZARISKI, SAMUEL, Commutative Algebra.
Graduate Texts in Mathematics, n. 28,
Springer.
- M AC L ANE , Categories for the Working
Mathematician. Graduate Texts in Mathematics, n. 5, Springer.
ANALISI MATEMATICA 1
Docente
Dott. Paolo Baiti
Crediti
6
Finalità del corso
Lo scopo del corso è introdurre gli studenti al metodo dell’Analisi Matematica
fornendo i primi concetti della disciplina
e dando le prime applicazioni.
Finalità del corso
Fornire allo studente gli elementi del calcolo differenziale ed integrale in una
variabile e della teoria delle serie numeriche, nonché la capacità di eseguire i calcoli relativi.
Programma
Teoremi conclusivi su continuità ed
uniforme continuità. Derivazione e calcolo differenziale in una variabile con applicazioni (Hopital,Taylor, studio di funzioni). Calcolo integrale in una variabile.
Serie numeriche.
Modalità d’esame
Scritto ed orale.
Bibliografia
- C. CITRINI, Analisi matematica 1, Boringhieri.
ANALISI MATEMATICA 3
Programma
Preliminari. Relazioni e funzioni. Elementi di topologia. Limiti di successioni.
Limiti di funzioni e continuità.
Docente
Dott. Maurizio Trombetta
Modalità d’esame
Scritto e orale.
Crediti
6
Bibliografia
- ACERBI, BUTTAZZO, Primo corso di Analisi
Matematica, Pitagora.
- CITRINI, Analisi Matematica 1, Boringhieri.
- Dispense a cura del docente.
Programma
Spazi metrici. Lo spazio Rn: Non
ordinabilità ordine parziale; intervalli;
Teorema di Cantor. La distanza euclidea e
sue proprietà; intorni di un punto e loro
proprietà; insiemi aperti; il caso delle
palle aperte. Punti di accumulazione e
Teorema di Bolzano-Weierstrass. Punti
aderenti, chiusura, insiemi chiusi. Applicazioni da Rn a Rm: dominio, componenti. Definizione di limite, continuità.
Rienunciazione dei principali teoremi sui
limiti e la continuità. Struttura lineare di
Rn: la norma euclidea e sue proprietà; il
prodotto scalare e sue proprietà. La disuguaglianza di Cauchy-Schwarz. Esempi di
ANALISI MATEMATICA 2
Docente
Prof. Carlo Cecchini
Crediti
6
143
programmi - matematica triennale
altre distanze e la definizione di spazio
metrico. Insiemi aperti e insiemi chiusi;
punti aderenti e punti di accumulazione;
unione e intersezione di aperti e chiusi.
Frontiera e sue proprietà. Applicazioni
fra spazi metrici; limiti e continuità.
Insiemi connessi per archi e per insiemi
e relative implicazioni. I connessi di R.
Teorema di connessione. Compattezza
sequenziale; legame con la proprietà di
Bolzano-Weierstrass. I compatti di Rn.
Teorema di compattezza. Continuità uniforme e Teorema di Heine. Condizione
di Cauchy e completezza. Completezza di
Rn. Spazi normati. Deducibilità di una
metrica da una norma. Spazi vettoriali
con prodotto scalare. Deducibilità di una
norma da un prodotto scalare (s.d.).
Cenno sugli spazi topologici. Definizione
a partire dagli intorni. Legame con gli
insiemi aperti. Gli assiomi di separazione
T0, T1 e T2. Esempi di spazi topologici.
Applicazioni fra spazi topologici. Limiti e
continuità. Caratterizzazione delle funzioni continue mediante le controimmagini di aperti e di chiusi. Successioni e
serie di funzioni. Successioni di funzioni.
Convergenza puntuale e uniforme. Il
Teorema di Cauchy. Teorema dei due
limiti; teoremi sulla continuità e sull’integrabilità della funzione limite. Convergenza uniforme e derivata. I Teoremi di
Weierstrass e di Dini. Il caso delle serie di
funzioni. I teoremi precedenti nel caso
delle serie di funzioni. Serie di potenze.
Lemma di Abel e sue conseguenze. Raggio, intervallo e insieme di convergenza
di una serie di potenze. Teorema di Abel.
Criteri del rapporto e della radice. Raggio
di convergenza della serie delle derivate.
Teoremi di derivabilità e integrabilità.
Sviluppabilità in serie di potenze. Criteri
di sviluppabilità. Sviluppi delle funzioni
elementari. Calcolo differenziali per funzioni di priabili. Campi scalari: derivate
parziali e direzionali. Derivate di ordine
superiore. Teorema di Schwarz. Esempi
di funzioni derivabili ma non continue.
La differenziabilità e sue conseguenze. La
matrice jacobiana; il gradiente. Il Teorema del differenziale totale. Campi vettoriali. Differenziabilità. Differenziabilità
della funzione composta. Formula del
valor medio. Campi scalari con gradiente
identicamente nullo. Il differenziale secondo per i campi scalari. La matrice hessiana e sua simmetria. La formula di Taylor. Funzioni implicite. Il Teorema di
Dini. Teorema di invertibilità locale.
Matrici simmetriche e forme quadratiche.
Teorema di Jacobi (s.d.). il caso n = 2.
Estremi liberi assoluti e relativi per i
campi scalari. Test delle derivate prime e
Test delle derivate seconde. Estremi vincolati. Il metodo dei moltiplicatori di
Lagrange.
Bibliografia
- Appunti del docente.
ANALISI MATEMATICA 4
Docente
Prof. Fabio Zanolin
Crediti
6
Finalità del corso
Fornire allo studente la nozione di misura e integrale di Lebesgue e introdurlo
allo studio delle equazioni differenziali.
Programma
- Misura e integrale di Lebesgue. Passaggio al limite e derivazione sotto il segno di
integrale. Teoremi di Fubini e calcolo
degli integrali. Cambiamento di variabile
negli integrali. Integrazione sulle superfici.
- Equazioni differenziali ordinarie. Equazioni del prim’ordine e problema di Cauchy. Equazioni non lineari a variabili
144
programmi - matematica triennale
separabili. Esistenza e unicità della soluzione del problema di Cauchy. Sistemi di
equazioni differenziali lineari. Equazioni
differenziali a coefficienti costanti. Vari
esempi di equazioni e sistemi di equazioni differenziali.
Modalità d’esame
Scritto e orale.
Bibliografia
- E. GIUSTI, Analisi Matematica 2, Boringhieri.
- Dispense a cura del docente.
ANALISI MATEMATICA 5
Docente
Prof. Gianluca Gorni
Crediti
6
Finalità del corso
Completare la formazione di base di Analisi Matematica nel settore delle equazioni
differenziali e delle forme differenziali.
Programma
Equazioni differenziali non lineari: soluzioni massimali, teoremi di esistenza e
unicità in grande, fuga dai compatti, criterio dell’asintoto, integrali primi. Integrazione alla Henstock- Kurzweil. Curve
parametriche. Curve rettificabili. Formula integrale per la lunghezza. Forme differenziali: integrazione su curve, forme
chiuse, forme esatte e localmente esatte,
omotopie.
Modalità d’esame
Una prova scritta di esercizi e una prova
orale di sola teoria.
Bibliografia
- G. DE MARCO, Analisi Due.
ANALISI MATEMATICA 6
Docente
Prof. Gianluca Gorni
Crediti
6
Finalità del corso
Introduzione all’Analisi Funzionale: definizione e studio dei principali spazi vettoriali normati di funzioni integrabili, e
degli spazi di Hilbert, con applicazione
alle serie di Fourier.
Programma
Integrazione astratta alla Lebesgue, spazi
L^p, spazi di Hilbert, serie di Fourier.
Modalità d’esame
Una prova scritta di esercizi e una prova
orale di sola teoria.
Bibliografia
Da decidere.
ANALISI NUMERICA 1
Docente
Prof. Dario Fasino
Crediti
6
Finalità del corso
L’analisi numerica si occupa dello studio
degli algoritmi, ovvero dei procedimenti
costruttivi, della matematica del continuo. Questo corso ha lo scopo di introdurre lo studente ad alcuni temi di base di
questa disciplina, enfatizzandone gli
aspetti formali, attraverso lo studio dei
principali algoritmi dell’algebra lineare
numerica, l’esposizione della teoria degli
errori e di alcune tecniche fondamentali
del calcolo scientifico. Le lezioni teoriche
145
programmi - matematica triennale
saranno affiancate da esempi computazionali. Al termine del corso lo studente
saprà analizzare e risolvere numericamente alcuni problemi della matematica
del continuo, stimare l’attendibilità dei
risultati e riconoscere i vincoli di precisione e di tempo imposti dalle risorse di calcolo.
Programma
Algebra lineare numerica: richiami di
algebra lineare, norme vettoriali e matriciali, prodotti scalari. Fattorizzazione di
Schur. Algoritmo di Gram-Schmidt.
Decomposizione spettrale e ai valori singolari. Risoluzione di sistemi lineari.
Metodi diretti. Fattorizzazione LU e sue
varianti; fattorizzazione QR. Teorema di
Rigal-Gaches. Metodi iterativi stazionari:
Iterazioni lineari, metodi di Richardson,
Jacobi, Gauss-Seidel. Risoluzione di problemi ai minimi quadrati discreti mediante equazioni normali, fattorizzazione QR
e decomposizione ai valori singolari. Problemi agli autovalori: Teoremi di Gershgorin e di Bauer-Fike, metodo delle
potenze e delle potenze inverse, iterazione QR. Teoria degli errori: errori assoluti
e relativi, errore inerente e algoritmico,
numero di condizionamento di un problema computazionale, numeri e operazioni di macchina, precisione di macchina, cancellazione catastrofica. Analisi
dell’errore algoritmico. Algoritmi stabili
in avanti, all’indietro, instabili. Risoluzione di equazioni e sistemi nonlineari.
Metodo di bisezione e delle secanti. Iterazioni funzionali. Teorema delle funzioni
contrattive. Metodi di Newton e di Newton-Raphson. Convergenza locale o globale. Ordine di convergenza di una successione. Ordine di convergenza dei principali metodi iterativi. Criteri di terminazione.
Modalità d’esame
Prova scritta e orale. La prova scritta potrà
essere sostituita da due prove di valutazione intermedia da svolgere durante il
corso.
Bibliografia
- E. TYRTYSHNIKOV, A Brief Introduction to
Numerica Analysis, Birkhauser, 1997.
- A. Q UARTERONI , R. S ACCO , F. S ALERI ,
Matematica Numerica, Springer, 2000.
ANALISI NUMERICA 2
Docente
Prof. Rossana Vermiglio
Crediti
6
Finalità del corso
Lo scopo del corso consiste nel fornire la
conoscenza dei metodi numerici fondamentali nell’ambito della teoria
dell’approssimazione, dell’integrazione e
differenziazione attraverso l’analisi delle
loro proprietà teoriche di base (stabilità,
accuratezza e complessità) e delle loro
prestazioni su esempi computazionali.
Nel corso verrà utilizzato il software
MATLAB sia per l’analisi critica dei risultati numerici ottenuti su esempi test sia
per la sperimentazione in laboratorio di
alcuni casi di studio.
Programma
Approssimazione di funzioni: interpolazione polinomiale, il problema della convergenza, interpolazione polinomiale a
tratti, splines, trigonometrica; splines
parametriche e curve di Bezier; approssimazione di funzioni: miglior approssimazione uniforme (teoria di Chebyshev)
e in spazi prehilbertiani (teoria di Fourier); polinomi ortogonali; integrazione
numerica; formule di Newton-Cotes, formule composite e adattive, le formule
gaussiane;la tecnica di estrapolazione di
146
programmi - matematica triennale
Richardon e l’integrazione di Romberg,
integrali singolari. Differenziazione
numerica: metodi alle differenze finite,
differenze finite compatte, la tecnica
pseudospettrale. Nelle esercitazioni, integrate con esperienze in laboratorio,
saranno presentati dei semplici casi di
studio di particolare interesse applicativo.
Modalità d’esame
Prova orale.
Bibliografia
- Appunti del docente.
- A. Q UARTERONI , R. S ACCO , F. S ALERI ,
Matematica Numerica, Springer Verlag
Italia, 2000.
- L.N. T REFETHEN , Spectral methods in
MATLAB, SIAM, 2000.
ARITMETICA
Docente
Prof. Pietro Corvaja
Crediti
6
Finalità del corso
Lo scopo del corso è fornire allo studente
gli strumenti necessari per affrontare il
Corso di Laurea in Matematica, dando le
prime nozioni sugli insiemi, sugli insiemi numerici e sul calcolo combinatorio.
Programma
- Insiemi e operazioni tra insiemi.
- Primi elementi di calcolo combinatorio
e permutazioni.
- I numeri naturali e l’induzione.
- I numeri interi e la loro aritmetica:
l’algoritmo della divisone con resto.
- Massimo comun divisore, numeri
primi, teorema fondamentale dell’aritmetica.
- I numeri complessi.
- I polinomi: la divisione euclidea tra polinomi.
Modalità d’esame
Scritto e orale.
Bibliografia
- B. S CIMEMI , Algebretta, Decibel, Zanichelli.
- Dispense.
COMUNICAZIONE EFFICACE
Docente
Prof. Angelo Marzollo
Crediti
1
Finalità del corso
Il corso (pari ad un credito formativo) è
mutuato da quello di Laboratorio di Tecniche di Comunicazione, e coincide con
le prime otto lezioni di quest’ultimo. Il
corso si prefigge di dotare gli studenti di
alcuni strumenti operativi essenziali
nell’ambito della comunicazione, tali da
facilitare il loro inserimento nel mondo
del lavoro.
Programma
Si analizzeranno le capacità comunicative individuali così come esse emergono
in contesti collettivi (ad esempio lettura e
presa di parola in pubblico) ed interpersonali (ad esempio preparazione ed esposizione del proprio curriculum vitae, incontri e colloqui di lavoro, ecc.). Questo consentirà di evidenziare i punti critici in tali
contesti comunicativi e di fornire elementi utili al loro superamento, grazie anche
all’intervento di esperti specifici.
Modalità d’esame
L’esame consisterà in una prova di comunicazione (scritta ed eventualmente
147
programmi - matematica triennale
anche orale) il più possibile aderente a
situazioni che lo studente dovrà affrontare nella sua vita lavorativa e sociale. Gli
studenti che superino l’esame di Laboratorio di Tecniche di Comunicazione, le
cui prime otto lezioni affrontano gli argomenti sopra descritti, sono esentati dal
sostenere separatamente l’esame di
Comunicazione Efficace, ottenendone
automaticamente l’idoneità.
Bibliografia
Data la brevità del corso e il suo carattere
nettamente operativo la frequenza è
necessaria per affrontare l’esame e non
può essere sostituita dalla semplice lettura di testi. Tuttavia, si indicheranno materiali aggiuntivi o integrativi agli studenti
che desiderino approfondire argomenti
specifici.
- Grafici di funzioni elementari.
- Funzioni esponenziali e logaritmiche.
- Richiami di trigonometria: coordinate
cartesiane e polari; funzioni trigonometriche; trigonometria elementare.
- Richiami di geometria analitica: punti,
rette, parabole, ellissi nel piano cartesiano; formule notevoli per alcuni poligoni
regolari; cenni di geometria solida.
Modalità d’esame
Il corso si conclude con un test scritto
facoltativo, allo scopo di rendere lo studente consapevole del livello delle sue
conoscenze di base.
Bibliografia
- E. A CERBI , G. B UTTAZZO , Matematica
preuniversitaria di base, Pitagora.
- M. TROMBETTA, Precorso di matematica,
Forum, Udine.
CORSO INTRODUTTIVO
Docente
Prof. Paolo Cragnolini
Finalità del corso
Questo corso, la cui frequenza è facoltativa, si svolge prima delle altre lezioni
dell’anno accademico e ha il duplice
scopo di ricapitolare alcune nozioni e
conoscenze elementari necessarie per
iniziare proficuamente gli studi universitari in Matematica e di colmare eventuali
lacune nella preparazione di base degli
studenti.
Programma
- Elementi di logica e di teoria degli insiemi; numeri interi, razionali, reali; potenze e polinomi; algebra elementare; equazioni di primo e secondo grado in una
variabile; sistemi lineari in due variabili;
disequazioni e sistemi di disequazioni in
una o due variabili.
- Equazioni e disequazioni con radicali.
FISICA 1
Docente
Prof. Furio Ercolessi
Crediti
6
Finalità del corso
Scopo del corso è di fornire gli elementi
di base della meccanica e della termodinamica. Durante il corso vengono presentati diversi esempi ed esercizi.
Programma
La misura dello spazio e del tempo; il
Sistema Internazionale. Scalari e vettori.
Cinematica: traiettoria, velocità e accelerazione, moti circolari, moti relativi.
Massa e forza: leggi di Newton, sistemi di
riferimento inerziali. Forze gravitazionali, normali, di tensione, elastiche, di attrito statico e dinamico. Energia cinetica,
lavoro, energia potenziale e conservazio-
148
programmi - matematica triennale
ne dell’energia. Centro di massa, quantità
di moto. Sistemi a massa variabile. Urti.
Rotazioni attorno ad un asse fisso:
momento di inerzia, momento della
forza, momento angolare, leggi di Newton in forma angolare. Rotolamento, precessione. Equilibrio statico. Oscillazioni:
moto armonico, pendolo. Fluidi: pressione, principi di Pascal e Archimede, equazioni di continuità e di Bernoulli. Termologia: temperatura, calore. Gas ideali e
teoria cinetica dei gas. Trasformazioni
termodinamiche, prima legge della termodinamica. Macchine termiche: postulati di Kelvin e di Clausius, ciclo e teorema di Carnot. L’entropia e la seconda
legge della termodinamica.
Programma
Forze in natura. Gravitazione. Elettromagnetismo. Onde ed onde elettromagnetiche in particolare. Cenni sulla relatività
speciale e sulla formulazione covariante
delle equazioni di Maxwell (facoltativo).
Modalità d’esame
Prova scritta con domande di teoria ed
esercizi; compiti per casa.
Bibliografia
- SERWAY, JEWETT, Principi di Fisica.
- HALLIDAY, RESNICK, WALZER, Fondamenti
di Fisica.
- Appunti di lezione.
Modalità d’esame
L’esame consta di una prova scritta e di
una orale.
Bibliografia
- D. HALLIDAY, R. RESNICK, J. WALKER, Fondamenti di Fisica, sesta edizione, Casa
Editrice Ambrosiana.
FISICA 2
Docente
Prof. Alessandro De Angelis
Crediti
6
Pagina del corso
http://www.fisica.uniud.it/~deangeli/fisi
ca2/corsonuovo.html
Finalità del corso
Illustrare i fondamenti dell’elettromagnetismo e della meccanica ondulatoria. Il
corso è indirizzato agli studenti di Matematica.
Prerequisiti
Nozioni di base dell’Analisi Matematica
(limiti, derivate, integrali); Fisica 1.
FISICA MATEMATICA
Docente
Dott. Stefano Ansoldi
Crediti
6
Finalità del corso
Introduzione alla Teoria della Relatività
(Speciale e Generale) dal punto di vista
delle Geometria Differenziale (con
un’introduzione di base alle teorie di
campo classiche in fisica).
Programma
- Concetti fondamentali in Teoria dei
Campi: dai sistemi discreti ai sistemi continui; il concetto di campo; densità di
Lagrangiana, Hamiltoniana, momento;
cenni di base alla formulazione Lagrangiana e Hamiltoniana di una teoria di
campo; cenni al calcolo delle variazioni in
più dimensioni.
- Complementi di Algebra: prodotto tensoriale di spazi vettoriali, il concetto di
tensore e di componenti di un tensore,
contrazione di tensori; prodotti scalari
pseudo-Euclidei, segnatura di una metri-
149
programmi - matematica triennale
ca, metriche Lorentziane, classificazione
di vettori: tipo tempo, tipo
spazio e tipo luce.
- Geometria Differenziale: complementi
(richiamo di concetti base di topologia,
fibrati vettoriali e sezioni di fibrati, partizioni differenziabili dell’unità, curve su
varietà, parentesi di Lie e loro proprietà);
tensori e campi di tensori su varietà; connessioni e derivata covariante; curvatura;
definizione del tensore di Riemann; relazione tra il tensore di Riemann e la derivata covariante seconda di un campo di
vettori; componenti del tensore di Riemann in una base di coordinate; proprietà di simmetria del tensore di Riemann; tensore di Ricci, scalare di Ricci;
curve auto-parallele e la mappa esponenziale su varietà; geometria Riemanniana
e Lorentziana; metriche Riemanniane/L
orentziane e loro esistenza.
- Relatività: Relatività Speciale, principio
di relatività e legge di propagazione della
luce nel vuoto, riflessione di Einstein sui
concetti di spazio e tempo, definizione
operativa di simultaneità, trasformazioni
di Lorentz ed il gruppo di Lorentz; Relatività Generale, sistemi inerziali e noninerziali, l’esperimento dell’ascensore di
Einstein; il principio di equivalenza; il
principio di covarianza generale; equazioni di Einstein nel vuoto e loro derivazione
da un principio variazionale, proprietà
delle equazioni di Einstein, significato
fisico del tensore metrico, proprietà di
conservazione in fisica classica ed in
Relatività Speciale, leggi di conservazione
e principio di covarianza generale, il tensore energia impulso e le equazioni di
Einstein in presenza di sorgenti.
Modalità d’esame
Orale (a scelta, anche a progetto).
Bibliografia
- Note delle lezioni preparate dal docente
(e disponibili anche on-line).
FISICA MODERNA
Docente
Prof. Alessandro De Angelis
Crediti
6
Pagina del corso
http://www.fisica.uniud.it/~deangeli/fis
mod/corsofismod.html
Finalità del corso
Introdurre la Fisica Quantistica e la Relatività. Il corso è indirizzato agli studenti
di Fisica Computazionale, Matematica,
Informatica e Ingegneria.
Prerequisiti
Fisica 1 e 2; Analisi applicata alle funzioni
di una e più variabili.
Programma
Caduta della fisica classica. La prima formulazione della meccanica quantistica.
Equazione di Schroedinger ed applicazioni. Conduzione e semiconduttori; funzionamento dei dispositivi elettronici a
semiconduttore. Cenni sulla computazione quantistica. Relatività speciale e formulazione covariante dell’elettromagnetismo. Cenni sulla fisica delle particelle
elementari e la cosmologia.
Modalità d’esame
Per chi frequenta il corso: compiti per
casa. Per chi non frequenta il corso:
esame orale.
Bibliografia
- K.S. KRANE, Modern Physics, seconda edizione, Wiley, 1996.
- Appunti di lezione.
150
programmi - matematica triennale
FONDAMENTI DELLA
MATEMATICA 1
(tace nell’a.a. 2007/08)
GEOMETRIA 1
Docente
Prof. Pietro Corvaja
Crediti 6
Finalità del corso
Obiettivo del corso è di fornire una buona
conoscenza delle possibilità di definire e
sviluppare le nozioni e strutture matematiche fondamentali, e di analizzarle criticamente, alla luce delle principali acquisizioni logico-matematiche del Novecento.
Programma
Una scelta fra i seguenti argomenti:
- Sistemi classici e costruttivi per l’Aritmetica e la Teoria degli Insiemi e loro
relazioni. La fondazione insiemistica
della matematica.
- La crisi dei fondamenti, il programma di
Hilbert e i teoremi di incompletezza di
Godel.
- Matematica senza infinito e matematica
dell’infinito.
- Risultati di coerenza e di indipendenza.
Bibliografia
- Dispense del docente.
- S. FEFERMAN et al. (eds.), Kurt Godel - Collected Works, voll. I e II, Oxford University
Press 1986-1990.
- M. SZABO, The Collected Papers of Gerhard
Gentzen, Noth Holland, 1969.
- R. S MULLIAN , Godels’s Incompleteness
Theorems, Oxford Logic Guides, 1992.
- F. ARZARELLO, Matematica dell’Infinito,
voll. I e II, CLU, Torino, 1980.
- K. KUNEN, Set Theory: an Introduction to
Independence Results, North Holland,
1981.
- G. LOLLI, Dagli insiemi ai numeri, Boringhieri, 1994.
Crediti
6
Programma
- Risoluzione dei sistemi lineari e matrici,
matrici invertibili.
- Spazi vettoriali, sottospazi, dimensione,
coordinate, formula di Grassman, rango,
Teorema di Rouché-Capelli.
- Funzioni lineari, nucleo, immagine, isomorfismi, matrice di una funzione lineare, spazio duale, quozienti.
GEOMETRIA 2
Docente
Prof. Pietro Corvaja
Crediti
6
Programma
- Proprietà del determinante, esistenza,
unicità, matrice dei cofattori, regola di
Cramer.
- Funzioni lineari e matrici diagonalizzabili, autovettori, autovalori, polinomio
caratteristico, autospazi e diagonalizzabilità, triangolazione.
- Spazi affini, sottospazi, parallelismo,
intersezioni, formula di Grassman, affinità.
- Forme bilineari e quadratiche, ortogonalità, basi ortogonali, segnatura, teorema
di Sylvester, prodotti scalari, matrici ortogonali, spazi euclidei, isometrie.
GEOMETRIA 3
Docente
Prof. Paolo Cragnolini
151
programmi - matematica triennale
Crediti
6
Finalità del corso
Il corso si propone di presentare alcuni
elementi di geometria proiettiva e della
teoria delle quadriche, proseguendo lo
studio della geometria affine iniziato nel
corso di Geometria 2 e sviluppandone i
metodi. Vengono introdotti gli strumenti
di algebra bilineare necessari.
Programma
1. Spazi proiettivi e sistemi di riferimento
proiettivi. Sottospazi proiettivi. Sottospazio proiettivo generato ed indipendenza
lineare. Formula di Grassmann, posizione generale, proiezioni. 2. Il complementare di un iperpiano è uno spazio affine. I
teoremi di Talete e di Pappo. 3. Lo spazio
proiettivo duale. I sottospazi proiettivi del
duale e la dualità. 4. Proiettività, punti
fissi e iperpiani uniti. Trasformazioni
affini. Il birapporto. Involuzioni. L’invariante j. 5. Ipersuperficie proiettive. Punti
regolari e iperpiano tangente. Quadriche.
Classificazione proiettiva ed affine. Il
Teorema di Sylvester.
Bibliografia
- E. S ERNESI , Geometria 1, Boringhieri,
Torino, 1989.
- P. CRAGNOLINI, Appunti del corso.
GEOMETRIA 4
Docente
Prof. Paolo Cragnolini
Crediti
6
Finalità del corso
Il corso si propone di applicare i metodi
proiettivi introdotti nel corso di Geometria 3 allo studio delle cubiche piane e dei
sistemi lineari. Vengono inoltre presentati gli strumenti di base della topologia
generale che saranno applicati ai casi più
semplici della classificazione topologica
delle ipersuperficie proiettive.
Programma
La quadrica di Klein. Sistemi lineari di
quadriche. Curve proiettive piane, intersezioni con rette, molteplicità. Il teorema
di Bezout in forma debole. Classificazione proiettiva delle cubiche piane. Spazi
topologici, intorni, chiusi, funzioni continue. Sottospazi topologici, prodotti finiti,
quozienti. Compattezza, connessione.
Topologia delle coniche, delle quadriche
nello spazio tridimensionale e delle cubiche singolari.
Bibliografia
- E. S ERNESI , Geometria 1, Boringhieri,
Torino, 1989.
- E. S ERNESI , Geometria 2, Boringhieri,
Torino, 1994.
- P. CRAGNOLINI, Appunti del corso.
GEOMETRIA 5
Docente
Prof. Francesco Zucconi
Crediti
6
Finalità del corso
Il corso è concepito come un’introduzione alla Geometria Differenziale.
Programma
- Varietà differenziabili.
- Campi di vettori.
- Teorema egregium.
- Fibrati vettoriali.
- Forme differenziali.
- Cosmologia di De Rham.
- Nozione di grado e di indice.
- Cenni sui gruppi di Lie.
152
programmi - matematica triennale
Bibliografia
D. BARDEN & C., An Introduction to Differential Manifolds, Thomas Imperial College Press, 2003.
GEOMETRIA 6
Docente
Prof. Francesco Zucconi
Crediti
6
Finalità del corso
Il corso mira a preparare lo studente alla
nozione di funzione meromorfa e a quella di Superficie di Riemann.
Programma
- Analisi locale di un’applicazione olomorfa.
- Formula di Cauchy, analiticità delle funzioni olomorfe.
- Serie e prodotti infiniti di applicazioni
olomorfe.
- Teorema dei residui e sue applicazioni.
- Funzioni meromorfe. Funzioni meromorfe notevoli.
- Nozione di superficie di Riemann.
- Applicazioni olomorfe tra Superficie di
Riemann.
- Fibrati invertibili su una superficie di
Riemann.
- Teorema di Riemann-Roch.
Bibliografia
- R. REINOLD, Theory of Complex Functions,
G.T.M. Springer-Verlag, New York, 1991.
- K. KUNIHIKO, Introduction to Complex
Analysis, C.U.P., 1984.
- F. OTTO, Lectures on Riemann Surfaces,
G.T.M. Springer-Verlag, New York, 1991.
INFORMATICA 1
Docente
Prof. Agostino Dovier
Crediti
6
Finalità del corso
Oltre a fornire una prima ‘alfabetizzazione informatica’, il corso ha come scopo
principale quello di sviluppare nello studente la sensibilità per l’aspetto ‘computazionale’ dell’attività scientifico-matematica.
Programma
Breve Storia del Calcolatore. Programmazione. Il concetto di Algoritmo. Esistenza
di funzioni non computabili. Diagrammi
di flusso ed il Teorema di Bohm-Jacopini.
Linguaggi di Programmazione: Panoramica generale, compilazione ed interpretazione. La Programmazione Imperativa
usando C. Parole riservate, Identificatori,
Variabili, Tipi Primitivi, Costanti, Letterali. Operatori, Espressioni e loro tipi. Istruzione di Assegnamento. Sequenza, blocco, istruzioni if-(then)-else, while e for.
Struttura di un programma C mediante
BNF. Vettori e matrici. Funzioni: definizione ed uso. Parametri formali ed attuali. Passaggio parametri per valore e per
indirizzo. Variabili locali e globali. Definizioni ricorsive. Esercitazioni in laboratorio. realizzazione di algoritmi in C, tra cui
l’algoritmo di Euclide, il test di primalità,
la stampa di semplici figure bidimensionali, il calcolo di massimo e del minimo
degli elementi di un vettore e/o di una
matrice, le definizioni ricorsive del Fattoriale, dell’algoritmo di Euclide, del problema della torre di Hanoi, della successione di Fibonacci, nonché la stesura di
algoritmi aritmetici su interi ‘lunghi’.
Esercitazioni con il programma
MATLAB: principali istruzioni, calcolo
153
programmi - matematica triennale
matriciale, grafica e programmazione.
Complessità. Principali concetti. Confronto tra classi di complessità e studio
degli effetti dell’evoluzione dell’HW sulle
varie famiglie. La notazione ‘O’ grande.
Calcolo della complessità degli algoritmi
scritti in C anche in presenza di ricorsione. Ricerca lineare e binaria di un elemento in un vettore. Ordinamento di un
vettore: bubble sort e merge sort. Rappresentazione dell’Informazione. Rappresentazione di numeri interi, numeri reali,
caratteri, suoni e immagini e cenni sulla
compressione. Architettura di un calcolatore. Gerarchia di macchine astratte.
Architettura di Von Neumann e a Bus. La
CPU, i Bus Dati e Bus Indirizzi, la memoria principale, la memoria Cache e la
Memoria Secondaria.
Modalità d’esame
Prova scritta ed orale
Bibliografia
- J.G. B ROOKSHEAR , Informatica. Una
panoramica
generale,
AddisonWesley/Pearson.
- Dispense del docente sulla programmazione in C, disponibili in rete.
- Dispense su MATLAB, disponibili in
rete.
INFORMATICA 2
Docente
Prof. Carla Piazza
Crediti
6
Finalità del corso
Obiettivo del corso è l’approfondimento
sistematico delle tematiche affrontate nel
corso di Informatica 1. Argomenti principali del corso sono lo studio, l’analisi e la
sintesi di algoritmi, con particolare riferi-
mento all’utilizzo di strutture dati opportune e alla valutazione della loro complessità temporale e spaziale. Verranno, infine, forniti alcuni elementi di teoria della
computabilità e di complessità computazionale, con particolare riferimento
all’introduzione delle principali classi di
complessità temporale e spaziale. È prevista attività di laboratorio con programmazione in linguaggi imperativi.
Programma
- Cenni di Teoria della Calcolabilità.
Nozione intuitiva di algoritmo. Macchine
di Turing. Tesi di Church. Macchine di
Turing Universali. Teorema dell’arresto.
Calcolabilità e Decidibilità. Unlimited
Register Machine.
- La nozione di Complessità. Complessità
in termini di Tempo e Spazio. Criterio
uniforme e criterio logaritmico. Tesi di
Church estesa. Complessità asintotica.
Metodi di risoluzione per equazioni ricorsive di complessità. Classi di Complessità.
- Elementi di Algoritmi e Strutture Dati.
Strutture dati: Vettori, Record, Liste, Pile,
Code, Alberi, Grafi. Algoritmi: HeapSort,
Moltiplicazione di Matrici, String Matching, Algoritmi su grafi.
Bibliografia
- T.H. CORMEN, C.E. LEISERSON, R.L. RIVEST, Introduction to Algorithms, second edition, MIT Press, 2001.
- J.E. HOPCROFT, J.D. ULLMAN, Introduction to Automata Theory, Languages and
Computation, Addison-Wesley, 1979.
- N. CUTLAND, Computability, Cambridge
University Press.
LINGUAGGIO MATEMATICO
Docente
Prof. Franco Parlamento
154
programmi - matematica triennale
Bibliografia
- Appunti del docente.
Crediti
2
Programma
Introduzione al linguaggio matematico: il
linguaggio matematico si distingue da
altri linguaggi ‘professionali’ per uno sviluppo notevole del formalismo simbolico
e per un uso costante ed indispensabile di
alcuni paradigmi logici. Lo scopo di queste lezioni è di rendere lo studente esplicitamente consapevole dei vari aspetti del
linguaggio matematico.
LOGICA MATEMATICA 1
Docente
Prof. Franco Parlamento
Crediti
6
Finalità del corso
Sviluppare una buona competenza nel
verificare o refutare il sussistere di relazioni di conseguenza logica, inserendola
in un quadro matematicamente preciso e
particolarmente rigoroso di acquisizioni
teoriche.
Programma
- Operatori logici e regole di deduzione.
- Logica e logica classica.
- Linguaggi del prim’ordine.
- Sistemi di deduzione naturale.
- Completezza e decidibilità del calcolo
proposizionale classico.
- Calcoli dei sequenti.
- Teorema di eliminazione del taglio e
applicazioni.
- Teoremi di Herbrand e di HilbertAckermann.
- Tavole semantiche e completezza della
logica classica.
Modalità d’esame
Esame scritto e esame orale.
LOGICA MATEMATICA 2
Docente
Prof. Franco Parlamento
Crediti
6
Finalità del corso
Integrare la preparazione di base di logica
matematica e sviluppare una buona
padronanza delle parti elementari della
teoria assiomatica degli insiemi e della
teoria della calcolabilità.
Programma
A1. Sistemi alla Hilbert. A2. Logica con
uguaglianza. A3. Il metodo delle valutazioni classiche. A4. Trasformate di Herbrand e di Skolem. A5. Estensioni definitorie e interpretazioni sintattiche. A6.
Semantica insiemistica. A7. Relazioni fra
interpretazioni. A8. Compattezza.
B1. Assiomatica di Zermelo Fraenkel. B2.
Ordinali e naturali B3. Induzione e ricorsione. B4. Insiemi ben fondati. B5. Cardinali. B6. Assioma della scelta.
C1. Funzioni ricorsive e primitive ricorsive. C2. Macchine a registri e macchine di
Turino. C3. Codificabilità di programmi e
computazioni. C4. Teorema di forma
normale di Kleene. C5. Problemi in decidibili. C6. Indecidibilità della logica di
Horn.
Modalità d’esame
Prova orale.
Bibliografia
- Appunti del docente.
- N. CUTLAND, Computability, Cambridge
University Press.
155
programmi - matematica triennale
MATEMATICHE COMPLEMENTARI 1
Docente
Prof. Alberto Marcone
Crediti
6
Pagina del corso
http://www.dimi.uniud.it/marcone/MC
2.html
Finalità del corso
Questo corso si svolgerà interamente in
laboratorio ed ha lo scopo di familiarizzare gli studenti con alcuni dei software che
stanno trovando ampio utilizzo nella
didattica della matematica nelle scuole
primarie e secondarie.
Programma
La prima parte del corso verrà dedicata al
programma Cabri per la geometria dinamica.
Nella seconda parte del corso si utilizzerà
un software di calcolo simbolico (quali
Maple, Mathematica, Derive, ecc.): presumibilmente il programma freeware Maxima.
spettiva moderna e avanzata su alcuni
argomenti che sono alla base della matematica insegnata nelle scuole superiori
allo scopo di fornire i futuri insegnanti di
solide basi teoriche riguardo a ciò che
insegneranno.
Programma
In questo corso la geometria ‘classica’
viene affrontata da un punto di vista
moderno, attraverso un approccio rigoroso all’assiomatica della geometria piana.
Verranno usati diversi modelli della geometria per discutere gli assiomi man
mano che vengono introdotti, giungendo
ad una familiarità con le problematiche
relative alla geometria neutrale (o assoluta). Infine, concentrandosi in particolare
sul piano cartesiano e sul piano di Poincaré, verranno presentate le basi della
geometria euclidea e di quella non-euclidea iperbolica.
Modalità d’esame
Prova orale.
Bibliografia
R.S. MILLMAN, G.D. PARKER, Geometry. a
Metric Approach with Models, Springer,
1991.
Modalità d’esame
Prova pratica con i software.
MECCANICA RAZIONALE 1
MATEMATICHE COMPLEMENTARI 2
(tace nell’a.a. 2007/08)
Docente
Dott. Stefano Ansoldi
Docente
Prof. Alberto Marcone
Crediti
6
Crediti
6
Finalità del corso
Introduzione ai principi base della meccanica razionale come strumento per lo
studio di sistemi classici composti da un
numero finito di particelle; cenni al calcolo delle variazioni; studio del moto in presenza di forze centrali.
Finalità del corso
Fornire alcune competenze utili a chi
intende intraprendere la strada dell’insegnamento con l’acquisizione di una pro-
156
Programma
Richiamo di concetti preliminari: sistema
di coordinate, posizione, spostamento,
velocità. Fondamenti concettuali della
meccanica classica e loro estensione: spazio, tempo, simultaneità, trasformazioni
di Galileo, legge Galileiana di composizione delle velocità, principio di relatività
nel senso ristretto; legge di propagazione
della luce nel vuoto e apparente contraddizione con il principio di relatività; relatività della simultaneità, il tempo in relatività speciale; trasformazioni di Lorentz;
limiti della relatività speciale; principio di
relatività generale e sistemi di coordinate
non inerziali; massa inerziale e massa
gravitazionale; l’esperimento dell’ascensore di Einstein: fondamenti concettuali
della relatività generale. Calcolo delle
variazioni: introduzione; funzionale;
variazione degli argomenti e loro ‘vicinanza’; funzionali continui, funzionali
lineari; variazione di un funzionale; estremi di un funzionale e condizione necessaria di estremo; funzionali integrali
dipendenti da più funzioni reali di una
variabile reale, equazioni di Eulero, estremali. La meccanica del punto materiale:
prima e seconda legge di Newton, conservazione del momento lineare, conservazione del momento angolare e dell’energia. La meccanica dei sistemi di punti
materiali: forze interne ed esterne, terza
legge di Newton (forme debole e forte),
forze conservative; teoremi di conservazione; centro di massa e proprietà,
decomposizione del moto in moto del
centro di massa e moto relativo al centro
di massa; corrispondente decomposizione delle grandezze dinamiche; energia
potenziale e sua espressione in termini
delle energie potenziali di interazione e
delle energie potenziali delle forze esterne. Oscillatore armonico unidimensionale, sua importanza per la discussione
delle piccole oscillazioni nell’intorno di
un punto di equilibrio stabile di un poten-
programmi - matematica triennale
ziale arbitrario. Vincoli e sistemi vincolati: classificazione dei vincoli, gradi di
libertà, coordinate generalizzate, velocità
generalizzate; spostamenti reali e virtuali;
forze attive e reazioni vincolari; lavori virtuali; principio di d’Alembert; energia
cinetica come forma quadratica non omogenea nelle velocità generalizzate; equazioni di Eulero-Lagrange del primo tipo;
funzione potenziale; funzione Lagrangiana. Meccanica Lagrangiana: equazioni di
Eulero-Lagrange del secondo tipo; funzione potenziale generalizzato; funzione
Hamiltoniana e sua interpretazione fisica; coordinate cicliche e quantità conservate; teorema di conservazione
dell’Hamiltoniana; spazio delle configurazioni, delle configurazioni esteso, delle
fasi, delle fasi esteso; moto nello spazio
delle configurazioni e nello spazio delle
configurazioni esteso, traiettoria di fase,
integrali primi del moto e loro rappresentazione nello spazio delle fasi; formulazione di un sistema non autonomo in termini di un sistema autonomo equivalente; applicazioni del calcolo delle variazioni alla meccanica Lagrangiana; funzionale d’azione e principio dell’azione stazionaria (principio di Hamilton); applicazione di principi variazionali alla formulazione della dinamica di sistemi vincolati;
concetto di simmetria/invarianza per un
sistema lagrangiano; struttura di gruppo
delle trasformazioni di simmetria; simmetrie e quantità conservate, teorema di
Noether. Moto di una punto materiale in
un campo centrale conservativo: riduzione del problema ad un problema unidimensionale equivalente; analisi qualitativa della dinamica; integrali primi e riduzione del problema alle quadrature; determinazione dei potenziali per i quali tutte
le orbite limitate sono chiuse; problema
di Keplero: soluzioni delle equazioni per
orbite limitate; dimostrazione delle leggi
di Keplero. Studio del moto di due punti
materiali interagenti tramite forze con-
157
programmi - matematica triennale
servative in assenza di forze esterne:
scomposizione del problema in moto del
centro di massa e moto relativo (massa
ridotta) e sua soluzione). Cenni alla formulazione della meccanica analitica tramite i metodi della geometria differenziale: varietà differenziabile, spazio tangente, fibrato tangente, Lagrangiana come
funzione sul fibrato tangente.
Modalità d’esame
Scritto e orale.
Bibliografia
- H. GOLDSTEIN, Meccanica classica, Zanichelli.
- V.I. A RNOLD , Metodi matematici della
meccanica classica, Editori Riuniti.
- L.E. ELSGOLTS, Equazioni differenziali e
calcolo delle variazioni, Editori Riuniti.
MECCANICA RAZIONALE 2
Docente
Prof. Lorenzo Freddi
Crediti
6
Programma
Geometria delle masse. Cinematica dei
sistemi rigidi. Grandezze dinamiche dei
sistemi materiali. Teoremi generali della
meccanica dei sistemi materiali discreti.
Statica dei sistemi materiali. Dinamica
dei sistemi materiali. Meccanica analitica.
Bibliografia
I testi adottati saranno comunicati agli
studenti all’inizio del corso.
OTTIMIZZAZIONE 1
Docente
Prof. Franca Rinaldi
Crediti
6
Finalità del corso
L’ottimizzazione (o programmazione
matematica) è una disciplina che gioca
un ruolo di primo piano nel processo di
modellizzazione e risoluzione dei complessi problemi di decisione che emergono in ambito applicativo. Il corso si propone di presentare una panoramica delle
principali classi di problemi di ottimizzazione, quali la programmazione lineare,
la programmazione lineare intera e l’ottimizzazione combinatoria, e delle rispettive metodologie risolutive. Nel modulo I
verranno anche richiamate alcune nozioni di base di tre argomenti fondamentali
per lo sviluppo del programma di ottimizzazione: la teoria della complessità computazionale, l’analisi convessa e la teoria
dei grafi. Per ulteriori informazioni sulla
ricerca operativa e sull’ottimizzazione si
consulti il sito dell’INFORMS (Institute
for Operations Research and Management Science) www.informs.org.
Programma
Introduzione ai problemi di ottimizzazione (4 ore)
Problemi reali, modelli e algoritmi risolutivi. Esempi di problemi di ottimizzazione continua e discreta: problemi di programmazione lineare, non lineare e
lineare intera. Esempi di problemi di ottimizzazione combinatoria: Bin Packing,
Knapsack, Assegnamento tridimensionale, Set Covering, Set Packing, Set Partitioning, Soddisfattibilità.
Cenni di teoria dei grafi (4 ore)
Definizioni fondamentali. Matrici di incidenza. Tagli e cammini. Connessione e
158
programmi - matematica triennale
forte connessione. Alberi, cricche e insiemi stabili. Problemi di ottimizzazione su
grafi.
Cenni di complessità computazionale (6
ore)
Algoritmi e loro complessità. Problemi di
decisione. Classi P ed NP. Trasformazioni polinomiali ed NP-completezza. Esempi di problemi NP-completi.
Cenni di analisi convessa (10 ore)
Definizioni fondamentali. Teorema di
Caratheodory. Operazioni algebriche su
insiemi. Proprietà topologiche. Teoremi
di separazione. Poliedri. Funzioni convesse. Proprietà differenziali. Minimizzazione di funzioni convesse.
Programmazione lineare (12 ore)
Definizioni fondamentali ed esempi.
Geometria della PL. Dualità. Condizioni
di complementarità. Cenni sulla complessità della PL. Metodo del simplesso.
Analisi di sensistività.
Programmazione lineare intera (12 ore)
Introduzione ed esempi. Matrici totalmente unimodulari. Metodo del branch
and bound. Metodo del branch and cut.
Diseguaglianze di Chvìtal e tagli di
Gomory.
Modalità d’esame
L’esame consiste in una prova scritta e in
una prova orale.
Bibliografia
- P. SERAFINI, Ottimizzazione, Zanichelli,
Bologna, 2000.
OTTIMIZZAZIONE 2
Docente
Prof. Franca Rinaldi
Crediti
6
Finalità del corso
Il corso completa la presentazione dei
principali argomenti dell’ottimizzazione
matematica, sviluppando la teoria delle
reti di flusso, la programmazione dinamica ed alcuni temi fondamentali di ottimizzazione combinatoria.
Programma
Teoria delle reti di flusso (14 ore)
Definizioni fondamentali. Il problema di
flusso a costo minimo. Il metodo del simplesso adattato alle reti di flusso. Il problema del massimo flusso e l’algoritmo di
Dinic-Karzanov. Il problema del cammino minimo e l’algoritmo di Dijkstra.
L’algoritmo ‘out-of-kilter’.
Programmazione dinamica (12ore)
Il principio di ottimalità e l’equazione di
Bellman. L’algoritmo di Bellman-Ford.
L’algoritmo per reti acicliche. L’algoritmo
di Floyd-Warshall. Applicazioni della PD
a: il problema del knapsack, il problema
dell’allineamento di due stringhe, un problema di schedulazione.
Ottimizzazione combinatoria (22 ore)
Problemi di accoppiamento e assegnamento. Algoritmi per l’accoppiamento di
cardinalità massima. Ottimizzazione su
matroidi. Algoritmo di Kruskal per il problema dell’albero di supporto di costo
minimo. Combinatorica poliedrale. Analisi poliedrale del problema dell’accoppiamento di costo minimo, del problema del
commesso viaggiatore e del problema
dell’insieme stabile.
Modalità d’esame
L’esame consiste in una prova scritta ed
in una prova orale.
Bibliografia
- P. SERAFINI, Ottimizzazione, Zanichelli,
Bologna, 2000.
159
programmi - matematica triennale
PARTICELLE E INTERAZIONI
FONDAMENTALI
Docente
Dott. Marina Cobal
Crediti
6
Pagina del corso
http://www.fisica.uniud.it/%7Ecobal/pa
rticelle_welcome.html
Finalità del corso
Questo corso è un’introduzione alla Fisica delle Particelle e delle Interazioni Fondamentali. Si discutono alcune delle proprietà dei costituenti fondamentali della
materia e le loro interazioni, così come i
metodi sperimentali e le tecnologie coinvolte. In generale, intenzione del corso
non è quella di derivare modelli teorici da
principi primi, ma piuttosto di confrontare previsioni fenomenologiche con risultati sperimentali, così da introdurre le
conoscenze necessarie per affrontare
questo tipo di ricerca. Il corso è indirizzato agli studenti di Fisica Computazionale,
Matematica, Informatica e Ingegneria.
Prerequisiti
Fisica 1 e 2; Fisica Moderna; eventualmente Meccanica Quantistica.
Programma
Concetti base: unità di misura, relatività
speciale, sezioni d’urto, rate di decadimento. Particelle ed interazioni fondamentali: quarks, leptoni, bosoni di gauge,
interazioni elettromagnetiche, forti e
deboli. Leptoni: elettroni e positroni,
muoni e tau, neutrini. Metodi sperimentali: acceleratori di particelle e rivelatori di
particelle. Adroni e forze nucleari. Risonanze. Struttura degli adroni e scattering
deep in elastico. Stranezza. Modello a
quark degli adroni. Quark pesanti. Il mec-
canismo GIM. La matrice CKM. Unificazione elettrodebole e bosoni W e Z. Correnti neuter. Simmetrie discrete e interazioni deboli: parità, coniugazione di carica e CP. Quantocromodinamica (QCD):
colore, accoppiamento forte, sconfinamento, getti di particelle. Il meccanismo
di Higgs e la ricerca sperimentale
dell’Higgs.
Modalità d’esame
Compiti per casa e relazione finale su un
articolo a scelta.
Bibliografia
- PERKINS, High Energy Physics, quarta edizione, Addison-Wesley.
- B.R. MARTIN, G. SHAW, Particle Physics,
seconda edizione, Wiley.
- Appunti di lezione, disponibili sul sito:
http://www.fisica.uniud.it/~cobal/particelle_welcome.html
PROBABILITÀ 1
Docente
Prof. Carlo Cecchini
Crediti
6
Finalità del corso
Introdurre lo studente agli elementi di
base del calcolo delle probabilità e consentirgli di applicare in questo contesto in
modo interdisciplinare quanto visto nei
corsi già seguiti. Si pone particolare attenzione alle applicazioni.
Programma
- Spazio di probabilità e probabilità elementare.
- Variabili aleatorie scalari e vettoriali
discrete e continue, con i concetti di base
relativi (massa,media, varianza, momenti, distribuzione e densità, covarianza,
160
programmi - matematica triennale
ecc.).
- Condizionamento.
- Funzioni generatrici.
- Cenno sui processi.
Modalità d’esame
Scritto ed orale.
PROBABILITÀ 2
Docente
Prof. Vidoni Paolo
Crediti
6
Programma
1. Richiami di Calcolo delle Probabilità. 2.
Valori attesi e distribuzioni condizionate.
3. Introduzione ai processi stocastici. 4.
Catene di Markov. 5. Processi di Poisson.
6. Martingale. 7. Moto browniano.
Modalità d’esame
L’esame consiste in una prova orale.
Bibliografia
- Per gli argomenti 1. e 2.: appunti delle
lezioni e, come consultazione e complemento, alcuni paragrafi della Dispensa
Probabilità 2.
- Per gli argomenti 3., 4., 5., 6., 7.: appunti delle lezioni e, come consultazione, D.
BOSQ, H.T. NGUYEN, A Course in Stochastic Processes: Stochastic Models and Statistical Inference, Kluwer, 1996.
STATISTICA 1
Docente
Prof. Luigi Pace
Crediti
6
Finalità del corso
Il corso presenta un’introduzione all’inferenza statistica e ad alcune importanti
applicazioni, sulla base del concetto di
funzione di verosimiglianza.
Programma
- Richiami e complementi di Calcolo delle
Probabilità; le variabili casuali normale
bivariata e normale multivariata; la distribuzione di combinazioni lineari e forme
quadratiche di componenti di una normale multivariata.
- Modelli statistici; il problema; modelli
parametrici e non parametrici; modelli
statistici parametrici notevoli, il controllo
empirico di un modello statistico (metodi
grafici: probabilty plot, stima della densità).
- Inferenza statistica: le procedure fondamentali; il problema; definizioni di base;
stima puntuale; problemi di previsione;
verifica delle ipotesi statistiche; stima
intervallare; i test di Kolmogorov-Smirnov; la simulazione.
- La funzione di verosimiglianza; motivazione e definizioni di base (funzione
score, informazione osservata); lo stimatore di massima verosimiglianza; i test di
verosimiglianza; parametri di interesse e
parametri di disturbo: la verosimiglianza
profilo; verosimiglianze penalizzate e
selezione del modello.
Modalità d’esame
L’esame consiste in una prova scritta
seguita, per i sufficienti, da una prova
orale. Entrambe le prove dovranno essere
superate nello stesso appello.
Bibliografia
- Appunti delle lezioni.
- A. AZZALINI, Inferenza Statistica: un’introduzione basata sul concetto di verosimiglianza, Springer-Verlag, 1992.
- L.J. BAIN, M. ENGELHARDT, Introduction
to Probability and Mathematical Statistics,
PWS-Kent Publishing co., 1992.
programmi - matematica triennale
161
STATISTICA 2
Modalità d’esame
L’esame consiste in una prova scritta
seguita, per i sufficienti, da una prova
orale. Entrambe le prove dovranno essere
superate nello stesso appello.
Docente
Prof. Luigi Pace
Crediti
6
Finalità del corso
Il corso approfondisce l’inferenza statistica parametrica basata sul concetto di
verosimiglianza e tratta alcune applicazioni riferite a modelli di regressione.
Programma
- Verosimiglianza: aspetti teorici.
L’immutabilità della verosimiglianza; statistiche sufficienti e verosimiglianza;
distribuzioni campionarie asintotiche
delle principali quantità di verosimiglianza e loro uso come approssimazioni.
- Procedure statistiche ottimali.
Stimatori non distorti ed efficienti tra i
non distorti; test più potenti; intervalli di
confidenza più accurati; i teoremi fondamentali.
- I modelli binomiali.
Stima della probabilità; verifica di ipotesi
e test dei segni per mediana e quantili;
test per la probabilità comune; il modello
di regressione logistica; l’algoritmo di
Newton-Raphson per la determinazione
di una soluzione dell’equazione di verosimiglianza.
- I modelli multinomiali.
Stima delle probabilità di cella; test chiquadrato di adattamento; test di indipendenza in una tabella di contingenza; test
di omogeneità di più tabelle.
- I modelli Poisson.
Stima e verifica di ipotesi sul parametro;
modelli di regressione.
- I modelli normali.
Stima e verifica di ipotesi sui parametri;
modelli di regressione lineare.
Bibliografia
- Appunti delle lezioni.
- A. AZZALINI, Inferenza Statistica: un’introduzione basata sul concetto di verosimiglianza, Springer-Verlag, 1992.
- L. PACE, A. SALVAN, Teoria della Statistica,
Cedam, 1996.
STRUMENTI INFORMATICI
PER LA MATEMATICA
Docente
Prof. Gianluca Gorni
Crediti
1
Finalità del corso
Avviare gli studenti all’uso del LaTeX, il
sistema gratuito standard per la scrittura
di testi matematici.
Programma
Motivazioni e storia del LaTeX; sintassi di
base; la struttura a grande scala di un
documento di LaTeX; scrittura di testi;
scrittura di formule matematiche.
Modalità d’esame
Presentazione di un progettino, consistente in un paio di pagine scritte in
LaTeX, che usino titolazione, sezionamenti, testo e formule.
Bibliografia
Presentazione del corso e altro materiale
disponibile in rete.
162
programmi - biotecnologie triennale
CORSO DI LAUREA
INTERFACOLTÀ IN
BIOTECNOLOGIE
blemi che serviranno come paradigma
nella risoluzione di particolari tipi di problemi di biologia computazionale.
Programmi dei corsi tenuti dai docenti della
Facoltà di Scienze MFN; per gli altri corsi
consultare le guide delle facoltà di Agraria,
Medicina e Medicina Veterinaria.
Programma
Algoritmi: definizione, misura della
complessità, classi di complessità.
Complessità di problemi: problemi di
decisione, classe P, trasformazioni di problemi, classe NP, problemi NP-completi.
Strutture dati: specifica di una struttura
dati, implementazione di una struttura
dati, efficienza dell’implementazione,
strutture dati elementari: pile, code, alberi, alberi binari di ricerca.
Equazioni ricorsive: fattoriale, numeri di
Fibonacci, formule esplicite, Master
Theorem.
Algoritmi di Ordinamento: inserzione,
bubblesort, quicksort, mergesort, heapsort, radixsort.
Programmazione dinamica: principio di
ottimalità, equazione di Bellman, cammini minimi e massimi, algoritmo di
Bellman-Ford, algoritmo di Dijkstra,
algoritmo di Floyd-Warshall, confronto
di stringhe, altri esempi.
Altri algoritmi su grafi: minimo albero di
supporto, max flow-min cut, assegnamento.
Programmazione lineare: problema primale e duale, complementarità, totale
unimodularità.
Problemi NP-completi: TSP, insiemi stabili, knapsack.
ALGORITMI E STRUTTURE DATI
Docente
Prof. Paolo Serafini
Crediti
5
Pagina del corso
http://www.dimi.uniud.it/~serafini/AS
D0607.pdf
Finalità del corso
Il corso introduce lo studente ai concetti
che stanno alla base dell’elaborazione dei
dati da parte di un calcolatore. Infatti i
dati devono essere presentati al calcolatore secondo opportune strutture ed elaborati, stando a modalità precisamente definite e che si applicano a classi di dati dello
stesso tipo. Gli algoritmi sono appunto le
modalità secondo cui un calcolatore elabora i dati. Essenziale è comprendere
come le risorse di tempo e di spazio vengano impiegate da un algoritmo per capire
se l’elaborazione possa essere praticamente portata a termine (cioè in tempi ragionevoli e senza eccedere la memoria disponibile nel calcolatore). Il comportamento
di un algoritmo dipende non solo dalla
natura del problema i cui dati si devono
elaborare ma anche da come questi vengono strutturati. Verranno quindi presentate
le strutture dati più comunemente usate
ed alcuni degli algoritmi che più frequentemente compaiono nell’elaborazione di
grandi quantità di dati. Il corso sarà concluso da una presentazione di alcuni pro-
Modalità d’esame
L’esame consiste in una prova orale.
BASI DI DATI
Docente
Dott. Nicola Vitacolonna
Crediti
5
programmi - biotecnologie triennale
Finalità del corso
Obiettivo fondamentale del corso di Basi
di Dati è l’acquisizione dei concetti, delle
metodologie e degli strumenti fondamentali nel campo delle basi di dati, con
particolare attenzione ai modelli (concettuale e logico) e ai linguaggi (di definizione, di aggiornamento e di interrogazione)
dei sistemi per basi di dati. Vengono inoltre forniti elementi di progettazione concettuale (costruzione di modelli
Entità/Relazioni) e logica (mapping E/R relazionale) di basi di dati. Infine, viene
fornita una panoramica delle principali
basi di dati proposte nell’ambito della biologia, con particolare attenzione alla loro
organizzazione interna e alle possibili
modalità di utilizzo. Dopo aver superato
l’esame lo studente dovrebbe essere in
grado di: (I) progettare semplici basi di
dati a livello concettuale (costruzione di
schemi Entità/Relazioni a partire da
insiemi di requisiti espressi in linguaggio
naturale) e logico (chiavi e forme normali
delle tabelle relazionali); (II) formalizzare
in un linguaggio relazionale semplici
operazioni di definizione e manipolazione (aggiornamenti ed interrogazioni) dei
dati espresse in linguaggio naturale; (III)
utilizzare in modo effettivo ed efficace le
basi di dati biologiche disponibili. È prevista anche un’attività di laboratorio per
verificare sul campo la padronanza delle
metodologie e degli strumenti studiati.
Programma
Parte 1. Concetti di Base. Ruolo e funzionalità di una base di dati, astrazione sui
dati, modelli dei dati, istanze e schemi,
indipendenza dei dati dal livello logico e
fisico, linguaggi per la definizione e la
manipolazione dei dati, sistema di gestione di una base di dati (DBMS), amministratore e utenti di una base di dati, il
dizionario dei dati, struttura generale di
una base di dati.
163
Parte 2. Il Modello Relazionale e il linguaggio SQL. Il modello relazionale: concetti e vincoli che caratterizzano il modello relazionale dei dati, operazioni di definizione, aggiornamento ed interrogazione, l’algebra relazionale (cenni). Il linguaggio SQL: definizione dei dati in SQL,
interrogazioni in SQL, aggiornamenti in
SQL, le viste in SQL, funzionalità avanzate (cenni).
Parte 3. Laboratorio di basi di dati.
Breve panoramica sui DBMS esistenti. Il
DBMS MySQL. Il modello Client/Server.
Principali differenze tra il linguaggio
SQL supportato da MySQL e lo standard
SQL. Esempi di definizione, aggiornamento e interrogazione dei dati in
MySQL. Alcuni semplici casi di studio (la
base di dati di sequenze nucleotidiche
TSDB).
Parte 4. Progetto di basi di dati. Il modello Entità/Relazioni (ER): tipi e istanze di
entità e di relazioni, attributi (semplici,
composti, a singolo valore, multivalore,
derivati) e chiavi, dominio di un attributo,
vincoli associati alle relazioni (partecipazione e rapporto di cardinalità), relazioni
ricorsive e ruoli, relazioni di grado superiore al secondo, entità deboli, gerarchie
di specializzazione/generalizzazione
(cenni), i diagrammi Entità/Relazioni. La
progettazione concettuale dei dati basata
sul modello ER. La progettazione logica
(ristrutturazione di schemi ER, traduzione nel modello relazionale, normalizzazione).
Parte 5. Basi di dati per la biologia. Introduzione.
Dalle analisi ai dati in formato digitale. Le
analisi biologiche e i dati da esse prodotti.
L’organizzazione dei dati. Organizzazione dei dati e basi di dati. Alcuni esempi
(dati prodotti dal sequenziamento del
DNA e dati prodotti con tecniche di
Micro-Array). Basi di dati biologiche di
sequenze (NCBI), di annotazioni (Ensembl), specifiche (Transfac), di analisi (MA e
164
programmi - biotecnologie triennale
Proteomica), di proteine (Swiss Prot).
Modalità di accesso ai dati di alto livello
(interfacce web) e di basso livello (via
SQL). Le interfacce di Ensembl e Transfac.
Modalità d’esame
Prova scritta (durata 2h).
Bibliografia
- P. A TZENI , S. C ERI , S. P ARABOSCHI , R.
TORLONE, Basi di dati. Modelli e linguaggi
di interrogazione, McGraw-Hill, 2002.
- L. WELLING, L. THOMSON, MySQL Tutorial, Pearson Education Inc., 2004.
- Dispense e lucidi del docente (prodotte
in collaborazione col dott. Michele Braidotti).
Altri testi di riferimento:
- R. ELMASTRI, S. NAVATHE, Sistemi di basi
di dati. Fondamenti, Pearson/AddisonWesley (quarta edizione italiana), 2004.
BIOINFORMATICA 3
Docente
Prof. Giuseppe Lancia
Crediti
3
Programma
Introduzione alla bioinformatica, cenni
storici. Confronto di sequenze. Allineamenti di coppie e allineamenti multipli.
Matrici di sostituzione. Allineamenti con
alberi filogenetici. Polimorfismi di singolo nucleotide. Ricostruzione di aplotipi.
Strutture proteiche. Predizione e confronto di strutture tridimensionali. Data
Base strutturali.
FISICA 1
Docente
Prof. Alessandro De Angelis
Crediti
4
Pagina del corso
http://www.fisica.uniud.it/~deangeli/bio
tec
Finalità del corso
Scopo del corso è di fornire gli elementi
di base della meccanica e delle interazioni
fondamentali.
Prerequisiti
Nozioni di base dell’analisi matematica
(limiti, derivate, integrali).
Programma
Unità di misura. Cinematica. Forze in
natura: interazioni elettromagnetica e
gravitazionale. Dinamica. Energia. Oscillazioni. Moto ondulatorio e onde elettromagnetiche. Fluidi e sistemi a molti
corpi.
Modalità d’esame
Nella sessione d’esame che segue il corso
il voto proposto è dato dal voto di un
accertamento finale (valutato fino a 30
punti), cui viene aggiunto un bonus da 0
a 6 punti per chi ha svolto i compiti per
casa. Per la verifica dello svolgimento dei
compiti per casa, il quaderno va consegnato imperativamente entro il primo
appello. Nelle sessioni successive (un
appello a luglio e uno a settembre)
l’esame consiste in una prova scritta che
include domande di teoria.
Bibliografia
- Serway, Jewett, Principi di Fisica, vol. 1,
ultima edizione, EdiSES.
programmi - biotecnologie triennale
FISICA 2
Docente
Prof. Gennaro Esposito
Crediti
3
Finalità del corso
Acquisizione di conoscenze di chimica
fisica e fisica di rilevanza biochimica e
biotecnologica.
Prerequisiti
Formazione di base in Fisica Generale,
Chimica Generale (inorganica ed organica), Analisi Matematica.
Programma
Termodinamica: Sistemi e processi. Trasformazioni reversibili ed irreversibili.
Passaggi di stato. Variabili di stato, equazione di stato. Stato di equilibrio. Stato
stazionario Gas ideali e reali. Teoria cinetica dei gas. Lavoro e calore. Capacità termica dei gas e dei solidi. Principio zero.
Temperatura e scale termometriche. 1°
principio. Energia interna. Lavoro e calore in processi reversibili ed irreversibili.
Processi isocori ed isobarici. Entalpia,
legge di Hess. Il potenziale termodinamico. L’entropia ed il 2° principio. Significato statistico dell’entropia. Trasformazioni. L’energia libera di Gibbs e di Helmoltz. Potenziale chimico. Stati di riferimento. Criteri di spontaneità di un processo. L’equilibrio, la costante di equilibrio e DG 0 . Cenni di elettrochimica.
Transizioni di fase e capacità termica.
Calorimetria e Microcalorimetria: Diagramma di stato e transizioni di fase.
DSC, ITC e applicazioni biotecnologiche.
Analisi di termogrammi. Entalpia, entropia ed energia libera di Gibbs e loro variazione con la temperatura. Entalpia calorimetrica e secondo van’t Hoff. Elaborazione di termogrammi. Microcalorimetria di
165
proteine, acidi nucleici e biomolecole.
Procedure ed apparati sperimentali.
Applicazioni per studi biofisici. Studio di
stabilità termica di proteine (unfolding e
refolding). Studi di interazione biomolecole-ligandi. Competizione di legame tra
stato nativo e denaturato. Effetti di pH e
forza ionica. Interazioni con ioni metallici.
Termodinamica di biopolimeri: Misura
della stabilità conformazionale di proteine. Selezione e criteri di scelta delle tecniche di misura. Generalità sull’applicazione di tecniche spettroscopiche e non.
Denaturazione termica e con agenti chimici. Elaborazione dei dati sperimentali.
Equilibrio e reversibilità. Procedure sperimentali per studi di denaturazione.
Estensione di concetti termodinamici e
teoria dello stato di transizione.
Cinetica: Cinetica di reazione ed equazione empirica di Arrehenius. Energia di
attivazione e velocità assoluta. Equazione
di Eyring. Energia ed entalpia di attivazione e corrispondenti termodinamici. Cinetica di reazione e reazioni endotermiche e
di denaturazione di biopolimeri.
Surface Plasmon Resonance: Il concetto
di biosensore e la base fisica della SPR. Lo
strumento BIAcore e suo principio di
funzionamento. Riflessione interna totale. La rifrazione e l’indice di rifrazione. La
matrice e l’immobilizzazione del ligando.
Applicazioni SPR per la misure cinetiche
e termodinamiche.
Scambio isotopico: Applicazioni classiche dello scambio isotopico a proteine.
Meccanismi di scambio isotopico per
polipeptidi. Catalisi acida e basica. La
costante di scambio complessiva, k ex .
Valori tipici di kex. Dipendenza dalla temperatura. Dipendenza dal pH. Effetti
della sequenza sulle velocità di scambio.
Contributo di struttura secondaria e terzaria. Fattore di protezione. Scambio in
polipeptidi destrutturati. Scambio in polipeptidi strutturati. Meccanismo dell’aper-
166
programmi - biotecnologie triennale
tura locale. Regimi limite di scambio EX1
e EX2. Velocità di scambio correlate e
non. Costanti fenomenologiche di scambio e stabilità termodinamica locale.
Fenomeni ondulatori: Onde longitudinali e onde trasversali, oscillatore armonico,
oscillazione smorzata, oscillazione forzata, equazione di propagazione di una
onda, principio di Huyghens, analisi di
Fourier, spettro di potenza, riflessione,
rifrazione e riflessione totale, coerenza,
interferenza costruttiva e distruttiva, diffrazione, onde stazionarie e battimenti.
Emissione e temperatura. La radiazione
del corpo nero. Leggi di Wein, StefanBoltzmann e Rayleigh. Correzioni quantistiche. Onde elettromagnetiche. Polarizzazione. Spettro elettromagnetico e
spettro del visibile. Interazione radiazione materia. Cenni sulle principali spettroscopie ottiche. Dicroismo circolare, UV e
fluorescenza. Diffrazione di raggi X e cristallografia.
Modalità d’esame
Compito scritto con problemi e domande
a scelta multipla.
Bibliografia
- P.W. ATKINS, J. DE PAULA, Elementi di
chimica fisica, terza edizione italiana.
ISBN 978-8808-1-9285-1.
- Materiale didattico on-line.
FISICA 3
Docente
Dott. Gilberto Giugliarelli
Crediti
3
Pagina del corso
http://www.fisica.uniud.it/~giugliarelli/Pa
geFisica3Biotecnologie_2005-06.html
http://materialedidattico.uniud.it
Finalità del corso
Lo scopo centrale del corso è quello di
introdurre i concetti fisici e la modellistica di base necessaria ad affrontare lo studio fisico dei sistemi biologici al fine di
chiarire e precisare gli obiettivi e il tipo di
contributi che tale approccio può dare. A
tale scopo, nella prima parte del corso verranno introdotti i concetti base di termodinamica e meccanica statistica necessari
per lo studio dei sistemi complessi. Di
seguito, dopo una breve trattazione delle
proprietà statistiche di catene molecolari
disordinate, verranno discusse ed analizzate le problematiche fisiche riguardanti
le simulazioni numeriche riguardanti
due argomenti principali: a) il Protein
Folding; b) transizioni helix-coil e zipping
nel DNA.
Prerequisiti
Conoscenza di base delle leggi della fisica
classica e in particolare delle leggi della
dinamica e della termodinamica, nonché
di nozioni base di elettrostatica e magnetostatica. Conoscenza delle principali tecniche fisiche sperimentali utilizzate nello
studio dei sistemi biologici.
Programma
- Richiami di Termodinamica: Prima e
seconda Legge della Termodinamica,
Energia interna, Entropia e loro significato.
- Fondamenti di Meccanica Statistica: Statistica e microstati e nozione di insiemi
statistici. Insiemi Microcanonico e Canonico, funzione di partizione e semplici
applicazioni degli insiemi. Insieme Grancanonico.
- Statistica di catene molecolari: Freely
jointed chain (random walk) e distribuzione di probabilità della distanza end-toend e distribuzione radiale. Freely rotating chain: distanza end-to-end. Effetti di
volume escluso.
- Proteine e Protein Folding: Composizio-
programmi - biotecnologie triennale
ne e struttura delle proteine. Struttura
secondaria e stato nativo di una proteina.
Caratteristiche del processo di folding.
Specificità del folding e transizione di folding. Modelli ‘minimalisti’ (su reticolo)
per il protein folding. Metodo Monte
Carlo. Cinetica del protein folding e profilo dell’energia libera. Modello a due stati.
Analisi delle varie caratteristiche della
transizione di folding in un modello su
reticolo. La dinamica molecolare e dinamica delle macromolecole biologiche.
Analisi di un programma per la dinamica
molecolare di macromolecole biologiche.
- Cambiamenti strutturali nel DNA:
Caratteristiche generali della struttura del
DNA. Introduzione a modelli computazionali per la denaturazione e l’unzipping
del DNA basati su polimeri e co-polimeri.
Il modello zipper: dalla transizione helixcoil allo zipping del DNA.
Modalità d’esame
L’esame comprende una prova scritta e
un colloquio orale.
Bibliografia
- C.R. CANTOR, P.R. SCHIMMEL, Biophysical
Chemistrry, W.H. Freeman and Company, San Francisco, 1980.
- B. NOLTING, Methods in Modern Biophysics, Springer Verlag, NewYork, 2003.
- Note complete del corso in formato .pdf.
FISICA APPLICATA
Docente
Prof. Gennaro Esposito
Crediti
3
Finalità del corso
Acquisizione di conoscenze di metodi
analitici di rilevanza biochimica e biotecnologica.
167
Prerequisiti
Formazione di base in Fisica Generale,
Chimica Generale (inorganica ed organica), Chimica biologica, Analisi Matematica, Statistica.
Programma
Elettromagnetismo: L’interazione tra
cariche. Legge di Coulomb. Il campo elettrico. Dipoli e quadrupoli. Teorema di
Gauss. Il magnetismo. Induzione magnetica. Forza di Lorentz. Moto di una carica
in campo magnetico. Equazione del ciclotrone e spettrometri di massa. Momento
di dipolo magnetico. Energia potenziale
di un dipolo magnetico in un campo
magnetico. Moto di una carica in campo
elettromagnetico. Proprietà magnetiche
della materia.
Spettrometria di massa: Campi di applicazione della spettrometria di massa.
Applicazioni di interesse biotecnologico.
Massa molecolare, definizione ed accuratezza. Massa molecolare nominale,
media e monoisotopica. Distribuzione
isotopica naturale e utilizzazione in spettrometria di massa. Lo spettrometro di
massa. Iniezione diretta, per via cromatografica e per via elettroforetica. Metodi di
ionizzazione. Metodi di ionizzazione
soft. Analizzatori a settore magnetico o
quadrupolo, analizzatore TOF, analizzatore a risonanza ciclotronica. Strumenti a
doppio o multiplo quadrupolo e spettrometria di massa tandem o massa-massa.
L’importanza delle metodiche di ionizzazione soft in analisi di biopolimeri. Ionizzazione elettrospray. Tecnica nanospray.
Dettagli su ionizzazione MALDI. Lo spettrometro MALDI-TOF. Metodi di analisi
massa-massa. Scansione di ioni prodotto
o precursore. Scansione a perdita neutra
costante. Sequenziamento peptidico.
Identificazione di proteine. Proteomica.
Risoluzione in spettrometria di massa.
Spettrometria di massa e Proteomica:
Oggetto e motivazione della ricerca pro-
168
teomica. Dimensioni del problema ed
efficienza operativa. Proteomica strutturale e funzionale. Metodiche analitiche.
Elettroforesi 2D (focalizzazione isoelettrica e SDS PAGE). Gradienti di pH, interfacciamento con gel e migrazione elettroforetica. Accorgimenti per solubilizzazione e condizioni riducenti. Analisi di
mappe 2D e proteomica quantitativa.
Metodi alternativi. ICAT e MCAT. Separazioni Multidimensionali. Prefrazionamento elettroforetico o cromatografico.
Protein Chip. Determinazione di modificazioni posttraduzionali mediante spettrometria di massa. Applicazioni analitiche biomediche.
Spettroscopia NMR: Generalità sul
magnetismo. Correnti in spire e momento di dipolo magnetico. Interazione
momento-campo magnetico. Forza di
Lorentz. Nuclei e momento magnetico di
spin nucleare. Descrizione classica. Precessione ed equazione di Larmor. Rapporto giromagnetico. Descrizione quantomeccanica. Quantizzazione del
momento angolare di spin nucleare e del
momento di dipolo magnetico nucleare.
Transizioni e regole di selezione. Magnetizzazione macroscopica longitudinale e
trasversale. Coerenza di fase e segnale
NMR. Campionamento di segnale e trasformata di Fourier. Eccitazione NMR e
impulsi di radiofrequenza. Sistema di
riferimento rotante e di laboratorio. Equazioni di Bloch e costanti di rilassamento
T1 e T2. FID. Intensità del segnale NMR.
Chemical shift e natura chimica. Chemical shift di biopolimeri. Chemical shift
limite e contributi di struttura secondaria
e terziaria. Chemical Shift Index. Accoppiamento scalare. Molteplicità ed accoppiamento scalare. Accoppiamento scalare
forte. Accoppiamento dipolare. Chemical
shift isotropo e MAS. Scambio chimico.
Regimi di scambio ed effetti su chemical
shift e costanti di accoppiamento scalare.
Rilassamento longitudinale e trasversale.
programmi - biotecnologie triennale
Misura di T1 e T2. Mobilità molecolare e
rilassamento. Funzione di autocorrelazione e densità spettrale. Effetto Overhauser nucleare (NOE) e sua misura per
inversione selettiva o saturazione selettiva. NOE, mobilità molecolare e struttura
spaziale. NOE eteronucleare.
Applicazioni a biopolimeri per determinazioni strutturali e funzionali: Spettroscopia NMR multidimesionale. Campionamento discreto e frequenza di campionamento. Acquisizione discreta indiretta
nella seconda dimensione. Trasformata
in due dimensioni. Spettri 2D omonucleari ed eteronucleari. Concetto di correlazione o connettività. Correlazioni scalari e dipolari. Spettri di tipo COSY. Pattern
COSY di amminoacidi e nucleotidi ed
identificazione dei sistemi di spin. COSY
con filtri quantici multipli. TOCSY. Struttura fine di cross-peak. Correlazioni dipolari e spettri NOESY. Assegnazione
sequenziale. Correlazioni dipolari e struttura molecolare. Riconoscimento di struttura secondaria di proteine. Struttura
secondaria ed assegnazione sequenziale.
Scambio isotopico: Misure di scambio
isotopico. Incorporazione di 3H. Metodo
IR. Massa ridotta e frequenze di assorbimento IR. La banda ammide II. Metodi di
spettrometria di massa. Scambio isotopico e frammentazione proteolitica. Tarature e retroscambio. Distribuzione di pattern isotopici. Condizioni di misura e
distribuzioni bimodali. Misure di scambio isotopico mediante NMR. Applicazioni per studi funzionali.
Modalità d’esame
Compito scritto con problemi e domande
a scelta multipla.
Bibliografia
- P.W. ATKINS, J. DE PAULA, Elementi di
chimica fisica, terza edizione italiana.
ISBN 978-8808-1-9285-1.
- Materiale didattico on-line.
169
programmi - biotecnologie triennale
INFORMATICA
Docenti
Prof. Alberto Policriti
Dott. Nicola Vitacolonna
Crediti
6
Finalità del corso
Il corso introduce i concetti e le nozioni
fondamentali dell’Informatica con
l’obiettivo di familiarizzare gli studenti
con i più importanti strumenti tecnologici a disposizione nella moderna attività
professionale e di ricerca nell’ambito
delle biotecnologie. Nella parte iniziale
verranno introdotte le nozioni di base
relative all’architettura degli elaboratori,
ai sistemi operativi e alle basi di dati e verranno illustrate le potenzialità connesse
con un utilizzo consapevole degli strumenti di calcolo e di alcuni significativi
pacchetti applicativi. Nella seconda parte
si indirizza lo studente verso l’utilizzo
degli strumenti di natura computazionale
nella realtà dell’attività scientifica, con
particolare riferimento alle problematiche di natura computazionale connesse
con le moderne tecniche di ricerca in Biologia. In questa parte si approfondiranno
le questioni di base riguardanti la nozione di algoritmo, si introdurranno con
esempi i moderni linguaggi di programmazione imperativi e procedurali e si svilupperà l’attitudine ad applicare i paradigmi iterativo e ricorsivo/funzionale alla
soluzione di semplici problemi di natura
biologica.
Programma
Fondamenti della scienza degli elaboratori
- Il modello di von Neumann.
- Elementi di sistemi operativi.
- Elementi di basi di dati e di linguaggi
per la loro interrogazione.
- Introduzione alle banche dati biologiche.
- Elementi di reti di calcolatori.
- Algoritmica e linguaggi di programmazione per le biotecnologie.
Linguaggi
- Linguaggio BioPerl: introduzione e fondamenti con esempi ed esercitazioni.
- Linguaggio C: introduzione e fondamenti.
- Linguaggio Java: introduzione e fondamenti.
Modalità d’esame
L’esame consiste in una prova scritta e di
una prova orale successiva e facoltativa.
Sempre facoltativo è anche lo sviluppo di
un progetto concordato con il docente ed
implementato utilizzando uno dei linguaggi visti a lezione.
Bibliografia
- C. GIBAS, P. JAMBEK, Developing Bioinformatics Computer Skills, O’Reilly.
- G. V ALLE , M. H ELMER C ITTERICH , M.
ATTIMONELLI, G. PESOLE, Introduzione alla
Bioinformatica, Zanichelli.
- J. TISDALL, Beginning Perl for Bioinformatics, O’Reilly.
- Appunti delle lezioni e materiale disponibile via web sui siti dei docenti.
MATEMATICA
Docente
Prof. Fabio Zanolin
Crediti
5
Finalità del corso
Presentare allo studente le nozioni di
base della matematica necessarie per la
sua professionalità.
Programma
Introduzione sulla logica e i metodi della
170
programmi - biotecnologie triennale
matematica.
I numeri.
Il concetto di funzione.
Limiti e continuità.
Calcolo differenziale ed integrale in una
variabile con applicazioni.
Serie numeriche.
Equazioni differenziali.
Modalità d’esame
Scritto ed orale.
Bibliografia
- P. BAITI, L. FREDDI, Note di Matematica e
Biomatematica, Forum.
Probabilità condizionali. Valore medio e
variabili casuali. Ordinamenti per inversione e numero medio di breakpoints in
una permutazione. Generazione di tutti i
sottoinsiemi/permutazioni e di sottoinsiemi/permutazioni casuali.
- Teoria dei grafi. Definizioni fondamentali. Grafi euleriani e hamiltoniani. Grafi
bipartiti. Connessione. Alberi. Grafi
orientati. Grafi pesati.
- Ottimizzazione combinatoria. Problemi
‘facili’ e ‘difficili’. Il problema del minimo
albero di supporto. Accoppiamenti e
coperture di vertici. Clique e insieme
indipendente. Colorazione di grafi. Il problema del commesso viaggiatore. (Il problema del matrimonio stabile).
MATEMATICA DISCRETA
Docente
Prof. Giuseppe Lancia
Crediti
7
Programma
4 lezioni a settimana, 2 ore l’una.
- Cenni di algebra booleana, logica, teoria
degli insiemi e funzioni. Sommatorie e
loro manipolazioni. Il principio di induzione. Ricorrenze e formule ricorsive.
- Elementi di Combinatorica. Disposizioni, permutazioni, sequenze (stringhe). Il
principio della piccionaia (pigeon-hole).
Tecniche per contare. Numeri di Fibonacci. Il principio di inclusione-esclusione.
Gli spiazzamenti.
- Aritmetica intera, quoziente e resto,
scomposizione in fattori primi. MCD e
mcm. Cenni su algoritmi e pseudo-linguaggio di programmazione. Algoritmo
di Euclide. Cenni di teoria dei numeri.
Numeri primi e fattorizzazione. Il piccolo
teorema di Fermat. La distribuzione dei
primi.
- Cenni di teoria delle probabilità. Probabilità combinatorie. Probabilità uniformi.
Bibliografia
- L. L OVASZ , K. V ESZTERGOMBI , Discrete
Mathematics, disponibile su web (download).
- J.P. D’ANGELO, D.B. WEST, Mathematical
Thinking - Problem Solving and Proofs
(parti di), Prentice Hall.
Testi di consultazione:
- A. BRUALDI, Introductory Combinatorics,
North Holland.
- T. C ORMEN , C. L EISERSON , R. R IVEST ,
Introduction to Algorithms (parti di), MIT
press.
SISTEMI OPERATIVI
Docente
Prof. Marino Miculan
Crediti
5
Pagina del corso
http://www.dimi.uniud.it/~miculan/Did
attica/SOB04/
Finalità del corso
I sistemi operativi sono parte essenziale
171
programmi - biotecnologie triennale
di un sistema di calcolo. Nella maggior
parte dei casi, essi implementano la vera
piattaforma sulla quale si svolge tutta
l’attività di analisi, sviluppo, implementazione ed esecuzione dei sistemi software,
incapsulando ed astraendo dal sistema
hardware sottostante. Questo corso mira
a presentare alcuni concetti fondamentali
relativi ai sistemi operativi e alle loro funzionalità primarie (gestione dei processori, della memoria e del file system). Di
notevole importanza, inoltre, per il biotecnologo computazionale sono le basi
fondamentali di programmazione concorrente, e gli aspetti concernenti il calcolo parallelo e distribuito. I concetti generali previsti per il corso, ampliamente
coperti dal materiale bibliografico consigliato, verranno discussi a lezione in
maniera relativamente indipendente da
specifici sistemi operativi. Essi saranno
comunque esemplificati facendo riferimento a comuni sistemi operativi (Unix,
Linux, Windows XP, ecc.) Parallelamente
alle lezioni teoriche in aula, verranno
tenute delle lezioni pratiche in laboratorio, offrendo allo studente l’opportunità
di mettere in pratica gli aspetti teorici e di
verificarne la comprensione. Inoltre tale
attività pratica forniranno le nozioni di
base relative all’uso di linguaggi di scripting, dell’amministrazione di sistema
Programma
- Aspetti generali; Richiami di Architetture.
- Processi e Thread.
- Programmazione concorrente.
- Gestione della memoria.
- Il file system.
- Sistemi con processori multipli.
- Sistemi e servizi di rete.
Modalità d’esame
Esame orale, con progettino di laboratorio per casa.
Bibliografia
- ANCILOTTI, BOARI, CIAMPOLINI, LIPARI,
Sistemi Operativi, McGraw-Hill, 2004.
ISBN: 88-386-6069-7.
STATISTICA 1
Docente
Prof. Paolo Vidoni
Crediti
6
Finalità del corso
L’obiettivo del corso è introdurre lo studente a quelli che sono i concetti fondamentali della Statistica descrittiva e inferenziale, quale strumentazione di base
per l’analisi dei dati e lo studio dei fenomeni aleatori. Tali nozioni verranno presentate sottolineando l’ambito delle
applicazioni, pur senza tralasciare gli
aspetti formali. In particolare si forniranno alcuni strumenti di base necessari alla
comprensione della letteratura scientifica
e alla esecuzione delle attività proprie
dell’operatore in biotecnologie.
Programma
1) Statistica descrittiva: Caratteri statistici;
Serie, seriazioni e distribuzioni di frequenza; Indici di posizione e di variabilità. 2) Calcolo delle Probabilità: Probabilità elementare; Variabili casuali; Modelli
probabilistici; Variabili casuali multivariate e convergenza. 3) Inferenza statistica: Stima puntuale; Intervalli di confidenza; Verifica di ipotesi; Disegno sperimentale ed Analisi della varianza; Cenni
sull’analisi statistica multivariata.
Modalità d’esame
L’esame consiste in una prova scritta
seguita, per i sufficienti, da una prova
orale. Entrambe le prove dovranno essere
superate nello stesso appello.
172
programmi - biotecnologie triennale
Bibliografia
- CAMUSSI, MÖLLE, OTTAVIANO, SARI
GORLA, Metodi Statistici per la sperimentazione biologica, seconda edizione, Zanichelli, 1995.
- G. CICCHITELLI, Probabilità e Statistica,
Maggioli Editore, 1984.
- Appunti delle lezioni.
delle applicazioni, pur senza tralasciare
gli aspetti formali.
Programma
- Complementi di inferenza statistica.
- La regressione lineare.
- Disegno sperimentale e analisi della
varianza.
- Analisi statistica multivariata.
- Catene di Markov (cenni).
STATISTICA 2
Crediti
4
Finalità del corso
L’obiettivo del corso è approfondire i concetti fondamentali della Statistica inferenziale e presentare le principali tecniche statistiche, utili per l’analisi di dati
sperimentali, con particolare riferimento
alle scienze biologiche. Tali nozioni
saranno presentate enfatizzando l’ambito
Modalità d’esame
L’esame consiste in una prova scritta
seguita, per i sufficienti, da una prova
orale. Entrambe le prove dovranno essere
superate nello stesso appello.
Bibliografia
- CAMUSSI, MÖLLE, OTTAVIANO, SARI
GORLA, Metodi Statistici per la sperimentazione biologica, seconda edizione, Zanichelli, 1995.
- Appunti delle lezioni.
173
programmi - LS informatica
CORSO DI LAUREA
SPECIALISTICA IN
INFORMATICA
ALGORITMI AVANZATI
Docente
Prof. Alberto Policriti
Crediti
6
Programma
Algoritmi di confronto di stringhe. Algoritmi randomizzati e di approssimazione.
Analisi ammortizzata degli algoritmi.
Alberi di ricerca e alberi auto-aggiustanti.
Bibliografia
- Appunti delle lezioni.
- T.H. C ORMEN , C.E. L EISERSON , R.L.
RIVEST, Introduction to Algorithms, 2nd edition, MIT Press, 2001.
- D. GUSFIELD, Algorithms on Strings, Trees
and Sequences, Cambridge University
Press, 1997.
- R. MOTWANI, P. RAGHAVAN, Randomized
Algorithms, Cambridge University Press,
1995.
- R.E. TARJAN, Data Structures and Network
Algorithms, SIAM press, 1983.
ALGORITMI E COMPLESSITÀ
Docente
Prof. Carla Piazza
Crediti
6
Finalità del corso
Il corso si propone di presentare i principali risultati nel campo della complessità
computazionale degli algoritmi con particolare attenzione alle classiche gerarchie
di classi di complessità astratte ed alle tecniche di studio dei problemi nel campo.
Ci si propone inoltre di presentare agli
studenti le idee e le nozioni fondamentali
relative ai più promettenti ed innovativi
modelli computazionali proposti dalla
comunità scientifica.
Programma
- Classi di complessità. Il teorema di
gerarchia sulle classi di complessità. Il
Gap theorem. Teorema di Savitch. Il teorema di Immermann-Szelepscenyi e conseguenze. Riduzioni e completezza. Classi esterne ad NP.
- Quantum Computing. Macchina di
Turing quantistica. Macchina di Turing
Quantistica Universale. Classi di complessità quantistica. Algoritmi quantistici.
- DNA Computing. Il modello di Adleman e Lipton. Soluzione di SAT ed altri
problemi NP-completi. Simulazione di
macchine di Turing.
- Algoritmi. Il problema della riduzione di
automi e la bisimulazione. Algoritmo di
Hopcroft. Algoritmo di Paige-Tarjan.
Algoritmo di Paige-Tarjan-Bonic. Il problema della simulazione ed algoritmi efficienti per la sua risoluzione.
Bibliografia
- C.H. P APADIMITRIOU , Computational
Complexity, Addison Wesley, 1995.
- Articoli e dispense.
BASI MATEMATICHE PER LA
REALTÀ VIRTUALE
(tace nell’a.a. 2007/08)
Crediti
6
Finalità del corso
La realtà virtuale intende studiare un
insieme di metodi per la decodifica sen-
174
programmi - LS informatica
soriale di modelli costruiti con il computer. Al presente molti tentativi sono stati
fatti per la decodifica di modelli coinvolgenti tutti e cinque sensi ma i risultati più
importanti riguardano i metodi di esplorazione e interazione spaziale tridimensionale. Al fine di ottenere questi risultati
è necessario sfruttare metodi matematici
che riguardano l’analisi, la geometria differenziale e la geometria proiettiva.
Opportunamente applicando questi
metodi è possibile costruire sistemi di
rappresentazione della realtà e di interazione spaziale; in tal modo viene anche
simulata la presenza di operatori umani
in ambienti virtuali esistenti solo in
forma digitale all’interno del computer.
In questo corso si presenta la teoria e le
applicazioni di tali metodi.
BASI DI DATI SPAZIALI
Docente
Prof. Angelo Montanari
Dott. Alessandra Chiarandini
Crediti
6
Programma
Obiettivo fondamentale del corso è evidenziare le caratteristiche peculiari
dell’informazione spaziale e descrivere i
concetti, le tecniche, le metodologie e gli
strumenti sviluppati nell’ambito delle
basi di dati per il trattamento di informazioni spaziali/geografiche. Verranno
presentati i modelli dei dati, i linguaggi di
definizione e manipolazione dei dati e le
metodologie di progettazione sviluppati
nell’ambito delle basi di dati spaziali. Particolare attenzione verrà prestata alle tecniche di rappresentazione degli oggetti
spaziali e agli algoritmi che implementano le operazioni sui dati spaziali.
Infine, verranno analizzati i legami tra le
basi di dati spaziali e i sistemi informativi
geografici (GIS). Dopo aver superato
l’esame si ritiene che lo studente sia in
grado di progettare basi di dati spaziali di
una certa complessità e di analizzare le
caratteristiche funzionali e tecnologiche
delle basi di dati spaziali, in modo da
comprenderne il funzionamento e sfruttarne adeguatamente le potenzialità
specie nell’ambito dei sistemi informativi
territoriali. Parte I. Introduzione generale: basi di dati spaziali e sistemi informativi geografici, le caratteristiche fondamentali delle basi di dati spaziali, la
manipolazione dei dati spaziali. La rappresentazione di oggetti spaziali: modelli
dei dati spaziali e modalità di rappresentazione, la visione a campi e la visione ad
oggetti, i formati raster e vettoriale, modelli logici per basi di dati spaziali, metodi
di rappresentazione (liste di coordinate
vs. strutture basate sulla topologia). Le
relazioni topologiche, le relazioni basate
sulla direzione e le relazioni basate sulla
distanza. La geo-algebra relazionale.
Estensioni spaziali di SQL. Il linguaggio
Oracle Spatial. La progettazione di una
base di dati spaziale: la progettazione concettuale e la progettazione logica. Gli indici spaziali: elementi di base, tipi di indici
(space-driven vs. data-driven), grid file e
fixed grid, quadtree, R-tree. Il Geography
Markup Language (GML). Parte II. Introduzione ai sistemi informativi geografici.
La tecnologia dei sistemi informativi
geografici. Modelli dei dati e customizzazione. Creazione e gestione di una base
di dati geografica. Elementi di cartografia.
L’informazione territoriale strutturata. Il
sistema GeoMedia. WebGIS. Metadati,
qualità dei dati e interoperabilità. Telerilevamento ed elaborazione delle immagini. La rete GPS.
Bibliografia
Testi adottati:
- F. RIGAUX, M. SCHOLL, A. VOISARD, Spa-
programmi - LS informatica
tial Databases with Application to GIS,
Academic Press, 2002. (È, inoltre, disponibile in rete il materiale didattico predisposto da A. Chiarandini, D. Gubiani e A.
Montanari).
Altri testi di riferimento:
- M.F. WORBOYS, GIS: A Computing Perspective, Taylor Francis Ltd, 1995.
- S. SHEKHAR, S. CHAWLA, Spatial Databases: a Tour, Paerson Education Inc., 2003.
- T. BERNHARDSEN, Geographic Information
Systems: an Introduction, third edition,
John Wiley & Sons, 2002.
COMMERCIO ELETTRONICO
Docente
Dott. Roberto Pugliese
Crediti
8
Finalità del corso
Scopo del corso è di analizzare in dettaglio i principali passi, le problematiche da
affrontare e le soluzioni esistenti per la
progettazione di servizi di commercio
elettronico. In particolare, verranno analizzate le diverse dimensioni che è necessario conoscere al fine di sviluppare iniziative efficaci di commercio elettronico:
l’acquirente (ad es., stili di acquisto, problematiche di fiducia, problematiche di
usabilità), il fornitore del servizio (ad es.,
Internet marketing, merchandising, strategie di commercio elettronico), il servizio (struttura dei siti di commercio elettronico attuali e linee di tendenza evolutive), il progetto del servizio (tipiche problematiche da affrontare, strumenti
disponibili, linee guida, supporto
all’acquirente nella navigazione, ricerca e
confronto fra prodotti).
Programma
- Concetti base di commercio elettronico.
175
Definizione di E-commerce (EC). EC vs.
E-business. Pure vs. Partial EC. ‘Brickand-mortar’ vs. EC. Cenni storici ed evoluzione tecnologica (EFT, EDI, VAN,
Internet, Intranet, Extranet). Business
models. Esempi di business models innovativi. Supply chain. Tipologie di portali.
Discipline che contribuiscono all’EC.
- Tipologie di Commercio Elettronico.
Business-to-Business (B2B). Business-toConsumer (B2C). Consumer-to-Consumer (C2C). Intra-business. Altre
tipologie. Casi di studio stranieri ed italiani. E-market. E-exchange. Dynamic
pricing. Interorganizational Information
Systems. Mobile Commerce.
- Impatto dell’e-commerce sulle aziende e
sulle organizzazioni. Strategic Systems,
Total Quality Management (TQM), Justin-time (JIT), Business Process Re-engineering (BPR), alleanze, uso dell’Information Technology (IT) ed EC. Vantaggi
e svantaggi del commercio elettronico.
Caso di studio dettagliato: le agenzie viaggi ed EC. La digitalizzazione di prodotti,
servizi e processi. Disintermediazione e
reintermediazione. Effetti sulle attività
commerciali tradizionali.
- Applicazioni Business-to-consumer
(B2C). Caso di studio dettagliato: la vendita di libri on-line. Caratteristiche e funzionalità necessarie in un sito B2C. Il processo d’acquisto. Il comportamento dei
consumatori nel processo d’acquisto.
Ausili on-line al processo d’acquisto. Etailing business models. Esempi di business model B2C, Direct Marketing. Strategie ‘Click-and-mortar’. Channel conflict.
- Internet Marketing. Marketing plan.
Marketing vs. Merchandising. Ruolo
delle ricerche di mercato nel commercio
elettronico. Metodi per le ricerche di mercato tradizionali ed on-line. Segmentazione. Il comportamento dei consumatori
on-line: tipologie. Peculiarità della situazione italiana. Caratteristiche personali e
176
demografiche degli utenti Internet. Strategie di personalizzazione e marketing
one-to-one.
- Customer Relationship Management
(CRM). Tipi di funzionalità offerte ai
clienti. Strumenti di servizio ai clienti.
Uso di Agenti Intelligenti nelle diverse
fasi del processo d’acquisto. Call center/Teleweb.
- Internet Advertising. Scopi e motivazioni per la pubblicità su Internet. Ad views,
impressions. Clickthrough ratio. CPM.
Tipi di banner. Targeted (one-to-one)
advertising. Metodi di advertisement.
Strategie pull e push. Eventi e promozioni on-line. Valutare l’efficacia della pubblicità su Internet. I cataloghi on-line.
- Applicazioni Business-to-business
(B2B). Company-centric B2B. From Traditional to Internet-Based EDI. E-Marketplaces and B2B. Extranets. B2B Support
Services.
- Altri tipi di applicazioni del Commercio
Elettronico. Consumer-to-Consumer
(C2C). Dynamic Pricing, Auction. Service
Industries, Online Publishing, and
Knowledge Dissemination. Intrabusiness, e-Government. E-Communities.
- Mobile Commerce. Wireless and mobile
technologies. M-commerce applications.
Mobile marketing, advertising and customer service. Location-based commerce.
Current limitations of M-commerce.
- Realizzazione di servizi di Commercio
Elettronico. Infrastructure. Tools. Page
design. Web programming. E-Commerce
Security. Electronic Payment Systems.
Order Fulfillment, Logistics, and Supply
Chain Management.
- Interfacce utente per applicazioni di
Commercio Elettronico. Linee guida.
Progetto dell’interfaccia. Recenti tendenze evolutive: interfacce per 1-to-1 e-commerce, mobile commerce, experiential ecommerce.
Modalità d’esame
L’esame si compone di una prova scritta.
programmi - LS informatica
Bibliografia
- E. TURBAN, J. LEE, D. KING, M. WARKENTIN, H.M. CHUNG, Electronic Commerce: a
Managerial Perspective, 2nd edition, Prentice-Hall, 2002.
- G.P. SCHNEIDER, J.T. PERRY, Electronic
Commerce, 2 nd edition, Thomson Learning, 2001.
COMPILATORI
Docente
Prof. Maria Staniszkis
Crediti
6
Programma
- Sistemi di rescrittura: definizioni, proprietà, esempi.
- Analisi lessicale: la costruzione di
Thompson, la costruzione di Berri-Sethi,
generazione degli analizzatori lessicali.
- Analisi sintattica: l’algoritmo di CockeYounger-Asami, analisi top-down: analizzatori LL; analisi bottom-up: analizzatori
LR; le proprietà delle grammatiche e linguaggi LR.
- Valutatori semantici.
- Errori e ricovero dagli errori sintattici.
Bibliografia
- A.V. AHO, R. SETHI, D. ULLMAN, Compilers, Principles, Techniques and Tools, Addison Wesley, 1987.
- S. SIPPU, E. SOISALON-SOININEN, Parsing
Theory, vol. 1 e 2, Springer.
- G. BERRY, R. SETHI, From Regular Expressions to Deterministic Automata, Theoretical Computer Science, 48, 1986, pp. 117126.
- Altro materiale da indicare durante il
corso.
programmi - LS informatica
COMPLEMENTI DI COMPILATORI
Docente
Prof. Maria Staniszkis
Crediti
6
Programma
Il corso si articola in due parti distinte. La
prima, approfondendo le tematiche introdotte nel corso Compilatori, si occupa
delle ottimizzazioni associate al processo
di compilazione. La seconda parte affronta le problematiche connesse con la compilazione dei linguaggi orientati agli
oggetti. Si parte con l’approfondimento
dei concetti associati con la teoria dei
oggetti considerando il linguaggio ML
come esempio. Successivamente si discute la problematica di compilare programmi espressi nei comuni linguaggi orientati agli oggetti come C++, Java, con un
particolare attenzione al trattamento del
polimorfismo.
Bibliografia
- A.V. AHO, R. SETHI, J.D. ULLMAN, Compilers. Principles, Techniques and Tools, Addison Wesley, 1986.
- A.W. APPEL, Modern Compiler Implementation in Java/ML/C, Cambridge University Press, 1998.
- M. ABADI, L. CARDELLI, A theory of Objects,
Springer 1996.
- H.R. N IELSON , F. N IELSON , Semantics
with Applications: Model Based Program
Analysis, Computer Science Department,
Aarhus University, Denmark, 1996.
COMPLEMENTI DI BASI DI DATI
Docente
Prof. Angelo Montanari
Crediti
6
177
Programma
Parte 1 - La progettazione delle basi di dati
(complementi). La progettazione concettuale delle basi di dati e il modello Dataflow: i costrutti di base del modello Dataflow (processi, flussi dei dati, depositi dei
dati e interfacce), diagrammi contesto e
diagrammi di flusso dei dati, progetto
funzionale basato sul modello Dataflow;
progetto di sistemi informativi: un
approccio integrato alla progettazione
delle funzioni e dei dati (sintesi degli
schemi ER esterni e loro integrazione). La
progettazione logica dei dati: soddisfacibilità e violazione di dipendenze funzionali, chiusura di insiemi di dipendenze,
un calcolo delle dipendenze (gli assiomi
di Armstrong), chiusura di insiemi di
attributi, algoritmi per il calcolo della
chiusura di insiemi di attributi, insiemi
di dipendenze logicamente equivalenti,
coperture minimali, scomposizioni e loro
proprietà, forme normali e normalizzazione, algoritmi per la determinazione di
scomposizioni in specifiche forme normali.
Parte 2 - Il linguaggio SQL (complementi). SQL e i linguaggi di programmazione:
introduzione, approcci alla programmazione per basi di dati, le procedure
memorizzate, i trigger, SQL embedded
statico (interrogazioni semplici e complesse, l’utilizzo dei cursori) e dinamico
(esecuzione immediata ed esecuzione in
due fasi), l’utilizzo di librerie di funzioni:
SQL/CLI (Call Level Interface), ODBC e
JDBC (cenni).
Parte 3 - L’organizzazione fisica dei dati.
Memorizzazione dei record ed organizzazione dei file primari: introduzione, strumenti e tecniche per la gestione della
memoria secondaria, buffering dei blocchi, memorizzazione di file di record su
disco, operazioni sui file, file di record
non ordinati (heap file), file di record
ordinati (sorted file), tecniche di hashing,
altre possibili organizzazioni dei file pri-
178
mari, uso della tecnologia RAID per
parallelizzare l’accesso a disco. Strutture
di indicizzazione dei file: tipi di indici
ordinati di livello singolo (primari, di clustering, secondari), indici multilivello,
indici multilivello dinamici che utilizzano B-alberi e B + -alberi, altri tipi di indici.
Parte 4 - Tecnologia delle basi di dati centralizzate. La nozione di transazione:
introduzione, proprietà desiderabili delle
transazioni, scheduling e recupero delle
transazioni, tecniche di serializzazione,
supporto alle transazioni in SQL. Tecniche di controllo della concorrenza: problematiche, architettura, anomalie delle
transazioni concorrenti, tecniche basate
su viste, conflitti, locking a due fasi (2PL e
2PL stretto) e timestamp, tecniche multiversione, granularità dei data item. Il
gestore del buffer: architettura del buffer
manager, primitive per la gestione del
buffer, politiche di gestione del buffer,
relazione tra il gestore del buffer e il file
system. Tecniche di controllo dell’affidabilità: concetti di base, architettura del
controllore dell’affidabilità, memoria stabile, organizzazione del log, gestione
delle transazioni, gestione dei guasti. Elaborazione e ottimizzazione delle interrogazioni: i cataloghi di sistema; ottimizzazione delle interrogazioni (rappresentazione interna delle interrogazioni, profili
delle relazioni, ottimizzazione basata sui
costi); progettazione fisica di una base di
dati. La sicurezza nelle basi di dati: introduzione, controllo obbligatorio degli
accessi per supportare livelli multipli di
sicurezza, la sicurezza nelle basi di dati
statistiche (cenni).
Parte 5 - Basi di dati distribuite. Introduzione ai DBMS distribuiti, elementi di
base dell’architettura client-server, frammentazione dei dati, allocazione dei dati,
livelli di trasparenza, tipi di sistemi di
basi di dati distribuite, elaborazione delle
interrogazioni in basi di dati distribuite,
programmi - LS informatica
controllo della concorrenza e dell’affidabilità nelle basi di dati distribuite.
Parte 6 - Basi di dati e World Wide Web
(cenni). Nozioni di base (Internet, World
Wide Web, HTML, protocollo HTTP),
gateway e form, tecniche e strumenti per
l’accesso a basi di dati attraverso il Web,
accesso a basi di dati tramite programmi
CGI, strumenti di sviluppo, limiti del protocollo CGI, soluzioni basate sul server,
soluzioni basate sul client, sistemi informativi sul web, progettazione concettuale
di applicazioni web.
Parte 7 - Argomenti conclusivi (cenni).
Basi di dati per il supporto alle decisioni
(data warehouse); dati semistrutturati in
XML; basi di dati a oggetti e ibride (ad
oggetti e relazionali); basi di dati attive;
basi di dati temporali e spaziali.
Bibliografia
Testi adottati:
- P. A TZENI , S. C ERI , P. F RATERNALI , S.
P ARABOSCHI , R. T ORLONE , Basi di dati:
architetture e linee di evoluzione, McGrawHill, 2003.
- R. ELMASTRI, S. NAVATHE, Fundamentals
of Database Systems, 5th edition, Pearson
International Education / Addison
Wesley, 2007.
In alternativa:
- R. ELMASTRI, S. NAVATHE, Sistemi di basi
di dati. Complementi, quarta edizione,
Pearson Education Italia / Addison
Wesley, 2005.
Altri testi di riferimento:
- J.D. ULLMAN, Principles of Databases and
Knowledge-Base Systems, volume I, Computer Science Press, 1988.
- SILBERSCHATZ, H.F. KORTH, S. SUDARSHAN, Database System Concepts, 4th edition, McGraw-Hill, 2002.
- A. ALBANO, Costruire sistemi per basi di
dati, Addison-Wesley, 2001.
- A. ALBANO, G. GHELLI, R. ORSINI, Fondamenti di basi di dati, Zanichelli, 2005.
- P. A TZENI , S. C ERI , S. P ARABOSCHI , R.
programmi - LS informatica
TORLONE, Basi di dati: modelli e linguaggi di
interrogazione, seconda edizione,
McGraw-Hill, 2006.
DATA WAREHOUSE
Docente
Dott. Anna Marzona
Crediti
6
Finalità del corso
Il corso si propone di fornire all’allievo le
nozioni fondamentali sui sistemi informazionali, assumendo come prerequisito
una sufficiente conoscenza delle basi di
dati di tipo relazionale. L’accento viene
posto sulle tematiche legate ai sistemi di
data warehousing (cosa sono, come si
progettano) e sull’analisi multidimensionale dei dati (come viene condotta, quali
sono i principali vantaggi e svantaggi).
Parte integrante del corso sono le esercitazioni di laboratorio, basate su casi pratici aziendali.
Prerequisiti
È richiesta una buona conoscenza dei
contenuti dell’insegnamento di Basi di
dati 1.
Programma
- I Sistemi di Supporto alle Decisioni
(DSS). Motivazioni, metodologie e architetture.
- Distinzione tra sistema informazionale
e sistema operazionale. Approfondimento sui sistemi informazionali: il modello
multidimensionale e l’analisi OLAP.
Data Warehouse e Data Mart: definizioni,
obiettivi d’uso, differenze.
- Progettazione di Data Warehouse: il
ciclo di vita dei sistemi di data warehousing. Analisi dei requisiti e riconciliazione delle fonti dati. Architetture a diversi
179
livelli. Il modello concettuale: Data Fact
Model (DFM). I modelli logici: MOLAP,
ROLAP, HOLAP. Schemi a stella e a fiocco di neve. Il trattamento delle variazioni
nei fatti e nelle dimensioni.
- Politiche di popolamento. Generazione
e aggiornamento della struttura dati multidimensionale. Meccanismi di alimentazione totale e incrementale. Le procedure
di Estrazione, Trasformazione e caricamento (ETL): principali problemi da
affrontare, esempi di possibili soluzioni.
- Strumenti per l’analisi dei dati: Reporting, navigazione OLAP, Data Mining.
Approfondimenti
sull’approccio
Hypotheses driven e sull’analisi OLAP.
- Cenni sul Data Mining: problematiche
di base, ambiti di applicazione, modalità
operative.
- Analisi e progettazione di un case-study
aziendale con passaggio dal modello relazionale al modello multidimensionale.
Modalità d’esame
32 ore di lezione ed esercitazioni; sviluppo di progetto in piccoli gruppi; prova
orale individuale finale.
Bibliografia
- M. GOLFARELLI, S. RIZZI, Data Warehouse: teoria e pratica della progettazione,
McGraw-Hill, 2006.
- M. PIGHIN, A. MARZONA, Sistemi Informativi Aziendali - Struttura e applicazioni
(Parte 3: I Sistemi Informazionali), Pearson Italia, 2004.
- Materiale didattico disponibile sul sito
dell’Università.
Altri testi di consultazione:
Per un inquadramento generale dei problemi legati ai sistemi di supporto alle
decisioni si vedano:
- M. PIGHIN, A. MARZONA, Sistemi Informativi Aziendali - Struttura e applicazioni
(Parte 1 e Parte 2), Pearson Italia, 2004.
- G. BRACCHI, G. MOTTA, Processi Aziendali e Sistemi Informativi, Franco Angeli,
2000.
180
programmi - LS informatica
Per richiami al modello relazionale, il
testo di riferimento del corso di Basi di
Dati
- A TZENI , C ERI , P ARABOSCHI , T ORLONE ,
Basi di Dati, seconda edizione, McGrawHill, 1999.
Per case study in diversi settori si rimanda la classico:
- R. KIMBALL, M. ROSS, Data Warehouse La guida completa, Hoepli, 2002.
Per approfondimenti sul tema del Data
Mining:
- J.HAN, M. KAMBR, Data Mining, Morgan
Kaufman, 2001.
analisi di realizzazioni di noti sound designers. L’esame consiste in un test finale e
nella realizzazione di un progetto.
Bibliografia
- V. LOMBARDO, A. VALLE, Audio e Multimedia, seconda edizione, APOGEO.
- B. BARTLETT, J. BARTLETT, Tecniche di registrazione, APOGEO.
- R. P APEN , Virtual Instruments. User’s
manual.
- Lucidi delle lezioni e materiali scaricati
dal web.
FONDAMENTI
DELL’INFORMATICA 2
DESIGN DEL SUONO
Docente
Prof. Elio Toppano
Crediti
3
Finalità del corso
Obiettivo fondamentale del corso è
l’acquisizione dei concetti, degli strumenti e delle metodologie di base per
l’analisi e la progettazione di oggetti
sonori finalizzati alla comunicazione (es.
loghi sonori, suoni per interfacce e produzioni multimediali, sonorizzazioni di
eventi e luoghi).
Programma
Analisi spettromorfologica del suono.
Caratterizzazione percettiva degli oggetti
sonori e tipologie di ascolto. Tecniche di
sintesi. Effetti e processori di segnale.
Strumenti virtuali. Editing, missaggio e
registrazione. Montaggio di oggetti sonori. L’uso del suono con le immagini.
Applicazione: realizzazione di coreografie sonore finalizzate ad obiettivi comunicativi.
Modalità d’esame
Il corso comprende esercizi di ascolto e
Docente
Prof. Agostino Dovier
Crediti
6
Finalità del corso
Approfondire le competenze degli argomenti già trattati nel corso di Fondamenti dell’Informatica 1. Dopo aver superato
l’esame si ritiene che lo studente sia in
grado di discutere la decidibilità o meno
(la polinomialità o meno) di problemi,
anche utilizzando tecniche raffinate di
riduzione, e conosca gli aspetti rilevanti
della teoria dei linguaggi formali.
Programma
Il corso si divide in tre parti: linguaggi
formali, calcolabilità e complessità. Linguaggi formali. Richiami sui linguaggi
regolari. Automi a stati finiti deterministici e non-deterministici, e loro equivalenza. Espressioni regolari. Pumping Lemma
per i linguaggi regolari e sue applicazioni.
Proprietà di chiusura e di decidibilità dei
linguaggi regolari. Il teorema di MyhillNerode; unicità e determinazione
dell’automa minimo. Linguaggi liberi dal
181
programmi - LS informatica
contesto. Grammatiche libere dal contesto e alberi di derivazione. Grammatiche ambigue. Le forme normali di
Chomsky e di Greibach. Il pumping
lemma per i linguaggi liberi e le sue
applicazioni. Proprietà di chiusura e di
decidibilità dei linguaggi liberi. Grammatiche lineari destre e sinistre, grammatiche di tipo 0 e 1 e gerarchia di Chomsky. Calcolabilità. Richiamo dei formalismi delle funzioni primitive ricorsive,
ricorsive parziali e Macchine di Turing.
Equivalenza tra le funzioni ricorsive
parziali e le funzioni Turing-calcolabili.
Calcolabilità e Linguaggi di Programmazione. Il linguaggio While: Sintassi,
semantica e funzioni While-calcolabili.
Turing completezza del linguaggio
While. Il linguaggio For. Equivalenza tra
funzioni For-calcolabili e funzioni primitive ricorsive. Indecidibilità dell’halting
problem senza aritmetizzazione. Il teorema S-m-n per la While calcolabilità e gli
Specializzatori. Il Teorema di ricorsione
di Kleene, il Teorema di Rice e le proprietà di programmi e il Teorema di RiceShapiro. Applicazioni alla programmazione. Riducibilità funzionale. Studio
della relazione. Insiemi ricorsivi e completi. Insiemi creativi e produttivi. Secondo Teorema di Ricorsione e Teorema di
Myhill. Insiemi semplici: esistenza di un
insieme semplice. Complessità. Problemi e linguaggi. Problemi decisionali e
funzionali. Classi di Complessità in
tempo deterministiche: Riassunto dei
principali risultati. Classi non deterministiche e classi in spazio. Principali risultati. Riduzioni, completezza, ed esempi.
Teoremi di Cook. NP-completezza di
alcuni problemi fondamentali mediante
riduzione.
Modalità d’esame
Prova scritta ed orale.
Bibliografia
- A. DOVIER, R. GIACOBAZZI, Fondamenti
dell’Informatica: Linguaggi Formali, Calcolabilità e Complessità, disponibile on-line.
- N.J. CUTLAND, Computability: an Introduction to Recursive Function Theory, Cambridge Univ. Press, Cambridge 1980.
- J.E. HOPCROFT, J.D. ULLMAN, Introduction to Automata, Languages and Computation, Addison-Wesley, Reading 1979.
- C.H. P APADIMITRIOU , Computational
Complexity, Addison Wesley, 1995.
GEOMETRIA COMPUTAZIONALE
Docente
Prof. Adriano Pascoletti
Crediti
6
Finalità del corso
Acquisire familiarità con una serie di problemi di natura geometrica la cui soluzione richiede la conoscenza di strutture dati
e tecniche algoritmiche sorte nell’ambito
della geometria computazionale. Utilizzo
delle tecniche di base per lo studio di problemi più complessi. Capacità di valutazione critica dell’efficacia e della robustezza degli algoritmi e delle strutture
dati impiegati per la soluzioni dei problemi proposti.
Programma
Rappresentazione di oggetti geometrici;
intersezioni di insiemi di segmenti; triangolazioni; problemi di point location, vicinanza e visibilità; pianificazione del
movimento.
Modalità d’esame
Prova orale.
Bibliografia
- M. DE BERG, M. VAN KREVELD, M. OVERMARS , O. S CHWARZKOPF , Computational
182
programmi - LS informatica
Geometry - Algorithms and Applications,
Springer Verlag, 1997.
- A. PASCOLETTI, dispense del corso.
LABORATORIO DI
GEOMETRIA COMPUTAZIONALE
Finalità del corso
Realizzazione di un software non banale
al fine di mettere lo studente di fronte ai
problemi tipicamente incontrati nel passaggio dalla formulazione di un algoritmo di geometria computazionale ad una
completa ed affidabile implementazione.
Modalità d’esame
Discussione del software sviluppato.
GRAFICA 3D INTERATTIVA
base e avanzate - uso di di texture: tecniche di base e avanzate - rendering basato
su immagini - strutture dati spaziali algoritmi di culling - programmable shaders - analisi e uso della libreria OpenGL
- analisi e uso di un motore per il rendering real-time.
Modalità d’esame
L’esame consiste nella realizzazione di
un progetto che utilizzi, approfondisca o
estenda alcuni degli argomenti o strumenti visti nel corso, ed in una prova
orale sui contenuti del corso.
Bibliografia
- T. A KENINE -M ULLER , E. H AINES , RealTime Rendering, A.K. Peters Ltd. ISBN
1568811829.
- E. ANGEL, Interactive Computer Graphics:
a Top-Down Approach with OpenGL, Addison-Wesley. ISBN 020138597X.
Docente
Dott. Roberto Ranon
HIGH PERFORMANCE
COMPUTING
Crediti
6
Pagina del corso
http://www.dimi.uniud.it/ranon/int3d.h
tml
Finalità del corso
Il corso tratta i principali algoritmi e strumenti usati nella grafica 3D interattiva e
nelle sue applicazioni (videogame, visualizzazione scientifica). Vengono esaminati sia aspetti teorici (come le principali
tecniche per il rendering 3D real-time),
sia aspetti pratici nell’uso delle tecnologie
oggi disponibili (in particolare, librerie e
motori grafici).
Programma
- La pipeline per il rendering real-time - le
primitive grafiche - cenni a trasformazioni - illuminazione e shading: tecniche di
Docente
Prof. Dario Fasino
Crediti
6
Finalità del corso
Questo corso, dedicato al calcolo ad alte
prestazioni, intende familiarizzare lo studente con le principali problematiche del
calcolo non sequenziale (ossia del calcolo
effettuato avvalendosi di un unico processore di struttura hardware tradizionale),
nei suoi molteplici aspetti (architetture,
linguaggi, algoritmi, programmazione),
con particolare riguardo alla risoluzione
di problemi di calcolo scientifico su architetture di tipo cluster. Il corso mirerà a
trasmettere concetti di programmazione
parallela non legati a particolari tecnolo-
183
programmi - LS informatica
gie o ambienti di calcolo, spendibili in
vari ambiti applicativi.
Programma
Introduzione alle architetture parallele:
tassonomia di Flynn, architetture a
memoria condivisa o distribuita, macchine vettoriali, superscalari, multiprocessore, cluster. Topologie di connessione tra i processori e la memoria. Algoritmi di base per elaboratori paralleli a
memoria distribuita. Sincronizzazione e
comunicazione dei processi. Metodologie
e criteri per lo sviluppo di algoritmi paralleli: decomposizione dei dati, decomposizione funzionale, tecniche di ottimizzazione seriale e parallela, granularità,
load balancing. Il modello message-passing: caratteristiche e funzioni di base;
comunicazioni collettive e punto-punto;
primitive sincrone e asincrone. Cenni
alle librerie BSP, PVM e MPI. Analisi
delle prestazioni: Concetti e misure di
efficienza, scalabilità e speed-up di un
algoritmo parallelo. Legge di AmdahlWare e di Gustafsson. Isoefficienza.
Overhead parallelo e analisi dei tempi di
comunicazione. Calcolo scientifico ad
alte prestazioni: Alcuni casi di studio tratti dall’algebra lineare numerica (prodotto
matrice-vettore e matrice-matrice, tecnologia delle matrici sparse, BLAS, algoritmo FFT, algoritmi veloci per matrici
con struttura) e dalla Matematica Computazionale.
Modalità d’esame
Esame finale orale, comprendente la
discussione dell’attività eventualmente
svolta durante le esercitazioni in laboratorio.
Bibliografia
- J. DONGARRA, I. DUFF, D. SORENSEN, H.
VAN DER VORST, Numerical Linear Algebra
for High-Performance Computers, SIAM,
1998.
- K. D OWD , C. S EVERANCE , High Performance Computing, O’Reilly, 1998.
- L. FOSDICK et al., An Introduction to High
Performance Scientific Computing, MIT
Press, 1996.
- P.S. PACHECO, Parallel Programming with
MPI, Morgan Kaufmann Publ., 1997.
IMMAGINI E MULTIMEDIALITÀ
Docente
Prof. Vito Roberto
Crediti
6
Finalità del corso
I corsi nell’insieme forniscono una panoramica su principi e tecniche di Riconoscimento di Forme (Pattern Recognition), e in particolare l’analisi, interpretazione e comunicazione di segnali ed
immagini. Tutti gli argomenti sono basati su esercitazioni pratiche in laboratorio,
con l’utilizzo delle attrezzature e del
software del Laboratorio Immagini del
Dipartimento di Informatica dell’Università di Udine. Informazioni sul Laboratorio Immagini sono reperibili sul sito web:
http://mvl.dimi.uniud.it/
Programma
- Elementi di visione artificiale [d2]. Introduzione alla Computer Vision. Formazione dell’immagine. Elaborazione. Modello
geometrico della telecamera. Ricostruzione da Visione Stereo. Analisi del Movimento.
- Sintesi di mondi tridimensionali. Il Linguaggio VRML (Virtual Reality Modelling
Language). Rendering 3D tramite oggetti
VRML; il colore; il movimento; il suono.
Multimedialità nei mondi 3D.
- Esercitazioni di im. Vengono utilizzati
l’ambiente software MATLAB (su licenza
The Mathworks Inc.) versione 5.1.0.421,
184
programmi - LS informatica
con l’aggiunta del pacchetto Image Processing, vers. 2.0, ed il linguaggio VRML
v.2.0.
Bibliografia
- Dispense del corso di Teoria e Tecniche
di Elaborazione dell’Immagine, a cura del
docente.
- E. TRUCCO, A. VERRI, Introductory Techniques for 3-D Computer Vision, Prentice
Hall, 1998.
INFORMATICA MEDICA
Docente
Dott. Vincenzo Della Mea
Crediti
6
Finalità del corso
Il corso di Informatica Medica si propone
di introdurre gli studenti ai problemi specifici legati all’applicazione delle metodologie e tecnologie informatiche in ambito
medico-clinico, partendo da un’introduzione alle caratteristiche dei dati e del
ragionamento in Medicina. Particolare
attenzione viene rivolta ai sistemi informativi in ambito clinico sia per i temi più
tradizionali, come le cartelle cliniche elettroniche, sia per quanto riguarda aspetti
prossimi al supporto alla decisione, come
i sistemi basati sui protocolli ed il necessario supporto costituito dalle terminologie. Nel corso verranno, inoltre, sottolineati quegli aspetti applicativi tipici
dell’ambito medico, ed al contempo
riguardanti problemi aventi anche una
valenza generale, che si configurano
come validi banchi di prova per settori di
ricerca dell’informatica, quali, ad esempio, l’elaborazione ed analisi di biosegnali e bioimmagini, e le applicazioni del
Semantic Web alla Medicina.
Programma
1. Caratteristiche dei dati e del ragionamento in Medicina.
2. La cartella clinica elettronica:
- caratteristiche;
- implementazione e standard disponibili.
3. Terminologie e classificazioni.
4. Sistemi basati sui protocolli.
5. Elaborazione di biosegnali e bioimmagini.
6. Applicazioni mediche del Semantic
Web. Casi di studio: sistemi, articoli
scientifici, seminari esterni.
Modalità d’esame
Lo studente approfondirà un tema del
corso, a scelta, mediante una delle
seguenti modalità: un seminario interno
durante lo svolgimento del corso, oppure
una relazione scritta, oppure un progetto
breve. A seguito di ciò, l’esame consiste
in un colloquio nel corso del quale verrà
verificata la capacità dello studente di
considerare e fondere sia gli aspetti teorico-metodologici propri dell’informatica
sia le esigenze applicative tipiche
dell’ambito medico-clinico.
Bibliografia
Testi consigliati:
- E.H. SHORTLIFFE, L.M. FAGAN, G. WIEDERHOLD, L.E. PERREAULT, Medical Informatics: Computer Applications in Health
Care and Biomedicine, seconda edizione,
Springer-Verlag, 2000.
- J. V AN B EMMEL , Handbook of Medical
Informatics, seconda edizione, SpringerVerlag, 2002.
- E. COIERA, Guida all’Informatica Medica,
Internet e Telemedicina, Pensiero Scientifico, 2000.
- Materiale fornito a lezione ed altre fonti
indicate dal docente. Il sito del corso si
trova all’indirizzo http://mitel.dimi.
uniud.it/med/
programmi - LS informatica
INGEGNERIA DEL SOFTWARE 2
Docenti
Prof. Maurizio Pighin
Dott. Anna Marzona
Crediti
6
Finalità del corso
Obiettivo del corso è l’approfondimento
delle principali tematiche dell’Ingegneria
del Software. Viene richiamato il ciclo di
progettazione e di vita di un prodotto
Software. Vengono poi studiati e
approfonditi gli argomenti più avanzati,
quali il configuration management, le
metodologie di test, la progettazione dei
sistemi, le metriche teoriche ed operative,
i più noti modelli di qualità di prodotto e
di processo, le metodiche di pianificazione e controllo, i principali strumenti di
lavoro. Nel correlato corso di Laboratorio
avanzato (4 CFU) viene svolto un casestudy completo, seguendo un processo di
sviluppo di un progetto Software in tutte
le fasi sia del ciclo di vita (specifiche, progetto, codifica, test, rilascio, manutenzione) che operativo (pianificazione, analisi
costi, metriche, organizzazione del lavoro, consuntivazioni economiche).
Programma
- Introduzione e Richiami Generali: le
motivazioni del Software Engineering.
Richiami alle definizioni di base. La
dimensione economica del problema. I
fattori di complessità del processo di sviluppo.
- Configuration Management: le motivazioni del Configuration Management. Il
CM-Planning. Trattamento delle versioni. Assemblaggio dei componenti e
System Building.
- Ingegneria del Software Esistente:
l’I.S.E: definizioni e problematiche. Le
metodologie di re-engineering. Le meto-
185
dologie di riuso. Lo sviluppo per il riuso e
tramite il riuso.
- Verifica e Validazione: i risultati teorici
negativi. Strategie di test. Test dinamico.
Le catene di test. I test di regressione.
L’automazione del test e l’analisi mutazionale. Test statico. Cenni sui metodi
formali di test. - Metriche: le definizioni
generali. Gli obiettivi delle misure. Le
scale di misurazione. Le misure di controllo e predittive. Il data collection. Gli
attributi interni e le loro misurazioni. La
metrica di Halstead. La metrica di Albrecht. La metrica di McCabe ed altre metriche di complessità. Gli attributi esterni e
le loro misurazioni.
- Modelli di qualità: la certificazione di
qualità e i principali modelli di certificazione di processo e di prodotto: Richiami
al modello ISO 9000, il modello CMM,
cenni su altri modelli: BOOTSTRAP,
BOOTSTRAP, SYNQUEST, SPICE. Il
modello IS0 9126.
- Valutazione e stima dei costi: l’analisi
prestazioni/costo e l’analisi delle decisioni. La stima dei costi del Software. Richiamo modello COCOMO. Altri modelli di
stima.
- Pianificazione e Controllo del Processo
Produttivo: l’organizzazione e gestione
dei gruppi di lavoro. La pianificazione ed
i suoi obiettivi. I diagrammi di Pert e gli
schemi di Gantt.
- Manutenzione: costi, stime, misurazioni, dinamica del processo manutentivo. Il
modello COCOMO.
- Extreme programming: metodologie
organizzative: pianificazione, testing.
Tecniche di sviluppo.
- Strumenti di lavoro: la tecnologia CASE:
Tools, Ambienti. Le funzionalità. Gli
strumenti di supporto nelle varie fasi del
processo di sviluppo.
Modalità d’esame
L’esame consiste nella discussione del
progetto fatto durante il laboratorio.
186
programmi - LS informatica
Alternativamente lo studente può
sostenere una prova scritta/orale sugli
argomenti del programma.
Bibliografia
- R.S. PRESSMAN, Principi di Ingegneria del
Software, quarta edizione, McGrawHill,
2005.
- I. S OMMERVILLE , Software Engineering,
settima edizione, Addison Wesley P.C.,
2004.
- N.E. F ENTON , S.L. P FLEEGER , Software
Metrics - A Rigorous and Practical Approach, 2 nd edition, PWS Publishing Company, 1997.
- A. B INATO , A. F UGGETTA , L. S FARDINI ,
Ingegneria del Software, creatività e metodo,
Pearson-Addison Wesley, 2006.
- C. GHEZZI, M. JAZAYERI, D. MANDRIOLI,
Ingegneria del Software - Fondamenti e
Principi, seconda edizione, Pearson-PrenticeHall, 2004.
- AA. VV., Metriche del software - esperienze
e ricerche, Franco Angeli, 2006.
- Materiale didattico disponibile sul sito
d’Ateneo.
INTELLIGENZA ARTIFICIALE
Docente
Prof. Carlo Tasso
Crediti
6
Finalità del corso
Il corso si propone di introdurre alcune
delle tematiche fondamentali dell’intelligenza artificiale.
Programma
Programma e bibliografia potranno subire variazioni.
1. Introduzione
- Intelligenza ed intelligenza artificiale:
concetti introduttivi e cenni storici. Agen-
ti: agenti razionali ed agenti intelligenti,
programmi agente (simplex reflex agent,
agenti che tengono traccia dell’ambiente
in cui operano, goal-based agents, utilitybased agents).
2. Rappresentazione della conoscenza in AI
- Reti semantiche.
- Reti di frames.
- Sistemi a regole di produzione.
3. Ruolo della metodologia ordinata in AI
- Medodi basati su descrizione e confronto.
- Metodi sintattici.
- Utilizzo di vincoli naturali.
- Propagazione dei vincoli, procedura di
Waltz.
- Paradigma di generazione e test.
- Metodi per la riduzione di problemi.
4. Il problema della ricerca: esplorazione
di alternative
- Formulazione di problemi come ricerca
in uno spazio di stati. Tipi ed esempi di
problemi.
- Metodi di ricerca del cammino e/o del
cammino ottimo: depth-first, breadthfirst, hill climbing, best-first, algoritmo
A*.
- Risoluzione di giochi basata sulla ricerca: algoritmo del min-max, procedura
alpha-beta, metodi euristici. 5. Apprendimento
- Cenni introduttivi.
- Alberi di decisione.
- Apprendimento delle classi attraverso
esempi.
- Apprendimento supervisionato: reti
neurali (perceptron, perceptron multistrato, alberi di reti neurali), algoritmo
back-propagation.
- Apprendimento non supervisionato: reti
auto-organizzanti.
- Esempi applicativi (in Laboratorio).
Bibliografia
- S. RUSSEL, P. NORVIG, Artificial Intelligence: a Modern Approach, Prentice-Hall
International, 1995.
programmi - LS informatica
- P.H. WINSTON, Artificial Intelligence, 3rd
edition, Addison-Wesley, 1992.
- S. H AYKIN , Neural Networks: a Comprehensive Fundation, 2nd edition, Prentice Hall, 1999.
Testi di approfondimento:
- E.A. BENDER, Mathematical Methods in
Artificial Intelligence, IEEE Computer
Society Press, 1995.
- B.D. R IPLEY , Pattern Recognition and
Neural Networks, Cambridge University
Press, UK, 1996.
- E. GOSE, R. JOHNSONBAUGH, S. JOST, Pattern Recognition and Image Analysis, Prentice Hall, 1996.
- J. PEARL, Probabilistic Reasoning in Intelligent Systems: Networks of Plausible Inference, Morgan Kaufmann Publishers, San
Mateo, CA, 1988.
- M. GINSBERG, Essentials of Artificial Intelligence, Morgan Kaufman,1993.
INTERAZIONE UOMO-MACCHINA 1
Docente
Prof. Luca Chittaro
Crediti
6
Finalità del corso
Scopo del corso è di introdurre i principi,
le metodologie di progettazione e le diverse scelte implementative per la costruzione di software che sia usabile in modo
semplice, intuitivo, produttivo ed affidabile dagli utenti a cui è rivolto. Il raggiungimento di questo obbiettivo richiede lo
studio di tre diverse tematiche: l’uomo
(caratteristiche psicologiche dell’utente);
la macchina (strumenti per la realizzazione di interfacce con il mondo esterno);
l’interazione (analisi, progetto, valutazione di interfacce uomo-macchina). Oltre a
presentare le nozioni di base della disciplina, il corso pone anche l’accento su
187
alcuni sviluppi recenti di particolare
importanza, quali le interfacce 3D ed il
groupware.
Programma
- Introduzione: Obiettivi dell’Interazione
Uomo-Macchina e sua importanza nei
diversi settori applicativi dell’Informatica.
- Aspetti Psicologici dell’Interazione
Uomo-Macchina: Psicologia Cognitiva.
Canali sensoriali. Limitazioni e aspettative umane nei processi percettivi. Percezione visiva. Percezione auditiva. Percezione tattile. Movimento. La Memoria
umana: sensoriale, a breve termine, a
lungo termine. Differenze individuali.
Modelli mentali. Metafore. Errori umani:
slip e mistake.
- Periferiche per l’Interazione UomoMacchina: Periferiche per l’inserimento
di testo. Periferiche per il puntamento e
posizionamento. Periferiche 3D. Periferiche per l’output visivo, auditivo, tattile.
Periferiche ed interfacce per utenti disabili.
- Modelli e Paradigmi di Interazione
Uomo-Macchina: Modelli per caratterizzare le fasi dell’interazione. Aspetti ergonomici dell’interazione. Stili di interazione: dai linguaggi di comando alle interfacce 3D. Interfacce a finestre (WIMP).
Progetto dei menu e delle icone. Paradigmi di interazione.
- Interazione Uomo-Macchina e Ciclo di
Vita del Software: Analisi dei requisiti di
usabilità. Principi di usabilità. User-centred design. Usability Engineering. Tecniche di prototyping. Tecniche per favorire la creatività. Documentazione delle
scelte di progetto.
- Environment, User, Task Analysis:
Determinazione del contesto dell’interazione con modelli socio-tecnici. Il metodo
USTM/CUSTOM. Analisi dei compiti
degli utenti. Il metodo HTA. Modelli predittivi: GOMS, KLM.
- Metodi Formali nell’Interazione Uomo-
188
Macchina: State transition network ed
altre notazioni diagrammatiche.
Notazioni testuali. Progetto ed analisi di
dialogo mediante state transition network.
- Guidelines e Standard per le Interfacce
Utente: Definizione. Scelta ed uso di
guidelines. Esempi di guidelines: MITRE,
Apple, Microsoft, guidelines IBM per
interfacce 3D. Lo standard ISO 9241.
- Strumenti per l’Implementazione di
Interfacce Utente: Windowing System.
Tecniche di programmazione. Toolkit.
Caso di studio: il toolkit di Java. User
Interface Management System.
- Valutazione di Usabilità: Scopo della valutazione. Strumenti di registrazione.
Osservazione dell’utente. Raccolta di
opinioni. Interviste. Questionari. Esperimenti. Valutazione predittiva. Cognitive
walkthrough. Valutazione interpretativa.
- Help: Assistenza all’utente. Requisiti di
un help system. Principali approcci.
Interfacce adattive ed adattabili.
- Computer-Supported Cooperative
Work: Groupware. La comunicazione
mediata dal calcolatore. E-mail e sistemi
di comunicazione testuale. Videoconferenza. Ambienti collaborativi virtuali.
Sistemi workflow. Aspetti sperimentali
ed organizzativi del lavoro cooperativo.
- Recenti Paradigmi di Interazione
Uomo-Macchina: Ubiquitous computing. Realtà virtuale. Tipologie di realtà
virtuale. Il linguaggio VRML. Interfacce
multi-sensoriali (o multi-modali). Information visualization. Ipertesti. Interfacce
multimediali e ipermediali.
Bibliografia
- A. DIX, J. FINLAY, G. ABOWD, R. BEALE,
Human Computer Interaction, 3rd edition,
Prentice Hall, 2003.
- J. P REECE , Y. R OGERS , H. S HARP , D.
BENION, S. HOLLAND, T. CAREY, Human
Computer Interaction, Addison Wesley,
1994.
programmi - LS informatica
INTERAZIONE UOMO-MACCHINA 2
Docente
Prof Luca Chittaro
Crediti
6
Finalità del corso
Scopo primario del corso è quello di
esplorare i più recenti sviluppi e tendenze
nel settore dell’Interazione Uomo-Macchina e di approfondirne le più importanti ricadute applicative. I temi trattati rientreranno in tre categorie di pari importanza: la visualizzazione delle informazioni (progetto di un’interfaccia visuale e
tecniche di Information Visualization),
l’interazione con dispositivi e servizi
mobili (ad esempio, telefoni cellulari,
PDA, strumenti di bordo degli autoveicoli), la Realtà Virtuale (Immersiva, Desktop o Web-based).
Programma
- Visualizzazione delle informazioni (IV).
Information Visualization (IV): definitions. Data vs. Information. Goals of IV.
Information Visualization vs. Scientific
Visualization. Issues involved in IV Design. Mapping: principles, visual attributes, examples. 2D vs. 3D visualizations.
Typical IV design problems. A model for
IV. A classification of data types: Categorical, Numerical, Topological, Symbolic,
Textual Data. An alternative classification
of data types: 1-dimensional, 2-dimensional, 3-dimensional, temporal, multidimensional, tree, network. A classification of task types: overview, zoom, filter,
details-on-demand, relate, history,
extract.
- Tecniche per visualizzare ed interagire con
i dati. Bivariate, Trivariate, Multivariate
data: Scatterplots, Mosaic Display, Parallel coordinate plots, Starplot, Chernoff
Faces, Hierarchical Axis, Dimensional
programmi - LS informatica
Stacking, Dynamic Queries, Alphasliders, The Attribute Explorer, SDM (Selective Display and Manipulation). InfoZoom. Pixel-oriented visualizations:
screen-filling curves, recursive pattern,
circle segments. Trees: Treemaps, Cone
Trees, Camtrees, Star Tree, Hyperbolic
Trees. Networks: SeeNet, HierNet, NetMap. Temporal data: Lifelines, AsbruView, Paint Strips. Documents: TileBars,
document Galaxies, Themescape, Citeseer-Relator, MDS-interactive. Information Workspace: Rooms, Web Forager,
Windows Task Gallery, Sun Looking
Glass.
- Il problema della presentazione. Overview+Detail techniques. Focus+Context
techniques. Distortion-oriented techniques. Table Lens. Perspective Wall. Fisheye view.
- Caso di studio: IV per internet ed il web.
NattoView. Self-organizing maps. Skitter. Cichlid. Web Forager. Disk tree.
Time tube. Dome tree. Web page caricatures. Visualizing Social activities on the
Web.
- Caso di studio: IV in medicina. Visualizing medical data: medical imaging vs.
IV. A gallery of examples: Therapy Planning, Interactive Data Exploration of clinical databases, Digital libraries of anatomical images, Preoperative Surgery Planning, Treatment of Phobias, Magnetic
Resonance Image Viewing, visual data
mining of Hemodialysis data.
- Fattori umani e cognitivi dell’IV. Visual
perception aspects. Navigation in abstract
or physical spaces. Improving navigation.
Navigation aids. User Evaluation of IV
systems. Detailed case studies: querying
medical databases, 3D navigation aids.
- Interazione con dispositivi mobili. Mobile
and Wireless Devices. Mobile Operating
Systems. Wireless Networks. Differences
between the mobile context and the desktop PC context. Size issues in mobile
devices. Cultural issues. Social issues.
The Mobile User Experience.
189
- Telefoni cellulari. Mobile Phones: Historical Data. User Interfaces (UIs) of Mobile Phones. Mobile Product Categories. UI
Styles in Mobile Phones. Example: Twosoftkey UI vs. Navi-key UI. Usability of
different UI Styles. Evolving different UI
Styles. Case Study: unexpected reactions
to Nokia Ringo. Case Study: the Nokia
Navi-roller failure. Interface Elements of
Menu-based Mobile Phones. Menu Interfaces in Mobile Phones. Call-related Interactions. Number of Keys in Mobile Devices.
- Valutazione di interfacce per dispositivi
mobili. Ethnographic methods. Case
study: Indian users. Paper Prototyping
Tour. Controlled experiments. Case
Study: a mixed-design experiment with
WAP phones. Longitudinal User Studies.
Example: the Nokia One-Row Keyboard.
- Visualizzazione su dispositivi mobili.
Visualizing data for mobile users. Visualizing data about mobile users. Relevant
Subjects of Mobile Visualizations. Visualizing text on mobile devices. Visualizing
maps on mobile devices. DateLens.
- Interfacce a bordo di veicoli e problematiche
di sicurezza. Centralized Control Systems.
Examples: COMAND, Connect, iDrive,
future concepts. Using the Keystrokelevel model in the Automotive Domain
(SAE J2365). Distraction-related crashes.
Types of driver distraction. Task performed by drivers with mobile devices (cell
phones, navigation systems, Internet services). Measuring driver distraction and
behavior. Reducing risks.
- Interazione con sistemi di realtà virtuale.
General architecture of a virtual reality
(VR) system. Output peripherals: headmounted displays, 3D Glasses, new types
of display, 3D projection, CAVE, retinal
display, 3D positional audio. Input
peripherals: trackers, data glove, phantom.
- Progetto di siti web 3D. Issues in 3D Web
site design. Added value. A case study:
190
designing the 3D Web site of the Italian
Aerobatic Team.
- Virtual Humans. Avatars. Ergonomic
dummies. Autonomous agents. Embodied interface agents. General architecture. Applications.
Bibliografia
- R. S PENCE , Information Visualization,
Addison Wesley, 2000.
- C. LINDHOLM, T. KEINONEN, Mobile Usability, McGraw-Hill Education, 2003.
- W.R. SHERMAN, A.B. CRAIG, Understanding Virtual Reality: Interface, Application,
and Design, Morgan Kaufmann, 2000.
INTERPRETAZIONE ASTRATTA
E ANALISI AUTOMATICA
DEL SOFTWARE
Analisi, Debugging, Verifica e
Trasformazione Automatica di
Programmi basata sulla semantica
Docente
Prof. Marco Comini
Crediti
6
Finalità del corso
La crescente dipendenza della società
dalle applicazioni informatiche fa sì che
l’analisi e la verifica della correttezza dei
sistemi complessi rappresenti sempre di
più un fattore critico del processo di sviluppo. Il malfunzionamento dei sistemi,
siano essi hardware, software o protocolli
di comunicazione, può comportare danni
rilevanti di ogni genere: dalla perdita
finanziaria alla perdita di vite umane.
Inoltre, quando i difetti non sono rilevati
prima dell’impiego del sistema, l’applicazione di eventuali misure correttive è,
quando possibile, ben più difficile e
costosa. Esempi dal recente passato includono il millennium bug, gli errori di alcu-
programmi - LS informatica
ne versioni del processore Pentium, lo
scoperto da 32 miliardi di dollari alla N.Y.
Bank, il fallimento iniziale del vettore
Ariane 5, e gli incidenti mortali del Therac-25.
Il corso intende fornire una introduzione
(relativamente) estesa alle tecniche che
stanno alla base dell’analisi automatica
del software e della verifica formale (nonché debugging) assistiti dal calcolatore.
Prerequisiti
- Semantica dei Linguaggi di Programmazione (condizione sufficiente è il corso
di Semantica dei Linguaggi di Programmazione).
- Nozioni base su Linguaggi Dichiarativi
(Logici, Funzionali e Logico-Funzionali;
condizione sufficiente sono i corsi di Linguaggi 1 e 2).
Programma
1. Introduzione alle tecniche di trattamento del software basate sulla semantica.
2. Richiami di Semantica:
- Posets, CPO, Reticoli;
- Semantica Operazionale;
- Semantica Denotazionale;
- Semantica di Punto Fisso.
Da programmi a proprietà: Analisi statica
di programmi
1. Schemi monotoni: Esempi di DFA
(Data-flow analysis).
2. Interpretazione astratta:
- Ottimizzazione di un programma imperativo;
- Reticoli completi econnessioni di
Galois;
- Upper closure operators;
- Semantiche standard e non standard
della programmazione logica.
3. Domini astratti per l’ottimizzazione
della programmazione dichiarativa: Pos,
Def e Sharing.
4. Disegno di domini astratti: prodotto
ridotto, complementazione, raffinamenti
e loro inversione.
191
programmi - LS informatica
5. Tecniche di accelerazione del punto
fisso (Widening/Narrowing).
6. Applicazioni.
Da programmi a programmi: Trasformazione e Valutazione parziale
1. Trasformazione.
2. Ottimizzazione mediante partial evaluation.
Con programmi e proprietà: Debugging e
Verifica
1. Specifiche e proprietà di programmi.
2. Debugging Algoritmico.
3. Abstract Diagnosis.
4. Logica di Hoare e verifica di programmi sequenziali.
5. Asserzioni come dominio astratto.
6. Abstract Verification: Analisi e verifica,
verso una teoria unificante:
- Type checking come caso particolare di
Abstract Verification.
Da proprietà a programmi: Sintesi di Programmi
1. Sintesi di programmi logici.
Bibliografia
- K.R. A PT , E. O LDEROG , Verification of
Sequential and Concurrent Programs, 2nd
edition, 1997. ISBN: 0-387-94896-1.
- N.D. JONES, C.K. GOMARD, P. SESTOFT,
Partial Evaluation and Automatic Program
Generation, Prentice-Hall, Englewood
Cliffs, NJ, 1993.
- P. COUSOT, R. COUSOT, Abstract Interpretation and Application to Logic Programs,
Journal of Logic Programming, 13(23):103-179, 1992.
- M. C OMINI , An Abstract Interpretation
Framework for Semantics and Diagnosis of
Logic Programs, Ph.D. thesis TD-5/98,
Dipartimento di Informatica, Università
di Pisa, 1998.
- P. COUSOT, Semantic Foundations of Program Analysis, in S.S. Muchnick, N.D.
Jones (eds), Program Flow Analysis: Theory
and Applications, chapter 10, pages 303342. Prentice-Hall Inc., Englewood Cliffs,
New Jersey, USA, 1981.
- P. COUSOT, Abstract Interpretation Based
Formal Methods and Future Challenges,
Invited Paper, in R. Wilhelm (ed), Informatics - 10 Years Back, 10 Years Ahead,
volume 2000 of Lecture Notes in Computer Science, pages 138-156, SpringerVerlag, 2000.
LINGUAGGI DI NUOVA
CONCEZIONE
Docente
Prof. Agostino Dovier
Crediti
6
Finalità del corso
Lo scopo del corso è lo studio di moderni
paradigmi di programmazione dichiarativi fondati sul concetto di vincolo. Sarà
data particolare enfasi ai linguaggi logici
con vincoli su domini finiti e al cosiddetto Answer Set Programming. Tali linguaggi vengono oggigiorno utilizzati con
successo nella risoluzione di problemi di
ottimizzazione (scheduling, timetabling,
planning, etc). I paradigmi saranno presentati in modo rigoroso sia per quanto
riguarda gli aspetti semantici ed implementativi che sotto il profilo pratico,
mediante lo sviluppo in laboratorio di
opportuni prototipi.
Programma
Brevi richiami di Logica del prim’ordine,
con particolare riferimento all’unificazione sintattica e semantica e al meccanismo
di risoluzione. Richiami sui linguaggi di
programmazione basati su clausole di
Horn, sulla loro Turing Completezza e
semantica. Programmi logici con vincoli:
Sintassi e semantica. Programmazione
dichiarativa: metodologia Generate test
vs Constrain generate. Vincoli su domini
finiti: risolutori. Alcuni casi di studio da
192
programmi - LS informatica
svilupparsi in laboratorio: N-regine, Map
Coloring, puzzles, problemi di allocazione di risorse, problemi di biologia computazionale, giochi. Answer set programming: Sintassi e semantica. Suo utilizzo
per la codifica di problemi NP-completi.
Fondamenti della programmazione concorrente con vincoli e sul linguaggio di
coordinamento LINDA.
Modalità d’esame
Progetto e Prova orale.
Bibliografia
- K. MARRIOTT, P. STUCKEY, Programming
with Constraints, The MIT Press, 1998.
- K.R. A PT , Principles of Constraint Programming, Cambridge University Press,
2003.
- A. DOVIER, Dispense del corso, disponibile on-line.
- K.R. A PT , From Logic Programming to
Prolog, International Series in Computer
Science, Prentice Hall, 1997.
- L. STERLING, E. SHAPIRO, The Art of Prolog, second edition, The MIT Press 1994.
- Articoli lasciati durante il corso.
LINGUAGGI DI
PROGRAMMAZIONE 1
Docente
Prof. Marco Comini
Crediti
6
Finalità del corso
Il corso di Linguaggi 1, in congiunzione
con il corso di Linguaggi 2, intende fornire una conoscenza delle caratteristiche
dei vari paradigmi di programmazione,
cercando il più possibile di evitare di concentrarsi su uno specifico linguaggio,
andando bensì a presentare i principi che
guidano la progettazione, realizzazione e
implementazione dei moderni linguaggi
di programmazione. Con solida conoscenza delle caratteristiche ‘universali’ si
potrà così in futuro imparare nuovi linguaggi in pochissimo tempo.
A questa visione generale si giunge attraverso la descrizione dei principali paradigmi di programmazione: imperativo,
funzionale, logico e logico-funzionale.
Questi paradigmi, oltre a essere esaminati nei loro aspetti pragmatici più immediati, sono analizzati e confrontati sulla
base dei principi generali, in modo tale da
permettere una comprensione critica
della maggior parte dei linguaggi di uso
comune. In questo modo si intende sviluppare uno spirito critico che permetta
di arrivare ad una programmazione consapevole in cui saper scegliere il paradigma più adatto a seconda del problema da
risolvere e sapere quali costrutti di un linguaggio usare, e a quale costo.
I due corsi intendono inoltre fornire una
conoscenza relativamente approfondita
(soprattutto dell’aspetto programmativo)
dei paradigmi di programmazione dichiarativa (funzionale, logico e logico-funzionale) che, grazie alla loro espressività, si
prestano naturalmente quale base di sviluppo di software corretto.
Il corso di Linguaggi 1, in particolare, tratterà i concetti generali, il paradigma
imperativo e quello funzionale. Il corso di
Linguaggi 2 completerà la presentazione
dei paradigmi dichiarativi: logico e logicofunzionale.
Programma
Paradigma Imperativo
- Macchine astratte, Interpretazione e
Compilazione.
- Descrivere un linguaggio di Programmazione (Sintassi e Semantica).
- I nomi e l’ambiente.
- La gestione della memoria.
- Strutturare il controllo.
- p-code.
programmi - LS informatica
- Astrarre sul controllo (Metodi di passaggio dei parametri).
- Strutturare i dati.
- Type checking monomorfo e polimorfo.
Paradigma Funzionale
- Introduzione alla Programmazione
Funzionale.
- High-order Programming.
- Il linguaggio Haskell (list comprehensions, partial applications of curried functions, sections, non-strict functions, infinite data structures, case expressions,
pattern matching).
- Types, Classes and Overloading.
- Haskell’s monadic I/O.
- Standard Haskell Classes.
- Monads.
- Modules.
Bibliografia
- M. GABBRIELLI, S. MARTINI, Linguaggi di
Programmazione - Principi e Paradigmi,
McGraw-Hill. ISBN 88-386-6261-4.
- HUDAK, FASEL, A Gentle Introduction to
Haskell, 1992.
Libri e Testi di consultazione:
- B. W ADLER , Introduction to Functional
Programming Using Haskell, Prentice Hall
PTR, 1998. ISBN: 0134843460.
- N.D. JONES, C.K. GOMARD, P. SESTOFT,
Partial Evaluation and Automatic Program
Generation, Prentice-Hall, Englewood
Cliffs, NJ, 1993.
LINGUAGGI DI
PROGRAMMAZIONE 2
Docente
Prof. Marco Comini
Crediti
6
Finalità del corso
Il corso di Linguaggi 2, in congiunzione
con il corso di Linguaggi 1, intende forni-
193
re una conoscenza delle caratteristiche
dei vari paradigmi di programmazione,
cercando il più possibile di evitare di concentrarsi su uno specifico linguaggio,
andando bensì a presentare i principi che
guidano la progettazione, realizzazione e
implementazione dei moderni linguaggi
di programmazione. Con solida conoscenza delle caratteristiche ‘universali’ si
potrà così in futuro imparare nuovi linguaggi in pochissimo tempo.
A questa visione generale si giunge attraverso la descrizione dei principali paradigmi di programmazione: imperativo,
funzionale, logico e logico-funzionale.
Questi paradigmi, oltre a essere esaminati nei loro aspetti pragmatici più immediati, sono analizzati e confrontati sulla
base dei principi generali, in modo tale da
permettere una comprensione critica
della maggior parte dei linguaggi di uso
comune. In questo modo si intende sviluppare uno spirito critico che permetta
di arrivare ad una programmazione consapevole in cui saper scegliere il paradigma più adatto a seconda del problema da
risolvere e sapere quali costrutti di un linguaggio usare, e a quale costo.
Il corso di Linguaggi 2, in particolare,
vuol presentare i paradigmi dichiarativi
che, grazie alla loro espressività, si
prestano naturalmente quale base di
sviluppo di software corretto. Si mostrerà
come caratteristiche quali high-order e
non-determinismo possano essere sfruttate per scrivere codice compatto, elegante e flessibile (riutilizzabile).
Programma
Modelli di esecuzione del paradigma funzionale
- Sistemi di riscrittura, Pattern Matching.
Paradigma Logico
- Introduzione alla Programmazione Logica: unificazione, SLD-derivations.
- Semantica denotazionale della Programmazione Logica.
194
- Non-deterministic Programming.
- Il linguaggio Prolog.
- Warren Abstract Machine.
Paradigma Logico-Funzionale
- Programmazione Logico Funzionale:
narrowing (needed narrowing).
- High-order Non-deterministic Programming.
- Il linguaggio Curry.
Bibliografia
Paradigma Funzionale
- M. GABBRIELLI, S. MARTINI, Linguaggi di
Programmazione - Principi e Paradigmi,
McGraw-Hill. ISBN 88-386-6261-4.
- TERESE, Term Rewriting Systems. Cambridge Tracts, in Theoretical Computer
Science, Vol. 55, Cambridge University
Press, 2003.
Paradigma Logico
- K.R. A PT , From Logic Programming to
Prolog, International Series in Computer
Science, Prentice Hall, 1997.
- L. STERLING, E. SHAPIRO, The Art of Prolog, MIT Press, 1986.
- H ASSAN A IT -K ACI , Warren’s Abstract
Machine: a Tutorial Reconstruction, MIT
Press, 1991. ISBN 0-262-01123-9.
Paradigma Logico-Funzionale
- M. HANUS, The Integration of Functions
into Logic Programming: From Theory to
Practice, Journal of Logic Programming,
19/20: 583-628, 1994.
- S. ANTOY, R. ECHAHED, M. HANUS, A Needed Narrowing Strategy, Journal of the
ACM, 2000.
- M. HANUS, S. ANTOY, Curry: a Tutorial
Introduction, 2004.
Libri e testi di consultazione:
- HUDAK, FASEL, A Gentle Introduction to
Haskell, 1992.
- B. W ADLER , Introduction to Functional
Programming Using Haskell, Prentice Hall
PTR, 1998. ISBN: 0134843460.
programmi - LS informatica
LINGUAGGI E MODELLI PER IL
GLOBAL COMPUTING
Docenti
Prof. Marina Lenisa
Prof. Marino Miculan
Crediti
6
Finalità del corso
Negli ultimi anni, il passaggio dal modello di calcolo standalone, isolato, a quello
globale, interconnesso ha portato in evidenza molti aspetti riguardanti la computazione distribuita. La necessità di ragionare rigorosamente su questa nuova
dimensione del calcolo ha portato ad
esplorare nuovi modelli, tecniche e metodologie, che superassero le limitazioni
delle tradizionali logiche di programmi.
In questo corso si presentano alcuni dei
modelli astratti e metodi formali più efficaci per il calcolo globale e ubique, con
particolare attenzione alle problematiche
di comunicazione, sicurezza e mobilità.
Non mancheranno occasioni per evidenziare applicazioni pratiche e problemi
aperti di questa area di punta dell’informatica moderna.
Prerequisiti
Metodi Formali dell’Informatica 1.
Programma
1. Introduzione ai calcoli per la concorrenza. Il CCS.
2. Sistemi a topologia dinamica: il p-calcolo. Sintassi, semantica operazionale
late e early, bisimulazioni late, early.
3. Sistemi a canali cifrati: lo spi-calcolo.
Sintassi, semantica operazionale, sistemi
di tipi, sicurezza dei protocolli.
4. Sistemi per la mobilità: il calcolo degli
ambienti mobili. Sintassi, semantica operazionale, logica modale spaziale, sistemi
di tipi. Varianti.
195
programmi - LS informatica
Modalità d’esame
Seminario monografico su un argomento
attinente al corso.
Bibliografia
- Dispense, articoli e note fornite dai
docenti.
LOGICA MATEMATICA
Docente
Prof. Giovanna D’Agostino
Crediti
6
Finalità del corso
Raggiungere un’adeguata comprensione
degli aspetti teorici collegati all’uso della
logica nelle applicazioni informatiche,
con particolare attenzione alle questioni
di correttezza, completezza, decidibilità e
potere espressivo per logiche classiche e
non.
Programma
- Sistemi Deduttivi per la logica classica.
- Deduzione naturale.
- Metodo di risoluzione.
- Introduzione alla programmazione logica (prolog).
- Logiche modali e temporali.
- Risultati di correttezza, completezza ed
espressività.
Modalità d’esame
Esame scritto e orale.
Bibliografia
Un testo di base di logica per informatica,
ad esempio:
- N ERODE , S HORE , Logic for Application,
Springer.
- B LACKBURN , DE R IJKE , V ENEMA , Modal
Logic, Cambridge Tracts in Theoretical
Computer Science, 53.
MATEMATICA COMPUTAZIONALE
Docente
Prof. Rossana Vermiglio
Crediti
6
Finalità del corso
Negli ultimi anni i modelli matematici
sviluppati per le discipline scientifiche
sono diventati sempre più complessi e
l’analisi numerica svolge un importante
ruolo nell’ambito del calcolo scientifico.
Nel corso l’attenzione è focalizzata in particolare sui metodi numerici per le equazioni differenziali ordinarie e alle derivate parziali. Per introdurre le idee fondamentali e la teoria matematica necessaria
per lo sviluppo e l’analisi di tali metodi,
sono presentati le principali tecniche
classiche, senza trascurare però anche
problematiche di più recente interesse.
Programma
Equazioni alle differenze. Equazioni differenziali ordinarie: metodi numerici per
problemi a valori iniziali. Metodi ad un
passo e a passi multipli. Problemi Stiff.
Stabilità. Integrazione geometrica. Problemi con valori ai limiti. Metodi alle differenze finite, di collocazione e shooting.
Equazioni differenziali alle derivate parziali. Metodi alle differenze finite. Metodi
agli elementi finiti. Potranno inoltre essere inseriti approfondimenti e/o cenni ad
altri argomenti tra i quali: metodi numerici per equazione differenziali algebriche, sistemi dinamici, equazioni differenziali con ritardo, equazioni integrali e
integrodifferenziali, calcolo parallelo.
Modalità d’esame
Prova orale.
Bibliografia
- V. C O M I N C I A L I , Analisi Numerica,
196
programmi - LS informatica
McGraw-Hill Libri Italia, 1990.
- P. DEUFHARD, F. BORNEMANN, Scientific
Computing with Ordinary Differential
Equations, Springer, New York, 2002.
- E. H AIRER , S.P. N ORSETT , G. W ANNER ,
Solving Ordinary Differential Equations I,
Springer, Berlin, 1987.
- E. HAIRER, G. WANNER, Solving Ordinary
Differential Equations II, Springer, Berlin,
1996.
- E. HAIRER, C. LUBICH, G. WANNER, Geometric Numerical Integration, Springer,
Berlin, 2001.
- L AMBERT , Numerical Methods for Ordinary Differential Equations, Wiley, 1991.
- A. Q UARTERONI , R. S ACCO , F. S ALERI ,
Numerical Mathematics Springer, New
York, 2000.
METODI FORMALI
DELL’INFORMATICA 1
Docente
Prof. Marina Lenisa
Crediti
6
Finalità del corso
In sistemi informatici ‘life-critical’, o a
forte impatto ambientale, oppure in produzioni su larga scala, che comporterebbero costi ingenti di correzione, le tradizionali tecniche di certificazione del
software, basate solo su testing, sono inadeguate. La verifica formale rigorosa del
software è pertanto divenuta un requisito
essenziale nella produzione industriale di
sistemi software complessi. Questo processo comporta l’introduzione e l’utilizzo
di tecniche logico-matematiche per specificare rigorosamente la semantica dei
programmi e per verificarne la correttezza rispetto a questa semantica. Scopo di
questo corso è quello di introdurre le problematiche ed i concetti fondamentali
della verifica del software nonché alcuni
dei ‘metodi formali’ più in uso per realizzare questo scopo.
Programma
Verranno discusse la semantica operazionale strutturata, la semantica denotazionale, i sistemi di riscrittura e svariati
sistemi formali alla Hoare per stabilire
proprietà di programmi sequenziali e
concorrenti. In particolare, saranno studiati e sperimentati sistemi per stabilire
la correttezza parziale e totale di programmi deterministici, programmi
paralleli che comunicano attraverso la
condivisione di variabili, programmi
paralleli con primitive di sincronizzazione, programmi distribuiti che comunicano attraverso lo scambio di messaggi,
programmi nondeterministici. Particolare attenzione sarà dedicata allo studio di
proprietà di fairness.
Modalità d’esame
L’esame è costituito da una prova scritta
ed una orale.
Bibliografia
- K. A PT , E.R. O LDEROG , Verification of
Sequential and Concurrent Programs,
GTCS Springer Verlag, New York, 1997.
- Appunti del corso.
MODEL CHECKING
Docente
Prof. Giovanna D’Agostino
Crediti
6
Finalità del corso
Il corso si propone di introdurre l’importante e innovativa tecnica di verifica di
correttezza di programmi chiamata
Model Checking. In particolare si svilup-
programmi - LS informatica
peranno i prerequisiti necessari e si
approfondirà lo studio e l’utilizzo di algoritmi (efficienti) per la verifica basati sul
Model Checking classico e simbolico. La
tecnica del Model Checking, introdotta da
Clarke, Emerson e Sistla agli inizi degli
anni ’80 e successivamente resa altamente efficiente da McMillan mediante la rappresentazione simbolica degli stati facente uso degli Ordered Binary Decision Diagrams (OBDD), è oramai uno standard
nella verifica di software per il controllo di
sistemi reattivi concorrenti. L’introduzione e lo sviluppo dei model checker è basato su idee estremamente semplici ed è
probabilmente uno dei più significativi
avanzamenti della ricerca in Computer
Science di base di questo periodo. L’utilizzo di algoritmi di Model Checking permette di verificare effettivamente la correttezza di classi significative di programmi e proprietà ed è già possibile trovare
molti pacchetti commerciali che contengono moduli che implementano varie
versioni di tali algoritmi. Anche i più
semplici tra tali prodotti implementano
l’idea del Model Checking ad un livello di
precisione tale da permettere non solo di
scoprire eventuali inconsistenze rispetto
alle specifiche ma sono anche in grado di
indicare il punto in cui il codice genera
l’inconsistenza. I principali obiettivi del
corso sono quelli di familiarizzare lo studente con gli strumenti fondamentali per
la comprensione e l’utilizzo di algoritmi
di Model Checking, lo studio dei principali algoritmi relativi a tale tecnica, le più
importanti ottimizzazioni ed estensioni
della tecnica stessa e l’utilizzo di software
che implementi lo strumento formale e
dei principali ambienti di utilizzo. La
prima parte del corso riguarderà essenzialmente lo sviluppo dei prerequisiti
relativi alla logica temporale, alla teoria
degli automi su parole infinite e ai relativi aspetti algoritmici. La tecnica di base,
introdotta alla fine della prima parte,
197
verrà quindi estesa ed approfondita nella
parte rimanente del corso.
Programma
- Introduzione e nozioni preliminari:
Introduzione. Elementi di logica classica e
modale. Logica temporale. Automi e parole
infinite. Automi e algoritmi di minimizzazione e raffinamento. Aspetti algoritmici e
di complessità computazionale.
- La tecnica di base: La rappresentazione
formale di sistemi e proprietà. La verifica
(hardware e software). Il Model Checking
di base. Complessità computazionale.
L’esplosione del numero degli stati e il
Model Checking simbolico. OBDD e
varianti.
- Argomenti avanzati: Model Checking
per linguaggi più espressivi del linguaggio di base. Model Checking mediante
automi. Model Checking e sistemi con un
numero infinito di stati. Automi temporizzati e sistemi ibridi. Astrazione. Realtime Model Checking.
- Strumenti e pacchetti: I model checker
SPIN, SMV, NuSMV, VIS, ecc: Esempi di
utilizzo.
Bibliografia
- Appunti delle lezioni.
- E. C LARKE , O. G RUMBERG , D. P ELED ,
Model Checking, MIT press, 1999.
- R. A LUR , D.L. D ILL , A Theory of Timed
Automata Theoretical Computer Science,
126: 183-235, 1994.
- R. ALUR, C. COURCOUBETIS, N. HALBWACHS, T.A. HENZINGER, P. HO, X. NICOLLIN,
A. O LIVERO , J. S IFAKIS , S. Y OVINE , The
Algorithmic Analysis of Hybrid Systems,
Theoretical Computer Science, 138: 3-34,
1995.
N.B.: Il corso si svolge ad anni alterni. Verrà
attivato nell’a.a. 07/08 e NON verrà attivato nell’a.a. 08/09. Possono frequentarlo sia
gli studenti del primo anno che quelli del
secondo anno.
198
MODELLI E ALGORITMI PER LA
GESTIONE DELLE RISORSE
Docente
Prof. Franca Rinaldi
programmi - LS informatica
Modalità d’esame
L’esame consiste in una prova orale.
Bibliografia
- Materiale bibliografico fornito dal
docente.
Crediti
6
OTTIMIZZAZIONE 1
Finalità del corso
Obiettivo del corso è presentare le principali metodologie modellistiche utilizzate
nel settore della gestione e pianificazione
integrata dei trasporti e della produzione
e le relative tecniche risolutive. A completamento della panoramica dei metodi
dell’Ottimizzazione, vengono inoltre
introdotte alcune tecniche euristiche di
ricerca locale e la classe degli algoritmi
approssimati. Al termine del corso lo studente dovrebbe essere in grado di modellare un problema non troppo complesso
di gestione e pianificazione e proporre
adeguati strumenti di risoluzione.
Programma
- Algoritmi approssimati e metodi di
ricerca locale (12 ore). Algoritmi approssimati e schemi di approssimazione polinomiali. Esempi. Metodi di ricerca locale:
Simulated Annealing e Tabu Search.
Esempi.
- Problemi di routing (18 ore). Problemi
di arc routing. I problemi del postino
cinese e del postino rurale e loro varianti.
Problemi di node routing. Il Travelling
Salesman Problem, il Vehicle Routing
Problem e loro varianti. Per i diversi problemi verranno presentati modelli di ILP
e metodi di risoluzione esatti e/o euristici.
- Problemi di schedulazione (18 ore).
Definizione, analisi e classificazione dei
problemi di schedulazione. Problemi ad
una macchina. Problemi su macchine
parallele. Open Shop, Flow Shop e Job
Shop.
Docente
Prof. Franca Rinaldi
Crediti
6
Finalità del corso
L’ottimizzazione (o programmazione
matematica) è una disciplina che gioca
un ruolo di primo piano nel processo di
modellizzazione e risoluzione dei complessi problemi di decisione che emergono in ambito applicativo. Il corso si propone di presentare una panoramica delle
principali classi di problemi di ottimizzazione, quali la programmazione lineare,
la programmazione lineare intera e l’ottimizzazione combinatoria, e delle rispettive metodologie risolutive. Nel modulo I
verranno anche richiamate alcune nozioni di base di tre argomenti fondamentali
per lo sviluppo del programma di ottimizzazione: la teoria della complessità computazionale, l’analisi convessa e la teoria
dei grafi. Per ulteriori informazioni sulla
ricerca operativa e sull’ottimizzazione si
consulti il sito dell’INFORMS (Institute
for Operations Research and Management Science), www.informs.org.
Programma
Introduzione ai problemi di ottimizzazione (4 ore).
Problemi reali, modelli e algoritmi risolutivi. Esempi di problemi di ottimizzazione continua e discreta: problemi di programmazione lineare, non lineare e
199
programmi - LS informatica
lineare intera. Esempi di problemi di ottimizzazione combinatoria: Bin Packing,
Knapsack, Assegnamento tridimensionale, Set Covering, Set Packing, Set Partitioning, Soddisfattibilità.
Cenni di teoria dei grafi (4 ore).
Definizioni fondamentali. Matrici di incidenza. Tagli e cammini. Connessione e
forte connessione. Alberi, cricche e insiemi stabili. Problemi di ottimizzazione su
grafi.
Cenni di complessità computazionale (6
ore).
Algoritmi e loro complessità. Problemi di
decisione. Classi P ed NP. Trasformazioni polinomiali ed NP-completezza. Esempi di problemi NP-completi.
Cenni di analisi convessa (10 ore).
Definizioni fondamentali. Teorema di
Caratheodory. Operazioni algebriche su
insiemi. Proprietà topologiche. Teoremi
di separazione. Poliedri. Funzioni convesse. Proprietà differenziali. Minimizzazione di funzioni convesse.
Programmazione lineare (12 ore).
Definizioni fondamentali ed esempi.
Geometria della PL. Dualità. Condizioni
di complementarità. Cenni sulla complessità della PL. Metodo del simplesso.
Analisi di sensistività.
Programmazione lineare intera (12 ore).
Introduzione ed esempi. Matrici totalmente unimodulari. Metodo del branch
and bound. Metodo del branch and cut.
Diseguaglianze di Chvital e tagli di
Gomory.
Modalità d’esame
L’esame consiste in una prova scritta e in
una prova orale.
Bibliografia
- P. SERAFINI, Ottimizzazione, Zanichelli,
Bologna, 2000.
OTTIMIZZAZIONE 2
Docente
Prof. Franca Rinaldi
Crediti
6
Finalità del corso
Il corso completa la presentazione dei
principali argomenti dell’ottimizzazione
matematica, sviluppando la teoria delle
reti di flusso, la programmazione dinamica ed alcuni temi fondamentali di ottimizzazione combinatoria.
Programma
Teoria delle reti di flusso (14 ore).
Definizioni fondamentali. Il problema di
flusso a costo minimo. Il metodo del simplesso adattato alle reti di flusso. Il problema del massimo flusso e l’algoritmo di
Dinic-Karzanov. Il problema del cammino minimo e l’algoritmo di Dijkstra.
L’algoritmo ‘out-of-kilter’.
Programmazione dinamica (12 ore).
Il principio di ottimalità e l’equazione di
Bellman. L’algoritmo di Bellman-Ford.
L’algoritmo per reti acicliche. L’algoritmo
di Floyd-Warshall. Applicazioni della PD
a: il problema del knapsack, il problema
dell’allineamento di due stringhe, un problema di schedulazione.
Ottimizzazione combinatoria (22 ore).
Problemi di accoppiamento e assegnamento. Algoritmi per l’accoppiamento di
cardinalità massima. Ottimizzazione su
matroidi. Algoritmo di Kruskal per il problema dell’albero di supporto di costo
minimo. Combinatorica poliedrale. Analisi poliedrale del problema dell’accoppiamento di costo minimo, del problema del
commesso viaggiatore e del problema
dell’insieme stabile.
Modalità d’esame
L’esame consiste in una prova scritta ed
in una prova orale.
200
programmi - LS informatica
Bibliografia
- P. SERAFINI, Ottimizzazione, Zanichelli,
Bologna, 2000.
PERSONALIZZAZIONE DEI
CONTENUTI WEB
Docente
Prof. Carlo Tasso
Crediti
6
Finalità del corso
Finalità del corso è introdurre la personalizzazione dei contenuti Web e le metodologie di sviluppo dei sistemi basati
sulla conoscenza. In particolare vengono
illustrate le metodologie per l’analisi, il
progetto, lo sviluppo e la valutazione dei
sistemi basati sulla conoscenza e le tecniche di acquisizione della conoscenza.
Inoltre viene introdotta l’area dello user
modelling ed illustrate le principali tecniche di personalizzazione dei contenuti
Web.
Programma
Processi per lo Sviluppo dei Sistemi Basati sulla Conoscenza. La metodologia
KLIC. Processi primari di analisi. Analisi
di opportunità. Studio di plausibilità. Processi primari di sviluppo. Sviluppo del
dimostratore. Sviluppo del prototipo. Progettazione e Strumenti di Sviluppo.
Implementazione, installazione ed avvio
del sistema finale. Tecniche per l’Acquisizione della Conoscenza. Personalizzazione dei contenuti Web: definizioni generali; user modelling; tecniche di personalizzazione, tracciamento ed identificazione
dell’utente, selezione dei contenuti, filtraggio collaborativo, cognitivo e basato
su conoscenza. Applicazione delle tecniche di personalizzazione.
Modalità d’esame
Sono previsti: lo svolgimento di un seminario da parte di ciascuno studente
nell’ultima settimana del corso su una
tematica rilevante ed un esame orale.
Bibliografia
- Materiale didattico (slide e testi esercitazioni) disponibile su http://twm.
dimi.uniud.it/
- C. TASSO, P. OMERO, La personalizzazione dei contenuti web - e-commerce, i-access,
e-government, Franco Angeli, Milano,
2002.
- G. GUIDA, C. TASSO, Design and Development of Knowledge-Based Systems, J. Wiley,
1994.
PROGETTAZIONE SITI WEB
Docente
Dott. Giorgio Brajnik
Crediti
6
Pagina del corso
www.dimi.uniud.it/giorgio/dida/psw/ps
w.html
Finalità del corso
Se è facile convincersi che la nostra sia
una società dell’informazione, meno facile è controllare la crescente complessità
delle attività di acquisizione, organizzazione ed accesso all’informazione. Infatti
gli sviluppi della tecnologia informatica e
dei flussi dell’informazione sono fenomeni che si alimentano vicendevolmente
e che portano l’uomo ad interagire con
ambienti virtuali la cui complessità è in
rapida crescita.
Il corso ha lo scopo di investigare gli
aspetti informatici su cui si basano l’organizzazione e l’accesso all’informazione.
Nel contesto di siti e applicazioni web: (1)
201
programmi - LS informatica
comprendere i concetti di architettura
dell’informazione e di struttura e modelli
dell’interazione (sapere cosa sono, come
li si definisce, costruisce, analizza, e valuta), (2) saper valutare l’usabilità e accessibilità di un sito web (sia di aspetti concettuali che tecnici), (3) conoscere gli aspetti
principali legati alle fasi di analisi e sviluppo di un sistema informativo complesso, (4) acquisire una conoscenza di
base sulle tecnologie sottostanti il web.
Non è un corso su HTML, né Dreamweaver, Flash o JSF. I quattro punti evidenziati sopra sono relativamente stabili
rispetto all’evolvere della tecnologia, e
quelli più difficili da sviluppare nel
mondo del lavoro. Per questa ragione il
corso si concentra si du essi, piuttosto che
su specifiche tecnologie.
Programma
- Processi informativi e sistemi informativi: scopo di un processo informativo; la
persuasione, la centralità dell’utente.
- Natura di un sistema informativo: struttura conversazionale, contenuto, presentazione; tipologie di siti web; tipologie di
motori di ricerca.
- Architettura informativa, struttura
dell’interazione.
- Concetti di base dell’interazione: azione,
gesto, modalità, obiettivo, compito, processo, attività, scenario; fenomeni e
modelli dell’interazione: apprendimento
esplorativo, il ciclo dell’interazione.
- Accessibilità e usabilità: concetti, linee
guida, tecnologie assistive, esempi, la
normativa Stanca.
- Le indagini di accessibilità e usabilità:
linee guida, metodi (user testing, heuristic evaluation, heuristic walkthrough);
metriche, strumenti; stesura dei rapporti.
- User-centered design: fasi, problemi,
metodi per l’analisi e lo sviluppo di sistemi basati su web: definizione del problema, casi d’uso, modelli dei compiti;
l’impiego dei casi d’uso per la stesura dei
requisiti; documenti di studio di fattibilità, analisi competitiva; tecniche di acquisizione e raccolta delle informazioni.
Bibliografia
- G. BRAJNIK, E. TOPPANO, Creare siti web
multimediali, Pearson Education Addison-Wesley, 2007.
- R. P OLILLO , Plasmare il web, Apogeo,
2006 (soprattutto i capitoli da 3 a 10).
- J. THATCHER et al., Web Accessibility: Web
Standards and Regulatory Compliance,
FriendsofEd, 2006 (i capitoli da 4 a 15).
PROGETTAZIONE E ANALISI
ORIENTATE AGLI OGGETTI
Docente
Prof. Stefano Mizzaro
Crediti
6
Finalità del corso
Il corso, che presuppone la conoscenza di
base della programmazione OO (Orientata agli Oggetti), mira ad introdurre i concetti e le tecniche avanzati di analisi e progetto del mondo OO. La trattazione non
sarà né formale né eccessivamente pratica, ma soprattutto concettuale. Verranno
descritti: il linguaggio di modellazione
UML (Unified Modeling Language), i
principi di costruzione di un buon software OO, i pattern di progetto (e di analisi,
accennati), il refactoring. Verranno anche
discussi alcuni casi di studio di problemi
reali.
Programma
- UML per il progetto. I diagrammi UML
usati per la progettazione: diagrammi di
classe, di collaborazione, di sequenza,
degli stati, di attività, dei componenti e
del dispiegamento (deployment).
- I principi della progettazione OO. I con-
202
cetti e le tecniche che consentono di
costruire progetti OO di buona qualità, ad
esempio: domini, ingombro, coesione,
spazio degli stati, comportamento, conformità di tipo, progetto per contratti, ecc.
- I design pattern. I design pattern stanno
alla progettazione OO come la programmazione strutturata sta alla programmazione imperativa classica. I pattern sono
schemi di soluzioni ricorrenti, la cui
conoscenza semplifica il progetto di
nuovo software OO. Vengono presentati
e analizzati i pattern principali.
- UML per l’analisi. Viene completata la
presentazione di UML, introducendo i
diagrammi di classe concettuali e dei casi
d’uso. Vengono discusse le principali
tematiche dell’analisi OO con UML.
- Casi di studio. I concetti e le tecniche
introdotti vengono esemplificati in situazioni reali, attraverso un’attività seminariale che può essere svolta, opzionalmente, anche dagli studenti. Possibili argomenti sono: sviluppo collegiale di diagrammi UML; i tool per disegnare diagrammi UML; programmazione estrema
(eXtreme Programming, XP); analisi
delle API di Java (standard edition, enterprise edition, micro edition); sviluppo di
applicazioni Web (servlet, Java Server
Pages, EJB); estensioni di UML per il
Web; refactoring; altri linguaggi OO quali
il C++ o il C#; gli agenti come estensione
degli oggetti; Jini; ecc.
Modalità d’esame
Orale. Sono previste anche attività, opzionali e a scelta dello studente ma caldamente consigliate, che portano a un
esame semplificato e a una votazione
superiore: seminari svolti durante il corso
o progetti concordati con il docente. Al
corso è possibile affiancare il laboratorio:
in tal caso l’attività progettuale è più
impegnativa.
programmi - LS informatica
Bibliografia
- M. PAGE -J ONES , Progettazione a oggetti
con UML, Apogeo, Milano, 2002. ISBN:
88-7303803-4.
- E. Gamma, R. Helm, R. Johnson, J. Vlissides, Design Patterns, Addison Wesley,
1997. ISBN: 0201634988 (disponibile
anche in italiano).
- M. F O W L E R , K. B E C K , J. B R A N T , W.
OPDYKE, D. ROBERTS, Refactoring: Improving the Design of Existing Code, AddisonWesley, 1999. ISBN: 0201485672.
- A. SHALLOWAY, J. TROTT, Design Patterns
Explained - A New Perspective on Object
Oriented Design, Addison Wesley, 2002.
ISBN: 0201715945.
A lezione verranno comunicati eventuali
altri testi e verrà segnalato o fornito altro
materiale (lucidi di tutte le lezioni, pagine
Web, dispense, altri testi di riferimento).
PSICOLOGIA DELLA
COMUNICAZIONE
Docente
Dott. Silvia Gabrielli
Crediti
6
Finalità del corso
Il corso si articola in tre blocchi di lezioni:
la psicologia generale (che presenta un
quadro introduttivo e culturale su cui
costruire le conoscenze successive), la
comunicazione, e la metodologia della
ricerca (per poter verificare in modo
oggettivo qualsiasi ipotesi bisogna saper
condurre una ricerca in modo corretto e
valido).
Il corso ha un valore formativo con un
duplice obiettivo, generale e specifico. In
senso ampio, ci si propone di avvicinare
gli studenti alla psicologia in quanto
scienza che studia l’uomo, le sue attività,
i suoi vissuti, il suo mondo interiore e
203
programmi - LS informatica
sociale, i processi che sottostanno al suo
comportamento, in modo da ampliare la
cultura di base riguardo ad aspetti della
vita quotidiana. In modo specifico, il
corso ha lo scopo di far acquisire un insieme di conoscenze psicologiche che saranno utili alle attività future degli studenti
(es., percezione di immagini, ruolo delle
emozioni, corretto utilizzo della comunicazione nel proprio campo per conoscerne potenzialità e limiti), e di far acquisire
un metodo scientifico nella conduzione
di esperimenti per evitare errori ed ottenere risultati validi.
Programma
Psicologia Generale
- Cenni sulla percezione: assenza e presenza fenomenica; l’organizzazione figura-sfondo; la costanza di grandezza e
forma; spazio, distanza e movimento;
influenze sulla percezione.
- La coscienza e l’attenzione.
- L’apprendimento e la memoria: condizionamento classico ed operante;
l’apprendimento verbale; modelli di
memoria.
- Il pensiero: la formazione dei concetti; la
soluzione dei problemi; la creatività; il
pensiero prevenuto e il pregiudizio.
- Le motivazioni e le emozioni.
Comunicazione
- I modelli della comunicazione.
- Il processo di comunicazione.
- La comunicazione non verbale.
- La comunicazione persuasiva.
- La captologia.
Metodologia della ricerca
- Differenze tra senso comune e scienza.
- Come si fa una ricerca? Fasi operative.
- Il campionamento.
- Disegni di ricerca: sperimentali; quasisperimentali; presperimentali; correlazionali.
- Validità interna ed esterna di una ricerca.
Modalità d’esame
L’esame è costituito da una prova scritta.
Bibliografia
- L. ANOLLI, P. LEGRANZI, Psicologia Generale, Il Mulino, 2001. Capitolo 1: sottoparagrafi 1.1 e 1.2 (pag. 9-13). Capitolo 2:
tutto (pag. 47-75). Capitolo 3: paragrafi 1 e
2 (pag. 77-86). Capitolo 4: paragrafi 1 e 2
(pag. 103-133). Capitolo 5: tutto (pag. 137166). Capitolo 6: tutto (pag. 169-202).
Capitolo 7: tutto (pag. 203-230). Capitolo
8: paragrafi 1, 2, 3, 4 (pag. 233-261).
- D.H. MCBURNEY, Metodologia della ricerca in psicologia, Il Mulino, 1986. Capitoli
completi: 3, 4, 5, 6, 7, 8, 10.
- R. C IALDINI , Le armi della persuasione,
Giunti, 2005.
RETI DI CALCOLATORI
E SICUREZZA
Docenti
Prof. Marino Miculan
Dott. Paolo Dal Cin
Crediti
6
Finalità del corso
L’obiettivo del corso è quello di studiare ed
approfondire i concetti principali relativi al
funzionamento delle reti wireless e alla
sicurezza delle reti. In particolare, lo studente dovrà acquisire competenze specifiche riguardo le caratteristiche principali e
il funzionamento delle reti wireless. Dovrà
inoltre acquisire competenze specifiche
nell’ambito dei principali requisiti di sicurezza di una rete di calcolatori, della progettazione di adeguate politiche di sicurezza e acquisire conoscenze sui principali
protocolli per la sicurezza di rete.
Prerequisiti
Reti di Calcolatori.
204
Programma
1. Reti locali wireless. Classificazione,
Spread Spectrum (Direct Sequence, Frequency Hopping), Reti IEEE 802.11. Lo
strato fisico e MAC di IEEE 802.11. Bluetooth: architettura ed applicazioni.
2. Sicurezza nelle reti di calcolatori. Livelli di sicurezza, diagnostica e monitoraggio di una rete, protezione delle connessioni alla rete, autenticazione, integrità,
riservatezza, paternità. Principio di sicurezza minima. Valutazione della sicurezza di un sistema. Orange book.
3. Cenni di crittografia. Crittoanalisi,
cifrari per trasposizione, cifrari monoalfabetici e polialfabetici. Cifrari poligrafici
e cifrari composti. Crittografia moderna.
Crittografia contemporanea. Algoritmi a
chiave segreta: DES, IDEA e 3DES, AES.
Algoritmi a chiave pubblica: RSA. Esempi. Firma digitale e gestione delle chiavi.
4. Sicurezza nei protocolli di rete. Sicurezza a livello fisico nelle reti wireless:
WEP, WPA. Sicurezza livello di rete: protocollo IPsec. Definizione e progettazione
di uno screening router, packet filtering.
Virtual Private Network (VPN). Sicurezza
a livello di trasporto: protocolli SSL e TLS.
Sicurezza a livello di applicazione: Protocollo SET.
5. Difesa perimetrale di una rete. Teoria e
architetture dei firewall: multihomed
host, bastion host, DMZ. Proxy server.
Esempio di un firewall. Server e reti civetta. Sistemi di Intrusion Detection (IDS) e
real-time IDS. Sistemi di prevenzione
dell’intrusione (IPS).
6. Attacchi esterni ad una rete. Classificazione degli attacchi ad una rete. Le porte
di comunicazione ed i relativi servizi.
Tecniche di raccolta delle informazioni
(footprinting, enumerazione delle reti,
interrogazione dei DNS) e scansioni
(ping scanning, port scanning, etc.).
Attacchi di tipo DOS. Attacchi basati sulla
predizione del numero di sequenza e
dirottamento di sessione TCP. Attacco
programmi - LS informatica
man-in-the-middle. Strumenti di attacco
di un hacker.
7. Difesa di una rete. Difesa contro
l’acquisizione di informazioni. Difesa
contro i tentativi di ingresso non autorizzato. Modelli per la definizione di un
piano di sicurezza.
Modalità d’esame
L’esame si compone di una prova scritta e
di una prova orale facoltativa. La prova
scritta richiede lo svolgimento di alcuni
esercizi inerenti gli argomenti del corso e
la risposta ad alcune domande teoriche.
Bibliografia
- A.S. T ANEMBAUM , Reti di calcolatori,
quarta edizione, Addison-Wesley, pubblicato in Italia da Pearson Education Italia,
2003.
- W. S TALLINGS , Crittografia e sicurezza
delle reti, McGraw-Hill, 2004.
- W.R. C H E S W I C K , S.M. B E L L O V I N , A.
RUBIN, Firewalls e sicurezza in rete, Pearson-Addison Wesley, 2003.
RICERCA OPERATIVA
Docente
Prof. Paolo Serafini
Crediti
6
Pagina del Corso
http://www.dimi.uniud.it/~serafini/ROI
NF0607.html
Finalità del corso
La Ricerca Operativa si occupa di problemi di gestione efficiente affrontati con
modelli matematici e algoritmici. Il corso
vuole fornire allo studente gli strumenti
principali per progettare un modello a
partire da un problema reale e la necessaria comprensione delle strutture mate-
205
programmi - LS informatica
matiche e algoritmiche dei modelli, con
particolare riguardo alla programmazione lineare. A questo fine vengono presentati doversi modelli e per la maggior parte
i modelli sono risolti usando Excel o pacchetti di programmazione lineare.
Programma
- Introduzione alla programmazione
lineare. Modellizzazione: identificazione
delle grandezze, dei vincoli e degli obiettivi. Ottimi di Pareto. Esempio della dieta:
modello di programmazione lineare.
Analisi di sensibilità. Identificazione di
ulteriori obiettivi. Frontiera efficiente.
Vincoli di interezza.
- Proprietà della programmazione lineare. Struttura geometrica. Vertici e soluzioni di base. Problema duale. Complementarità. Cenni del metodo del simplesso. Metodo branch-and-bound per variabili intere.
- Modelli di percorsi 1. Programmazione
Dinamica. Principio di ottimalità. Equazione ricorsiva. Cammini minimi (Bellman-Ford, Dijkstra, Floyd-Warshall).
- Modelli di percorsi 2. Cammini minimi
con capacità: reti di flusso. Flussi di costo
minimo. Massimo flusso. Minimi tagli.
- Modelli di percorsi 3. Problema del commesso viaggiatore (formulazione con
piani di taglio). Circuiti Euleriani. Accoppiamento. Minimi alberi di supporto
(Kruskal e Prim).
- Modelli di allocazione. Assegnamento.
Knapsack. Bin packing. Modelli di turnazione. Generazione di colonne: cutting
stock, massimo flusso.
- Schedulazione. Schedulazione a risorsa
infinita: PERT. Schedulazione a risorsa
finita: problemi a una macchina, macchine parallele, flow-shop, job-shop e openshop. Il piano dettagliato delle lezioni si
trova sul sito http://www.dimi.
uniud.it/~serafini/ROINF0607.html
Modalità d’esame
Esame orale.
Bibliografia
- Dispense disponibili on-line.
- P. SERAFINI, Ottimizzazione, Zanichelli,
Bologna, 2000.
- L. SCHRAGE, LINDO: An Optimization
Modelling System, Palo Alto Scientific
Press, 1991.
N.B.: Informazioni sulla Ricerca Operativa e l’Ottimizzazione si trovano anche al
sito dell’INFORMS (Institute for Operations Research and Management Science), http://www.informs.org/, oppure al
sito del CIRO (Centro Interuniversitario
in Ricerca Operativa), http://www.disp.uniroma2.it/ciro/index.html.
ROBOTICA
Docente
Dott. Antonio D’Angelo
Crediti
6
Pagina del corso
http://www.dimi.uniud.it/~dangelo/Rob
otica/robos.html
Finalità del corso
Obiettivo del corso è quello di fornire allo
studente una panoramica dell’attuale
stato dell’arte della robotica, ivi compresi
gli strumenti necessari per comprendere
e realizzare programmi di controllo per
veicoli autonomi. La metodologia impiegata è quella degli agenti situati e basati
sul comportamento, in parte attuata sperimentalmente mediante la realizzazione
del controllo di robot autonomi mobili
(Lego Mindstorm, MIT 6.270). Oltre ad
affrontare il problema del movimento nel
caso di veicoli autonomi, verranno considerato il problema più generale della locomozione nei ‘legged-robot’ (esapodi, quadrupedi, bipedi) fino a comprendere i
cosiddetti robot umanoidi.
206
Programma
1. Agenti Situati
1.1. Percezione ed Azione.
1.2. Pianificazione.
1.3. Sistemi Reattivi.
1.4. Motivazioni Biologiche.
1.5. Vincoli ambientali attraverso la corporeità dell’agente.
1.6. Architetture Behaviour-based.
2. Veicoli Autonomi
2.1. Robotica Mobile.
2.2. Considerazioni sul Controllo.
2.3. Macchine di Braitenberg.
2.4. Applicazioni.
3. Agenti Dinamici
3.1. Cenni sui Sistemi Dinamici.
3.2. Veicoli Mobili.
3.3. Considerazioni sulla Rappresentazione.
3.4. Metodi per il Controllo del Movimento basati sull’Energia.
3.5. Roboticle.
4. Implementazione dei Comportamenti
4.1. Le basi Percettive del controllo Behaviour-based.
4.2. Considerazioni sulla Representazione.
4.3. Architetture Reattive.
4.4. Architetture Ibride.
4.5. Architetture Adattive.
4.6. Comportamenti Collettivi.
5. Locomotion
5.1 Veicoli Autonomi.
5.2 Robot su Gambe.
5.3 Esapodi, quadrupedi e bipedi.
5.4 Umanoidi: struttura generale.
5.5 Camminata Passiva e Attiva.
5.6 Controllo del passo mediante il
modello del pendolo invertito.
6. Attività sperimentale
6.1. Il robot Whiskers.
6.2. Il robot Saphira Simulator.
6.3. LEGO Mindstorm.
Modalità d’esame
Approfondimento e discussione di un
argomento riguardante la robotica con-
programmi - LS informatica
cordato col docente. Eventuale sperimentazione su richiesta dello studente.
Bibliografia
- R.C. A RKIN , Behavior-Based Robotics,
MIT Press, 1998.
- R. PFEIFER, C. SCHEIER, Understanding
Intelligence, MIT Press, 1999.
- M. BRADY, Robotics Science, MIT Press,
1989.
- FU, LEE, GONZALES, Robotics, Mc-Graw
Hill, 1987.
- J.C. L ATOMBE , Robot Motion Planning,
Kluwer, New York, 1991.
- RUSSEL, NORVIG, Artificial Intelligence: a
Modern Approach, Prentice Hall.
- JOHNS, FLYNN, Mobile Robots, Inspiration
to Implementation, A.K. Peters, 1993.
- A. D’ANGELO, dispense del corso, disponibili via Web.
SEMANTICA DEI LINGUAGGI
DI PROGRAMMAZIONE
Docente
Prof. Fabio Alessi
Crediti
6
Finalità del corso
Scopo del corso è approfondire lo studio
delle principali tecniche logico-matematiche utilizzate per descrivere la semantica
dei linguaggi di programmazione introdotte nel corso Metodi Formali per
l’Informatica 1. In particolare verranno
discussi elementi di programmazione
funzionale, di teoria dei domini di Scott,
di teoria delle categorie e di teoria dei tipi.
Programma
- Programmazione funzionale e Linguaggi Funzionali - il linguaggio funzionale
ML: espressioni e tipi, dichiarazioni, pat-
207
programmi - LS informatica
terns, funzioni, polimorfismo, tipi di dato
ricorsivi, tipi di dato astratto ricorsivi,
eccezioni, strutture imperative, moduli,
funtori.
- Semantica: semantica operazionale e
denotazionale dei linguaggi con contesto,
corrispondenza, parametrizzazione e
qualificazione; continuazioni, semantica
diretta e semantica continuation-based.
- Teoria delle Categorie: oggetti e morfismi, funtori, trasformazioni naturali,
limiti e colimiti.
- Teoria dei domini di Scott: soluzione di
equazioni ricorsive di dominio, costruzione del limite inverso, un metalinguaggio
funzionale per definire i punti dei domini, che sia anche un linguaggio di programmazione funzionale ed un linguaggio di termini per una logica di programmi.
- Teoria dei Tipi: il sistema di assegnazione di tipi semplici per il lambda-calcolo,
l’algoritmo di unificazione di Robinson,
l’algoritmo di sintesi di tipo principale di
Milner; inizialità del tipo principale, correttezza e completezza dell’algoritmo di
Milner per la sintesi del tipo principale
rispetto al sistema di assegnazione dei
tipi semplici per il lambda-calcolo,
semantica dei tipi semplici, correttezza
del sistema di assegnazione di tipo rispetto alla semantica operazionale. Calcolo
delle Costruzioni.
Modalità d’esame
L’esame è costituito da una prova orale.
Bibliografia
- G. WINSKEL, The Formal Semantics of Programming Languages, MIT Press, Cambridge, 1993.
- Alcuni articoli apparsi su riviste scientifiche.
- Appunti del corso.
SISTEMI REATTIVI: AUTOMI,
LOGICA, ALGORITMI
Docente
Prof. Angelo Montanari
Crediti
6
Programma
Parte 1. Sistemi reattivi. Sistemi reattivi e
real-time, sistemi di transizione equi, un
semplice linguaggio di programmazione
(SPL): sintassi e semantica, moduli, specifiche logiche e loro proprietà, l’uso della
logica temporale per la specifica, la verifica e la validazione di programmi.
Parte 2. Automi su oggetti infiniti Automi su parole infinite: notazione, automi
di Bàchi, congruenze e complementazione, il calcolo sequenziale, determinismo
e teorema di McNaughton, elementi di
teoria dei giochi, teoria dei giochi e linguaggi star-free, omega-linguaggi starfree e logica temporale. Automi su alberi
infiniti: notazione, automi su alberi finiti,
autonomi non deterministici su alberi
infiniti di Bàchi e Rabin e loro relazioni,
problema del vuoto e alberi regolari, complementazione e determinatezza dei giochi, teoria monadica degli alberi e risultati di decidibilità.
Parte 3. Logiche modali e temporali Introduzione, classificazione delle logiche
temporali, le logiche temporali lineari, le
logiche temporali ramificate, un ambiente per la modellazione della concorrenza:
modelli astratti e concreti di concorrenza,
concorrenza e logica temporale, espressività, decidibilità e complessità delle logiche temporali, algoritmi di satisfiabilitychecking e di model-checking, altre logiche modali e temporali di interesse
(cenni).
Parte 4. Verifica e validazione di sistemi
reattivi Algoritmi di satisfiabilitychecking e di model-checking per la veri-
208
programmi - LS informatica
fica di programmi a stati finiti: soddisfacibilità e validità di una formula temporale, soddisfacibilità e validità rispetto ad un
programma a stati finiti, esempi.
Parte 5. Verifica di sistemi a stati infiniti
(cenni). Introduzione, tecniche di base,
grafi context-free e prefix-recognizable,
grafi razionali e automatici, il metodo di
contrazione, problemi di raggiungibilità.
Bibliografia
- W. THOMAS, Automata on Infinite Objects,
in Handbook of Theoretical Computer
Science, Volume B, capitolo 4, J. van
Leeuwen (ed.), Elsevier Science Publisher, 1990.
- W. THOMAS, Languages, Automata, and
Logic, in Handbook of Formal Languages,
Volume III, G. Rozenberg and A. Salomaa (eds.), Springer, pp. 389-455, 1997.
- D. PERRIN, J. PIN, Infinite Words, Pure
and Applied Mathematics Series, Elsevier, 2004.
- E.A. E MERSON , Temporal and Modal
Logic, in Handbook of Theoretical Computer Science, Volume B, capitolo 16, J.
van Leeuwen (ed.), Elsevier Science
Publisher, 1990.
- Z. MANNA, A. PNUELI, The Temporal Logic
of Reactive and Concurrent Systems: Specification, Springer, 1992.
- Z. MANNA, A. PNUELI, Temporal Verification of Reactive Systems: Safety, Springer,
1995.
sistemi basati sulla conoscenza e dei
sistemi esperti, ed in particolare i meccanismi per la rappresentazione della conoscenza e gli algoritmi di ragionamento, i
sistemi per il ragionamento non monotono, e le tecniche di modellizzazione concettuale. Vengono altresì trattate ed analizzate sperimentalmente alcune applicazioni significative nel campo della ricerca
e filtraggio di informazioni su Web,
affrontato con tecniche tradizionali e con
tecniche di intelligenza artificiale.
Programma
Introduzione alle problematiche
dell’Intelligenza Artificiale. Definizione
di Sistema Basato sulla Conoscenza. Rappresentazione della Conoscenza e Algoritmi di ragionamento. Le reti semantiche. I frame. Le regole di produzione.
Grafi Concettuali. Sistemi per il Ragionamento Non Monotono. ATMS. JTMS.
Architetture a Blackboard. Tecniche di
modellizzazione concettuale. Classificazione Euristica e Task Generici. Interfacce Intelligenti e Modellizzazione
dell’Utente nei Sistemi di Reperimento e
Filtraggio dell’Informazione su Web.
Esercitazioni: una serie di esercitazioni in
laboratorio sarà dedicata all’approfondimento delle tematiche applicative relative
alla ricerca di informazioni si Web.
Modalità d’esame
Redazione di una relazione sulle esercitazioni ed esame orale.
SISTEMI ESPERTI
Docente
Prof. Carlo Tasso
Crediti
6
Finalità del corso
Obiettivo del corso è l’introduzione alle
tecniche di base per la realizzazione dei
Bibliografia
- Materiale didattico (slide e testi esercitazioni) disponibile su http://twm.
dimi.uniud.it/
- G. GUIDA, C. TASSO, Design and Development of Knowledge-Based Systems, J. Wiley,
1994.
- D. FUM, Intelligenza Artificiale, Il Mulino, 1994.
- C. TASSO, P. OMERO, La personalizzazio-
209
programmi - LS informatica
ne dei contenuti web - e-commerce, i-access,
e-government, Franco Angeli, Milano,
2002.
SISTEMI INFORMATIVI
Docenti
Prof. Carlo Tasso
Prof. Maurizio Pighin
Crediti
6
Finalità del corso
Obiettivo del corso è la definizione delle
problematiche informatiche nell’ambito
di un’organizzazione (pubblica o privata)
che intenda automatizzare i propri sistemi informativi. Si inquadrano le competenze del responsabile Sistemi Informativi e/o di chi sviluppa software per l’organizzazione, analizzando le problematiche
applicative che dovrà affrontare, con uno
sguardo ai risvolti tecnologici e ai rapporti di fornitura.
Programma
Introduzione: Concetti generali sull’informatica aziendale - Impatto dell’informatica nelle aziende - Impatto macroeconomico dell’ICT Struttura dell’azienda e del
suo sistema informativo - Concetto di esigenza informativa - Scomposizione del
sistema informativo Costi e Performance: Meccanismi di misurazione generali.
Valutazione di Sistemi Informativi. Analisi costi benefici. Analisi del rischio.
Gestione di un Progetto Informatico:
Organizzazione risorse e processi decisionali. Metodologie di gestione e pianificazione di progetto. Tecniche di Project
Management. Software e Hardware
Selection. Sistemi operazionali - Finalità
dei sistemi operazionali - Informazione
operativa - Rappresentazione della realtà Potenzialità informatica - Composizione
dei sistemi informativi operazionali Scomposizione per i sistemi operazionali
di base - Sistemi di supporto primario
all’ERP - Estensioni dell’ERP - Sistemi
tecnici ERP: l’area amministrativa, logistica, vendite, acquisti, produttiva - Obiettivi - Strutture di base - Procedure di base
- Flussi evoluti Sistemi Aziendali avanzati: E-Commerce, CRM, DataWarehouse,
DataMining, Business Intelligence. Laboratorio Avanzato di Sistemi Informativi
Analisi di un case-study industriale.
Modalità d’esame
L’esame consiste in un progetto di gruppo su problematiche reali, seguito da un
colloquio orale. In alternativa è prevista
una prova scritta/orale sugli argomenti
del programma.
Bibliografia
- G. BRACCHI, C. FRANCALANCI, G. MOTTA,
Sistemi Informativi e aziende in rete,
McGraw-Hill Italia, Milano, 2001.
- M. PIGHIN, A. MARZONA, Sistemi Informativi Aziendali - Struttura e Applicazioni,
Pearson Education Italia, 2005.
Ulteriori testi di consultazione
- M. DE MARCO, Sistemi Infomativi Aziendali, Franco Angeli Edizioni, Milano,
2000.
- G. BRACCHI, G. MOTTA, Processi Aziendali e Sistemi Informativi, Franco Angeli Edizioni, Milano, 2000.
- P.F. CAMUSSONE, Il Sistema Informativo
Aziendale, Etas, 2000.
- D. AMOUR, E-Business (R)Evolution, Tecniche Nuove, 2000.
SISTEMI MULTIMEDIALI
Docente
Prof. Elio Toppano
Crediti
6
210
Finalità del corso
Il corso intende fornire un insieme di
conoscenze di base - concettuali, procedurali e metodologiche - finalizzate sia
alla analisi e valutazione di prodotti multimediali sia alla loro progettazione, realizzazione e distribuzione. Particolare
attenzione viene rivolta allo studio delle
caratteristiche dei singoli media - testo,
immagini audio e video - e alle problematiche che emergono dalla loro integrazione. Accanto agli aspetti più propriamente
tecnici e metodologici si affrontano anche
tematiche relative agli effetti pragmatici e
sociali dell’uso dei multimedia.
Programma
Processi informativi e siti web. Elementi
di semiotica applicata ai siti web. Modelli
concettuali di media, multimedia e ipermedia. Testi alfabetici. La scrittura su
web. Immagini digitali: grafica pittorica e
vettoriale. Elaborazione delle immagini
bit mapped. Colore: caratteristiche del
colore, spazi colore, gestione del colore.
Tecniche di compressione di immagini
(con e senza perdite). Formati di archiviazione di testi e immagini. Cenni di
semiotica visiva. Suoni: caratteristiche
fisiche e percettive. Rappresentazione
digitale di suoni. Supporti e formati di
archiviazione dei suoni. Elaborazione dei
suoni. Psicologia dell’udito: mascheramento e segregazione del suono. Compressione audio. Audio e musica: lo standard MIDI. Sintesi del suono. Spazializzazione e modellizzazione di ambienti
acustici. Uso del suono nei prodotti multimediali. Video analogico e digitale. Formati dei segnali video. Compressione
video. La famiglia degli standard MPEGx. Il processo di produzione video. Progettazione e integrazione di media. Progettazione orientata all’utente. Usabilità e
accessibilità dei prodotti multimediali.
Metodologie di progetto di ipermedia. Lo
standard ISO 14915. Aspetti legali legati
programmi - LS informatica
al multimedia: la legge sul diritto d’autore. Video e audio streaming. Architetture
per lo streaming. Protocolli per lo streaming. Applicazioni dei multimedia con
particolare riguardo al campo dell’e-learning.
Modalità d’esame
L’esame consiste in una prova scritta e
nella discussione orale di un progetto realizzato in SMIL o VRML.
Bibliografia
Oltre ai materiali distribuiti a lezione si
consigliano i seguenti testi:
- N.P. CHAPMAN, J. CHAPMAN, Digital Multimedia, John Wiley & Sons, 2000.
- L. T OSCHI (a cura di), Il linguaggio dei
nuovi media, Apogeo, 2002.
STATISTICA MATEMATICA 1
Docente
Prof. Luigi Pace
Crediti
6
Finalità del corso
Il corso presenta un’introduzione all’inferenza statistica e ad alcune importanti
applicazioni, sulla base del concetto di
funzione di verosimiglianza.
Programma
- Richiami e complementi di Calcolo delle
Probabilità Le variabili casuali normale
bivariata e normale multivariata; la distribuzione di combinazioni lineari e forme
quadratiche di componenti di una normale multivariata.
- Modelli statistici Il problema; modelli
parametrici e non parametrici; modelli
statistici parametrici notevoli, il controllo
empirico di un modello statistico (metodi
grafici: probabilty plot, stima della densità).
211
programmi - LS informatica
- Inferenza statistica: le procedure fondamentali Il problema; definizioni di base;
stima puntuale; problemi di previsione;
verifica delle ipotesi statistiche; stima
intervallare; i test di Kolmogorov-Smirnov; la simulazione.
- La funzione di verosimiglianza. Motivazione e definizioni di base (funzione
score, informazione osservata); lo stimatore di massima verosimiglianza; i test di
verosimiglianza; parametri di interesse e
parametri di disturbo: la verosimiglianza
profilo; verosimiglianze penalizzate e
selezione del modello.
Modalità d’esame
L’esame consiste in una prova scritta
seguita, per i sufficienti, da una prova
orale. Entrambe le prove dovranno essere
superate nello stesso appello.
Bibliografia
- Appunti delle lezioni.
- A. AZZALINI, Inferenza Statistica: un’introduzione basata sul concetto di verosimiglianza, Springer-Verlag, 1992.
- L.J. BAIN, M. ENGELHARDT, Introduction
to Probability and Mathematical Statistics,
PWS-Kent Publishing co., 1992.
STATISTICA MATEMATICA 2
Docente
Prof. Luigi Pace
Crediti
6
Finalità del corso
Il corso approfondisce l’inferenza statistica parametrica basata sul concetto di
verosimiglianza e tratta alcune applicazioni riferite a modelli di regressione.
Programma
- Verosimiglianza: aspetti teorici.
L’immutabilità della verosimiglianza; statistiche sufficienti e verosimiglianza;
distribuzioni campionarie asintotiche
delle principali quantità di verosimiglianza e loro uso come approssimazioni.
- Procedure statistiche ottimali. Stimatori
non distorti e efficienti tra i non distorti;
test più potenti; intervalli di confidenza
più accurati; i teoremi fondamentali.
- I modelli binomiali. Stima della probabilità; verifica di ipotesi e test dei segni
per mediana e quantili; test per la probabilità comune; il modello di regressione
logistica; l’algoritmo di Newton-Raphson
per la determinazione di una soluzione
dell’equazione di verosimiglianza.
- I modelli multinomiali. Stima delle probabilità di cella; test chi-quadrato di adattamento; test di indipendenza in una
tabella di contingenza; test di omogeneità
di più tabelle.
- I modelli Poisson. Stima e verifica di
ipotesi sul parametro; modelli di regressione.
- I modelli normali. Stima e verifica di
ipotesi sui parametri; modelli di regressione lineare.
Modalità d’esame
L’esame consiste in una prova scritta
seguita, per i sufficienti, da una prova
orale. Entrambe le prove dovranno essere
superate nello stesso appello.
Bibliografia
- Appunti delle lezioni.
- A. AZZALINI, Inferenza Statistica: un’introduzione basata sul concetto di verosimiglianza, Springer-Verlag, 1992.
- L. PACE, A. SALVAN, Teoria della Statistica,
CEDAM, 1996.
STORIA DELL’INFORMATICA
Docenti
Dott. Corrado Bonfanti
Dott. Paolo Giangrandi
212
Crediti
3
Finalità del corso
Il corso fornisce una panoramica generale sulle tappe fondamentali che hanno
caratterizzato la storia degli strumenti di
calcolo, approfondendo in particolare
l’evoluzione delle tecnologie del computer elettronico moderno. Si evidenzia
come gli attuali computer non siano il
frutto del lavoro di un singolo inventore e
di una singola idea geniale, bensì il risultato dei contributi di moltissimi studiosi e
sperimentatori appartenenti a diverse
discipline; contributi che, nelle varie epoche, hanno dato luogo a diversi filoni concettuali e tecnologici, talvolta complementari e altre volte divergenti.
Programma
- Gli antichi strumenti di calcolo. L’era dei
calcolatori meccanici: calcolatori analogici e calcolatori digitali.
- Macchine programmabili: automi meccanici, telaio Jacquard, strumenti musicali automatici, Charles Babbage.
- I sistemi meccanografici a schede perforate.
- Le radici concettuali del computer: dal
programma di Leibniz alle macchine di
Turing.
- I pionieri del calcolo elettronico, l’architettura di von Neumann e i primi calcolatori a programma memorizzato.
- L’evoluzione delle tecnologie: dal mainframe al personal computer.
- Gli ambienti applicativi e l’evoluzione
del software.
- Oltre il calcolo scientifico: sviluppo
dell’industria e del mercato in uno scenario mondiale.
- Reti telematiche: dalle origini a Internet.
- L’informatica in Italia.
Bibliografia
- Appunti delle lezioni.
programmi - LS informatica
- M.R. WILLIAMS, A History of Computing
Technology, Prentice-Hall, 1985.
- M. D A V I S , Il calcolatore universale,
Adelphi, 2003.
- C. B ONFANTI , Mezzo secolo di futuro.
L’informatica
italiana
compie
cinquant’anni, Mondo Digitale, n. 3/2004.
Durante il corso verranno forniti anche
gli indirizzi di diversi siti web dove sono
reperibili numerosi documenti multimediali sulla storia dell’informatica.
TECNOLOGIE WEB
Docente
Prof. Vito Roberto
Crediti
6
Programma
Il corso si propone di presentare agli studenti il World Wide Web, le tecnologie
informatiche e le implicazioni sociali che
da esso traggono origine: una panoramica generale, corredata da esercitazioni di
laboratorio, che anticipa i contenuti di
corsi successivi e inserisce lo studente
nelle problematiche dell’intero corso di
laurea. Vengono introdotti i concetti fondamentali delle reti di calcolatori: protocolli, formati, linguaggi, tecnologie, con
enfasi sull’HyperText Transfer Protocol
ed il linguaggio HTML. La sicurezza delle
reti viene affrontata tramite elementi di
crittografia e tecniche di autenticazione.
Le tecnologie multimediali vengono
introdotte attraverso formati e standard di
compressione e di rappresentazione dei
dati audio, video, immagini, di grafica ed
animazione. Vengono trattati aspetti
dell’interattività sul web (linguaggi di
script) e dell’interazione uomo-macchina
nel progetto di pagine web e di interfacce
grafiche basate su web. Concludono il
corso problematiche di interesse sociale:
213
programmi - LS informatica
la privatezza dei dati, la proprietà intellettuale su Internet e le implicazioni internazionali ed interculturali.
TECNOLOGIE XML
Docente
Dott. Massimo Franceschet
Crediti
6
Programma
1) Introduzione. In questa parte vengono
richiamati alcuni argomenti relativi a
XML e alle basi di dati tradizionali.
2) Linguaggi per la definizione di schemi
XML. In questa sezione viene introdotto
il linguaggio di definizione XML Schema
(XSchema).
3) Linguaggi di interrogazione e di modifica per XML. Questo blocco è dedicato ai
linguaggi che permettono di interrogare
documenti XML, quali XML Path Language (XPath) e XML Query Language
(XQuery) e al linguaggio di modifica
XQuery Update Facility.
4) Basi di dati native per XML. Questa
parte ha come obiettivo quello di imparare ad usare almeno una basi di dati nativa
per XML.
5) Linguaggi di trasformazione. Questo
segmento esplora la possibilità di trasformare documenti XML con il linguaggio
Extensible Stylesheet Language Transformations (XSLT).
6) Programmare con XML. Questa blocco
insegna come costruire applicazioni Java
che lavorano con XML. In particolare
introdurremo le interfacce DOM e SAX
per l’analisi sintattica (parsing) di documenti XML e vedremo come fare il parsing, la validazione, la trasformazione,
l’interrogazione, e la serializzazione di
documenti XML usando JAXP (Java API
for XML Processing).
TEORIA DEI SISTEMI 1
Docente
Prof. Adriano Pascoletti
Crediti
6
Finalità del corso
Fornire alcuni strumenti matematici utili
nello studio di problemi riconducibili a
sistemi dinamici. Ogni argomento trattato è accompagnato da numerosi esempi,
spesso tratti da campi diversi dall’informatica, volti ad illustrare il processo di
costruzione del modello e l’impiego degli
strumenti matematici presentati.
Programma
Modelli dipendenti da un parametro
discreto; ricorrenze lineari e sistemi di
ricorrenze lineari di primo ordine; evoluzione e comportamento a lungo termine;
equilibrio e stabilità.
Modalità d’esame
Prova orale.
Bibliografia
- D.G. LUENBERGER, Introduction to Dynamic Systems: Theory, Models & Applications, J.Wiley, 1979.
- A. PASCOLETTI, dispense del corso.
TEORIA DEI SISTEMI 2
Docente
Prof. Adriano Pascoletti
Crediti
6
Finalità del corso
Approfondimento di alcuni argomenti
trattati o solo accennati nel precedente
corso di Teoria dei Sistemi I; approccio
214
sistemico alla soluzione di problemi
attraverso l’analisi e l’implementazione
di tecniche di generazione e conteggio di
oggetti combinatori che portano in
maniera naturale alla dinamica simbolica.
Programma
Esempi di sistemi dinamici per la generazione ed il conteggio di oggetti combinatori; funzioni generatrici; sistemi positivi
e catene di Markov discrete.
Modalità d’esame
Prova orale.
Bibliografia
- D.G. LUENBERGER, Introduction to Dynamic Systems: Theory, Models & Applications, J.Wiley, 1979.
- A. PASCOLETTI, dispense del corso.
TEORIA DELL’INFORMAZIONE
Docente
Prof. Agostino Dovier
Crediti
6
Finalità del corso
Il corso si propone di fornire i fondamenti normativi della Teoria dell’Informazione, soffermandosi anche sulle principali
applicazioni nell’ambito dei codici per la
compressione dei dati e per la correzione
degli errori.
Programma
Il corso si divide in due parti: la codifica di
sorgente, che ha l’obiettivo di comprimere l’informazione, e la codifica di canale,
mediante la quale si cerca di rilevare e
correggere eventuali errori di trasmissione.
- Codifica di sorgente. Generalità. Codici
programmi - LS informatica
B-LV. Alberi di codice, univoca e istantanea decodificabilità. Disuguaglianza di
Kraft-McMillan. Lunghezza media di un
codice. Entropia, Divergenza e Teorema
di Shannon. Codici di Shannon-Fano.
Sorgenti di Informazione. Tasso del codice e ottimalità asintotica dei codici di
Shannon-Fano. Il codice di Fano ed il
codice di Huffman. Entropia condizionata, mutua informazione, autoinformazione. Codice multinomiale e sua asintotica
ottimalità. Codici LV-B. Famiglie esaurienti, a prefisso e complete. Alberi e
Codici di Tunstall. Ottimalità degli stessi.
Codici B-B. Valutazione del tasso in codifica priva di errore. Modelli con errore:
codici delta-tipici e Secondo Teorema di
Shannon. Codici LV-LV. Codici asintoticamente ottimi. Codici universale di ZivLempel, Ziv-Lempel-Welch, e di Burrows-Wheeler.
- Codifica di canale. Generalità. Controllo
parità, codice a ripetizione e codice di
Hadamard. Il modello matematico del
canale ed il Teorema di Shannon di canale. Calcolo e significato della capacità su
alcune tipologie di canale. Decodifica di
canale a massima verosimiglianza sulle
stesse. Decodifica a minima distanza di
Hamming. Distanza minima di un codice, tasso di correzione e relazioni con la
Probabilità di errore. Limitazioni di Singleton, Plotkin, Hamming e Gilbert.
Codici Correttori di Errore: introduzione
ai codici algebrici. Decodifica usando la
Tabella di Slepian. Codici di Hamming.
Codici Perfetti: risultati principali. Codici
BCH e codici di Reed-Muller. Codici ciclici. Definizioni principali, polinomio
generatore, matrice generatrice e di controllo. Progetto dei codici ciclici a partire
dalle radici primitive dell’unità e relazioni
con la distanza minima. Codici convolutivi e l’algoritmo di Viterbi. Cenni sui codici segreti: breve storia della crittografia e
principali risultati della crittografia a
chiave pubblica.
215
programmi - LS informatica
Modalità d’esame
Prova orale.
Bibliografia
- F. FABRIS, Teoria dell’Informazione, codici, cifrari, Bollati-Boringhieri, Torino,
2001.
- E. BERLEKAMP, Algebraic Coding Theory,
McGraw-Hill, 1968.
- R. G ALLAGER , Information Theory and
Reliable Communication, Wiley, New
York, 1968.
- F.J. M AC W ILLIAMS , S LOANE N.J., The
Theory of Error Correcting Codes, North
Holland, 1977.
TEORIE E TECNICHE DI
ELABORAZIONE DELLE IMMAGINI
Docente
Prof. Vito Roberto
Crediti
6
Finalità del corso
I corsi nell’insieme forniscono una panoramica su principi e tecniche di Riconoscimento di Forme (Pattern Recognition), e in particolare l’analisi, interpretazione e comunicazione di segnali ed
immagini. Tutti gli argomenti sono basati su esercitazioni pratiche in laboratorio,
con l’utilizzo delle attrezzature e del
software del Laboratorio Immagini del
Dipartimento di Informatica dell’Università di Udine. Informazioni sul Laboratorio Immagini sono reperibili sul sito web:
http://mvl.dimi.uniud.it/
Programma
Rappresentazioni di segnali e immagini
Segnali, immagini analogiche e digitali.
Rumore nei segnali e nelle immagini.
Rappresentazioni statistiche e frequenziali. Acquisizione d’immagini.
Analisi delle immagini
Processi di filtraggio d’immagine: frequenziale e statistico. Miglioramento di
qualità delle immagini (enhancement).
Operatori derivativi ed estrazione di primitive spaziali.
Programma delle esercitazioni di TTEI
- Segnali statistici.
- Rappresentazioni frequenziali e filtraggio.
- Rappresentazione ed elaborazione delle
immagini. Viene utilizzato l’ambiente
software MATLAB (su licenza The
Mathworks Inc.) versione 5.1.0.421, con
l’aggiunta dei pacchetti: Signal Processing (vers.4.0.1); Statistics (vers. 2.1.0);
Image Processing (vers. 2.0).
Bibliografia
- Dispense del corso di Teoria e Tecniche
di Elaborazione dell’Immagine, a cura del
docente.
Testi per la consultazione:
- R. KLETTE, P. ZAMPERONI, Handbook of
Image Processing Operators, Wiley, 1996.
- J.C. RUSS, The Image Processing Handbook, CRC Press, 1995.
WEB INFORMATION RETRIEVAL
Docente
Prof. Stefano Mizzaro
Crediti
6
Finalità del corso
Il corso mira ad introdurre le tematiche
principali dell’Information Retrieval (IR),
una disciplina importante storicamente e
che ha ricevuto un forte impulso in seguito all’avvento del Web. Infatti, dopo la
posta elettronica, l’uso di un motore di
ricerca è oggi la seconda attività degli
utenti del Web. Inoltre, svariati utenti del
Web usano un motore di ricerca come
216
Google, Yahoo! o MSN Search come
modalità principale di accesso alla rete.
Infine, il Web IR è un settore in rapida
crescita economica. Oltre alle tematiche
assodate dell’IR classico, vengono presentate quelle, più recenti, specifiche del
mondo Web. Vengono discussi sia argomenti di base sia le correnti linee di ricerca e le tendenze future.
Programma
Il corso è diviso in tre parti:
- Information Retrieval classico: modelli
concettuali della ricerca d’informazioni,
modelli concettuali e formali dei sistemi
d’IR, progetto e implementazione di un
sistema d’IR, strutture dati e algoritmi di
indicizzazione e ricerca, interfacce utente
per l’IR, la problematica della valutazione
dei sistemi d’IR.
- Web Information Retrieval: modelli del
Web (forma e dimensioni del grafo del
Web, cenni all’analisi delle reti sociali e
alle reti a invarianza di scala e piccolo
mondo), analisi dei link e della connettività, iperlink e crawling, IR multimediale,
meta-motori, progetto e implementazione di un motore di ricerca per il Web,
biblioteche digitali.
- Tematiche avanzate: IR parallelo e
distribuito, ricerca d’informazioni tramite dispositivi mobili e su reti peer-to-peer,
problemi fondazionali del settore (ad es.,
i concetti di informazione e pertinenza),
sistemi per il filtraggio d’informazioni,
clustering, banche dati specialistiche (ad
es., mediche), ecc. Queste tematiche
avanzate verranno trattate in forma di
attività seminariale, che potrà essere svolta, opzionalmente, dagli studenti.
Modalità d’esame
Orale. Sono previste anche attività, opzionali e a scelta dello studente ma caldamente consigliate, che portano a un
esame semplificato e a una votazione
superiore: seminari svolti durante il corso
programmi - LS informatica
o semplici progetti concordati con il
docente. Al corso è possibile affiancare il
laboratorio: in tal caso l’attività progettuale è più impegnativa.
Bibliografia
- R. B A E Z A -Y A T E S , B. R I B E I R O -N E T O ,
Modern Information Retrieval, Addison
Wesley, 1999. ISBN: 020139829X.
- R. BELEW, Finding Out About - A Cognitive Perspective on Search Engine Technology
and the WWW, Cambridge University
Press, 2000. ISBN: 0-521-63028-2.
- R. KORFHAGE, Information Storage and
Retrieval, Wiley, 1997. ISBN: 0471143383.
- M. L EVENE , An Introduction to Search
Engines and Web Navigation, Addison
Wesley, 2006.
- S. CHAKRABARTI, Mining the Web, Morgan Kaufmann, 2003.
Molti degli argomenti trattati non sono
disponibili su testi, ma solo su articoli
scientifici. A lezione verranno comunicati eventuali altri testi e verrà segnalato o
fornito altro materiale (tutti i lucidi delle
lezioni, pagine Web, dispense, altri testi
di riferimento, articoli scientifici, ecc.).
WEB SEMANTICO
Docente
Dott. Alessio Gugliotta
Crediti
6
Finalità del corso
Ricollegandosi alle nozioni acquisite,
anche in laboratorio, sul linguaggio XML
lo studente sarà in grado di:
- conoscere l’impostazione gerarchica del
Web Semantico quale si va affermando
attualmente, orientandosi tra i livelli di
rappresentazione dell’informazione;
- conoscere le principali tecnologie coinvol-
programmi - LS informatica
te, con particolare riguardo alle ontologie;
- saper progettare ontologie relative a
domini applicativi, allo scopo di realizzare strati di software;
- acquisire conoscenze pratiche sulle suddette tecnologie attraverso lezioni in laboratorio; casi di studio; homeworks.
Programma
1. Introduzione al Web semantico
Si parte da un’analisi critica del Web
attuale; si illustrano le motivazioni del
Web semantico, fino all’introduzione
degli elementi tecnologici principali.
2. Sviluppo di ontologie
Saranno illustrati alcuni dei metodi per lo
sviluppo e gestione delle ontologie, e
riportati esempi d’uso e applicazione.
Saranno svolte esercitazioni in aula volte
all’approfondimento di ontologie usando
il linguaggio OWL e lo strumento di sviluppo Protégé.
3. Sviluppo del Web semantico: un
approccio a strati
Il Web semantico è introdotto seguendo
l’approccio a strati: le strutture XML che
definiscono l’accesso ai documenti Web;
la descrizione e organizzazione delle
risorse attraverso il linguaggio RDF;
l’attuale proposta di OWL, linguaggio di
ontologie per il Web.
4. Strumenti e applicazioni del Web
semantico
Le applicazioni sono trattate con riferimento alla gestione della conoscenza,
personalizzazione e architetture orienta-
217
te ai servizi. Saranno svolte esercitazioni
per lo sviluppo di una semplice applicazione, usando tecnologie e strumenti
introdotti durante il corso.
Bibliografia
- G. A N T O N I O U , F. V A N H A R M E L E N , A
Semantic Web Primer, Cambridge, MA:
MIT Press, 2004.
- J. DAVIES, R. STUDER, P. WARREN, Semantic Web Technologies. Trends and Research
in Ontology-Based Systems, Wiley, 2006.
- A. GOMEZ-PEREZ, M. FERNANDEZ-LOPEZ,
O. C O R C H O , Ontological Engineering,
Springer, 2004.
- T. BERNERS-LEE, J. HENDLER, O. LASSILA,
The Semantic Web, Scientific American
284,5 (May 2001): 34-43.
- T. BERNERS-LEE, Weaving the Web, Harper, 1999.
- Semantic Web Vision, a collection of
resources:
http://www.ics.forth.gr/isl/swprimer/in
dex2.php?selected=1&opened=6
- OWL Web Ontology Language
http://www.w3.org/TR/owl-ref/
- Protégé project. http://protege.stanford.
edu/
- Ontology Development 101: A Guide to
Creating Your First Ontology, N.F. Noy, D.L.
McGuinness http://www.ksl.stanford.
edu/people/dlm/papers/ontology101/ontology101-noy-mcguinness.html
- Semantic Web Challenge. A new application award. http://challenge.semanticweb.org/
218
programmi - LS tecnologie dell’informazione
CORSO DI LAUREA
SPECIALISTICA IN
TECNOLOGIE
DELL’INFORMAZIONE
ALGORITMI E COMPLESSITÀ
Docente
Prof. Carla Piazza
Crediti
6
Finalità del corso
Il corso si propone di presentare i principali risultati nel campo della complessità
computazionale degli algoritmi con particolare attenzione alle classiche gerarchie
di classi di complessità astratte ed alle tecniche di studio dei problemi nel campo.
Ci si propone inoltre di presentare agli
studenti le idee e le nozioni fondamentali
relative ai più promettenti ed innovativi
modelli computazionali proposti dalla
comunità scientifica.
Programma
- Classi di complessità. Il teorema di
gerarchia sulle classi di complessità. Il
Gap theorem. Teorema di Savitch. Il teorema di Immermann-Szelepscenyi e conseguenze. Riduzioni e completezza. Classi esterne ad NP.
- Quantum Computing. Macchina di
Turing quantistica. Macchina di Turing
Quantistica Universale. Classi di complessità quantistica. Algoritmi quantistici.
- DNA Computing. Il modello di Adleman e Lipton. Soluzione di SAT ed altri
problemi NP-completi. Simulazione di
macchine di Turing.
- Algoritmi. Il problema della riduzione di
automi e la bisimulazione. Algoritmo di
Hopcroft. Algoritmo di Paige-Tarjan.
Algoritmo di Paige-Tarjan-Bonic. Il pro-
blema della simulazione ed algoritmi efficienti per la sua risoluzione.
Bibliografia
- C.H. P APADIMITRIOU , Computational
Complexity, Addison Wesley, 1995.
- Articoli e dispense.
BASI MATEMATICHE PER LA
REALTÀ VIRTUALE
(tace nell’a.a. 2007/08)
Crediti
6
Finalità del corso
La realtà virtuale intende studiare un
insieme di metodi per la decodifica sensoriale di modelli costruiti con il computer. Al presente molti tentativi sono stati
fatti per la decodifica di modelli coinvolgenti tutti e cinque sensi ma i risultati più
importanti riguardano i metodi di esplorazione e interazione spaziale tridimensionale. Al fine di ottenere questi risultati
è necessario sfruttare metodi matematici
che riguardano l’analisi, la geometria differenziale e la geometria proiettiva.
Opportunamente applicando questi
metodi è possibile costruire sistemi di
rappresentazione della realtà e di interazione spaziale; in tal modo viene anche
simulata la presenza di operatori umani
in ambienti virtuali esistenti solo in
forma digitale all’interno del computer.
In questo corso si presenta la teoria e le
applicazioni di tali metodi.
COMPLEMENTI DI BASI DI DATI
Docente
Prof. Angelo Montanari
Crediti
6
programmi - LS tecnologie dell’informazione
Programma
Parte 1 - La progettazione delle basi di dati
(complementi)
La progettazione concettuale delle basi di
dati e il modello Dataflow: i costrutti di
base del modello Dataflow (processi, flussi dei dati, depositi dei dati e interfacce),
diagrammi contesto e diagrammi di flusso dei dati, progetto funzionale basato sul
modello Dataflow; progetto di sistemi
informativi: un approccio integrato alla
progettazione delle funzioni e dei dati
(sintesi degli schemi ER esterni e loro
integrazione). La progettazione logica dei
dati: soddisfacibilità e violazione di
dipendenze funzionali, chiusura di insiemi di dipendenze, un calcolo delle dipendenze (gli assiomi di Armstrong), chiusura di insiemi di attributi, algoritmi per il
calcolo della chiusura di insiemi di attributi, insiemi di dipendenze logicamente
equivalenti, coperture minimali, scomposizioni e loro proprietà, forme normali e
normalizzazione, algoritmi per la determinazione di scomposizioni in specifiche
forme normali.
Parte 2 - Il linguaggio SQL (complementi)
SQL e i linguaggi di programmazione:
introduzione, approcci alla programmazione per basi di dati, le procedure
memorizzate, i trigger, SQL embedded
statico (interrogazioni semplici e complesse, l’utilizzo dei cursori) e dinamico
(esecuzione immediata ed esecuzione in
due fasi), l’utilizzo di librerie di funzioni:
SQL/CLI (Call Level Interface), ODBC e
JDBC (cenni).
Parte 3 - L’organizzazione fisica dei dati
Memorizzazione dei record ed organizzazione dei file primari: introduzione, strumenti e tecniche per la gestione della
memoria secondaria, buffering dei blocchi, memorizzazione di file di record su
disco, operazioni sui file, file di record
non ordinati (heap file), file di record
ordinati (sorted file), tecniche di hashing,
219
altre possibili organizzazioni dei file primari, uso della tecnologia RAID per
parallelizzare l’accesso a disco. Strutture
di indicizzazione dei file: tipi di indici
ordinati di livello singolo (primari, di clustering, secondari), indici multilivello,
indici multilivello dinamici che utilizzano B-alberi e B + -alberi, altri tipi di indici.
Parte 4 - Tecnologia delle basi di dati centralizzate
La nozione di transazione: introduzione,
proprietà desiderabili delle transazioni,
scheduling e recupero delle transazioni,
tecniche di serializzazione, supporto alle
transazioni in SQL. Tecniche di controllo
della concorrenza: problematiche, architettura, anomalie delle transazioni concorrenti, tecniche basate su viste, conflitti, locking a due fasi (2PL e 2PL stretto) e
timestamp, tecniche multiversione, granularità dei data item. Il gestore del buffer: architettura del buffer manager, primitive per la gestione del buffer, politiche
di gestione del buffer, relazione tra il
gestore del buffer e il file system. Tecniche di controllo dell’affidabilità: concetti
di base, architettura del controllore
dell’affidabilità, memoria stabile, organizzazione del log, gestione delle transazioni, gestione dei guasti. Elaborazione e
ottimizzazione delle interrogazioni: i
cataloghi di sistema; ottimizzazione delle
interrogazioni (rappresentazione interna
delle interrogazioni, profili delle relazioni, ottimizzazione basata sui costi); progettazione fisica di una base di dati. La
sicurezza nelle basi di dati: introduzione,
controllo obbligatorio degli accessi per
supportare livelli multipli di sicurezza, la
sicurezza nelle basi di dati statistiche
(cenni).
Parte 5 - Basi di dati distribuite
Introduzione ai DBMS distribuiti, elementi di base dell’architettura client-server, frammentazione dei dati, allocazione
dei dati, livelli di trasparenza, tipi di siste-
220
mi di basi di dati distribuite, elaborazione
delle interrogazioni in basi di dati distribuite, controllo della concorrenza e dell’affidabilità nelle basi di dati distribuite.
Parte 6 - Basi di dati e World Wide Web
(cenni)
Nozioni di base (Internet, World Wide
Web, HTML, protocollo HTTP), gateway
e form, tecniche e strumenti per l’accesso
a basi di dati attraverso il Web, accesso a
basi di dati tramite programmi CGI, strumenti di sviluppo, limiti del protocollo
CGI, soluzioni basate sul server, soluzioni basate sul client, sistemi informativi
sul web, progettazione concettuale di
applicazioni web.
Parte 7 - Argomenti conclusivi (cenni)
Basi di dati per il supporto alle decisioni
(data warehouse); dati semistrutturati in
XML; basi di dati a oggetti e ibride (ad
oggetti e relazionali); basi di dati attive;
basi di dati temporali e spaziali.
Bibliografia
Testi adottati
- P. A TZENI , S. C ERI , P. F RATERNALI , S.
P ARABOSCHI , R. T ORLONE , Basi di Dati:
Architetture e Linee di Evoluzione, McGrawHill, 2003.
- R. ELMASTRI, S. NAVATHE, Fundamentals
of Database Systems, 5th edition, Pearson
International Education / Addison
Wesley, 2007.
In alternativa:
- R. ELMASTRI, S. NAVATHE, Sistemi di basi
di dati. Complementi, quarta edizione,
Pearson Education Italia / Addison
Wesley, 2005.
Altri testi di riferimento:
- J.D. ULLMAN, Principles of Databases and
Knowledge-Base Systems, Computer Science Press, 1988, volume I.
- SILBERSCHATZ, H.F. KORTH, S. SUDARSHAN, Database System Concepts, 4th edition, McGraw-Hill, 2002.
- A. ALBANO, Costruire sistemi per basi di
dati, Addison-Wesley, 2001.
programmi - LS tecnologie dell’informazione
- A. ALBANO, G. GHELLI, R. ORSINI, Fondamenti di basi di dati, Zanichelli, 2005.
- P. A TZENI , S. C ERI , S. P ARABOSCHI , R.
TORLONE, Basi di Dati: Modelli e Linguaggi
di Interrogazione, seconda edizione,
McGraw-Hill, 2006.
COMPLEMENTI DI TECNICHE DI
COMUNICAZIONE
(tace nell’a.a. 2007/08)
Crediti
3
Finalità del corso
Il corso si propone come approfondimento teorico e pratico del ‘Laboratorio di tecniche di comunicazione’ tenuto dal prof.
Angelo Marzollo. In particolare saranno
approfonditi tutti i temi, in parte introdotti già durante il ‘Laboratorio di tecniche di comunicazione’, che riguardano la
scrittura chiara ed efficace della lingua
italiana. Dopo aver verificato il grado di
chiarezza ed efficacia di scrittura che ciascuno studente già possiede, il corso cercherà di ottimizzarlo, sia nella revisione
di testi altrui che nella produzione di testi
propri. Con numerose esercitazioni collettive e individuali, il corso avrà un’impostazione essenzialmente pratico-applicativa, costruendo un percorso per cui, alla
fine delle 24 ore di lezione, tutti gli studenti avranno concretamente migliorato
il loro modo di progettare e scrivere testi.
I generi di testi scritti su cui si lavorerà
saranno soprattutto tesine per esami, tesi
di laurea, lettere tradizionali, scambi di
mail, presentazioni personali, curriculum vitae et studiorum. Per le esercitazioni si privilegerà la scelta di testi proposti
dagli studenti (es.: elaborati per esami già
prodotti o in corso di produzione, capitoli
di tesi già scritti su cui si abbiano dubbi e
incertezze, presentazioni personali di cui
discutere l’efficacia, ecc.), in modo da
221
programmi - LS tecnologie dell’informazione
lavorare sempre su materiale ‘vivo’ e vicino alle esigenze concrete dei partecipanti
al corso.
Programma
- Le tre fasi della scrittura: progettazione,
redazione, revisione.
- Tecniche di progettazione di un testo
scritto.
- Come organizzare al meglio un testo
scritto.
- Rudimenti di retorica classica: la ‘dispositio’ dall’incipit alle conclusioni.
- Le tecniche fondamentali della scrittura
chiara: periodi brevi, espressioni dirette,
concrete, semplici e comuni, forma attiva
dei verbi, evitare la nominalizzazione,
scrivere per punti, e altro ancora.
- Cosa vuol dire scrittura efficace: la definizione degli obiettivi e del target del
testo, l’organizzazione del testo, la scelta
del tono e dello stile, e così via.
- Cooperazione e conflitto nella comunicazione interpersonale scritta: buona
educazione ed effetti di aggressività nello
scambio di mail.
Modalità d’esame
L’esame consisterà nella stesura di un
elaborato scritto, che dovrà avere caratteristiche di chiarezza ed efficacia secondo i
criteri individuati durante il corso. Il
tempo a disposizione degli studenti per
l’esame sarà di 2 ore.
Bibliografia
- A. LUCCHINI, Business writing. Scrivere
nell’era di Internet, Sperling & Kupfer,
Milano, ultima edizione. È il testo fondamentale dell’esame, che va studiato dalla
prima all’ultima pagina e tenuto come
punto di riferimento anche durante le
esercitazioni, per le numerose indicazioni pratiche che contiene.
- R. L ESINA , Il nuovo manuale di stile.
Guida alla redazione di documenti, relazioni, articoli, manuali, tesi di laurea, Zani-
chelli, Bologna, ultima edizione.
È un manuale di riferimento per chiunque debba scrivere o redigere testi non
letterari. Contiene suggerimenti preziosi
su come progettare, organizzare e impaginare un testo, come trattare capitoli,
paragrafi, nomi, titoli di opere, bibliografie, citazioni, tabelle, note, e molto altro
ancora. Per l’esame non è necessario studiarlo dalla prima all’ultima pagina, ma
basterà consultarne le parti che la docente indicherà a lezione. Una volta acquistato per l’esame, il testo rimarrà agli studenti come strumento di consultazione
da tenere nella propria libreria, utilissimo
da consultare, a seconda delle esigenze,
ogni volta che, scrivendo, si è colti da un
dubbio redazionale.
- V. CERAMI, Consigli a un giovane scrittore,
Einaudi, Torino, ultima edizione.
È una lettura facoltativa per l’esame, consigliabile non solo a chi scrive storie, per
diletto personale più o meno privato e
nascosto (racconti, favole, un diario personale, il cosiddetto ‘romanzo nel cassetto’), ma a chiunque abbia voglia di
approfondire gli aspetti creativi della
scrittura, nella consapevolezza che sono
importanti anche nella produzione di
testi non letterari.
DESIGN DEL SUONO
Docente
Prof. Elio Toppano
Crediti
3
Finalità del corso
Obiettivo fondamentale del corso è
l’acquisizione dei concetti, degli strumenti e delle metodologie di base per
l’analisi e la progettazione di oggetti
sonori finalizzati alla comunicazione (es.
loghi sonori, suoni per interfacce e pro-
222
programmi - LS tecnologie dell’informazione
duzioni multimediali, sonorizzazioni di
eventi e luoghi).
Programma
Analisi spettromorfologica del suono.
Caratterizzazione percettiva degli oggetti
sonori e tipologie di ascolto. Tecniche di
sintesi. Effetti e processori di segnale.
Strumenti virtuali. Editing, missaggio e
registrazione. Montaggio di oggetti sonori. L’uso del suono con le immagini.
Applicazione: realizzazione di coreografie sonore finalizzate ad obiettivi comunicativi.
Modalità d’esame
Il corso comprende esercizi di ascolto e
analisi di realizzazioni di noti sound designers. L’esame consiste in un test finale e
nella realizzazione di un progetto.
Bibliografia
- V. LOMBARDO, A. VALLE, Audio e Multimedia, seconda edizione, APOGEO.
- B. BARTLETT, J. BARTLETT, Tecniche di registrazione, APOGEO.
- R. P APEN , Virtual Instruments, User’s
manual.
- Lucidi delle lezioni e materiali scaricati
dal web.
E-GOVERNMENT
corso è dedicata all’esame della legislazione più recente, sia a livello europeo che
nazionale, volta a promuovere i progetti
di e-government attraverso l’adozione di
tecnologie ICT. Sono presentate anche
architetture di sistemi che realizzano
alcuni progetti. Parte del corso si svolge
in laboratorio ed ha come scopo la progettazione e realizzazione di moduli specifici su piattaforme open-source.
E-LEARNING
Docente
Prof. Vito Roberto
Crediti
3
Finalità del corso
Il corso si propone di fornire una panoramica delle problematiche connesse alla
progettazione di sistemi di e-learning, e
avviare gli studenti alla realizzazione di
specifici moduli. Nella prima parte si
introducono i concetti, si richiamano le
tecnologie informatiche e gli standard
internazionali correntemente in uso. La
seconda parte del corso si svolge in laboratorio e consiste nello sviluppo di software, su piattaforma open-source, per la realizzazione di oggetti didattici multimediali (learning objects).
Docente
Dott. Alessio Gugliotta
Crediti
3
Finalità del corso
Il corso si propone di presentare gli sviluppi più recenti dell’e-government, inteso come insieme di iniziative per l’automazione dei servizi amministrativi ai cittadini, e dei servizi interni alle Pubbliche
amministrazioni (backoffice). Parte del
FONDAMENTI E METODI
DELL’INFORMATICA
Docente
Prof. Furio Honsell
Crediti
6
Finalità del corso
Far riflettere gli studenti sulle limitazioni
223
programmi - LS tecnologie dell’informazione
dei procedimenti algoritmici, limiti sia
intrinseci sia dettati dalle risorse a disposizione. Gli studenti incontreranno il
concetto di funzione calcolabile, di linguaggio formale, di automa, di classe di
complessità e le loro reciproche relazioni.
Dopo aver superato l’esame si ritiene che
lo studente: conosca l’esistenza di problemi intrinsecamente irresolubili per via
algoritmica; abbia una chiara idea delle
relazioni note tra le classi di complessità
logaritmica, polinomiale deterministica e
non deterministica, esponenziale; conosca le prime nozioni relative ai linguaggi
formali e alle loro relazioni con gli automi.
Programma
- Calcolabilità. Modelli di calcolo: la
Macchina di Turing. Funzioni calcolabili
e problemi decidibili. Enumerazione
delle funzioni calcolabili, funzione universale. Tesi di Church. Esistenza di
problemi non decidibili. Problemi semidecidibili.
- Complessità. Macchine di Turing con
risorse limitate. Classi di complessità.
Alcune classi: P, NP, EXP, PSPACE.
Riduzioni polinomiali e problemi completi. NP-completezza, teorema di Cook,
esempi di problemi NP completi.
- Linguaggi formali. Grammatiche a
struttura di frase. Linguaggi regolari,
espressioni regolari, automi finiti. Linguaggi liberi dal contesto, alberi di derivazione; automi a pila.
Bibliografia
- Appunti delle lezioni.
- N.J. CUTLAND, Computability: An Introduction to Recursive Function Theory, Cambridge Univ. Press, Cambridge, 1980.
- J.E. HOPCROFT, J.D. ULLMAN, Introduction to Automata, Languages and Computation, Addison-Wesley, Reading, 1979.
GRAFICA 3D INTERATTIVA
Docente
Dott. Roberto Ranon
Crediti
6
Pagina del corso
http://www.dimi.uniud.it/ranon/int3d.h
tml
Finalità del corso
Il corso tratta i principali algoritmi e strumenti usati nella grafica 3D interattiva e
nelle sue applicazioni (videogame, visualizzazione scientifica). Vengono esaminati sia aspetti teorici (come le principali
tecniche per il rendering 3D real-time),
sia aspetti pratici nell’uso delle tecnologie
oggi disponibili (in particolare, librerie e
motori grafici).
Programma
- La pipeline per il rendering real-time.
- Le primitive grafiche.
- Cenni a trasformazioni.
- Illuminazione e shading: tecniche di
base e avanzate.
- Uso di texture: tecniche di base e avanzate.
- Rendering basato su immagini.
- Strutture dati spaziali.
- Algoritmi di cullino.
- Programmable shaders.
- Analisi e uso della libreria OpenGL.
- Analisi e uso di un motore per il rendering real-time.
Modalità d’esame
L’esame consiste nella realizzazione di
un progetto che utilizzi, approfondisca o
estenda alcuni degli argomenti o strumenti visti nel corso, ed in una prova
orale sui contenuti del corso.
Bibliografia
- T. A KENINE -M ULLER , E. H AINES , Real-
224
Time Rendering, A.K. Peters Ltd. ISBN
1568811829.
- E. ANGEL, Interactive Computer Graphics:
a Top-Down Approach with OpenGL, Addison-Wesley. ISBN 020138597X.
programmi - LS tecnologie dell’informazione
Bibliografia
- Dispense del corso di Teoria e Tecniche
di Elaborazione dell’Immagine, a cura del
docente.
- E. TRUCCO, A. VERRI, Introductory Techniques for 3-D Computer Vision, Prentice
Hall, 1998.
IMMAGINI E MULTIMEDIALITÀ
Docente
Prof. Vito Roberto
Crediti
6
Finalità del corso
I corsi nell’insieme forniscono una panoramica su principi e tecniche di Riconoscimento di Forme (Pattern Recognition), e in particolare l’analisi, interpretazione e comunicazione di segnali ed
immagini. Tutti gli argomenti sono basati su esercitazioni pratiche in laboratorio,
con l’utilizzo delle attrezzature e del
software del Laboratorio Immagini del
Dipartimento di Informatica dell’Università di Udine. Informazioni sul Laboratorio Immagini sono reperibili sul sito web:
http://mvl.dimi.uniud.it/
Programma
- Elementi di visione artificiale [D2].
Introduzione alla Computer Vision. Formazione dell’immagine. Elaborazione.
Modello geometrico della telecamera.
Ricostruzione da Visione Stereo. Analisi
del Movimento.
- Sintesi di mondi tridimensionali. Il Linguaggio VRML (Virtual Reality Modelling
Language). Rendering 3D tramite oggetti
VRML; il colore; il movimento; il suono.
Multimedialità nei mondi 3D.
- Esercitazioni di IM. Vengono utilizzati
l’ambiente software MATLAB (su licenza
The Mathworks Inc.) versione 5.1.0.421,
con l’aggiunta del pacchetto Image Processing, vers. 2.0, ed il linguaggio VRML
v.2.0.
INFORMATICA MEDICA
Docente
Dott. Vincenzo Della Mea
Crediti
6
Finalità del corso
Il corso di Informatica Medica si propone
di introdurre gli studenti ai problemi
specifici legati all’applicazione delle
metodologie e tecnologie informatiche in
ambito medico-clinico, partendo da
un’introduzione alle caratteristiche dei
dati e del ragionamento in Medicina. Particolare attenzione viene rivolta ai sistemi
informativi in ambito clinico sia per i
temi più tradizionali, come le cartelle
cliniche elettroniche, sia per quanto
riguarda aspetti prossimi al supporto alla
decisione, come i sistemi basati sui protocolli ed il necessario supporto costituito
dalle terminologie. Nel corso verranno,
inoltre, sottolineati quegli aspetti applicativi tipici dell’ambito medico, ed al contempo riguardanti problemi aventi anche
una valenza generale, che si configurano
come validi banchi di prova per settori di
ricerca dell’informatica, quali, ad esempio, l’elaborazione ed analisi di biosegnali
e bioimmagini, e le applicazioni del
Semantic Web alla Medicina.
Programma
1. Caratteristiche dei dati e del ragionamento in Medicina.
2. La cartella clinica elettronica: caratteri-
225
programmi - LS tecnologie dell’informazione
stiche, implementazione e standard
disponibili.
3. Terminologie e classificazioni.
4. Sistemi basati sui protocolli.
5. Elaborazione di biosegnali e bioimmagini.
6. Applicazioni mediche del Semantic
Web Casi di studio: sistemi, articoli scientifici, seminari esterni.
Modalità d’esame
Lo studente approfondirà un tema del
corso, a scelta, mediante una delle
seguenti modalità: un seminario interno
durante lo svolgimento del corso, oppure
una relazione scritta, oppure un progetto
breve. A seguito di ciò, l’esame consiste
in un colloquio nel corso del quale verrà
verificata la capacità dello studente di
considerare e fondere sia gli aspetti teorico-metodologici propri dell’informatica
sia le esigenze applicative tipiche
dell’ambito medico-clinico.
Bibliografia
- E.H. SHORTLIFFE, L.M. FAGAN, G. WIEDERHOLD, L.E. PERREAULT, Medical Informatics: Computer Applications in Health Care
and Biomedicine, 2nd edition, SpringerVerlag, 2000.
- J. V AN B EMMEL , Handbook of Medical
Informatics, 2nd edition, Springer-Verlag,
2002.
- E. COIERA, Guida all’Informatica Medica,
Internet e Telemedicina, Pensiero Scientifico, 2000.
- Materiale fornito a lezione, ed altre fonti
indicate dal docente. Il sito del corso si
trova
all’indirizzo
http://mitel.dimi.uniud.it/med/
INGEGNERIA DEL SOFTWARE 2
Docente
Prof. Maurizio Pighin
Dott. Anna Marzona
Crediti
6
Finalità del corso
Obiettivo del corso è l’approfondimento
delle principali tematiche dell’Ingegneria
del Software. Viene richiamato il ciclo di
progettazione e di vita di un prodotto
Software. Vengono poi studiati e
approfonditi gli argomenti più avanzati,
quali il configuration management, le
metodologie di test, la progettazione dei
sistemi, le metriche teoriche ed operative,
i più noti modelli di qualità di prodotto e
di processo, le metodiche di pianificazione e controllo, i principali strumenti di
lavoro. Nel correlato corso di Laboratorio
avanzato (4 CFU) viene svolto un casestudy completo, seguendo un processo di
sviluppo di un progetto Software in tutte
le fasi sia del ciclo di vita (specifiche, progetto, codifica, test, rilascio, manutenzione) che operativo (pianificazione, analisi
costi, metriche, organizzazione del lavoro, consuntivazioni economiche).
Programma
Introduzione e Richiami Generali: Le
motivazioni del Software Engineering.
Richiami alle definizioni di base. La
dimensione economica del problema. I
fattori di complessità del processo di
sviluppo. Configuration Management: Le
motivazioni del Configuration Management. Il CM-Planning. Trattamento delle
versioni. Assemblaggio dei componenti e
System Building. Ingegneria del Software Esistente: L’I.S.E: definizioni e
problematiche. Le metodologie di reengineering. Le metodologie di riuso. Lo
sviluppo per il riuso e tramite il riuso.
Verifica e Validazione: I risultati teorici
negativi. Strategie di test. Test dinamico.
Le catene di test. I test di regressione.
L’automazione del test e l’analisi
mutazionale. Test statico. Cenni sui
metodi formali di test. Metriche: Le
226
definizioni generali. Gli obiettivi delle
misure. Le scale di misurazione. Le misure di controllo e predittive. Il data collection. Gli attributi interni e le loro misurazioni. La metrica di Halstead. La metrica di Albrecht. La metrica di McCabe ed
altre metriche di complessità. Gli attributi esterni e le loro misurazioni Modelli di
qualità: La certificazione di qualità e i
principali modelli di certificazione di
processo e di prodotto: Richiami al modello ISO 9000, il modello CMM, cenni su
altri modelli: BOOTSTRAP, BOOTSTRAP, SYNQUEST, SPICE. Il modello
IS0 9126. Valutazione e stima dei costi:
L’analisi prestazioni/costo e l’analisi delle
decisioni. La stima dei costi del Software.
Richiamo modello COCOMO. Altri modelli di stima. Pianificazione e Controllo
del Processo Produttivo: L’organizzazione e gestione dei gruppi di lavoro. La
pianificazione ed i suoi obiettivi. I diagrammi di Pert e gli schemi di Gantt.
Manutenzione: Costi, stime, misurazioni,
dinamica del processo manutentivo. Il
modello COCOMO. Extreme programming: Metodologie organizzative: pianificazione, testing. Tecniche di sviluppo
Strumenti di lavoro: La tecnologia CASE:
Tools, Ambienti. Le funzionalità. Gli
strumenti di supporto nelle varie fasi del
processo di sviluppo.
programmi - LS tecnologie dell’informazione
Metrics - A Rigorous and Practical Approach, 2 nd edition, PWS Publishing Company, 1997.
- A. B INATO , A. F UGGETTA , L. S FARDINI ,
Ingegneria del Software, creatività e metodo,
Pearson-Addison Wesley, 2006.
- C. GHEZZI, M. JAZAYERI, D. MANDRIOLI,
Ingegneria del Software - Fondamenti e
Principi, seconda edizione, Pearson-PrenticeHall, 2004.
- AA. VV., Metriche del software - esperienze
e ricerche, Franco Angeli, 2006.
- Materiale didattico disponibile sul sito
d’Ateneo.
INTERAZIONE UOMO-MACCHINA 2
Docente
Prof. Luca Chittaro
Crediti
6
Modalità d’esame
L’esame consiste nella discussione del
progetto fatto durante il laboratorio.
Alternativamente lo studente può sostenere una prova scritta/orale sugli argomenti del programma.
Finalità del corso
Scopo primario del corso è quello di
esplorare i più recenti sviluppi e tendenze
nel settore dell’Interazione Uomo-Macchina e di approfondirne le più importanti ricadute applicative. I temi trattati rientreranno in tre categorie di pari importanza: la visualizzazione delle informazioni (progetto di un’interfaccia visuale e
tecniche di Information Visualization),
l’interazione con dispositivi e servizi
mobili (ad esempio, telefoni cellulari,
PDA, strumenti di bordo degli autoveicoli), la Realtà Virtuale (Immersiva, Desktop o Web-based).
Bibliografia
- R.S. PRESSMAN, Principi di Ingegneria del
Software, quarta edizione, McGrawHill,
2005.
- I. SOMMERVILLE, Software Engineering, 7th
edition, Addison Wesley P.C., 2004.
- N.E. F ENTON , S.L. P FLEEGER , Software
Programma
- Visualizzazione delle informazioni (IV).
Information Visualization (IV): definitions. Data vs. Information. Goals of IV.
Information Visualization vs. Scientific
Visualization. Issues involved in IV Design. Mapping: principles, visual attribu-
programmi - LS tecnologie dell’informazione
tes, examples. 2D vs. 3D visualizations.
Typical IV design problems. A model for
IV. A classification of data types: Categorical, Numerical, Topological, Symbolic,
Textual Data. An alternative classification
of data types: 1-dimensional, 2-dimensional, 3-dimensional, temporal, multidimensional, tree, network. A classification of task types: overview, zoom, filter,
details-on-demand, relate, history,
extract.
- Tecniche per visualizzare ed interagire con
i dati. Bivariate, Trivariate, Multivariate
data: Scatterplots, Mosaic Display, Parallel coordinate plots, Starplot, Chernoff
Faces, Hierarchical Axis, Dimensional
Stacking, Dynamic Queries, Alphasliders, The Attribute Explorer, SDM (Selective Display and Manipulation). InfoZoom. Pixel-oriented visualizations:
screen-filling curves, recursive pattern,
circle segments. Trees: Treemaps, Cone
Trees, Camtrees, Star Tree, Hyperbolic
Trees. Networks: SeeNet, HierNet, NetMap. Temporal data: Lifelines, AsbruView, Paint Strips. Documents: TileBars,
document Galaxies, Themescape, Citeseer-Relator, MDS-interactive. Information Workspace: Rooms, Web Forager,
Windows Task Gallery, Sun Looking
Glass.
- Il problema della presentazione. Overview+Detail techniques. Focus+Context
techniques. Distortion-oriented techniques. Table Lens. Perspective Wall. Fisheye view.
- Caso di studio: IV per internet ed il web.
NattoView. Self-organizing maps. Skitter. Cichlid. Web Forager. Disk tree.
Time tube. Dome tree. Web page caricatures. Visualizing Social activities on the
Web.
- Caso di studio: IV in medicina. Visualizing medical data: medical imaging vs.
IV. A gallery of examples: Therapy Planning, Interactive Data Exploration of clinical databases, Digital libraries of anato-
227
mical images, Preoperative Surgery Planning, Treatment of Phobias, Magnetic
Resonance Image Viewing, visual data
mining of Hemodialysis data.
- Fattori umani e cognitivi dell’IV. Visual
perception aspects. Navigation in abstract
or physical spaces. Improving navigation.
Navigation aids. User Evaluation of IV
systems. Detailed case studies: querying
medical databases, 3D navigation aids.
- Interazione con dispositivi mobili. Mobile
and Wireless Devices. Mobile Operating
Systems. Wireless Networks. Differences
between the mobile context and the desktop PC context. Size issues in mobile
devices. Cultural issues. Social issues.
The Mobile User Experience.
- Telefoni cellulari. Mobile Phones: Historical Data. User Interfaces (UIs) of Mobile Phones. Mobile Product Categories. UI
Styles in Mobile Phones. Example: Twosoftkey UI vs. Navi-key UI. Usability of
different UI Styles. Evolving different UI
Styles. Case Study: unexpected reactions
to Nokia Ringo. Case Study: the Nokia
Navi-roller failure. Interface Elements of
Menu-based Mobile Phones. Menu Interfaces in Mobile Phones. Call-related Interactions. Number of Keys in Mobile Devices.
- Valutazione di interfacce per dispositivi
mobili. Ethnographic methods. Case
study: Indian users. Paper Prototyping
Tour. Controlled experiments. Case
Study: a mixed-design experiment with
WAP phones. Longitudinal User Studies.
Example: the Nokia One-Row Keyboard.
- Visualizzazione su dispositivi mobili.
Visualizing data for mobile users. Visualizing data about mobile users. Relevant
Subjects of Mobile Visualizations. Visualizing text on mobile devices. Visualizing
maps on mobile devices. DateLens.
- Interfacce a bordo di veicoli e problematiche
di sicurezza. Centralized Control Systems.
Examples: COMAND, Connect, iDrive,
future concepts. Using the Keystroke-
228
programmi - LS tecnologie dell’informazione
level model in the Automotive Domain
(SAE J2365). Distraction-related crashes.
Types of driver distraction. Task performed by drivers with mobile devices (cell
phones, navigation systems, Internet services). Measuring driver distraction and
behaviour. Reducing risks.
- Interazione con sistemi di realtà virtuale.
General architecture of a virtual reality
(VR) system. Output peripherals: headmounted displays, 3D Glasses, new types
of display, 3D projection, CAVE, retinal
display, 3D positional audio. Input
peripherals: trackers, data glove, phantom.
- Progetto di siti web 3D. Issues in 3D Web
site design. Added value. A case study:
designing the 3D Web site of the Italian
Aerobatic Team.
- Virtual humans. Avatars. Ergonomic
dummies. Autonomous agents. Embodied interface agents. General architecture. Applications.
Bibliografia
- R. S PENCE , Information Visualization,
Addison Wesley, 2000.
- C. LINDHOLM, T. KEINONEN, Mobile Usability, McGraw-Hill Education, 2003.
- W.R. SHERMAN, A.B. CRAIG, Understanding Virtual Reality: Interface, Application,
and Design, Morgan Kaufmann, 2000.
LINGUAGGI
DI PROGRAMMAZIONE
Docente
Prof. Marco Comini
Crediti
6
Finalità del corso
Il corso di Linguaggi intende fornire una
conoscenza delle caratteristiche dei vari
paradigmi di programmazione, cercando
il più possibile di evitare di concentrarsi
su uno specifico linguaggio, andando
bensì a presentare i principi che guidano
la progettazione, realizzazione e implementazione dei moderni linguaggi di
programmazione. Con solida conoscenza
delle caratteristiche ‘universali’ si potrà
così in futuro imparare nuovi linguaggi
in pochissimo tempo.
A questa visione generale si giunge attraverso la descrizione dei principali paradigmi di programmazione: imperativo,
funzionale, logico e logico-funzionale. Il
corso di Linguaggi, in particolare, tratterà
i concetti generali, il paradigma imperativo e quello funzionale.
Questi paradigmi, oltre a essere esaminati nei loro aspetti pragmatici più immediati, sono analizzati e confrontati sulla
base dei principi generali, in modo tale da
permettere una comprensione critica
della maggior parte dei linguaggi di uso
comune. In questo modo si intende sviluppare uno spirito critico che permetta
di arrivare ad una programmazione consapevole in cui saper scegliere il paradigma più adatto a seconda del problema da
risolvere e sapere quali costrutti di un linguaggio usare, e a quale costo.
Il corso intende inoltre fornire una conoscenza relativamente approfondita
(soprattutto dell’aspetto programmativo)
del paradigma di programmazione funzionale che, grazie alla sua espressività, si
presta naturalmente quale base di sviluppo di software corretto.
Programma
Paradigma Imperativo
- Macchine astratte, Interpretazione e
Compilazione.
- Descrivere un linguaggio di Programmazione (Sintassi e Semantica).
- I nomi e l’ambiente.
- La gestione della memoria.
- Strutturare il controllo.
- p-code.
programmi - LS tecnologie dell’informazione
- Astrarre sul controllo (Metodi di passaggio dei parametri).
- Strutturare i dati.
- Type checking monomorfo e polimorfo.
Paradigma Funzionale
- Introduzione alla Programmazione
Funzionale.
- High-order Programming.
- Il linguaggio Haskell (list comprehensions, partial applications of curried functions, sections, non-strict functions, infinite data structures, case expressions,
pattern matching).
- Types, Classes and Overloading.
- Haskell’s monadic I/O.
- Standard Haskell Classes.
- Monads.
- Modules.
Bibliografia
- M. GABBRIELLI, S. MARTINI, Linguaggi di
Programmazione - Principi e Paradigmi,
McGraw-Hill. ISBN 88-386-6261-4.
- HUDAK, FASEL, A Gentle Introduction to
Haskell, 1992.
Libri e testi di consultazione:
- B. WADLER , Introduction to Functional
Programming Using Haskell, Prentice Hall
PTR, 1998. ISBN: 0134843460.
- N.D. JONES, C.K. GOMARD, P. SESTOFT,
Partial Evaluation and Automatic Program
Generation, Prentice-Hall, Englewood
Cliffs, NJ, 1993.
METODI NUMERICI
PER L’INFORMATICA
Docente
Prof. Dario Fasino
Crediti
6
Finalità del corso
Il corso esporrà le basi teoriche e implementative di alcune tecniche matemati-
229
che per il trattamento di problemi relativi
al recupero di documenti sul web, alla
loro classificazione e ordinamento, quali
il Latent Semantic Indexing, l’algoritmo
PageRank, i metodi per il data clustering.
Il corso prevede la trattazione di vari
esempi, casi di studio e lo svolgimento di
attività sperimentali mediante esercitazioni e progetti in laboratorio. Dopo aver
superato l’esame, si ritiene che lo studente conosca e sappia utilizzare tecniche
dell’algebra lineare numerica (sistemi
lineari, minimi quadrati, decomposizione ai valori singolari) nell’ambito
dell’Information Retrieval e della analisi
dei dati.
Programma Richiami di algebra lineare:
norme vettoriali e matriciali, prodotti scalari, fattorizzazioni notevoli di matrici.
Ortogonalizzazione di Gram-Schmidt.
Decomposizione ai valori singolari. Problemi ai minimi quadrati lineari. Modelli
matematici per l’Information Retrieval:
Matrice termini-documenti e modello
dello spazio vettoriale. Ricerca testuale:
Precision e recall; polisemia e sinonimia.
Strategia del Latent Semantic Indexing
(LSI). Fattorizzazioni QR ed SVD e loro
utilizzo per l’implementazione del LSI.
Tecniche numeriche per il clustering e la
classificazione automatica dei documenti: ordinamento di documenti in un ipertesto in base all’analisi dei link; l’algoritmo di Kleinberg; hub e authorities. Il
modello probabilistico di navigazione in
un ipertesto; catene di Markov; teoria di
Perron-Frobenius; l’algoritmo PageRank.
Metodi per il calcolo di autovalori e autovettori dominanti e loro utilizzo negli
algoritmi di page ranking. Tecniche
numeriche e probabilistiche per il data
mining; analisi spettrale di dati.
Modalità d’esame
Esame scritto e orale. L’esame scritto può
essere sostituito da prove di valutazione
intermedia da svolgere durante il corso.
230
programmi - LS tecnologie dell’informazione
Bibliografia
- M.W. BERRY, M. BROWNE, Understanding
Search Engines: Mathematical Models and
Text Retrieval, SIAM, 1999.
Modalità d’esame
Sono previsti: lo svolgimento di un seminario da parte di ciascuno studente
nell’ultima settimana del corso su una
tematica rilevante ed un esame orale.
PERSONALIZZAZIONE DI
CONTENUTI WEB
Bibliografia
- Materiale didattico (slide e testi esercitazioni) disponibile su http://twm.dimi.
uniud.it/
- C. TASSO, P. OMERO, La Personalizzazione dei Contenuti Web - e-commerce, i-access,
e-government, Franco Angeli, Milano,
2002.
- G. GUIDA, C. TASSO, Design and Development of Knowledge-Based Systems, J. Wiley,
1994.
Docente
Prof. Carlo Tasso
Crediti
6
Finalità del corso
Finalità del corso è introdurre la personalizzazione dei contenuti Web e le metodologie di sviluppo dei sistemi basati
sulla conoscenza. In particolare vengono
illustrate le metodologie per l’analisi, il
progetto, lo sviluppo e la valutazione dei
sistemi basati sulla conoscenza e le tecniche di acquisizione della conoscenza.
Inoltre viene introdotta l’area dello user
modelling ed illustrate le principali tecniche di personalizzazione dei contenuti
Web.
Programma
Processi per lo Sviluppo dei Sistemi Basati sulla Conoscenza. La metodologia
KLIC. Processi primari di analisi. Analisi
di opportunità. Studio di plausibilità. Processi primari di sviluppo. Sviluppo del
dimostratore. Sviluppo del prototipo. Progettazione e Strumenti di Sviluppo.
Implementazione, installazione ed avvio
del sistema finale. Tecniche per l’Acquisizione della Conoscenza. Personalizzazione dei contenuti Web: definizioni generali; user modelling; tecniche di personalizzazione, tracciamento ed identificazione
dell’utente, selezione dei contenuti, filtraggio collaborativo, cognitivo e basato
su conoscenza. Applicazione delle tecniche di personalizzazione.
PROGETTAZIONE E ANALISI
ORIENTATE AGLI OGGETTI
Docente
Prof. Stefano Mizzaro
Crediti
6
Finalità del corso
Il corso, che presuppone la conoscenza di
base della programmazione OO (Orientata agli Oggetti), mira ad introdurre i concetti e le tecniche avanzati di analisi e progetto del mondo OO. La trattazione non
sarà né formale né eccessivamente pratica, ma soprattutto concettuale. Verranno
descritti: il linguaggio di modellazione
UML (Unified Modeling Language), i
principi di costruzione di un buon software OO, i pattern di progetto (e di analisi,
accennati), il refactoring. Verranno anche
discussi alcuni casi di studio di problemi
reali.
Programma
- UML per il progetto. I diagrammi UML
usati per la progettazione: diagrammi di
231
programmi - LS tecnologie dell’informazione
classe, di collaborazione, di sequenza,
degli stati, di attività, dei componenti e
del dispiegamento (deployment).
- I principi della progettazione OO. I concetti e le tecniche che consentono di
costruire progetti OO di buona qualità, ad
esempio: domini, ingombro, coesione,
spazio degli stati, comportamento,
conformità di tipo, progetto per contratti,
ecc.
- I design pattern. I design pattern stanno
alla progettazione OO come la programmazione strutturata sta alla programmazione imperativa classica. I pattern sono
schemi di soluzioni ricorrenti, la cui
conoscenza semplifica il progetto di
nuovo software OO. Vengono presentati
e analizzati i pattern principali.
- UML per l’analisi. Viene completata la
presentazione di UML, introducendo i
diagrammi di classe concettuali e dei casi
d’uso. Vengono discusse le principali
tematiche dell’analisi OO con UML.
- Casi di studio. I concetti e le tecniche
introdotti vengono esemplificati in situazioni reali, attraverso un’attività seminariale che può essere svolta, opzionalmente, anche dagli studenti. Possibili argomenti sono: sviluppo collegiale di diagrammi UML; i tool per disegnare diagrammi UML; programmazione estrema
(eXtreme Programming, XP); analisi
delle API di Java (standard edition, enterprise edition, micro edition); sviluppo di
applicazioni Web (servlet, Java Server
Pages, EJB); estensioni di UML per il
Web; refactoring; altri linguaggi OO quali
il C++ o il C#; gli agenti come estensione
degli oggetti; Jini; ecc.
Modalità d’esame
Orale. Sono previste anche attività, opzionali e a scelta dello studente ma caldamente consigliate, che portano a un
esame semplificato e a una votazione
superiore: seminari svolti durante il corso
o progetti concordati con il docente. Al
corso è possibile affiancare il laboratorio:
in tal caso l’attività progettuale è più
impegnativa.
Bibliografia
- M. P AGE -J ONES , Progettazione a oggetti
con UML, Apogeo, Milano, 2002. ISBN:
88-7303803-4.
- E. GAMMA, R. HELM, R. JOHNSON, J. VLISSIDES, Design Patterns, Addison Wesley,
1997. ISBN: 0201634988. (Disponibile
anche in italiano).
- M. F O W L E R , K. B E C K , J. B R A N T , W.
OPDYKE, D. ROBERTS, Refactoring: Improving the Design of Existing Code, AddisonWesley, 1999. ISBN: 0201485672.
- A. SHALLOWAY, J. TROTT, Design Patterns
Explained - A New Perspective on Object
Oriented Design, Addison Wesley, 2002.
ISBN: 0201715945.
A lezione verranno comunicati eventuali
altri testi e verrà segnalato o fornito altro
materiale (lucidi di tutte le lezioni, pagine
Web, dispense, altri testi di riferimento).
QUALITÀ E CERTIFICAZIONE WEB
Docente
Dott. Giorgio Brajnik
Crediti
3
Finalità del corso
Rendere gli allievi capaci di organizzare e
svolgere efficacemente ed efficientemente l’attività di controllo di qualità (quality
assurance) per una larga gamma di applicazioni web e di sistemi software interattivi. Particolare enfasi verrà data ai test
funzionali, di carico e di stress, di regressione, nonché agli strumenti di supporto
per tali attività.
Il controllo di qualità è una delle attività
più sottovalutate all’interno dello sviluppo di applicazioni web, sebbene essa
232
costituisca il meccanismo principale per
garantire un’elevata qualità. Infatti essa è
una delle attività, tra quelle svolte durante
lo sviluppo e la manutenzione di un’applicazione web, che più incidono sulla qualità del risultato e sui costi correlati alla
qualità erogata. Sebbene sia una delle attività a cui vengono dedicate relativamente
poca attenzione e poche risorse, essa ha
delle ripercussioni significative sia sul
prodotto o servizio realizzato che sul processo di realizzazione. In particolare,
oggigiorno, essa incide notevolmente
sulla competitività aziendale in quanto
permette di:
- monitorare e di controllare/determinare
il livello di qualità dei prodotti o servizi
rilasciati (catturando una parte dei difetti
prima possibile durante il processo di sviluppo, sapendo a priori quali difetti sono
presenti in un sistema rilasciato);
- ridurre i costi relativi alla bassa qualità
dei prodotti o servizi rilasciati (riduzione
di chiamate di supporto, riduzione di
resi, riduzione di rilasci imprevisti, riduzione di interventi di modifica della documentazione accessoria, riduzione di
richiami dei prodotti);
- ridurre i costi relativi ai processi di
sviluppo (identificando i difetti prima
possibile si riducono le loro conseguenze
negative nelle fasi di sviluppo, l’aver identificato anche l’importanza, la gravità dei
difetti è possibile definire la loro priorità e
allocare in maniera adeguata le risorse).
Programma
Contenuti
1. Qualità di un sistema basato su web;
fattori di qualità e modello di qualità.
2. Rischi connessi alla bassa qualità; analisi dei rischi; failure mode and effects
analysis.
3. Metodologia per il controllo di qualità:
- pianificazione dei test; obiettivi, risorse,
piano; ruoli professionali;
- documenti di specifica: casi d’uso,
modello dei compiti;
programmi - LS tecnologie dell’informazione
- tipi di test (funzionali, di modulo, di
stress, di carico, di regressione, di usabilità, di accessibilità);
- stesura del piano di test;
- definizione dei test suite e test cases, stesura del test reports;
- tattiche di individuazione dei test cases.
4. Strumenti di supporto: di automatizzazione dei test, di raccolta e catalogo di
difetti, di svolgimento di test di carico e di
stress, di svolgimento di test di accessibilità (eclipse, junit, jwebunit, jmeter, bugzilla, strumenti di test per l’accessibilità).
5. La certificazione dell’accessibilità; la
gestione della qualità: modelli di qualità,
approccio Goal-Question-Metrics; livelli
di maturità.
Articolazione
Il corso è articolato in 20 ore di lezione.
Gli studenti dovranno produrre 1 progetto pratico di pianificazione e svolgimento
di test di determinate applicazioni web.
Gli studenti possono decidere di associare un corso di laboratorio avanzato (5 crediti) da utilizzare come ‘contenitore’ per
lo svolgimento dell’attività pratica autonoma. In questo caso dovranno produrre
almeno 2 progetti. L’esame, solo orale,
verterà soprattutto sull’attività pratica
svolta dallo studente.
Prerequisiti
Per la fruizione ottimale delle lezioni
l’allievo dovrebbe avere qualche esperienza legata allo sviluppo di applicazioni web
e al linguaggio Java. Per ulteriori dettagli
consultare
www.dimi.uniud.it/giorgio/dida/qcw/qc
w.html
RICERCA OPERATIVA
Docente
Prof. Paolo Serafini
Crediti
6
233
programmi - LS tecnologie dell’informazione
Pagina del corso
http://www.dimi.uniud.it/~serafini/ROI
NF0607.html
Finalità del corso
La Ricerca Operativa si occupa di problemi di gestione efficiente affrontati con
modelli matematici e algoritmici. Il corso
vuole fornire allo studente gli strumenti
principali per progettare un modello a
partire da un problema reale e la necessaria comprensione delle strutture matematiche e algoritmiche dei modelli, con
particolare riguardo alla programmazione lineare. A questo fine vengono presentati doversi modelli e per la maggior parte
i modelli sono risolti usando Excel o pacchetti di programmazione lineare.
Programma
- Introduzione alla programmazione
lineare. Modellizzazione: identificazione
delle grandezze, dei vincoli e degli obiettivi. Ottimi di Pareto. Esempio della dieta:
modello di programmazione lineare.
Analisi di sensibilità. Identificazione di
ulteriori obiettivi. Frontiera efficiente.
Vincoli di interezza.
- Proprietà della programmazione lineare. Struttura geometrica. Vertici e soluzioni di base. Problema duale. Complementarità. Cenni del metodo del simplesso. Metodo branch-and-bound per variabili intere.
- Modelli di percorsi 1. Programmazione
Dinamica. Principio di ottimalità. Equazione ricorsiva. Cammini minimi (Bellman-Ford, Dijkstra, Floyd-Warshall).
- Modelli di percorsi 2. Cammini minimi
con capacità: reti di flusso. Flussi di costo
minimo. Massimo flusso. Minimi tagli.
- Modelli di percorsi 3. Problema del commesso viaggiatore (formulazione con
piani di taglio). Circuiti Euleriani. Accoppiamento. Minimi alberi di supporto
(Kruskal e Prim).
- Modelli di allocazione. Assegnamento.
Knapsack. Bin packing. Modelli di turnazione. Generazione di colonne: cutting
stock, massimo flusso.
- Schedulazione. Schedulazione a risorsa
infinita: PERT. Schedulazione a risorsa
finita: problemi a una macchina, macchine parallele, flow-shop, job-shop e openshop.
Il piano dettagliato delle lezioni si trova
sul sito http://www.dimi.uniud.it/~serafini/ROINF0607.html.
Modalità d’esame
Esame orale.
Bibliografia
- Dispense disponibili on-line.
- P. SERAFINI, Ottimizzazione, Zanichelli,
Bologna 2000.
- L. SCHRAGE, LINDO: An Optimization
Modelling System, Palo Alto Scientific
Press, 1991.
N.B.: Informazioni sulla Ricerca Operativa e l’Ottimizzazione si trovano anche sul
sito dell’INFORMS (Institute for Operations Research and Management Science) http://www.informs.org/, oppure sul
sito del CIRO (Centro Interuniversitario
in Ricerca Operativa) http://www.disp.
uniroma2.it/ciro/index.html.
SISTEMI MOBILI E WIRELESS
Docente
Prof. Luca Chittaro
Crediti
6
Finalità del corso
Obiettivo del corso è studiare i diversi
aspetti dei sistemi mobili e wireless, dalla
prospettiva delle reti, da quella dei dispositivi e da quella dei servizi. Nel corso, si
studiano le tecnologie e reti wireless (ad
esempio, Bluetooth, Wi-Fi, GPRS,
234
UMTS), i diversi tipi di servizi mobili e
wireless offerti in modo crescente
all’utenza, le diverse categorie di dispositivi mobili e le problematiche ad essi correlate (ad esempio, efficienza, sicurezza,
privacy, consumo energetico, limitazioni
hardware e software). Si illustrano poi
anche con esercizi pratici le tecniche di
programmazione client-side e server-side
utilizzate per implementare servizi
all’utente su dispositivi mobili.
Programma
Introduzione. Aspetti della mobilità: user
mobility, device mobility. Wireless vs.
mobile. Scenari Mobile and Wireless: veicoli, servizi di emergenza, mobile office,
vendite, sostituzione delle reti fisse, location based services. Effetti della portabilità dei dispositivi. Storia delle reti wireless e statistiche. Mobile vs. desktop
application design. Tipi di dispositivi
mobili e loro caratteristiche: Form factor,
CPU, Display, Memory, Battery.
Applicazioni mobili. Navigation systems
on PDAs. Navigation systems on mobile
phones. Mobile GIS. Location-based services: mobile enterprise, mobile government, mobile consumer. Buddy finder
and family finder applications. Geo-referenced photographs. Location-based search engines. Outdoor mobile guides.
Indoor mobile guides. Valutazione di un
caso di studio. Interfacce grafiche avanzate per dispositivi mobili.
Comunicazioni e lavoro mobile. Local
mobility e micro-mobility. Remote mobility. Mobile Computer-mediated Communication. Mobile Computer-supported Cooperative Learning (CSCL). Proximity-based collaboration support. Mobile
shared spaces. Environment mediated
collaboration. Mobile annotations. Mobile group gaming.
Sviluppo di applicazioni su dispositivi mobili. Ambienti di sviluppo (JAVA Platform
vs.NET Framework). Il.NET Framework
programmi - LS tecnologie dell’informazione
e la versione Compact per dispositivi
mobili. Codice C++ nativo vs Managed
C#. VisualStudio 2005 IDE. Configurare
gli emulatori Pocket PC. Creare form e
controlli. UI avanzate. Controlli ed Eventi
Custom. Testing and debugging. Usare
DataSets e XML databases in applicazioni
mobili. Web Services. SQL Server CE.
Tecniche di sincronizzazione di client
mobili con server. Dati locali su database
SQL Server CE. Recuperare e memorizzare dati con Web Services. Applicazioni
mobili basate su GPS. Accesso ai dispositivi via porta seriale.
Trasmissioni wireless. Segnali e frequenze,
Antenne, Propagazione, Multiplexing.
Modulazione: Advanced Frequency Shift
Keying (e.g., MSK), Advanced Phase Shift
Keying (e.g., BPSK and QPSK), Quadrature Amplitude Modulation, Hierarchical
Modulation. Spread Spettro: Direct
Sequence Spread Spectrum, Frequency
Hopping Spread Spectrum. Cellular
Systems, Frequency Planning, Cells
Breathing. Motivazioni per un MAC specializzato: hidden terminals, exposed terminals, near and far terminals. Metodi di
accesso e duplex. Demand Assigned Multiple Access (e.g., Packet Reservation MA,
Reservation TDMA), Multiple Access
with Collision Avoidance. Confronto
SDMA/TDMA/FDMA/CDMA.
Sistemi di telecomunicazioni e reti wireless.
Reti cellulari: GSM, GPRS, DECT,
TETRA, UMTS. Handover nel GSM.
Wireless LANS. IR vs. radio. Infrastrutture ed ad-hoc networks, IEEE 802.11 (a, b,
g, i,&hellip;). Supporto per il roaming.
802.11a vs. 802.11b. TECNOLOGIE
LOCATION-SENSING. GPS. Miglioramenti alla precisione: GPS/INS (inertial
navigation system), GPS + Electronic
Compass, Kinematic Constraints, Map
Matching technique. Protocollo NMEA.
HDOP, VDOP e PDOP. Geo-referenziazione. Fingerprinting, un esempio di
localizzazione in ambienti interni.
235
programmi - LS tecnologie dell’informazione
Bibliografia
- Per le parti del corso concernenti i diversi tipi di applicazioni mobili ed il loro sviluppo, tutti i materiali dei docenti sono a
disposizione sul sito www.materialedidattico.uniud.it (accesso con password
Sindy).
- Per le parti sulle tecnologie wireless, si
fa riferimento al libro di testo: J. SCHILLER,
Mobile Communications, 2 nd edition,
Addison Wesley, 2003.
modellizzazione concettuale. Classificazione Euristica e Task Generici. Interfacce Intelligenti e Modellizzazione
dell’Utente nei Sistemi di Reperimento e
Filtraggio dell’Informazione su Web.
Esercitazioni: una serie di esercitazioni in
laboratorio sarà dedicata all’approfondimento delle tematiche applicative relative
alla ricerca di informazioni sul Web.
Modalità d’esame
Redazione di una relazione sulle esercitazioni ed esame orale.
SISTEMI ESPERTI
Docente
Prof. Carlo Tasso
Crediti
6
Finalità del corso
Obiettivo del corso è l’introduzione alle
tecniche di base per la realizzazione dei
sistemi basati sulla conoscenza e dei
sistemi esperti, ed in particolare i meccanismi per la rappresentazione della conoscenza e gli algoritmi di ragionamento, i
sistemi per il ragionamento non monotono, e le tecniche di modellizzazione concettuale. Vengono altresì trattate ed analizzate sperimentalmente alcune applicazioni significative nel campo della ricerca
e filtraggio di informazioni su Web,
affrontato con tecniche tradizionali e con
tecniche di intelligenza artificiale.
Programma
Introduzione alle problematiche
dell’Intelligenza Artificiale. Definizione
di Sistema Basato sulla Conoscenza. Rappresentazione della Conoscenza e Algoritmi di ragionamento. Le reti semantiche. I frame. Le regole di produzione.
Grafi Concettuali. Sistemi per il Ragionamento Non Monotono. ATMS. JTMS.
Architetture a Blackboard. Tecniche di
Bibliografia
- Materiale didattico (slide e testi esercitazioni) disponibile su http://twm.d
imi.uniud.it/
- G. GUIDA, C. TASSO, Design and Development of Knowledge-Based Systems, J. Wiley,
1994.
- D. FUM, Intelligenza Artificiale, Il Mulino, 1994.
- C. TASSO, P. OMERO, La Personalizzazione dei Contenuti Web - e-commerce, i-access,
e-government, Franco Angeli, Milano,
2002.
SISTEMI INFORMATIVI IN RETE
Docenti
Prof. Carlo Tasso
Prof. Maurizio Pighin
Crediti
6
Finalità del corso
Obiettivo del corso è la definizione delle
problematiche informatiche nell’ambito
di un’organizzazione (pubblica o privata)
che intenda automatizzare i propri sistemi informativi. Si inquadrano le competenze del responsabile Sistemi Informativi e/o di chi sviluppa software per l’organizzazione, analizzando le problematiche
236
applicative che dovrà affrontare, con uno
sguardo ai risvolti tecnologici e ai rapporti di fornitura.
Programma
Introduzione: Concetti generali sull’informatica aziendale - Impatto dell’informatica nelle aziende - Impatto macroeconomico dell’ICT Struttura dell’azienda e del
suo sistema informativo - Concetto di esigenza informativa - Scomposizione del
sistema informativo Costi e Performance: Meccanismi di misurazione generali.
Valutazione di Sistemi Informativi. Analisi costi benefici. Analisi del rischio.
Gestione di un Progetto Informatico:
Organizzazione risorse e processi decisionali. Metodologie di gestione e pianificazione di progetto. Tecniche di Project
Management. Software e Hardware
Selection. Sistemi operazionali - Finalità
dei sistemi operazionali - Informazione
operativa - Rappresentazione della realtà Potenzialità informatica - Composizione
dei sistemi informativi operazionali Scomposizione per i sistemi operazionali
di base - Sistemi di supporto primario
all’ERP - Estensioni dell’ERP - Sistemi
tecnici ERP: l’area amministrativa, logistica, vendite, acquisti, produttiva - Obiettivi - Strutture di base - Procedure di base
- Flussi evoluti Sistemi Aziendali avanzati: E-Commerce, CRM, DataWarehouse,
DataMining, Business Intelligence. Laboratorio Avanzato di Sistemi Informativi
Analisi di un case-study industriale.
Modalità d’esame
L’esame consiste in un progetto di gruppo su problematiche reali, seguito da un
colloquio orale. In alternativa è prevista
una prova scritta/orale sugli argomenti
del programma.
Bibliografia
- G. BRACCHI, C. FRANCALANCI, G. MOTTA,
Sistemi Informativi e aziende in rete,
programmi - LS tecnologie dell’informazione
McGraw-Hill Italia, Milano, 2001.
- M. PIGHIN, A. MARZONA, Sistemi Informativi Aziendali - Struttura e Applicazioni,
Pearson Education Italia, 2005.
Ulteriori testi di consultazione:
- M. DE MARCO, Sistemi Infomativi Aziendali, Franco Angeli edizioni, Milano,
2000.
- G. BRACCHI, G. MOTTA, Processi Aziendali e Sistemi Informativi, Franco Angeli edizioni, Milano, 2000.
- P.F. CAMUSSONE, Il Sistema Informativo
Aziendale, Etas, 2000.
- D. AMOUR, E-Business (R)Evolution, Tecniche Nuove, 2000.
STORIA DELL’INFORMATICA
Docenti
Dott. Corrado Bonfanti
Dott. Paolo Giangrandi
Crediti
3
Finalità del corso
Il corso fornisce una panoramica generale sulle tappe fondamentali che hanno
caratterizzato la storia degli strumenti di
calcolo, approfondendo in particolare
l’evoluzione delle tecnologie del computer elettronico moderno. Si evidenzia
come gli attuali computer non siano il
frutto del lavoro di un singolo inventore e
di una singola idea geniale, bensì il risultato dei contributi di moltissimi studiosi e
sperimentatori appartenenti a diverse
discipline; contributi che, nelle varie epoche, hanno dato luogo a diversi filoni concettuali e tecnologici, talvolta complementari e altre volte divergenti.
Programma
- Gli antichi strumenti di calcolo. L’era dei
calcolatori meccanici: calcolatori analogici e calcolatori digitali.
237
programmi - LS tecnologie dell’informazione
- Macchine programmabili: automi meccanici, telaio Jacquard, strumenti musicali automatici, Charles Babbage.
- I sistemi meccanografici a schede perforate.
- Le radici concettuali del computer: dal
programma di Leibniz alle macchine di
Turino.
- I pionieri del calcolo elettronico, l’architettura di von Neumann e i primi calcolatori a programma memorizzato.
- L’evoluzione delle tecnologie: dal mainframe al personal computer.
- Gli ambienti applicativi e l’evoluzione
del software.
- Oltre il calcolo scientifico: sviluppo
dell’industria e del mercato in uno scenario mondiale.
- Reti telematiche: dalle origini a Internet.
- L’informatica in Italia.
Bibliografia
- Appunti delle lezioni.
- M.R. WILLIAMS, A History of Computing
Technology, Prentice-Hall, 1985.
- M. D A V I S , Il calcolatore universale,
Adelphi, 2003.
- C. B ONFANTI , Mezzo secolo di futuro.
L’informatica
italiana
compie
cinquant’anni, Mondo Digitale, n.3/2004.
Durante il corso verranno forniti anche
gli indirizzi di diversi siti web dove sono
reperibili numerosi documenti multimediali sulla storia dell’informatica.
TECNOLOGIE XML
XML e alle basi di dati tradizionali.
2) Linguaggi per la definizione di schemi
XML. In questa sezione viene introdotto
il linguaggio di definizione XML Schema
(XSchema).
3) Linguaggi di interrogazione e di modifica per XML. Questo blocco è dedicato ai
linguaggi che permettono di interrogare
documenti XML, quali XML Path Language (XPath) e XML Query Language
(XQuery) e al linguaggio di modifica
XQuery Update Facility.
4) Basi di dati native per XML. Questa
parte ha come obiettivo quello di imparare ad usare almeno una base di dati nativa
per XML.
5) Linguaggi di trasformazione. Questo
segmento esplora la possibilità di trasformare documenti XML con il linguaggio
Extensible Stylesheet Language Transformations (XSLT).
6) Programmare con XML. Questa blocco
insegna come costruire applicazioni Java
che lavorano con XML. In particolare
introdurremo le interfacce DOM e SAX
per l’analisi sintattica (parsing) di documenti XML e vedremo come fare il parsing, la validazione, la trasformazione,
l’interrogazione, e la serializzazione di
documenti XML usando JAXP (Java API
for XML Processing).
TEORIA DEI SISTEMI
Docente
Prof. Adriano Pascoletti
Docente
Dott. Massimo Franceschet
Crediti
6
Crediti
6
Finalità del corso
Fornire alcuni strumenti matematici utili
nello studio di problemi riconducibili a
sistemi dinamici. Ogni argomento trattato è accompagnato da numerosi esempi,
spesso tratti da campi diversi dall’infor-
Programma
1) Introduzione. In questa parte vengono
richiamati alcuni argomenti relativi a
238
programmi - LS tecnologie dell’informazione
matica, volti ad illustrare il processo di
costruzione del modello e l’impiego degli
strumenti matematici presentati.
Programma
Modelli dipendenti da un parametro
discreto; ricorrenze lineari e sistemi di
ricorrenze lineari di primo ordine; evoluzione e comportamento a lungo termine;
equilibrio e stabilità.
Modalità d’esame
Prova orale.
Bibliografia
- D.G. LUENBERGER, Introduction to Dynamic Systems: Theory, Models & Applications, J.Wiley, 1979.
- A. PASCOLETTI, dispense del corso.
LABORATORIO DI TEORIA DEI
SISTEMI
Finalità del corso
Sviluppo di un software per l’analisi e/o
la simulazione di un sistema o di una
classe di sistemi dinamici.
Modalità d’esame
Discussione del software sviluppato.
TEORIA DELL’INFORMAZIONE
Docente
Prof. Agostino Dovier
Crediti
6
Finalità del corso
Il corso si propone di fornire i fondamenti normativi della Teoria dell’Informazione, soffermandosi anche sulle principali
applicazioni nell’ambito dei codici per la
compressione dei dati e per la correzione
degli errori.
Programma
Il corso si divide in due parti: la codifica di
sorgente che ha l’obiettivo di comprimere
l’informazione e la codifica di canale
mediante la quale si cerca di rilevare e
correggere eventuali errori di trasmissione. Codifica di sorgente. Generalità.
Codici B-LV. Alberi di codice, univoca e
istantanea decodificabilità. Disuguaglianza di Kraft-McMillan. Lunghezza media
di un codice. Entropia, Divergenza e Teorema di Shannon. Codici di ShannonFano. Sorgenti di Informazione. Tasso
del codice e ottimalità asintotica dei codici di Shannon-Fano. Il codice di Fano ed il
codice di Huffman. Entropia condizionata, mutua informazione, autoinformazione. Codice multinomiale e sua asintotica
ottimalità. Codici LV-B. Famiglie esaurienti, a prefisso e complete. Alberi e
Codici di Tunstall. Ottimalità degli stessi.
Codici B-B. Valutazione del tasso in codifica priva di errore. Modelli con errore:
codici delta-tipici e Secondo Teorema di
Shannon. Codici LV-LV. Codici asintoticamente ottimi. Codici universale di ZivLempel, Ziv-Lempel-Welch, e di Burrows-Wheeler. Codifica di canale. Generalità. Controllo parità, codice a ripetizione e codice di Hadamard. Il modello
matematico del canale ed il Teorema di
Shannon di canale. Calcolo e significato
della capacità su alcune tipologie di canale. Decodifica di canale a massima verosimiglianza sulle stesse. Decodifica a minima distanza di Hamming. Distanza
minima di un codice, tasso di correzione
e relazioni con la Probabilità di errore.
Limitazioni di Singleton, Plotkin, Hamming e Gilbert. Codici Correttori di Errore: introduzione ai codici algebrici. Decodifica usando la Tabella di Slepian. Codici di Hamming. Codici Perfetti: risultati
principali. Codici BCH e codici di ReedMuller. Codici ciclici. Definizioni principali, polinomio generatore, matrice generatrice e di controllo. Progetto dei codici
239
programmi - LS tecnologie dell’informazione
ciclici a partire dalle radici primitive
dell’unità e relazioni con la distanza
minima. Codici convolutivi e l’algoritmo
di Viterbi. Cenni sui codici segreti: breve
storia della crittografia e principali risultati della crittografia a chiave pubblica.
Modalità d’esame
Prova orale.
Bibliografia
- F. FABRIS, Teoria dell’Informazione, codici, cifrari, Bollati-Boringhieri, Torino,
2001.
- E. BERLEKAMP, Algebraic Coding Theory,
McGraw-Hill, 1968.
- R. G ALLAGER , Information Theory and
Reliable Communication, Wiley, New
York, 1968.
- F.J. M AC W ILLIAMS , N.J. S LOANE , The
Theory of Error Correcting Codes, North
Holland, 1977.
TEORIE E TECNICHE DI
ELABORAZIONE DELLE IMMAGINI
Docente
Prof. Vito Roberto
Crediti
6
Finalità del corso
I corsi nell’insieme forniscono una panoramica su principi e tecniche di Riconoscimento di Forme (Pattern Recognition), e in particolare l’analisi, interpretazione e comunicazione di segnali ed
immagini. Tutti gli argomenti sono basati su esercitazioni pratiche in laboratorio,
con l’utilizzo delle attrezzature e del
software del Laboratorio Immagini del
Dipartimento di Informatica dell’Università di Udine. Informazioni sul Laboratorio Immagini sono reperibili sul sito web:
http://mvl.dimi.uniud.it/
Programma
Rappresentazioni di segnali e immagini.
Segnali, immagini analogiche e digitali.
Rumore nei segnali e nelle immagini.
Rappresentazioni statistiche e frequenziali. Acquisizione d’immagini.
Analisi delle immagini. Processi di filtraggio d’immagine: frequenziale e statistico.
Miglioramento di qualità delle immagini
(enhancement). Operatori derivativi ed
estrazione di primitive spaziali.
Programma delle esercitazioni di TTEI:
- segnali statistici;
- rappresentazioni frequenziali e filtraggio;
- rappresentazione ed elaborazione delle
immagini. Viene utilizzato l’ambiente
software MATLAB (su licenza The
Mathworks Inc.) versione 5.1.0.421, con
l’aggiunta dei pacchetti: Signal Processing (vers.4.0.1); Statistics (vers. 2.1.0);
Image Processing (vers. 2.0).
Bibliografia
- Dispense del corso di Teoria e Tecniche
di Elaborazione dell’Immagine, a cura del
docente.
Testi per la consultazione:
- R. KLETTE, P. ZAMPERONI, Handbook of
Image Processing Operators, Wiley, 1996.
- J.C. RUSS, The Image Processing Handbook, CRC Press, 1995.
WEB DESIGN
Docente
Dott. Paolo Omero
Crediti
3
Programma
Questo corso si colloca in un’area intermediale e interdisciplinare estremamente fluida in cui si incontrano diversi stili
comunicativi e diverse discipline. Vengo-
240
no affrontati gli aspetti di base dei linguaggi visivi considerati fondamentali
per la comprensione degli scenari reali in
cui si sviluppa la formazione e la professione del progettista web che sempre più
spesso si trova a coordinare grafica
d’autore, direzione artistica, grafica di
utente e di sistema.
1 - Introduzione: tre maestri della progettazione visiva contemporanea
- La costruzione dell’identità visiva: Saul
Bass.
- Segnaletiche e modelli di articolazione
dell’informazione: Massimo Vignelli.
- La forma segue l’emozione: frogdesign
(Hartmud Esslinger).
- Eventi globali, eventi speciali: format e
linguaggi (olimpiadi e grandi eventi).
- Tassonomie e Classificazione dei siti
web.
2 - I fondamenti: teorie, metodi e tecniche
- Aspetti generali di organizzazione del
campo visivo e psicologie dalla percezione (le leggi della chiusura, della pregnanza, triangoli di Kanitza, il rapporto figura
sfondo, le ambiguità percettive, la trasparenza).
- Composizione della pagina: modularità,
griglie e layout, allineamenti, grafica invisibile, pagina fluida e pagina fissa, formati e dispositivi di lettura.
- Lo spazio tipografico: classificazioni
morfologiche e controlli di base degli
aspetti legati ai tipi, alle famiglie e alla
composizione del testo. Legibility e readability: forma e contenuto.
- Tipometria multimediale (stampa,
schermo, ecc.).
- Le teorie del colore, i modelli percettivi e
geometrici, le metriche e colorimetria,
accordi e contrasti, simbolismi, aspetti
tecnologici. Colore e texture.
- Le immagini: fotografia digitale, grafiche in movimento.
3 - Il contesto
- La location.
- Effetti visivi e macchine grafiche per
l’interazione.
programmi - LS tecnologie dell’informazione
- Nuovi format e dispositivi mobili.
- Il corso prevede una esercitazione relativa allo sviluppo dello stile (personalizzazione di un template) di una piattaforma
blog (wordpress e/o movabletype).
Bibliografia
Durante il corso verranno forniti i materiali reperibili in rete. Si raccomanda
comunque la consultazione dei seguenti
testi:
- V. G OTZ , Grids for Internet and Other
Digital Media, Ava, Crans-pres-Celigny,
2002.
- W. LIDWELL, K. HOLDEN, J. BUTLER, Principi universali del design, Logos, Modena,
2005.
- D. NORMAN, Il computer invisibile, Apogeo, Milano, 2000.
WEB INFORMATION
RETRIEVAL
Docente
Prof. Stefano Mizzaro
Crediti
6
Finalità del corso
Il corso mira a introdurre le tematiche
principali dell’information retrieval (IR),
una disciplina importante storicamente e
che ha ricevuto un forte impulso in seguito all’avvento del Web. Infatti, dopo la
posta elettronica, l’uso di un motore di
ricerca è oggi la seconda attività degli
utenti del Web, e svariati utenti del Web
usano un motore di ricerca come Google
come modalità principale di accesso alla
rete. Oltre alle tematiche assodate dell’IR
classico, vengono presentate quelle, più
recenti, specifiche del mondo Web. Vengono discussi sia argomenti di base sia le
correnti linee di ricerca e le tendenze
future.
241
programmi - LS tecnologie dell’informazione
Programma
Il corso è diviso in tre parti:
- Information Retrieval classico: modelli
concettuali della ricerca d’informazioni,
modelli concettuali e formali dei sistemi
d’IR, progetto e implementazione di un
sistema d’IR, strutture dati e algoritmi di
indicizzazione e ricerca, interfacce utente
per l’IR, la problematica della valutazione
dei sistemi d’IR.
- Web Information Retrieval: modelli del
Web (forma e dimensioni del grafo del
Web, cenni all’analisi delle reti sociali e
alle reti piccolo mondo), analisi dei link e
della connettività, iperlink e crawling, IR
multimediale, meta-motori, progetto e
implementazione di un motore di ricerca
per il Web, biblioteche digitali.
- Tematiche avanzate: IR parallelo e
distribuito, ricerca d’informazioni tramite dispositivi mobili e su reti peer-to-peer,
problemi fondazionali del settore (ad es.,
i concetti di informazione e pertinenza),
sistemi per il filtraggio d’informazioni,
clustering, banche dati specialistiche (ad
es., mediche), ecc. Queste tematiche
avanzate verranno trattate in forma di
attività seminariale, che potrà essere svolta, opzionalmente, dagli studenti.
Modalità d’esame
Orale. Sono previste anche attività, opzionali e a scelta dello studente ma caldamente consigliate, che portano a un
esame semplificato e a una votazione
superiore: seminari svolti durante il corso
o semplici progetti concordati con il
docente. Al corso è possibile affiancare il
laboratorio: in tal caso l’attività progettuale è più impegnativa.
Bibliografia
- R. B A E Z A -Y A T E S , B. R I B E I R O -N E T O ,
Modern Information Retrieval, Addison
Wesley, 1999. ISBN: 020139829X.
- R. BELEW, Finding Out About - A Cognitive Perspective on Search Engine Technology
and the WWW, Cambridge University
Press, 2000. ISBN: 0-521-63028-2.
- R. KORFHAGE, Information Storage and
Retrieval, Wiley, 1997. ISBN: 0471143383.
Molti degli argomenti trattati non sono
disponibili su testi, ma solo su articoli
scientifici. A lezione verranno comunicati eventuali altri testi e verrà segnalato
o fornito altro materiale (tutti i lucidi
delle lezioni, pagine Web, dispense,
altri testi di riferimento, articoli scientifici, ecc.).
WEB SEMANTICO
Docente
Dott. Alessio Gugliotta
Crediti
6
Finalità del corso
Ricollegandosi alle nozioni acquisite,
anche in laboratorio, sul linguaggio XML
lo studente sarà in grado di:
- conoscere l’impostazione gerarchica del
Web Semantico quale si va affermando
attualmente, orientandosi tra i livelli di
rappresentazione dell’informazione;
- conoscere le principali tecnologie coinvolte, con particolare riguardo alle ontologie;
- saper progettare ontologie relative a
domini applicativi, allo scopo di realizzare strati di software;
- acquisire conoscenze pratiche sulle suddette tecnologie attraverso lezioni in laboratorio; casi di studio; homeworks.
Programma
1. Introduzione al Web semantico
Si parte da un’analisi critica del Web
attuale; si illustrano le motivazioni del
Web semantico, fino all’introduzione
degli elementi tecnologici principali.
2. Sviluppo di ontologie
242
programmi - LS tecnologie dell’informazione
Saranno illustrati alcuni dei metodi per lo
sviluppo e gestione delle ontologie, e
riportati esempi d’uso e applicazione.
Saranno svolte esercitazioni in aula volte
all’approfondimento di ontologie usando
il linguaggio OWL e lo strumento di sviluppo Protégé.
3. Sviluppo del Web semantico: un
approccio a strati
Il Web semantico è introdotto seguendo
l’approccio a strati: le strutture XML che
definiscono l’accesso ai documenti Web;
la descrizione e organizzazione delle
risorse attraverso il linguaggio RDF;
l’attuale proposta di OWL, linguaggio di
ontologie per il Web.
4. Strumenti e applicazioni del Web
semantico
Le applicazioni sono trattate con riferimento alla gestione della conoscenza,
personalizzazione e architetture orientate
ai servizi. Saranno svolte esercitazioni
per lo sviluppo di una semplice applicazione, usando tecnologie e strumenti
introdotti durante il corso.
Bibliografia
- G. A N T O N I O U , F.
VAN
HARMELEN, A
Semantic Web Primer, Cambridge, MA:
MIT Press, 2004.
- J. DAVIES, R. STUDER, P. WARREN, Semantic Web Technologies. Trends and Research
in Ontology-Based Systems, Wiley, 2006.
- A. GOMEZ-PEREZ, M. FERNANDEZ-LOPEZ,
O. C O R C H O , Ontological Engineering,
Springer, 2004.
- T. BERNERS-LEE, J. HENDLER, O. LASSILA,
The Semantic Web, Scientific American
284,5 (May 2001): 34-43.
- T. BERNERS-LEE, Weaving the Web, Harper,
1999.
- Semantic Web Vision, a collection of resources: http://www.ics.forth.gr/isl/swprimer/
index2.php?selected=1&opened=6
- OWL Web Ontology Language http://
www.w3.org/TR/owl-ref/
- Protégé project. http://protege.
stanford.edu/
- Ontology Development 101: A Guide to
Creating Your First Ontology, N.F. Noy and
D.L. McGuinness http://www.ksl.
stanford.edu/people/dlm/papers/ontology101/ontology101-noy-mcguinness.html
- Semantic Web Challenge. A new application award. http://challenge.semanticweb.org/
243
programmi - LS matematica
CORSO DI LAUREA
SPECIALISTICA IN
MATEMATICA
ALGEBRA 3
Docente
Prof. Mario Mainardis
Crediti
6
Programma
Azioni di gruppi, di anelli e di K-algebre.
Azioni di gruppi: G-insiemi, sotto-Ginsiemi, omomorfismi, quozienti, orbite,
equazione delle orbite, azioni transitive e
primitive, applicazioni: Teoremi di
Sylow, centro di un p-gruppo finito, Teorema di Schur-Zassenhaus, semplicità
dei gruppi speciali lineari proiettivi.
Azioni di Anelli: R-moduli, sottomoduli,
omomorfismi, quozienti, moduli ciclici,
moduli irriducibili, prodotto tensoriale di
moduli, teorema di struttura dei moduli
finitamente generati su domini a ideali
principali, applicazioni: forma canonica
razionale, forma di Jordan delle matrici.
Azioni di algebre: A-moduli, sottomoduli,
omomorfismi, quozienti, moduli ciclici,
moduli irriducibili, Teorema di Wedderburn-Artin, cenni sulle rappresentazioni
lineari di gruppi.
Bibliografia
- M. MAINARDIS, Appunti di teoria dei gruppi, file pdf scaricabile dall’indirizzo:
http://users.dimi.uniud.it/~mario.maina
rdis/classnotes.htm
- N. JACOBSON, Basic Algebra 1.
- I.N. HERSTEIN, Algebra.
- M. ASCHBACHER, Finite Groups.
- J. ALPERIN, R.B. BELL, Groups and Representations.
ALGEBRA 4
Docente
Dott. Maria Silvia Lucido
Crediti
6
Finalità del corso
Finalità del corso è la classificazione delle
algebre di Lie semisemplici in un campo
algebricamente chiuso e di caratteristica 0.
Programma
Definizioni, algebre di matrici, gl(n,K),
sl(n, K), u(n,k), t(n,K). Algebre ortogonali
e simplettiche. Algebre nilpotenti. Teorema di Engel. Algebre risolubili. Teorema
di Lie. Criterio di Kartan. Forma di KIlling. Algebre semisemplici. Teorema di
Weyl. Decomposizione in spazi di radici.
Rappresentazioni irriducibili di sl(2,K).
Proprietà razionali e integrali. Sistemi di
radici e loro classificazione.
Prerequisiti
Geometria 1 e 2; Algebra 1 e 2.
ALGEBRA 5
Docente
Prof. Giovanni Panti
Crediti
6
Finalità del corso
Introdurre le nozioni fondamentali di
Algebra Commutativa e di Teoria delle
Categorie.
Programma
Anelli commutativi e ideali. Moduli.
Localizzazione. Decomposizione primaria. Categorie e funtori. Trasformazioni
naturali.
244
programmi - LS matematica
Modalità d’esame
Esame orale.
Bibliografia
- A TIYAH , M AC D ONALD , Introduction to
Commutative Algebra, Addison Wesley.
- ZARISKI, SAMUEL, Commutative Algebra,
Graduate Texts in Mathematics n. 28,
Springer.
- M AC L ANE , Categories for the Working
Mathematician, Graduate Texts in Mathematics n. 5, Springer.
ANALISI MATEMATICA 6
Docente
Prof. Gianluca Gorni
Crediti
6
Finalità del corso
Introduzione all’Analisi Funzionale: definizione e studio dei principali spazi vettoriali normati di funzioni integrabili, e
degli spazi di Hilbert, con applicazione
alle serie di Fourier.
ANALISI MATEMATICA 5
Docente
Prof. Gianluca Gorni
Crediti
6
Finalità del corso
Completare la formazione di base di Analisi Matematica nel settore delle equazioni differenziali e delle forme differenziali.
Programma
Integrazione astratta alla Lebesgue, spazi
L^p, spazi di Hilbert, serie di Fourier.
Modalità d’esame
Una prova scritta di esercizi e una prova
orale di sola teoria.
Bibliografia
Da decidere.
ANALISI MATEMATICA 7
Programma
Equazioni differenziali non lineari: soluzioni massimali, teoremi di esistenza e
unicità in grande, fuga dai compatti, criterio dell’asintoto, integrali primi. Integrazione alla Henstock- Kurzweil. Curve
parametriche. Curve rettificabili. Formula integrale per la lunghezza. Forme differenziali: integrazione su curve, forme
chiuse, forme esatte e localmente esatte,
omotopie.
Modalità d’esame
Una prova scritta di esercizi e una prova
orale di sola teoria.
Bibliografia
G. DE MARCO, Analisi Due.
Docente
Prof. Fabio Zanolin
Crediti
6
Finalità del corso
Scopo del corso è quello di presentare
alcuni risultati fondamentali dell’Analisi
Funzionale lineare e della teoria degli
operatori negli spazi di Banach e di Hilbert, in vista anche di possibili applicazioni ad alcune problematiche di Analisi non
lineare che verranno trattate nei successivi corsi di Analisi Matematica. Fra gli
argomenti che verranno presentati si prevede una rivisitazione dei concetti di compattezza e di completezza negli spazi
245
programmi - LS matematica
metrici con particolare riguardo agli spazi
di funzioni, i teoremi di Hahn-Banach, di
uniforme limitatezza, della mappa aperta, del grafico chiuso, di punto fisso di
Brouwer e di Schauder, con alcuni esempi di applicazioni alle equazioni differenziali ed integrali.
Modalità d’esame
L’esame consta della sola prova orale.
Bibliografia
Verranno indicati di volta in volta i testi
seguiti in base al programma specifico
svolto. Verrà fornito inoltre direttamente
il materiale utile alla preparazione
dell’esame (sotto forma di note, articoli,
ecc.) quando questo non sia di facile reperibilità. Agli studenti interessati verrà fornito il file contenente le note del corso in
forma dettagliata.
ANALISI MATEMATICA 8
Docente
Dott. Paolo Baiti
di volta in volta tenendo conto anche degli
interessi specifici degli studenti che
seguiranno il corso e se ne esporranno
alcuni sviluppi in vista anche di orientare
gli interessati verso possibili problemi di
ricerca attuale. Si prevede quindi, se possibile, di cambiare il programma nel
corso degli anni, in modo che possano
essere presentate in tempi successivi
varie diverse tematiche relative all’analisi
moderna.
Modalità d’esame
L’esame consta di una prova scritta (eventuale) e di una prova orale.
Bibliografia
Verranno indicati di volta in volta i testi
seguiti in base al programma specifico
svolto. Verrà fornito inoltre direttamente
il materiale utile alla preparazione
dell’esame (sotto forma di note, articoli,
ecc.) quando questo non sia di facile reperibilità.
ANALISI MATEMATICA 9
Crediti
6
Docente
Prof. Fabio Zanolin
Finalità del corso
Scopo del corso è quello di introdurre
alcuni temi tipici dell’Analisi Funzionale
e del Calcolo delle Variazioni, come, ad
esempio, gli Spazi di Sobolev, i problemi
di minimo per funzionali integrali ed il
Metodo Diretto del Calcolo delle Variazioni, problemi di rilassamento, di rappresentazione integrale e di convergenza
variazionale Saranno presentate anche
alcune applicazioni alle teorie variazionali dell’elasticità lineare e non lineare.
Potranno venire trattati anche alcuni
argomenti scelti della teoria del controllo
ottimo. Data la vastità dei temi previsti, si
sceglierà un argomento da approfondire
Crediti
6
Finalità del corso
Scopo del corso è quello di introdurre
alcuni temi tipici dell’Analisi non lineare,
come, ad esempio, il calcolo differenziale
negli spazi di Banach, la teoria dei punti
critici, alcuni metodi nella teoria dei
punti fissi, ecc. con applicazioni allo studio delle equazioni differenziali non
lineari (ordinarie e a derivate parziali).
Potranno venire trattati anche alcuni
argomenti scelti dalla teoria dei sistemi
dinamici. Data la vastità dei temi previsti,
si sceglierà un argomento da approfondi-
246
programmi - LS matematica
re di volta in volta, tenendo conto anche
degli interessi specifici degli studenti che
seguiranno il corso e se ne esporranno
alcuni sviluppi in vista anche di orientare
gli interessati verso possibili problemi di
ricerca attuale. Si prevede quindi, se possibile, di cambiare il programma nel
corso degli anni, in modo che possano
essere presentate in tempi successivi
varie diverse tematiche relative all’analisi
moderna.
Modalità d’esame
L’esame consta della sola prova orale.
Bibliografia
Verranno indicati di volta in volta i testi
seguiti in base al programma specifico
svolto. Verrà fornito inoltre direttamente
il materiale utile alla preparazione
dell’esame (sotto forma di note, articoli,
ecc.) quando questo non sia di facile reperibilità.
ANALISI NUMERICA 2
Docente
Prof. Rossana Vermiglio
Crediti
6
Finalità del corso
Lo scopo del corso consiste nel fornire la
conoscenza dei metodi numerici fondamentali nell’ambito della teoria
dell’approssimazione, dell’integrazione e
differenziazione attraverso l’analisi delle
loro proprietà teoriche di base (stabilità,
accuratezza e complessità) e delle loro
prestazioni su esempi computazionali.
Nel corso verrà utilizzato il software
MATLAB sia per l’analisi critica dei risultati numerici ottenuti su esempi test sia
per la sperimentazione in laboratorio di
alcuni casi di studio.
Programma Approssimazione di funzioni: interpolazione polinomiale, il problema della convergenza, interpolazione
polinomiale a tratti, splines, trigonometrica; splines parametriche e curve di
Bezier; approssimazione di funzioni:
miglior approssimazione uniforme (teoria di Chebyshev) e in spazi prehilbertiani
(teoria di Fourier); polinomi ortogonali;
integrazione numerica; formule di Newton-Cotes, formule composite e adattive,
le formule gaussiane;la tecnica di estrapolazione di Richardon e l’integrazione
di Romberg, integrali singolari. Differenziazione numerica: metodi alle differenze finite, differenze finite compatte., la
tecnica pseudospettrale. Nelle esercitazioni, integrate con esperienze in laboratorio, saranno presentati dei semplici casi
di studio di particolare interesse applicativo.
Modalità d’esame
Prova orale.
Bibliografia
- Appunti del docente
- A. Q UARTERONI , R. S ACCO , F. S ALERI ,
Matematica Numerica, Springer Verlag
Italia, 2000.
- L.N. T REFETHEN , Spectral Methods in
MATLAB, SIAM, 2000.
ANALISI NUMERICA 3
Docente
Prof. Rossana Vermiglio
Crediti
6
Finalità del corso
Negli ultimi anni i modelli matematici
descritti da equazioni differenziali per le
discipline scientifiche sono diventati
sempre più complessi e l’analisi numeri-
247
programmi - LS matematica
ca svolge un importante ruolo nell’ambito del calcolo scientifico. Nel corso l’attenzione è focalizzata sui metodi numerici
per le equazioni differenziali ordinarie
(problemi iniziali e con valori ai limiti) e
alle derivate parziali. Per introdurre le
idee fondamentali e la teoria matematica
necessaria per lo sviluppo e l’analisi di tali
metodi, il corso introduce le principali
tecniche classiche, senza trascurare però
anche problematiche di più recente interesse.
Programma
Equazioni alle differenze. Equazioni differenziali ordinarie: metodi numerici per
problemi a valori iniziali. Metodi ad un
passo e a passi multipli. Metodi continui.
Problemi Stiff. Stabilità. Integrazione
geometrica. Problemi con valori ai limiti.
Metodi alle differenze finite, di collocazione e shooting. Formulazione debole
del problema con valori ai limiti. Il teorema di Lax-Milgram. Formulazione variazionale. Metodo di Galerkin-elementi
finiti. Metodo di Galerkin-spettrale.
Metodo di Galerkin generalizzato. Equazioni differenziali alle derivate parziali: le
equazioni ellittiche (problema di Poisson), le equazioni paraboliche (equazione
del calore), equazioni iperboliche (equazione delle onde) Metodi alle differenze
finite. Metodi agli elementi finiti. Potranno inoltre essere inseriti approfondimenti e/o cenni ad altri argomenti tra i quali:
metodi numerici per equazioni differenziali algebriche, equazioni differenziali
con ritardo, equazioni integrali ed integrodifferenziali di Volterra.
Modalità d’esame
Prova orale.
Bibliografia
- Appunti del docente.
- A. QUARTERONI, F. SALERI, Modellistica
numerica per problemi differenziali, Springer Verlag Italia, 2003.
- A. Q UARTERONI , R. S ACCO , F. S ALERI ,
Matematica numerica, Springer Italia,
2000.
ANALISI NUMERICA 4
Docente
Prof. Rossana Vermiglio
Crediti
6
Finalità del corso
Il corso intende fornire un collegamento
tra strumenti teorici e computazionali
dell’Analisi Numerica e alcuni argomenti
di Analisi Funzionale (teoria degli operatori su spazi vettoriali a dimensione infinita,di Hilbert e di Banach) e di Geometria Differenziale (sistemi dinamici su
varietà, teoria delle perturbazioni); inoltre, prevede di trattare argomenti avanzati di Algebra Lineare Numerica (matrici
strutturate, metodi iterativi non stazionari), ad approfondimento di alcuni contenuti del corso di Analisi Numerica 1.
In alternativa ai temi di Algebra Lineare
Numerica, gli argomenti avanzati potranno riguardare la risoluzione numerica di
equazioni differenziali funzionali di tipo
ritardato, equazioni integrali di Volterra
con e senza ritardo, trattando la derivazione di metodi numerici, analizzando le
proprietà di convergenza e stabilità ad
approfondimento di alcuni dei contenuti
dei corsi di Analisi Numerica 2 e 3.
Programma
Cenni di teoria degli operatori lineari su
spazi di Banach e di Hilbert. Operatori
compatti. Metodi di proiezione e di collocazione per la discretizzazione di operatori integrali e differenziali. Consistenza,
convergenza, stabilità di metodi numeri-
248
programmi - LS matematica
ci. Risoluzione numerica di problemi mal
posti. Regolarizzazione di Tikhonov. Teoria delle perturbazioni per funzioni di
matrici. Argomenti avanzati di Algebra
Lineare Numerica. Il programma potrebbe svilupparsi in una direzione alternativa includendo degli argomenti avanzati
nell’ambito del trattamento numerico
(derivazione, analisi della convergenza e
stabilità) delle equazioni differenziali con
ritardo, delle equazioni integrali di Volterra, equazioni integrali di Volterra con
ritardo. Particolare attenzione sarà dedicata alla trattazione numerica dei modelli
di dinamica delle popolazioni con struttura. Sono previste anche attività sperimentali in Matlab (facoltative per lo studente).
Modalità d’esame
Esame orale.
Bibliografia
- E. TYRTYSHNIKOV, A Brief Introduction to
Numerica Analysis, Birkhauser, 1997.
- G.W. S TEWART , Matrix Perturbation
Theory, Academic Press, 1990.
- R. K RESS , Linear Integral Equations,
Springer AMS 82, 1989.
- A. B E L L E N , M. Z E N N A R O , Numerical
Methods for Delay Differential Equations.
Numerical Mathematics and Scientific
Computation, Oxford Science Publications, Oxford University Press, 2003.
- BRUNNER, H.P.J. VAN DER HOUWEN, The
Numerical Solution of Volterra Equations,
North-Holland, 1986.
- Appunti del docente.
FISICA MATEMATICA
Docente
Dott. Stefano Ansoldi
Crediti
6
Finalità del corso
Introduzione alla Teoria della Relatività
(Speciale e Generale) dal punto di vista
delle Geometria Differenziale (con
un’introduzione di base alle teorie di
campo classiche in fisica).
Programma
Concetti fondamentali in teoria dei campi:
dai sistemi discreti ai sistemi continui; il
concetto di campo; densità di Lagrangiana,
Hamiltoniana, momento; cenni di base
alla formulazione Lagrangiana e Hamiltoniana di una teoria di campo; cenni al calcolo delle variazioni in più dimensioni.
Complementi di algebra: prodotto tensoriale di spazi vettoriali, il concetto di tensore
e di componenti di un tensore, contrazione di tensori; prodotti scalari pseudoEuclidei, segnatura di una metrica, metriche Lorentziane, classificazione di vettori: tipo tempo, tipo spazio e tipo luce.
Geometria differenziale: complementi
(richiamo di concetti base di topologia,
fibrati vettoriali e sezioni di fibrati, partizioni differenziabili dell’unità, curve su
varietà, parentesi di Lie e loro proprietà);
tensori e campi di tensori su varietà; connessioni e derivata covariante; curvatura;
definizione del tensore di Riemann; relazione tra il tensore di Riemann e la derivata covariante seconda di un campo di
vettori; componenti del tensore di Riemann in una base di coordinate; proprietà di simmetria del tensore di Riemann; tensore di Ricci, scalare di Ricci;
curve auto-parallele e la mappa esponenziale su varietà; geometria Riemanniana
e Lorentziana; metriche Riemanniane/
Lorentziane e loro esistenza.
Relatività: Relatività Speciale, principio di
relatività e legge di propagazione della
luce nel vuoto, riflessione di Einstein sui
concetti di spazio e tempo, definizione
operativa di simultaneità, trasformazioni
di Lorentz ed il gruppo di Lorentz; Relatività Generale, sistemi inerziali e non-
249
programmi - LS matematica
inerziali, l’esperimento dell’ascensore di
Einstein; il principio di equivalenza; il
principio di covarianza generale; equazioni di Einstein nel vuoto e loro derivazione
da un principio variazionale, proprietà
delle equazioni di Einstein, significato
fisico del tensore metrico, proprietà di
conservazione in fisica classica ed in
Relatività Speciale, leggi di conservazione
e principio di covarianza generale, il tensore energia impulso e le equazioni di
Einstein in presenza di sorgenti.
ni. Conduzione e semiconduttori; funzionamento dei dispositivi elettronici a
semiconduttore. Cenni sulla computazione quantistica. Relatività speciale e formulazione covariante dell’elettromagnetismo. Cenni sulla fisica delle particelle
elementari e la cosmologia.
Modalità d’esame
Orale (a scelta, anche a progetto).
Bibliografia
- K.S. KRANE, Modern Physics, 2nd edition,
Wiley, 1996.
- Appunti di lezione.
Bibliografia
- Note delle lezioni preparate dal docente
(e disponibili anche on-line).
Modalità d’esame
Per chi frequenta il corso: compiti per
casa. Per chi non frequenta il corso:
esame orale.
FONDAMENTI
DELLA MATEMATICA 1
(tace nell’a.a. 2007/08)
FISICA MODERNA
Docente
Prof. Alessandro De Angelis
Crediti
6
Crediti
6
Finalità del corso
Obiettivo del corso è di fornire una
buona conoscenza delle possibilità di
definire e sviluppare le nozioni e strutture matematiche fondamentali, e di
analizzarle criticamente, alla luce delle
principali acquisizioni logico-matematiche del novecento.
Pagina del corso
http://www.fisica.uniud.it/~deangeli/fis
mod/corsofismod.html
Finalità del corso
Introdurre la Fisica Quantistica e la Relatività. Il corso è indirizzato agli studenti
di Fisica Computazionale, Matematica,
Informatica e Ingegneria.
Prerequisiti
Fisica 1 e 2. Analisi applicata alle funzioni
di una e più variabili.
Programma
Caduta della fisica classica. La prima formulazione della meccanica quantistica.
Equazione di Schroedinger ed applicazio-
Programma
Una scelta fra i seguenti argomenti:
- sistemi classici e costruttivi per l’Aritmetica e la Teoria degli Insiemi e loro
relazioni. La fondazione insiemistica
della matematica;
- La crisi dei fondamenti, il programma di
Hilbert e i teoremi di incompletezza di
Godel;
- Matematica senza infinito e matematica
dell’infinito;
- Risultati di coerenza e di indipendenza.
250
programmi - LS matematica
Bibliografia
- Dispense del docente.
- S. FEFERMAN et al. (eds.), Kurt Godel - Collected Works, Vol. I e II, Oxford University
Press 1986-1990. - M. SZABO, The Collected Papers of Gerhard Gentzen, North Holland, 1969.
- R. S MULLIAN , Godels’s Incompleteness
Theorems, Oxford Logic Guides, 1992.
- F. ARZARELLO, Matematica dell’Infinito,
Vol. I e II, CLU, Torino, 1980.
- K. KUNEN, Set Theory: an Introduction to
Independence Results, North Holland,
1981.
- G. LOLLI, Dagli insiemi ai numeri, Boringhieri, 1994.
GEOMETRIA 4
Docente
Prof. Paolo Cragnolini
Crediti
6
Finalità del corso
Il corso si propone di applicare i metodi
proiettivi introdotti nel corso di Geometria 3 allo studio delle cubiche piane e dei
sistemi lineari. Vengono inoltre presentati gli strumenti di base della topologia
generale che saranno applicati ai casi più
semplici della classificazione topologica
delle ipersuperfici proiettive.
Programma
La quadrica di Klein. Sistemi lineari di
quadriche. Curve proiettive piane, intersezioni con rette, molteplicità. Il teorema
di Bezout in forma debole. Classificazione proiettiva delle cubiche piane. Spazi
topologici, intorni, chiusi, funzioni continue. Sottospazi topologici, prodotti finiti,
quozienti. Compattezza, connessione.
Topologia delle coniche, delle quadriche
nello spazio tridimensionale e delle cubiche singolari.
Bibliografia
- E. S ERNESI , Geometria 1, Boringhieri,
Torino, 1989.
- E. S ERNESI , Geometria 2, Boringhieri,
Torino, 1994.
- P. CRAGNOLINI, Appunti del corso.
GEOMETRIA 5
Docente
Prof. Francesco Zucconi
Crediti
6
Finalità del corso
Il corso è concepito come un’introduzione alla Geometria Differenziale.
Programma
Varietà differenziabili.
Campi di vettori.
Teorema egregium.
Fibrati vettoriali.
Forme differenziali.
Cosmologia di De Rham.
Nozione di grado e di indice.
Cenni sui gruppi di Lie.
Bibliografia
- An Introduction to Differential Manifolds,
D. Barden & C., Thomas Imperial College
press, 2003.
GEOMETRIA 6
Docente
Prof. Francesco Zucconi
Crediti
6
Finalità del corso
Il corso mira a preparare lo studente alla
nozione di funzione meromorfa e a quella di Superficie di Riemann.
251
programmi - LS matematica
Programma
Analisi locale di una applicazione olomorfa.
Formula di Cauchy, analiticità delle funzioni olomorfe.
Serie e prodotti infiniti di applicazioni
olomorfe.
Teorema dei residui e sue applicazioni.
Funzioni meromorfe. Funzioni meromorfe notevoli.
Nozione di superficie di Riemann.
Applicazioni olomorfe tra Superficie di
Riemann.
Fibrati invertibili su una superficie di Riemann.
Teorema di Riemann-Roch.
Bibliografia
- R. REINOLD, Theory of Complex Functions,
G.T.M. Springer-Verlag, New York, 1991.
- K. K UNIHIKO , Introduction to Complex
Analysis, C.U.P., 1984.
- F. OTTO, Lectures on Riemann Surfaces,
G.T.M. Springer-Verlag, New-York, 1991.
GEOMETRIA 7
Docente
Prof. Paolo Cragnolini
Crediti
6
Finalità del corso
Il corso si propone come un’introduzione
allo studio delle curve algebriche utilizzando il linguaggio dell’algebra commutativa.
Programma
Insiemi algebrici affini. Varietà affini.
Proprietà locali delle curve piane. Varietà
proiettive. Curve piane proiettive. Varietà
quasiproiettive, morfismi, applicazioni
razionali. Risoluzione delle singolarità. Il
Teorema di Riemann-Roch.
Bibliografia
Testi consigliati:
- W. FULTON, Algebric Curves, Benjamin,
New York, 1969.
- R. H ARTSHORNE , Algebric Geometry,
Springer GTM 52, 1977.
- M. MANETTI, Corso introduttivo alla Geometria Algebrica, Scuola Normale Superiore, Pisa, 1998.
GEOMETRIA 9
Docente
Prof. Francesco Zucconi
Crediti
6
Finalità del corso
Introduzione alla Geometria Algebrica.
Programma
- Varietà affini: nozione di spazio tangente, dimensione, punti lisci e punti singolari teorema di uniformizzazione analitica.
- Varietà proiettive: definizione, estensione dei concetti dall’affine al caso proiettivo, prodotti, immersione di Segre, corrispondenze teoria dell’eliminazione, teorema di normalizzazione di Noether.
- Struttura delle corrispondenze: applicazioni lisce, principio dell’applicazione
aperta, teorema principale di Zariski, teorema di connessione di Zariski principio
di specializzazione, intersezione di varietà proiettive.
- Teorema di Chow.
- Grado di una varietà proiettiva: teorema
di Bezout.
- Sistemi lineari.
- Curve proiettive e loro genere.
- Geometria birazionale delle superficie
algebriche. Nozione di punti lisci e punti
singolari di una varietà.
252
programmi - LS matematica
Bibliografia
- D. MUMFORD, Algebraic Geometry I Complex Projective Varieties, Springer-Verlag,
1976.
INFORMATICA 2
Docente
Prof. Carla Piazza
Crediti
6
Finalità del corso
Obiettivo del corso è l’approfondimento
sistematico delle tematiche affrontate nel
corso di Informatica 1. Argomenti principali del corso sono lo studio, l’analisi e la
sintesi di algoritmi, con particolare riferimento all’utilizzo di strutture dati opportune e alla valutazione della loro complessità temporale e spaziale. Verranno,
infine, forniti alcuni elementi di teoria
della computabilità e di complessità computazionale, con particolare riferimento
all’introduzione delle principali classi di
complessità temporale e spaziale. È prevista attività di laboratorio con programmazione in linguaggi imperativi.
Programma
- Cenni di Teoria della Calcolabilità.
Nozione intuitiva di algoritmo. Macchine
di Turing. Tesi di Church. Macchine di
Turing Universali. Teorema dell’arresto.
Calcolabilità e Decidibilità. Unlimited
Register Machine.
- La nozione di Complessità. Complessità
in termini di Tempo e Spazio. Criterio
uniforme e criterio logaritmico. Tesi di
Church estesa. Complessità asintotica.
Metodi di risoluzione per equazioni ricorsive di complessità. Classi di Complessità.
- Elementi di Algoritmi e Strutture Dati.
Strutture dati: Vettori, Record, Liste, Pile,
Code, Alberi, Grafi. Algoritmi: HeapSort,
Moltiplicazione di Matrici, String Matching, Algoritmi su grafi.
Bibliografia
- T.H. CORMEN, C.E. LEISERSON, R.L. RIVEST, Introduction to Algorithms, MIT Press,
2nd edition, 2001.
- J.E. HOPCROFT, J.D. ULLMAN, Introduction to Automata Theory, Languages and
Computation, Addison-Wesley, 1979.
- N. CUTLAND, Computability, Cambridge
University Press.
INFORMATICA 3
Docente
Prof. Alberto Policriti
Crediti
6
Finalità del corso
Il principale obiettivo del corso è quello di
approfondire alcuni degli argomenti studiati nel corso di Algoritmi e Strutture
Dati, introducendo problematiche e strumenti relativi ad alcuni settori in cui la
teoria degli algoritmi gioca oggi un ruolo
fondamentale. I temi scelti a questo
scopo sono gli algoritmi su stringhe ed
alberi e le relative strutture dati, gli algoritmi paralleli e gli algoritmi randomizzati. Si accennerà infine alla algoritmica
basata su una rappresentazione simbolica dei dati. La vastità dei campi permetterà, soprattutto per i temi studiati nella
seconda e terza parte, solo una introduzione ma la centralità, la pervasività e
l’eleganza delle idee presentate ne giustifica e motiva il trattamento. Il corso si
dividerà quindi in tre parti: nella prima
parte si studieranno problematiche relative al disegno ed utilizzo di algoritmi di
string matching e alla analisi della complessità degli algoritmi. Nella seconda
253
programmi - LS matematica
parte si studieranno i principali modelli e
architetture parallele, insieme alle tecniche fondamentali per l’analisi ed il disegno di algoritmi paralleli. Nella terza
parte si studieranno i fondamenti della
teoria degli algoritmi randomizzati rivisitando algoritmi noti nella loro versione
randomizzata. Si prevede, durante la
parte finale del corso, un’attività seminariale e di approfondimento e introduzione alla ricerca.
- R. MOTWANI, P. RAGHAVAN, Randomized
Algorithms, Cambridge University Press,
1995.
- M.J. QUINN, Parallel Computing - Theory
and Practice, 2nd edition, McGraw-Hill,
1994.
Programma
- Prima parte
Introduzione. Il problema dello string
matching esatto: algoritmi di Knuth-Morris e Pratt, Rabin e Karp, Boyer e Moore.
Suffix trees e applicazioni, algoritmo di
Ukkonen e McCreight, algoritmo di
Harel e Tarjan per il calcolo del lowest
common ancestor. Algoritmo di Aho e
Coarsik. Il problema dello string matching approssimato: algoritmo di Sellers,
algoritmo di Landau e Vishkin, algoritmo
di Chang e Lawler.
- Seconda parte
Sorting networks: introduzione, running
time, bitonic e merging algorithms.
Modelli e algoritmi per computers paralleli: il modello PRAM, pointer jumping,
teorema di Brent, esempi. Fixed-connection networks: arrays e alberi, sorting e
counting, aritmetica intera.
- Terza parte
Introduzione agli algoritmi randomizzati. Il metodo probabilistico. Strutture dati:
hashing. Algoritmi probabilistici su grafi:
all pairs shortest paths e minimum spanning trees.
Crediti
6
Bibliografia
- Appunti delle lezioni.
- T.H. CORMEN, C.E. LEISERSON, R.L. RIVEST, Introduction to Algorithms, 2nd edition,
MIT Press, 2001.
- D. GUSFIELD, Algorithms on Strings, Trees
and Sequences, Cambridge University
Press, 1997.
ISTITUZIONI DI LOGICA
MATEMATICA 1
(tace nell’a.a. 2007/08)
Finalità del corso
In questo corso verranno sviluppate alcuni degli argomenti introdotti nei corsi di
Logica Matematica 1 e 2. In particolare
verranno approfondite la teoria dei
modelli e la teoria della ricorsività.
Programma
Teoremi di Lowenheim-Skolem. Ultraprodotti e loro applicazioni. Il teorema di
compattezza e le sue applicazioni. Categoricità. Insiemi definibili e teorie ominimali. Insiemi ricorsivamente enumerabili e loro caratterizzazioni. I teoremi di ricorsione, enumerazione e s-m-n.
Relativizazzioni. La gerarchia aritmetica.
Il problema di Post e il teorema di Friedberg-Muchnik. Altre applicazioni del
metodo finite injury.
Modalità d’esame
Prova orale.
Bibliografia
- A. M ARCJA , C. T OFFALORI , A Guide to
Classical and Modern Model Theory,
Kluwer, 2003.
- R. S OARE , Recursively Enumerable Sets
and Degrees, Springer, 1987.
254
programmi - LS matematica
LOGICA MATEMATICA 2
Docente
Prof. Franco Parlamento
Crediti
6
Finalità del corso
Integrare la preparazione di base di logica
matematica e sviluppare una buona
padronanza delle parti elementari della
teoria assiomatica degli insiemi e della
teoria della calcolabilità.
Programma
A1. Sistemi a la Hilbert. A2. Logica con
uguaglianza. A3. Il metodo delle valutazioni classiche. A4. Trasformate di Herbrand e di Skolem. A5. Estensioni definitorie e interpretazioni sintattiche. A6.
Semantica insiemistica. A7. Relazioni fra
interpretazioni. A8. Compattezza.
B1. Assiomatica di Zermelo Fraenkel. B2.
Ordinali e naturali. B3. Induzione e ricorsione. B4. Insiemi ben fondati. B5. Cardinali. B6. Assioma della scelta.
C1. Funzioni ricorsive e primitive ricorsive. C2. Macchine a registri e macchine di
Turino. C3. Codificabilità di programmi e
computazioni. C4. Teorema di forma
normale di Kleene. C5. Problemi in decidibili. C6. Indecidibilità della logica di
Horn.
MATEMATICHE
COMPLEMENTARI 1
Docente
Prof. Alberto Marcone
Crediti
6
Pagina del corso
http://www.dimi.uniud.it/marcone/MC
2.html
Finalità del corso
Questo corso si svolgerà interamente in
laboratorio ed ha lo scopo di familiarizzare gli studenti con alcuni dei software che
stanno trovando ampio utilizzo nella
didattica della matematica nelle scuole
primarie e secondarie.
Programma
La prima parte del corso verrà dedicata al
programma Cabri per la geometria dinamica.
Nella seconda parte del corso si utilizzerà
un software di calcolo simbolico (quali
Maple, Mathematica, Derive): presumibilmente il programma freeware Maxima.
Modalità d’esame
Prova pratica con i software.
MATEMATICHE
COMPLEMENTARI 2
(tace nell’a.a. 2007/08)
Modalità d’esame
Prova orale.
Bibliografia
- Appunti del docente.
- N. CUTLAND, Computability, Cambridge
University Press.
Docente
Prof. Alberto Marcone
Crediti
6
Finalità del corso
Fornire alcune competenze utili a chi
programmi - LS matematica
intende intraprendere la strada dell’insegnamento con l’acquisizione di una prospettiva moderna e avanzata su alcuni
argomenti che sono alla base della matematica insegnata nelle scuole superiori
allo scopo di fornire i futuri insegnanti di
solide basi teoriche riguardo a ciò che
insegneranno.
Programma
In questo corso la geometria ‘classica’
viene affrontata da un punto di vista
moderno, attraverso un approccio rigoroso all’assiomatica della geometria piana.
Verranno usati diversi modelli della geometria per discutere gli assiomi man
mano che vengono introdotti, giungendo
ad una familiarità con le problematiche
relative alla geometria neutrale (o assoluta). Infine, concentrandosi in particolare
sul piano cartesiano e sul piano di Poincaré, verranno presentate le basi della
geometria euclidea e di quella non-euclidea iperbolica.
Modalità d’esame
Prova orale.
Bibliografia
- R.S. MILLMAN, G.D. PARKER, Geometry. A
Metric Approach with Models, Springer,
1991.
METODI MONTE CARLO
Docente
Prof. Furio Ercolessi
Crediti
6
Pagina del corso
http://www.fisica.uniud.it/~ercolessi/M
C/
Prerequisiti
Fisica 1; aver frequentato Meccanica Statistica 1.
255
Finalità del corso
Lo scopo del corso è di dare le basi teoriche relative ai Metodi Monte Carlo (con
enfasi sui metodi basati su catene di
Markov), nonché discuterne e sperimentarne l’implementazione pratica e le strategie computazionali in alcuni casi rappresentativi. Viene inoltre introdotto il
metodo della dinamica molecolare per le
simulazioni atomiche.
Programma
Fondamenti di teoria della probabilità.
Variabili e processi casuali. Generazione
di numeri casuali. Distribuzioni di probabilità e loro caratterizzazione. Stima di
medie, varianza, errori. Somma di variabili casuali; teorema del limite centrale.
Integrazione Monte Carlo. Campionamento secondo una distribuzione. Campionamento con tecniche di reiezione.
Metodi di riduzione della varianza:
importance sampling, riduzione analitica, variabili antitetiche, stratificazione.
Catene di Markov: cammini casuali,
bilancio dettagliato, metodo di Metropolis-Rosenbluth-Teller. Applicazioni in
meccanica statistica. Il problema del
commesso viaggiatore attraverso annealing simulato (con laboratorio). Funzione
di autocorrelazione e convergenza
all’equilibrio. Modelli su reticolo e sul
continuo. Il modello di Ising in due
dimensioni (con laboratorio). Campionamento non-Boltzmann, campionamento
a ombrello. Simulazione Monte Carlo di
sistemi Lennard-Jones (con laboratorio).
Calcolo della pressione. Monte Carlo in
insiemi diversi da quello canonico. Introduzione alla dinamica molecolare. L’ipotesi ergodica. Statistica del campionamento. Geometria e condizioni al contorno periodiche. Integrazione temporale:
algoritmo di Verlet e predictor-corrector.
Errori. Instabilità di Lyapunov. Calcolo di
forze e energia. Leggi di conservazione.
Organizzazione di un calcolo di dinamica
256
molecolare. Simulazione di dinamica
molecolare di sistemi Lennard-Jones (con
laboratorio). Calcolo di proprietà statiche
e dinamiche. Funzioni di autocorrelazione. Dinamica molecolare negli insiemi
NVT e NPH. Cenni rapidi a metodi
Monte Carlo quantistici: variational
Monte Carlo e diffusion Monte Carlo.
Modalità d’esame
Realizzazione di un esperimento numerico, assegnato individualmente almeno
due settimane prima dell’esame, sua
descrizione in una relazione scritta, e
discussione orale della relazione.
programmi - LS matematica
Programma
Panoramica dei modelli trattati: a tempo
continuo o discreto, lineari e non lineari.
Stabilità dei punti di equilibrio. Modelli
dipendenti dallo spazio e dal tempo. Cicli,
biforcazioni, catastrofi. Modelli caotici.
Modalità d’esame
Prova orale.
Bibliografia
- E. BELTRAMI, Mathematics for Dynamic
Modelling, Academic Press, 1987.
OTTIMIZZAZIONE 1
Bibliografia
- M.H. K ALOS , P.A. W HITLOCK , Monte
Carlo Methods, Wiley, New York, 1986.
- D. F RENKEL , B. S MIT , Understanding
Molecular Simulation, 2nd edition, Academic Press, 2002.
- M.P. A LLEN , D.J. T ILDESLEY , Computer
Simulation of Liquids, Oxford, 1987.
- Materiale preparato o selezionato dal
docente; appunti di lezione.
MODELLISTICA E SIMULAZIONE
Docente
Prof. Adriano Pascoletti
Crediti
6
Finalità del corso
Illustrazione del processo di costruzione
di un modello attraverso la discussione di
una serie di esempi non banali. Particolare attenzione è rivolta alla valutazione critica del campo di validità del modello, ai
problemi computazionali connessi e
all’intreccio tra ragionamento formale e
intuizioni relative alla fisica del sistema
da modellare.
Docente
Prof. Franca Rinaldi
Crediti
6
Finalità del corso
L’ottimizzazione (o programmazione
matematica) è una disciplina che gioca
un ruolo di primo piano nel processo di
modellizzazione e risoluzione dei complessi problemi di decisione che emergono
in ambito applicativo. Il corso si propone
di presentare una panoramica delle principali classi di problemi di ottimizzazione, quali la programmazione lineare, la programmazione lineare intera e
l’ottimizzazione combinatoria, e delle
rispettive metodologie risolutive. Nel
modulo I verranno anche richiamate
alcune nozioni di base di tre argomenti
fondamentali per lo sviluppo del programma di ottimizzazione: la teoria della
complessità computazionale, l’analisi
convessa e la teoria dei grafi. Per ulteriori
informazioni sulla ricerca operativa e
sull’ottimizzazione si consulti il sito
dell’INFORMS (Institute for Operations
Research and Management Science),
www.informs.org.
257
programmi - LS matematica
Programma
Introduzione ai problemi di ottimizzazione (4 ore)
Problemi reali, modelli e algoritmi risolutivi. Esempi di problemi di ottimizzazione continua e discreta: problemi di programmazione lineare, non lineare e
lineare intera. Esempi di problemi di ottimizzazione combinatoria: Bin Packing,
Knapsack, Assegnamento tridimensionale, Set Covering, Set Packing, Set Partitioning, Soddisfattibilità.
Cenni di teoria dei grafi (4 ore)
Definizioni fondamentali. Matrici di incidenza. Tagli e cammini. Connessione e
forte connessione. Alberi, cricche e insiemi stabili. Problemi di ottimizzazione su
grafi.
Cenni di complessità computazionale (6
ore)
Algoritmi e loro complessità. Problemi di
decisione. Classi P ed NP. Trasformazioni polinomiali ed NP-completezza. Esempi di problemi NP-completi.
Cenni di analisi convessa (10 ore)
Definizioni fondamentali. Teorema di
Caratheodory. Operazioni algebriche su
insiemi. Proprietà topologiche. Teoremi
di separazione. Poliedri. Funzioni convesse. Proprietà differenziali. Minimizzazione di funzioni convesse.
Programmazione lineare (12 ore)
Definizioni fondamentali ed esempi.
Geometria della PL. Dualità. Condizioni
di complementarità. Cenni sulla complessità della PL. Metodo del simplesso.
Analisi di sensistività.
Programmazione lineare intera (12 ore)
Introduzione ed esempi. Matrici totalmente unimodulari. Metodo del branch
and bound. Metodo del branch and cut.
Diseguaglianze di Chvital e tagli di
Gomory.
Modalità d’esame
L’esame consiste in una prova scritta e in
una prova orale.
Bibliografia
- P. SERAFINI, Ottimizzazione, Zanichelli,
Bologna, 2000.
OTTIMIZZAZIONE 2
Docente
Prof. Franca Rinaldi
Crediti
6
Finalità del corso
Il corso completa la presentazione dei
principali argomenti dell’ottimizzazione
matematica, sviluppando la teoria delle
reti di flusso, la programmazione dinamica ed alcuni temi fondamentali di ottimizzazione combinatoria.
Programma
Teoria delle reti di flusso (14 ore)
Definizioni fondamentali. Il problema di
flusso a costo minimo. Il metodo del simplesso adattato alle reti di flusso. Il problema del massimo flusso e l’algoritmo di
Dinic-Karzanov. Il problema del cammino minimo e l’algoritmo di Dijkstra.
L’algoritmo ‘out-of-kilter’.
Programmazione dinamica (12 ore)
Il principio di ottimalità e l’equazione di
Bellman. L’algoritmo di Bellman-Ford.
L’algoritmo per reti acicliche. L’algoritmo
di Floyd-Warshall. Applicazioni della PD
a: il problema del knapsack, il problema
dell’allineamento di due stringhe, un problema di schedulazione.
Ottimizzazione combinatoria (22 ore)
Problemi di accoppiamento e assegnamento. Algoritmi per l’accoppiamento di
cardinalità massima. Ottimizzazione su
matroidi. Algoritmo di Kruskal per il problema dell’albero di supporto di costo
minimo. Combinatorica poliedrale. Analisi poliedrale del problema dell’accoppiamento di costo minimo, del problema del
258
programmi - LS matematica
commesso viaggiatore e del problema
dell’insieme stabile.
Modalità d’esame
L’esame consiste in una prova scritta ed
in una prova orale.
Bibliografia
- P. SERAFINI, Ottimizzazione, Zanichelli,
Bologna, 2000.
OTTIMIZZAZIONE 3
Docente
Prof. Franca Rinaldi
Crediti
6
Finalità del corso
Obiettivo del corso è presentare le principali metodologie modellistiche utilizzate
nel settore della gestione e pianificazione
integrata dei trasporti e della produzione
e le relative tecniche risolutive. A completamento della panoramica dei metodi
dell’Ottimizzazione, vengono inoltre
introdotte alcune tecniche euristiche di
ricerca locale e la classe degli algoritmi
approssimati. Al termine del corso lo studente dovrebbe essere in grado di modellare un problema non troppo complesso
di gestione e pianificazione e proporre
adeguati strumenti di risoluzione.
Programma
- Algoritmi approssimati e metodi di
ricerca locale (12 ore). Algoritmi approssimati e schemi di approssimazione polinomiali. Esempi. Metodi di ricerca locale:
Simulated Annealing e Tabu Search.
Esempi.
- Problemi di routing (18 ore). Problemi
di arc routing. I problemi del postino
cinese e del postino rurale e loro varianti.
Problemi di node routing. Il Travelling
Salesman Problem, il Vehicle Routing
Problem e loro varianti. Per i diversi problemi verranno presentati modelli di ILP
e metodi di risoluzione esatti e/o euristici.
- Problemi di schedulazione (18 ore).
Definizione, analisi e classificazione dei
problemi di schedulazione. Problemi ad
una macchina. Problemi su macchine
parallele. Open Shop, Flow Shop e Job
Shop.
Modalità d’esame
L’esame consiste in una prova orale.
Bibliografia
- Materiale bibliografico fornito dal
docente.
OTTIMIZZAZIONE 4
(tace nell’a.a. 2007/08)
Crediti
6
Finalità del corso
Nel corso vengono presentati i concetti ed
i risultati fondamentali della teoria delle
decisioni e della teoria dei giochi.
Programma
Teoria delle decisioni (16 ore). Criteri di
decisione in caso di incertezza. Criteri di
decisione in caso di rischio. Valore atteso
dell’informazione. Utilizzazione di informazione aggiuntiva tramite il teorema di
Bayes. Alberi di decisione. Funzione di
utilità. Valutazione della funzione di utilità tramite lotterie. Valutazione soggettiva delle probabilità tramite lotterie.
Teoria dei giochi (16 ore). Forma estesa e
forma normale. Strategie ed equilibri di
Nash. Giochi ad informazione perfetta.
Giochi a due persone a somma nulla.
Strategie pure e miste. Teorema Minimax. Giochi a somma non costante. Gio-
259
programmi - LS matematica
chi a n persone. Giochi non cooperativi.
Giochi cooperativi. Coalizioni e imputazioni. Nucleo di un gioco. Valore di Shapley.
Corso monografico.
Crediti
6
Programma
Concetti base: unità di misura, relatività
speciale, sezioni d’urto, rate di decadimento. Particelle ed interazioni fondamentali: quarks, leptoni, bosoni di gauge,
interazioni elettromagnetiche, forti e
deboli. Leptoni: elettroni e positroni,
muoni e tau, neutrini. Metodi sperimentali: acceleratori di particelle e rivelatori di
particelle. Adroni e forze nucleari. Risonanze. Struttura degli adroni e scattering
deep in elastico. Stranezza. Modello a
quark degli adroni. Quark pesanti. Il meccanismo GIM. La matrice CKM. Unificazione elettrodebole e bosoni W e Z. Correnti neuter. Simmetrie discrete e interazioni deboli: parità, coniugazione di carica e CP. Quantocromodinamica (QCD):
colore, accoppiamento forte, sconfinamento, getti di particelle. Il meccanismo
di Higgs e la ricerca sperimentale
dell’Higgs.
Pagina del corso
http://www.fisica.uniud.it/%7Ecobal/pa
rticelle_welcome.html
Modalità d’esame
Compiti per casa e relazione finale su un
articolo a scelta.
Finalità del corso
Questo corso è un’introduzione alla Fisica delle Particelle e delle Interazioni Fondamentali. Si discutono alcune delle proprietà dei costituenti fondamentali della
materia e le loro interazioni, così come i
metodi sperimentali e le tecnologie coinvolte. In generale, intenzione del corso
non è quella di derivare modelli teorici da
principi primi, ma piuttosto di confrontare previsioni fenomenologiche con risultati sperimentali, così da introdurre le
conoscenze necessarie per affrontare
questo tipo di ricerca. Il corso è indirizzato agli studenti di Fisica Computazionale,
Matematica, Informatica e Ingegneria.
Bibliografia
- PERKINS, High Energy Physics, 4th edition,
Addison-Wesley.
- B.R. MARTIN, G. SHAW, Particle Physics,
2nd edition, Wiley.
- Appunti di lezione, disponibili al sito:
http://www.fisica.uniud.it/~cobal/particelle_welcome.html
Modalità d’esame
L’esame consiste in una prova orale.
Bibliografia
- Materiale bibliografico fornito dal
docente.
PARTICELLE E INTERAZIONI
FONDAMENTALI
Docente
Dott. Marina Cobal
Prerequisiti
Fisica 1 e 2; Fisica Moderna; eventualmente Meccanica Quantistica.
PROBABILITÀ 2
Docente
Prof. Paolo Vidoni
Crediti
6
Programma
1. Richiami di Calcolo delle Probabilità. 2.
260
programmi - LS matematica
Valori attesi e distribuzioni condizionate.
3. Introduzione ai processi stocastici. 4.
Catene di Markov. 5. Processi di Poisson.
6. Martingale. 7. Moto browniano.
Modalità d’esame
L’esame consiste in una prova orale.
Bibliografia
- Per gli argomenti 1 e 2:
- Appunti delle lezioni e, come consultazione e complemento, alcuni paragrafi
della Dispensa Probabilità 2.
Per gli argomenti 3, 4, 5, 6, 7:
- Appunti delle lezioni e, come consultazione:
- D. BOSQ, H.T. NGUYEN, A Course in Stochastic Processes: Stochastic Models and
Statistical Inference, Kluwer, 1996.
STATISTICA 1
Docente
Prof. Luigi Pace
Crediti
6
Finalità del corso
Il corso presenta un’introduzione all’inferenza statistica e ad alcune importanti
applicazioni, sulla base del concetto di
funzione di verosimiglianza.
Programma
- Richiami e complementi di Calcolo delle
Probabilità Le variabili casuali normale
bivariata e normale multivariata; la distribuzione di combinazioni lineari e forme
quadratiche di componenti di una normale multivariata.
- Modelli statistici Il problema; modelli parametrici e non parametrici; modelli statistici
parametrici notevoli, il controllo empirico di
un modello statistico (metodi grafici: probabilty plot, stima della densità).
- Inferenza statistica: le procedure fondamentali Il problema; definizioni di base;
stima puntuale; problemi di previsione;
verifica delle ipotesi statistiche; stima
intervallare; i test di Kolmogorov-Smirnov; la simulazione.
- La funzione di verosimiglianza Motivazione e definizioni di base (funzione
score, informazione osservata); lo stimatore di massima verosimiglianza; i test di
verosimiglianza; parametri di interesse e
parametri di disturbo: la verosimiglianza
profilo; verosimiglianze penalizzate e
selezione del modello.
Modalità d’esame
L’esame consiste in una prova scritta
seguita, per i sufficienti, da una prova
orale. Entrambe le prove dovranno essere
superate nello stesso appello.
Bibliografia
- Appunti delle lezioni.
- A. AZZALINI, Inferenza Statistica: un’introduzione basata sul concetto di verosimiglianza, Springer-Verlag, 1992.
- L.J. BAIN, M. ENGELHARDT, Introduction
to Probability and Mathematical Statistics,
PWS-Kent Publishing co., 1992.
STATISTICA 2
Docente
Prof. Luigi Pace
Crediti
6
Finalità del corso
Il corso approfondisce l’inferenza statistica parametrica basata sul concetto di
verosimiglianza e tratta alcune applicazioni riferite a modelli di regressione.
Programma
- Verosimiglianza: aspetti teorici.
261
programmi - LS matematica
L’immutabilità della verosimiglianza; statistiche sufficienti e verosimiglianza;
distribuzioni campionarie asintotiche
delle principali quantità di verosimiglianza e loro uso come approssimazioni.
- Procedure statistiche ottimali. Stimatori
non distorti e efficienti tra i non distorti;
test più potenti; intervalli di confidenza
più accurati; i teoremi fondamentali.
- I modelli binomiali. Stima della probabilità; verifica di ipotesi e test dei segni
per mediana e quantili; test per la probabilità comune; il modello di regressione
logistica; l’algoritmo di Newton-Raphson
per la determinazione di una soluzione
dell’equazione di verosimiglianza.
- I modelli multinomiali. Stima delle probabilità di cella; test chi-quadrato di adattamento; test di indipendenza in una
tabella di contingenza; test di omogeneità
di più tabelle.
- I modelli Poisson. Stima e verifica di
ipotesi sul parametro; modelli di regressione.
- I modelli normali. Stima e verifica di
ipotesi sui parametri; modelli di regressione lineare.
Modalità d’esame
L’esame consiste in una prova scritta
seguita, per i sufficienti, da una prova
orale. Entrambe le prove dovranno essere
superate nello stesso appello.
Bibliografia
- Appunti delle lezioni.
- A. AZZALINI, Inferenza Statistica: un’introduzione basata sul concetto di verosimiglianza, Springer-Verlag, 1992.
- L. PACE, A. SALVAN, Teoria della Statistica,
CEDAM, 1996.
TEORIA DEGLI INSIEMI
Docente
Prof. Alberto Marcone
Crediti
6
Finalità del corso
Il corso mira a introdurre gli studenti ad
alcuni argomenti e tecniche della teoria
degli insiemi, scelti sia per il loro interesse intrinseco che per le loro connessioni
con altre parti della matematica.
Programma
- L’ipotesi del continuo e l’aritmetica cardinale.
- L’assioma di Martin e alcune sue conseguenze.
- L’ipotesi di Suslin.
- Modelli interni e dimostrazioni di consistenza relativa.
- Forcing e indipendenza di CH e di
GCH.
Modalità d’esame
Prova orale. Durante il corso vengono
assegnati esercizi a scadenza settimanale.
Lo svolgimento corretto degli esercizi
permette di abbreviare il colloquio orale.
Bibliografia
- T. JECH, Set Theory. The Third Millenium
Edition, Springer, 2003.
- K. KUNEN, Set Theory. An Introduction to
Independence Proofs, North-Holland,
1980.
- K. CIESIELSKI, Set Theory for the Working
Mathematician, Cambridge UP, 1997.
TEORIA DEI NUMERI 1
Docente
Prof. Pietro Corvaja
Crediti
6
Finalità del corso
Il corso si propone di fornire un’introdu-
262
programmi - LS matematica
zione ad un aspetto classico e centrale
della teoria dei numeri: la soluzione di
equazioni in numeri razionali. Il corso
non richiede prerequisiti specifici.
Programma
Punti razionali su rette e quadriche: esistenza di punti nel caso classico e modulo p; parametrizzazione. Cubiche: generalità e legge di gruppo. Punti razionali su
cubiche; struttura del gruppo, teorema di
Mordell. Punti di torsione, teorema di
Lutz-Nagell, algoritmi di calcolo. Applicazioni della teoria ad algoritmi di fattorizzazione di numeri interi.
Modalità d’esame
Solo orale.
Bibliografia
- S ILVERMAN , T ATE , Rational Points on
Elliptic Curves.
- C ASSELS , Elliptic Curves, LMS Lecture
Notes.
- Verranno distribuiti occasionalmente
appunti e dispense di esercizi.
TOPOLOGIA 1
Docente
Prof. Dikran Dikranjan
Crediti
6
Programma
- Metriche, pseudometriche e ultrametriche. Norme. Metriche p-adiche.
- Applicazioni uniformemente continue.
- Introduzione di una topologia (tramite
insiemi aperti, insiemi chiusi, intorni,
chiusura, convergenza di Moore e Smith).
- Completezza (esistenza del completamento).
- Teorema di Heine-Cantor e spazi di
Atsuji (senza dimostrazioni).
- Teorema di Banach del punto fisso.
- Teorema di Cantor.
- Teorema di Baire delle categorie.
- Funzioni ed applicazioni continue.
- Base di uno spazio topologico. Spazi di
Lindeloff, spazi separabili.
- Assiomi di separazione.
- Topologie indotte da ordini parziali
(Alexandrov-Tucker).
- Teorema del grafico chiuso.
- Teorema di Tichonov dell’immersione
in cubi di Tichonov.
- Spazi normali.
- Compattezza e le sue forme equivalenti.
- Compattezza numerabile, pseudocompattezza, paracompattezza.
- Compattificazioni: compattificazione di
Alessandrov di uno spazio localmente
compatto.
- Spazi topologici connessi.
- Lo spazio delle componenti connesse.
- Lemma di Shura-Bura.
- Lo spettro di un anello commutativo.
- Dualità di Stone.
- Anelli di funzioni continue.
Bibliografia
- Appunti del docente.
Altri testi:
- R. ENGELKING, General Topology, Helderman Verlag, Berlin. 1989.
- J. K ELLEY , General Topology, D. Van
Nostrand Company, New York, 1959.
TOPOLOGIA 2
(tace nell’a.a. 2007/08)
Crediti
6
Finalità del corso
Fornire un’introduzione ai gruppi topologici. Non sono richiesti prerequisiti specifici tranne la buona conoscenza del materiale coperto dai corsi di algebra, geome-
263
programmi - LS matematica
tria e analisi del primo biennio della laurea di primo livello in matematica.
Programma
1. Richiami della topologia generale:
metriche, completezza, basi, assiomi di
separazione, compattezza e connessione.
2. Introduzione del concetto di gruppo
topologico e prime proprietà. 3. Il gruppo quoziente e teorema dell’omomorfismo per i gruppi topologici. 4. I sottogruppi chiusi di Rn, il toro di dimensione n. 5. I gruppi dei numeri p-adici. 6.
Invarianti cardinali dei gruppi abeliani
astratti: gruppi abeliani liberi, rango
libero e p-rango; gruppi abeliani divisibili. 7. Invarianti cardinali dei gruppi
topologici: peso, densità, carattere, e
pseudocarattere. 8. Il teorema di metrizzazione di Birkhoff-Kakutani. 9. Gruppi completi e completamento di un
gruppo topologico. 10. Gruppi connes-
si, componente connessa di un gruppo
topologico. 11. Gruppi localmente compatti, teorema di Baire, teoremi della
mappa aperta. 12. Teorema di PeterWeyl per i gruppi compatti abeliani. 13.
Il gruppo duale di un gruppo localmente compatto abeliano. 14. Teorema di
dualità di Pontryagin.
Modalità d’esame
Solo orale.
Bibliografia
- Appunti del corso (disponibili sul sito
del docente).
- D. DIKRANJAN, I. PRODANOV, L. STOYANOV, Topological Groups, Marcel Dekker
Inc., New York-Basel, 1989.
- A. ORSATTI, Introduzione ai gruppi abeliani astratti e topologici, Quaderni dell’Unione Mat. Italiana, Pitagora Ed., Bologna,
1979.
264
programmi - LS fisica computazionale
CORSO DI LAUREA
SPECIALISTICA IN
FISICA COMPUTAZIONALE
ANALISI NUMERICA
Docente
Prof. Rossana Vermiglio
Crediti
6
Finalità del corso
Completare o integrare le conoscenze di
base dello studente nell’ambito dell’analisi numerica attraverso lo studio, la sperimentazione e l’analisi critica dei principali algoritmi per la risoluzione di alcuni
problemi della matematica del continuo,
che si incontrano nella fisica, biologia
computazionale e ingegneria.
Programma
Approssimazione di funzioni: interpolazione, il problema della convergenza,
interpolazione polinomiale a tratti, splines; approssimazione di funzioni: miglior
approssimazione uniforme e in spazi
prehilbertiani; polinomi ortogonali; integrazione numerica; formule di NewtonCotes, formule composite e adattive, le
formule gaussiane; introduzione ai metodi numerici per equazioni differenziali.
Introduzione ai metodi spettrali. Nelle
esercitazioni integrate con esperienze in
laboratorio saranno presentati dei semplici casi di studio di particolare interesse
applicativo.
Modalità d’esame
Prova orale.
Bibliografia
- V. C O M I N C I A L I , Analisi numerica,
McGraw Hill, 1990.
- D. BINI, M. CAPOVANI, O. MENCHI, Meto-
di numerici per l’algebra lineare, Zanichelli, 1988.
- R. BEVILACQUA, D. BINI, M. CAPOVANI, O.
M ENCHI , Metodi Numerici, Zanichelli,
1992.
- G. M ONEGATO , Fondamenti di calcolo
numerico, CLUT, 1998.
- G.W. STEWART, Afternotes on Numerical
Analysis, SIAM, 1996.
- L.N. T REFETHEN , Spectral Methods in
Matlab, SIAM, 2000.
CHIMICA
Docente
Prof. Alessandro Del Zotto
Crediti
6
Finalità del corso
Il corso si prefigge l’obiettivo di fornire
allo studente le nozioni basilari della Chimica Generale, in particolare i fondamenti della struttura della materia e le
sue possibili trasformazioni chimiche e
chimico-fisiche. Viene dato notevole
risalto alla struttura molecolare e all’equilibrio chimico con particolare approfondimento dei concetti di acidità, basicità e
pH. Il corso prevede una breve trattazione dei fondamenti della Chimica Inorganica.
Programma
- Fondamenti della teoria atomica e stechiometria. Particelle elementari. Atomo,
elemento, isotopo, molecola, ione. Massa
atomica: valori assoluti e scala relativa.
Massa molecolare. Mole e numero di
Avogadro. Formulazione dei composti
chimici. Le equazioni chimiche ed il loro
bilanciamento.
- Struttura dell’atomo. Brevi cenni di teoria atomica. Orbitali atomici, loro rappresentazione grafica. L’atomo polielettroni-
265
programmi - LS fisica computazionale
co e le configurazioni elettroniche degli
elementi.
- Legame chimico. Energia di ionizzazione, di affinità elettronica ed elettronegatività. Il legame chimico: covalente, ionico,
metallico. Formalismo di Lewis, regola
dell’ottetto. Teoria VSEPR e struttura.
Orbitali molecolari, teoria LCAO. Orbitali
sigma e pi-greco. Orbitali ibridi sp, sp2 e
sp3. Orbitali delocalizzati e risonanza.
Legame a ponte di idrogeno.
- Stato liquido e soluzioni. Transizioni di
fase ed equilibri tra fasi. Tensione di
vapore di solidi e liquidi. Diagrammi di
stato, il diagramma di stato dell’acqua. La
soluzione. Concentrazione della soluzione. Legge di Raoult e proprietà colligative.
Pressione osmotica.
- Cinetica chimica. Velocità della reazione
chimica. Legge cinetica Meccanismo di
reazione. Legge di Arrhenius ed energia
di attivazione.
- Equilibrio chimico. Concetto di equilibrio. Legge d’azione di massa e costante
di equilibrio. Principio dell’equilibrio
mobile. Equilibri in soluzione acquosa.
Acidi e basi. Prodotto ionico dell’acqua:
Kw. Acidi e basi forti. Acidi e basi deboli,
Ka e Kb, coppie coniugate. Il pH, calcolo
del pH. Soluzioni tampone.
- Elettrochimica. Reazioni redox. Potenziale d’elettrodo ed equazione di Nernst.
Elettrodo standard ad idrogeno e scala dei
potenziali standard di riduzione. Pile e
forza elettromotrice.
- Chimica inorganica. Tavola periodica
degli elementi. Gruppi e periodi, blocchi
s, p, d ed f. Proprietà chimiche e chimicofisiche degli elementi in relazione alla
loro configurazione elettronica. Elementi
fondamentali del blocco p: carbonio,
azoto, ossigeno e loro principali composti. Composti inorganici naturali ed industriali di elevato interesse.
Modalità d’esame
Test scritto e successivo esame orale.
Bibliografia
Testi consigliati:
- Appunti di lezione.
- R.E. DICKERSON, H.B. GRAY, G.P. HAIGHT , Principi di Chimica, Ed. Grasso,
Bologna.
- S ACCO , Fondamenti di Chimica, CEA,
Milano.
COMPLEMENTI DI MECCANICA
Crediti
6
Programma
Geometria delle masse. Cinematica dei
sistemi rigidi. Grandezze dinamiche dei
sistemi materiali. Teoremi generali della
meccanica dei sistemi materiali discreti.
Statica dei sistemi materiali. Dinamica
dei sistemi materiali. Meccanica analitica.
Bibliografia
I testi adottati saranno comunicati agli
studenti all’inizio del corso.
COSMOLOGIA E ASTROFISICA
DELLE PARTICELLE
Docente
Prof. Persic
Dott. Francesco Longo
Dott. Riccardo Valdranini
Crediti
6
Finalità del corso
La ricerca di punta sta volgendo molta
attenzione alla fisica astroparticellare, in
particolare come campo di studio della
fisica delle particelle ad energie non
accessibili in esperimenti di laboratorio.
A loro volta tali studi contribuiscono ad
266
approfondire la conoscenza della natura
dell’Universo e delle sorgenti celesti.
Scopo del corso è di introdurre lo studente alla comprensione degli attuali modelli
cosmologici e delle sorgenti cosmiche di
particelle di alta energia, nonché di passare criticamente in rassegna i diversi strumenti di rivelazione.
Prerequisiti
Particelle e Interazioni Fondamentali.
Programma
Parte I: Big Bang e sue implicazioni:
breve introduzione alla relatività generale, modelli cosmologici, osservabili in
Cosmologia, materia oscura, formazione
delle strutture, Universo inflazionario.
Parte II: Osservazioni dell’Universo dopo
la Ricombinazione: neutrini, raggi cosmici, raggi gamma.
Parte III: Rivelatori di sorgenti astrofisiche: richiami sull’interazione radiazione
materia, rivelatori per raggi cosmici, X e
gamma, strategie per la progettazione di
nuovi strumenti. Approcci numerici alla
fisica astroparticellare: presentazione dei
codici numerici: DarkSUSY, CMBfast,
esempio di problema ad N-corpi, CORSIKA, GalProp, Geant4.
Modalità d’esame
Tesina di approfondimento su un argomento trattato a lezione, preferibilmente
con applicazione numerica. Colloquio.
Bibliografia
- L. B ERGSTROM , A. G OOBAR , Cosmology
and Particle Astrophysics, Wiley.
- J.A. PEACOCK, Cosmological Physics, Cambridge University Press.
- M.S. LONGAIR, High Energy Astrophysics,
Cambridge University Press.
programmi - LS fisica computazionale
FISICA DELLE ALTE ENERGIE
Docenti
Prof. Alessandro De Angelis
Dott. Barbara De Lotto
Crediti
6; dei 6 crediti, 2 sono di laboratorio (lo
studente può anche scegliere i soli crediti
di teoria).
Finalità del corso
Illustrare uno o più argomenti di ricerca
in fisica delle alte energie. Il corso è indirizzato agli studenti di Fisica Computazionale, Matematica, Informatica e Ingegneria orientati alla ricerca, e agli studenti di Dottorato.
Prerequisiti
Nozioni di Fisica Quantistica e Relatività.
Programma
Articoli selezionati su argomenti di fisica
e astrofisica delle alte energie; analisi dei
dati di un esperimento.
Modalità d’esame
Seminario da parte dello studente su un
argomento del corso scelto insieme ai
docenti.
Bibliografia
- Articoli selezionati.
FISICA MODERNA
Docente
Prof. Alessandro De Angelis
Crediti
6
Pagina del corso
http://www.fisica.uniud.it/~deangeli/fis
mod/corsofismod.html
267
programmi - LS fisica computazionale
Finalità del corso
Introdurre la Fisica Quantistica e la Relatività. Il corso è indirizzato agli studenti
di Fisica Computazionale, Matematica,
Informatica e Ingegneria.
Prerequisiti
Fisica 1 e 2; Analisi applicata alle funzioni
di una e più variabili.
Programma
Caduta della fisica classica. La prima formulazione della meccanica quantistica.
Equazione di Schroedinger ed applicazioni. Conduzione e semiconduttori; funzionamento dei dispositivi elettronici a
semiconduttore. Cenni sulla computazione quantistica. Relatività speciale e formulazione covariante dell’elettromagnetismo. Cenni sulla fisica delle particelle
elementari e la cosmologia.
- Struttura delle equazioni di NavierStokes (b).
- Equazioni di diffusione monodimensionale.
- Equazioni di diffusione in 2 e 3 dimensioni.
- Equazioni di convezione lineari.
- Equazioni di convezione non lineari:
equazione di Burger.
- Equazioni di Navier-Stokes.
- Altri metodi per le equazioni di NavierStokes (2 ore).
- Simulazione di flussi turbolenti (10 ore).
- Reynolds Averaged Navier-Stokes
(RANS).
- Eddy Simulation (LES).
- Direct Numerical Simulation (DNS).
- Ottimizzazioni dell’efficienza e accuratezza computazionale (4 ore).
FLUIDODINAMICA E TURBOLENZA
Modalità d’esame
Per chi frequenta il corso: compiti per
casa. Per chi non frequenta il corso:
esame orale.
Bibliografia
- K.S. KRANE, Modern Physics, 2nd edition,
Wiley, 1996.
- Appunti di lezione.
FLUIDODINAMICA
COMPUTAZIONALE
Docente
Dott. Luca Cortelezzi
Crediti
6
Programma
- Introduzione (2 ore).
- Metodi di discretizzazione (4 ore).
- Soluzione delle equazioni di NavierStokes (26 ore).
Docente
Prof. Alfredo Soldati
Crediti
6
Prerequisiti
Fisica Generale.
Programma
1. Introduzione alla Dinamica dei Fluidi
(10 h):
- analisi dimensionale e Proprietà fisiche;
- richiami di Statica;
- forze esercitate da un fluido in moto.
Dinamica di una sfera immersa in un
fluido.
2. Equazioni di Bilancio (8 h):
- conservazioni di Massa, Quantità di
moto e Energia;
- fluidi Newtoniani; Equazioni di Navier
Stokes;
- soluzioni Esatte: Flussi Unidirezionali.
3. Soluzioni Approssimate (16 h):
268
programmi - LS fisica computazionale
- adimensionalizzazione;
- creeping flow;
- teoria di Reynolds - della lubrificazione;
- moto potenziale;
- autosimilarità: Strato Limite, Getti e
Scie.
4. Instabilità e Turbolenza (14 h):
- instabilità;
- equazioni di Conservazione Mediate
Secondo Reynolds (chiusura);
- leggi di chiusura;
- leggi di scala e auto-preservazione in
flussi esterni e confinati.
INFORMATICA 1
Docente
Prof. Fabio Alessi
Crediti
6
Finalità del corso
Informatica 1 intende fornire un nucleo
di conoscenze informatiche su cui sviluppare successive competenze specialistiche. In particolare, il corso fornisce gli
strumenti per lo sviluppo di programmi
imperativi mediante tecniche di raffinamento e strutturazione modulare del
codice. Parallelamente affronta la realizzazione di strutture dati di più comune
impiego.
Programma
Nozioni generali Introduzione ai concetti
di algoritmo e di programma. Cenni
all’architettura di Von Neumann. Rappresentazione dell’informazione numerica e non numerica. Codice macchina.
Introduzione ai linguaggi di basso e alto
livello. Programmazione Scomposizione
dei problemi e progettazione di algoritmi
per raffinamenti successivi. Componenti
base e costrutti di un linguaggio impera-
tivo. Funzioni e procedure. Passaggio dei
parametri. Ricorsione e modello operazionale di procedure ricorsive. Relazione
tra ricorsione e iterazione. Linguaggi di
riferimento: Java e C. Strutture dati Specifica astratta delle strutture dati e diversità della loro implementazione. Strutture dati statiche, semidinamiche e dinamiche.
Modalità d’esame
Prova orale.
Bibliografia
- S. MIZZARO, Introduzione alla programmazione con il linguaggio Java, Franco
Angeli, 1999.
- Appunti delle lezioni.
INFORMATICA 2
Docente
Prof. Vitaliano Milanese
Crediti
6
Finalità del corso
Informatica 2 estende e completa le conoscenze acquisite con Informatica 1, introducendo il paradigma della programmazione ad oggetti e le metodologie per lo
sviluppo di programmi basati su classi.
Programma
Nozioni generali Incapsulamento delle
informazioni. Classi come astrazioni di
dati e di modelli di funzionamento.
Oggetti quali istanze autonome di classi.
Cenni ai sistemi multithreading e concorrenti. Interazione con l’ambiente
operativo secondo il modello di gestione
degli eventi. Programmazione Progettazione di algoritmi basati sullo sviluppo
di componenti modulari interagenti.
Componenti base e costrutti di un lin-
269
programmi - LS fisica computazionale
guaggio ad oggetti. Classi, oggetti, metodi e messaggi. Gerarchie di classi ed ereditarietà. Polimorfismo. Gestione delle
eccezioni. Linguaggi di riferimento: Java
e C++. Complementi Progettazione di
software per la realizzazione di interfacce grafiche. Cenni all’architettura
client/server. Applet Java per applicazioni di rete.
Modalità d’esame
Prova orale.
Bibliografia
- S. MIZZARO, Introduzione alla programmazione con il linguaggio Java, Franco
Angeli, 1999.
- Appunti delle lezioni.
LABORATORIO DI
ANALISI DEI DATI
Docente
Dott. Vincenzo Vitale
Crediti
6
Finalità del corso
Con il presente corso si intende introdurre: 1) l’analisi statistica di base su dati sperimentali; 2) uno strumento di calcolo
professionale (ROOT) per la manipolazione, analisi e presentazione grafica di
dati; 3) esempi reali di analisi dei dati in
esperimenti di fisica.
Programma
- Parte 1: 1.1) errori sperimentali; 1.2) probabilità e statistica; 1.3) distribuzioni; 1.4)
test di ipotesi e aggiustamento di parametri; 1.5) interpretazione di stime.
- Parte 2: 2.1) introduzione del sistema
ROOT: un framework per l’analisi dati
object-oriented; 2.2) presentazione grafica di dati (1dim e 2dim); 2.3) macro-programmi per l’analisi di dati con ROOT.
- Parte 3: 3.1) esempi di esperimenti di
fisica e analisi dei dati.
Bibliografia
Testi facoltativi:
- M. CAPORALONI, La misura e la valutazione della sua incertezza nella fisica sperimentale, Zanichelli.
- G. C OWEN , Statistical Data Analysis,
Oxford Sc.
- L. LYONS, Statistics for Nuclear and Particle Physicists, Cambridge Univ. Press.
LABORATORIO DI ELETTRONICA
Docente
Prof. Lorenzo Santi
Crediti
6
Pagina del corso
http://www.fisica.uniud.it/~milotti/Dida
tticaUD/Elettronica/ArgomentiSvolti.ht
ml
Finalità del corso
Lo scopo del corso è di fornire le basi per
la comprensione dell’elettronica moderna. Il corso include anche una serie di
sessioni di laboratorio.
Programma
Circuits. Introduzione alla Fisica dei
semiconduttori. Diodi, transistor bipolari
e FET. La fabbricazione dei circuiti integrati digitali. La famiglia logica TTL.
Memorie RAM, DRAM etc. Convertitori
ADC e DAC. La tecnologia di una moderna applicazione (il lettore di CD ROM).
Modalità d’esame
L’esame consiste in una prova pratica.
Bibliografia
- HOROWITZ, HILL, The Art of Electronics,
270
Cambridge University Press.
- Dispense del corso.
LABORATORIO DI STRUMENTI E
MISURE DI FISICA
Docenti
Dott. Hans Grassmann
Prof. Paolo Giannozzi
Crediti
6
Finalità del corso
Eseguire esperimenti di fisica aiuta lo studente ad acquisire una conoscenza più
profonda delle leggi fondamentali di fisica e delle relazioni fra di loro. Da un
punto di visto pratico il corso aiuta lo studente a capire che capacità servono per la
ricerca fondamentale e per la ricerca
applicata industriale, e come acquisire
queste capacità.
Programma
Gli esperimenti includono meccanica
classica, relatività, elettromagnetismo,
ottica, termodinamica e fluidodinamica.
La maggior parte degli esperimenti viene
eseguita ed analizzata usando il computer. Agli studenti viene chiesto di spiegare
il loro lavoro in ‘mini pubblicazioni’ e di
presentare e difendere il lavoro in ‘mini
seminari’. A conclusione viene eseguito
un esperimento virtuale, usando un programma di simulazione numerica.
Prerequisiti
Fisica 1 e 2 per matematica; Fisica per
informatici.
programmi - LS fisica computazionale
- U. AMALDI, Fisica, a cura di A. Chiari e E.
Milotti, Zanichelli.
- Dispense.
MECCANICA QUANTISTICA
Docente
Prof. Paolo Giannozzi
Crediti
6
Finalità del corso
Lo scopo del corso è di trasmettere gli elementi di base necessari alla risoluzione
numerica di problemi di meccanica
quantistica non relativistica con particolare enfasi per problemi di fisica atomica. Il
corso è organizzato in una serie di lezioni
teoriche in cui vengono presentati i concetti fisici e numerici necessari, e in sessioni pratiche e homework in cui gli studenti sono chiamati a mettere in pratica
le nozioni acquisite mediante la realizzazione e l’utilizzo di codici numerici.
MECCANICA STATISTICA
Docente
Dott. Gilberto Giugliarelli
Crediti
6
Pagina del corso
http://www.fisica.uniud.it/~giugliarelli/MeccanicaStatistica1.html
Modalità d’esame
Prova orale.
Finalità del corso
Il corso ha lo scopo di fornire le conoscenze alla base dei fondamenti statistici
della termodinamica e gli strumenti e i
metodi della meccanica statistica.
Bibliografia
- P.A. TIPLER, Corso di Fisica, Zanichelli.
Prerequisiti
Fisica Moderna.
programmi - LS fisica computazionale
Programma
Richiami di termodinamica. Prima e
seconda legge. Equilibrio termico e temperatura. Relazioni di Maxwell ed equazione di Gibbs-Duhem. Equilibrio e stabilità. Insieme microcanonico e canonico.
Insiemi generalizzati e insieme grancanonico. Fluttuazioni in sistemi di particelle non-correlate. Gas di fotoni e gas
ideale di particelle reali. Elettroni nei
metalli. Gas ideale classico e limite classico. Gas ideale di particelle classiche senza
struttura. Gas diluito di atomi e di molecole diatomiche. Modello di Ising e Lattice Gas. Rottura di simmetria e lunghezza
di correlazione. Teoria di campo medio.
Trattamento variazionale della teoria di
campo medio. Introduzione alla teoria
del gruppo di rinormalizzazione. Applicazione al modello di Ising bidimensionale. Traiettorie e traiettorie Monte Carlo.
Campionamento di tipo non-Boltzmann.
Modalità d’esame
L’esame comprende una prova scritta
finale e una breve prova orale. Durante il
corso vengono effettuati 3 accertamenti
parziali che possono esonerare lo studente dalla prova scritta finale.
Bibliografia
- D. C HANDLER , Introduction to Modern
Statistical Mechanics, Oxford University
Press, 1987.
METEOROLOGIA
COMPUTAZIONALE
Docente
Dott. Fulvio Stel
Crediti
6
Finalità del corso
- Fornire agli studenti le conoscenze di
271
base inerenti alla fluidodinamica e termodinamica atmosferica nonché gli strumenti analitici atti ad analizzare i principali fenomeni che avvengono nella bassa
atmosfera (troposfera);
- Fornire agli studenti gli strumenti
numerici necessari (essenzialmente il
modello numerico di nuova generazione
WRF) per effettuare simulazioni sull’evoluzione dell’atmosfera. Al termine del
corso gli studenti saranno in grado di
analizzare in maniera critica i principali
fenomeni meteorologici che avvengono
nella troposfera e di affrontare il problema delle simulazioni numeriche sia con
finalità di previsione che di analisi di
eventi.
Programma
1. Le grandezze fondamentali (6 ore):
struttura verticale dell’atmosfera; modalità di trasporto dell’energia; bilancio
energetico Terra-Sole.
2. Termodinamica (6 ore): processi adiabatici; temperatura potenziale; temperatura equivalente potenziale instabilità
idrostatica e condizionale.
3. Fluidodinamica in sistemi rotanti (6
ore): traiettorie e linee di flusso; coordinate naturali e sferiche; operatori in coordinate sferiche; derivate materiali e locali;
equazioni fondamentali.
4. Applicazioni delle equazioni fondamentali (6 ore): vento geostrofico, termico, ciclostrofico e di gradiente; atmosfera
barotropica e baroclina; instabilità barotropica e baroclina, fronti e frontogenesi;
instabilità simmetrica.
5. Suddivisione dell’atmosfera in scale (4
ore): i principali fenomeni in ciascuna
scala.
6. Simulazioni modello numerico WRF
(18 ore): descrizione del modello numerico e sue caratteristiche; inizializzazione
del modello; simulazione e visualizzazione dei risultati.
272
programmi - LS fisica computazionale
Modalità d’esame
Orale.
Bibliografia
- WRF Numerical Model. http://www.wrfmodel.org/
- J.A. DUTTON, Dynamics of Atmospheric
Motion, Dover, 1995.
- J.R. HOLTON, An Introduction to Dynamic
Meteorology, Academic Press, 1992.
- C.F. BOHREN, B.A. ALBRECHT, Atmospheric Thermodynamics, Oxford University
Press, 1998.
METODI MONTE CARLO
Docente
Prof. Furio Ercolessi
Crediti
6
Pagina del corso
http://www.fisica.uniud.it/~ercolessi/M
C/
Finalità del corso
Lo scopo del corso è di dare le basi teoriche relative ai Metodi Monte Carlo (con
enfasi sui metodi basati su catene di
Markov), nonché discuterne e sperimentarne l’implementazione pratica e le strategie computazionali in alcuni casi rappresentativi. Viene inoltre introdotto il
metodo della dinamica molecolare per le
simulazioni atomiche.
Prerequisiti
Fisica 1; aver frequentato Meccanica Statistica 1.
Programma
Fondamenti di teoria della probabilità.
Variabili e processi casuali. Generazione
di numeri casuali. Distribuzioni di probabilità e loro caratterizzazione. Stima di
medie, varianza, errori. Somma di variabili casuali; teorema del limite centrale.
Integrazione Monte Carlo. Campionamento secondo una distribuzione. Campionamento con tecniche di reiezione.
Metodi di riduzione della varianza:
importance sampling, riduzione analitica, variabili antitetiche, stratificazione.
Catene di Markov: cammini casuali,
bilancio dettagliato, metodo di Metropolis-Rosenbluth-Teller. Applicazioni in
meccanica statistica. Il problema del
commesso viaggiatore attraverso annealing simulato (con laboratorio). Funzione
di autocorrelazione e convergenza
all’equilibrio. Modelli su reticolo e sul
continuo. Il modello di Ising in due
dimensioni (con laboratorio). Campionamento non-Boltzmann, campionamento
a ombrello. Simulazione Monte Carlo di
sistemi Lennard-Jones (con laboratorio).
Calcolo della pressione. Monte Carlo in
insiemi diversi da quello canonico. Introduzione alla dinamica molecolare. L’ipotesi ergodica. Statistica del campionamento. Geometria e condizioni al contorno periodiche. Integrazione temporale:
algoritmo di Verlet e predictor-corrector.
Errori. Instabilità di Lyapunov. Calcolo di
forze e energia. Leggi di conservazione.
Organizzazione di un calcolo di dinamica
molecolare. Simulazione di dinamica
molecolare di sistemi Lennard-Jones (con
laboratorio). Calcolo di proprietà statiche
e dinamiche. Funzioni di autocorrelazione. Dinamica molecolare negli insiemi
NVT e NPH. Cenni rapidi a metodi
Monte Carlo quantistici: variational
Monte Carlo e diffusion Monte Carlo.
Modalità d’esame
Realizzazione di un esperimento numerico, assegnato individualmente almeno
due settimane prima dell’esame, sua
descrizione in una relazione scritta, e
discussione orale della relazione.
273
programmi - LS fisica computazionale
Bibliografia
- M.H. K ALOS , P.A. W HITLOCK , Monte
Carlo Methods, Wiley, New York, 1986.
- D. F RENKEL , B. S MIT , Understanding
Molecular Simulation, 2nd edition, Academic Press, 2002.
- M.P. A LLEN , D.J. T ILDESLEY , Computer
Simulation of Liquids, Oxford, 1987.
- Materiale preparato o selezionato dal
docente; appunti di lezione.
METODI NUMERICI PER LA
STRUTTURA ELETTRONICA
Docente
Prof. Paolo Giannozzi
Crediti
6
Finalità del corso
Il corso presenta metodi avanzati di
simulazione per il calcolo della struttura
elettronica di atomi, molecole e sistemi
condensati. Scopo di questi approcci è la
descrizione accurata delle interazioni atomiche e la spiegazione a livello quantistico dei fenomeni fisici di materiali reali,
con lo studio di un largo spettro di proprietà fisiche dello stato elettronico fondamentale e con estensione agli stati eccitati (proprietà strutturali, vibrazionali,
elettroniche, magnetiche e ottiche).
Prerequisiti
Struttura della Materia.
Programma
- Teoria del funzionale densità (DFT).
Proprietà di atomi e ioni.
- La struttura elettronica delle molecole.
La struttura elettronica dei solidi.
- Metodo del tight-binding per il calcolo
delle bande.
- Pseudopotenziali ed onde piane. Energia totale di un solido.
- Derivate dell’energia totale di un solido:
forze e fononi.
Modalità d’esame
L’esame è costituito da una prova pratica
da svolgere al calcolatore, utilizzando gli
strumenti sviluppati durante il corso.
METODI STOCASTICI PER SISTEMI
QUANTISTICI A MOLTI CORPI
(tace nell’a.a. 2007/08)
Crediti
6
Finalità del corso
Questo corso ha l’obiettivo di fornire allo
studente le conoscenze ed i mezzi necessari ad affrontare problemi di molte particelle interagenti, in regime quantistico,
con tecniche stocastiche. L’enfasi principale è sulla predizione di proprietà di
stato fondamentale, con metodi di Monte
Carlo quantistico che hanno analogie
strette con problemi classici di diffusione. Saranno anche dati cenni a trattamento di sistemi a temperatura finita, con il
metodo degli integrali sul cammino.
Prerequisiti
Meccanica Statistica.
Programma
- Monte Carlo Variazionale.
- Processi di diffusione ed equazione di
Fokker-Planck.
- Evoluzione di Schrodinger in tempo
immaginario e processi di diffusione.
- Approcci alternativi al Monte Carlo di
Diffusione.
- Cenni agli integrali sul cammino e mapping quantistico/classico: il PIMC.
- Cenno alla teoria delle funzioni di risposta.
274
programmi - LS fisica computazionale
MODELLISTICA E SIMULAZIONE
Docente
Prof. Adriano Pascoletti
Crediti
6
Finalità del corso
Illustrazione del processo di costruzione
di un modello attraverso la discussione di
una serie di esempi non banali. Particolare attenzione è rivolta alla valutazione critica del campo di validità del modello, ai
problemi computazionali connessi e
all’intreccio tra ragionamento formale e
intuizioni relative alla fisica del sistema
da modellare.
Programma
Panoramica dei modelli trattati: a tempo
continuo o discreto, lineari e non lineari.
Stabilità dei punti di equilibrio. Modelli
dipendenti dallo spazio e dal tempo. Cicli,
biforcazioni, catastrofi. Modelli caotici.
Modalità d’esame
Prova orale.
Bibliografia
- E. BELTRAMI, Mathematics for Dynamic
Modelling, Academic Press, 1987.
PARTICELLE E INTERAZIONI
FONDAMENTALI
Docente
Dott. Marina Cobal
Crediti
6
Pagina del corso
http://www.fisica.uniud.it/%7Ecobal/pa
rticelle_welcome.html
Finalità del corso
Questo corso è un’introduzione alla Fisica delle Particelle e delle Interazioni Fondamentali. Si discutono alcune delle proprietà dei costituenti fondamentali della
materia e le loro interazioni, così come i
metodi sperimentali e le tecnologie coinvolte. In generale, intenzione del corso
non è quella di derivare modelli teorici da
principi primi, ma piuttosto di confrontare previsioni fenomenologiche con risultati sperimentali, così da introdurre le
conoscenze necessarie per affrontare
questo tipo di ricerca. Il corso è indirizzato agli studenti di Fisica Computazionale,
Matematica, Informatica e Ingegneria.
Prerequisiti
Fisica 1 e 2; Fisica Moderna; eventualmente Meccanica Quantistica.
Programma
Concetti base: unità di misura, relatività
speciale, sezioni d’urto, rate di decadimento. Particelle ed interazioni fondamentali: quarks, leptoni, bosoni di gauge,
interazioni elettromagnetiche, forti e
deboli. Leptoni: elettroni e positroni,
muoni e tau, neutrini. Metodi sperimentali: acceleratori di particelle e rivelatori di
particelle. Adroni e forze nucleari. Risonanze. Struttura degli adroni e scattering
deep in elastico. Stranezza. Modello a
quark degli adroni. Quark pesanti. Il meccanismo GIM. La matrice CKM. Unificazione elettrodebole e bosoni W e Z. Correnti neuter. Simmetrie discrete e interazioni deboli: parità, coniugazione di carica e CP. Quantocromodinamica (QCD):
colore, accoppiamento forte, sconfinamento, getti di particelle. Il meccanismo
di Higgs e la ricerca sperimentale
dell’Higgs.
Modalità d’esame
Compiti per casa e relazione finale su un
articolo a scelta.
275
programmi - LS fisica computazionale
Bibliografia
- PERKINS, High Energy Physics, 4th edition,
Addison-Wesley.
- B.R. MARTIN, G. SHAW, Particle Physics,
2nd edition, Wiley.
- Appunti di lezione, disponibili al sito:
http://www.fisica.uniud.it/~cobal/particelle_welcome.html
QUANTUM COMPUTING
Docente
Prof. Alessandro De Angelis
Crediti
6
complessità. Teoria quantistica della
computazione. Algoritmi quantistici.
Possibili realizzazioni sperimentali.
Cenni di teoria quantistica dell’informazione. Argomenti avanzati di teoria
dell’informazione quantistica.
Modalità d’esame
L’esame si svolgerà sotto forma di discussione di una tesina su argomenti di ricerca inerenti il corso.
Bibliografia
- Appunti del docente.
- M. NIELSEN, I. CHUANG, Quantum Computation and Quantum Information, Cambridge University Press, 2000.
Pagina del corso
http://www.fisica.uniud.it/~riccardo/teaching/physics/qc2001.html
Finalità del corso
Scopo del corso è di fornire un’introduzione al Quantum Computing, sia negli
aspetti di base sia in quelli più avanzati.
Nella prima parte del corso verranno
discussi ed analizzati i fondamenti matematici e concettuali della meccanica
quantistica; nella seconda parte verranno
applicati tali concetti alla teoria della computazione quantistica, analizzandone i
contenuti innovativi e sottolineandone le
differenze rispetto alla teoria classica. Il
corso fornirà anche alcune nozioni di
base su argomenti di punta della ricerca
in questo campo, quali la teoria quantistica dell’informazione ed il teletrasporto
quantistico.
Prerequisiti
Fisica Moderna.
Programma
Basi matematiche. Spazi di Hilbert. Meccanica quantistica. Sistemi composti.
Teoria classica della computazione e della
RELATIVITÀ GENERALE
(tace nell’a.a. 2007/08)
Crediti
6
Finalità del corso
Il corso si propone di discutere argomenti avanzati di relatività generale.
Programma
Geometria differenziale. Teoria di Einstein della gravitazione. Formalismi
lagrangiano e hamiltoniano in relatività
generale. Problema ai valori iniziali.
Onde gravitazionali. Struttura globale di
uno spaziotempo. Buchi neri. Effetti
quantistici in un campo gravitazionale.
Prerequisiti
Fisica Moderna.
Modalità d’esame
Il candidato terrà un seminario, della
durata complessiva di circa un’ora, su un
argomento fuori programma concordato
con il docente. Al termine del seminario,
seguirà un breve esame orale su argomenti sviluppati durante il corso.
276
programmi - LS fisica computazionale
Bibliografia
- R. D’I NVERNO , Introducing Einstein’s
Relativity, Clarendon, 1992.
- R.M. WALD, General Relativity, University of Chicago Press, 1984.
- Appunti del docente.
SIMULAZIONI ATOMISTICHE
DI MATERIALI
Docente
Prof. Furio Ercolessi
Crediti
6
Pagina del corso
http://www.fisica.uniud.it/~ercolessi/SA
/
Finalità del corso
Il corso si propone di fornire allo studente le conoscenze necessarie per capire,
organizzare ed effettuare simulazioni a
temperatura finita di sistemi condensati
atomici e molecolari - solidi, liquidi, difetti, superfici, nanostrutture, clusters, sistemi organici - utilizzando i metodi della
dinamica molecolare, Monte Carlo e tecniche affini. Il corso è costituito da tre
linee parallele e relativamente indipendenti tra loro per quanto riguarda il materiale presentato in ciascuna di esse, ma
con frequenti collegamenti trasversali.
Nella prima vengono presentati aspetti
teorici e pratici legati ai metodi di simulazione; nella seconda vengono discusse le
proprietà dei materiali che sono più spesso oggetto di investigazione mediante
simulazione; nella terza, importante per
acquisire familiarità con tecniche e codici
di calcolo, vengono effettuate delle misure su sistemi fisici mediante simulazione
in modo da caratterizzarli sotto vari punti
di vista. Ogni settimana una lezione viene
dedicata a una discussione dei risultati e
dei problemi ottenuti, e alla preparazione
del lavoro per la settimana seguente.
Prerequisiti
Metodi Monte Carlo; Struttura della
Materia.
Programma
I. Metodi di simulazione: A p p r o s s i mazione di Born-Oppenheimer. Indicatori della presenza di interazioni a molti
corpi fra atomi. Potenziali a colla/embedded atom. Dinamica molecolare tightbinding. Potenziali da principi primi:
indicazioni da tight binding, potenziali
bond order per semiconduttori.
Potenziali coulombiani: metodo delle
somme di Ewald. Cenni ai force fields per
sistemi organici. Molecole con dinamica
vincolata (algoritmo SHAKE). Richiami
di termodinamica. Dinamica molecolare
negli insiemi NVT (Nose-Hoover) e NPT
(Andersen, Parrinello-Rahman). Metodi
per calcoli di energia libera: integrazione
termodinamica; metodo di Bennett delle
distribuzioni sovrapposte. Cenni su
umbrella sampling. Calcolo di energia
libera di solidi. Dinamica browniana
(Langevin). Sistemi non in equilibrio: teorema di fluttuazione-dissipazione, e
metodo di Bennett-Chandler per il calcolo
di costanti di reazione di eventi rari. Algoritmi veloci per la dinamica molecolare:
liste dei vicini e metodo delle celle, parallelizzazione mediante decomposizione
spaziale, parallelizzazione mediante algoritmi sistolici.
II. Proprietà dei materiali: Teoria dell’elasticità nei cristalli: costanti elastiche,
strain, stress. Vibrazioni reticolari e fononi. I difetti nei solidi: difetti puntiformi e
loro stabilità termodinamica. Ruolo dei
difetti nelle proprietà meccaniche. Termodinamica delle superfici: superficie di
Gibbs, energia libera di superficie e tensione superficiale. Coefficiente di diffusione: leggi di Fick, equazione di Ein-
277
programmi - LS fisica computazionale
stein. Capillarità e legge di Laplace. Tensore di stress di superficie. Formula di
Kirkwood-Buff per il calcolo dello stress.
Energia libera di superfici cristalline:
modello di Kossel. Costruzione di Wulff e
sua dimostrazione. Legame analitico fra
energia libera di superficie e forma di
equilibrio; analogie con altri casi termodinamici. Surface stiffness. Sfaccettamento. Interazioni tra steps e forme di equilibrio a T finita, comportamento di Pokrovski-Talapov. Transizione di irruvidimento delle superfici. Diagrammi di fase di
sostanze pure; equazione di ClausiusClapeyron. Diagrammi di fase di sistemi
a due componenti: soluzioni, decomposizione spinodale, nucleazione e crescita,
leghe a soluzione solida e leghe eutettiche. Fusione e non-fusione superficiale.
III. Attività al computer: Verranno effettuate simulazioni su un sistema fisico, e
in questo ambito verranno discussi metodi per il calcolo di funzioni di correlazione e varie proprietà strutturali, vibrazionali, termodinamiche del sistema.
Modalità d’esame
Realizzazione di un esperimento numerico, assegnato individualmente almeno
due settimane prima dell’esame, sua
descrizione in una relazione scritta, e
discussione orale della relazione.
Bibliografia
- D. F RENKEL , B. S MIT , Understanding
Molecular Simulation, 2nd edition, Academic, 2001.
- M.P. A LLEN , D.J. T ILDESLEY , Computer
Simulation of Liquids, Oxford, 1989.
- J.I. G ERSTEN , F.W. S MITH , The Physics
and Chemistry of Materials, Wiley, 2001.
- M.C. DESJONQUERES, D. SPANJAARD, Concepts in Surface Physics, 2nd edition, Sprinter, 1996.
- Materiale preparato o selezionato dal
docente; appunti di lezione.
STRUTTURA DELLA MATERIA
Docente
Prof. Paolo Giannozzi
Crediti
6
Finalità del corso
Lo scopo del corso è di fornire gli argomenti di base della fisica atomica, molecolare e dello stato solido, nell’ambito di
un approccio rigoroso basato sul formalismo della Meccanica Quantistica; affronto di alcuni semplici problemi risolvibili
in modo analitico.
Programma
Fondamenti di Fisica Atomica: atomo di
H e atomi idrogenoidi (spettri, autofunzioni, regole di selezione); atomi alcalini
e difetto quantico; atomo di He; approssimazione di campo centrale; il sistema
periodico degli elementi. Fondamenti di
Fisica Molecolare: il legame molecolare;
approssimazione adiabatica; molecole
biatomiche; classificazione degli stati
elettronici; orbitali molecolari; spettri
rotovibrazionali. Fondamenti di Fisica
dello Stato Solido: strutture cristalline
(reticoli diretto e reciproco, diffrazione);
coesione; proprietà vibrazionali; elettroni
liberi; elettroni nei cristalli.
Modalità d’esame
L’esame consta di tre provette scritte in
itinere (o in alternativa di una prova scritta finale su tutto il programma) ed eventualmente di una prova orale.
Bibliografia
- Appunti di lezione (on-line e cartacei).
- C OLOMBO , Elementi di Struttura della
Materia, Hoepli.
- KITTEL, Introduzione alla Fisica dello Stato
Solido, Boringhieri.
- EISBERG, RESNICK, Quantum Physics of
Atoms, Molecules, Solids, Nuclei and Particles, J. Wiley.
- BRANDSEN, JOACHAIN, Physics of Atoms
and Molecules, Longman.
general information
and curricula
281
general information and curricula
FACULTY OF MATHEMATICAL,
PHYSICAL AND NATURAL
SCIENCES
Location and web site
The Faculty is located in via delle Scienze,
208 (Loc. Rizzi) Udine - Tel. ++39043
2558681-4-7 - Fax ++39043 2558682; the Faculty web site has the following address:
http://www.uniud.it/didattica/facoltà;
request for information can be addressed
to: [email protected]
Courses
The Faculty of Mathematical, Physical
and Natural Sciences offers four kinds of
courses:
- Laurea courses: three-year courses aimed
at obtaining the Laurea Degree. These
courses require the student to get 180
ECTS credits * which can be obtained
from exams and other activities (such as
thesis, stage, etc.).
- Laurea specialistica courses: two-year
courses which can be followed by students who have previously obtained the
Laurea Degree. They are aimed at extending and refining the knowledge and competences acquired in the three-year laurea courses. They allow the students to
get the Laurea Specialistica Degree. They
require 120 credits.
- Master courses: aimed at acquiring specific professional competences. First
Level Master Courses are devoted to students with the Laurea degree, whereas
Second Level Master Courses are devoted
to students with the Laurea Specialistica
Degree. Both kinds of courses require 60
credits.
* Courses are structured on a new measure of formative activity, made up of university formative
credits (ECTS). One ECTS corresponds to 25
working hours by the student, generally divided
into 8 hours of classroom lessons and 17 hours of
individual study.
- PhD courses: aimed at obtaining the
highest level of qualification, with specific attention for research and top professional competences; they require three
year attendance and a final research thesis.
In the Academic Year 2007-08 the Faculty will offer the following courses:
Laurea courses:
Computer Science
Mathematics
Web and Multimedia Technologies
Biotechnologies - course organized jointly
with the Faculties of Medicine, Agriculture
and Veterinary Medicine
First level Master courses:
Open Distance Learning
Geographical Information Systems (GIS)
Laurea Specialistica courses:
Computer Science
Computational Physics
Information Technology
Mathematics
Statistic and Computer Science for Enterprise Management – course organized jointly with the Faculty of Economics
PhD courses:
Computer Science
Mathematics and Physics
ENTRANCE REQUIREMENTS
Laurea courses require the High School
Diploma or some equivalent degree
obtained abroad.
Application requests can be submitted
from July 13, 2007 to September 21,
2007. The request should be presented
directly to the Student Offices (Segreteria
Studenti) located by the Faculty site. In
special cases, the request can be presented later; in any case, not later than
December 31, 2007.
282
The submission requests to the admission test for the course in Biotechnology
are received by the Student Offices of the
Faculty of Veterinary Medicine (same
location) from July 13, 2007 to September
6, 2007.
Prerequisites for access to Laurea courses
In order to help the first-year students,
the Faculty organizes an Introductory
course for the Computer Science and the
Web and Multimedia Technology courses.
This course will be held at the site of the
Faculty, Teaching Room H, from September 3 to September 14, each day,
(Monday to Friday) from 9 am to 1 pm
(except on September 10, when the
course will be held from 2 pm to 7 pm teaching room 51). On September 19 a
final test will be held beginning at 9.30
am, in Teaching Rooms H, I and 51.
Analogously, the Faculty organizes an
Introductory course for the Mathematics
first-year students, from September 10 to
September 21. Moreover, are online tests
(accessible through the Faculty web site)
is available for self evaluation. Information is available in the Faculty web site.
The first-year students of the Biotechnology course are invited to follow the Introductory course organized for the Mathematics students.
Pre requisites for access to Laurea Specialistica courses
Foreign students willing to apply to the
Laurea Specialistica courses area kindly
requested to contact the Student Offices.
Application requests are accepted from
July 13 to November 5, 2007. Delays are
accepted for special cases, but not later
than April 15, 2008.
general information and curricula
TEACHING AND RESEARCH
FACILITIES
Departments
Research and advanced training are carried on within the following three Departments:
Dipartimento di Matematica e Informatica
via delle Scienze, 208 (loc. Rizzi)
33100 Udine
Tel. ++390432558400
Fax: ++390432558499
http://www.uniud.it/ricerca/strutture/di
partimenti_scientifica/dimi
Dipartimento di Fisica
via delle Scienze, 208 (loc. Rizzi)
33100 Udine
Tel. ++390432558210
Fax: ++390432558222
http://www.uniud.it/ricerca/strutture/di
partimenti_scientifica/difa
Dipartimento di Scienze Statistiche
via Treppo, 18
33100 Udine
Tel. ++390432275570
Fax: ++390432503240
http://www.uniud.it/ricerca/strutture/di
partimenti_economica/diss
Laboratories
Training during regular courses is supported by several laboratories which allow
the students to experiment practical
skills. Laboratories are located in the Faculty and in Departments.
Libraries
Students can exploit the services provided
by the following university libraries:
- Centro Interdipartimentale dei Servizi
Bibliotecari di Scienze, located in via delle
Scienze, 208 (loc. Rizzi) - Udine - Tel.
++390432558561.
283
general information and curricula
For any information: http://cisbscienze.bib.uniud.it/
or [email protected]
- Centro Interdipartimentale dei Servizi Bibliotecari di Economia, located in via Tomadini,
30/a - Udine - Tel. ++390432249600.
http://ecolex.bib.uniud.it/
The center for audio-visual study of languages (CLAV)
Located in via Zanon, 8 - Udine - Tel.
++390432275570, organizes several foreign language courses, as well as courses
on the Italian language for foreign students.
http://www.uniud.it/didattica/servizi_st
udenti/servizi_linguistici/laboratori_aut
oapprendimento_linguistico
[email protected]
The center for computer services (CSIT)
Located in via delle Scienze, 208 (loc.
Rizzi) - Udine - Tel. ++390432558900 Fax: ++390432558911, provides students
with several computerized services, such
as e-mail. On-line application to exams,
access to library catalogues, identification
of stage opportunities, etc.
http://www.uniud.it/didattica/servizi_st
udenti/servizi_informatici_e_telematici
INTERNATIONAL PROGRAMS
Socrates-Erasmus and Leonardo International Programs
The University of Udine adheres to the
Socrates-Erasmus and Leonardo International Programs financed by the Euro-
pean Union. The Faculty of Science has
numerous partnership with other European Universities. Please, visit the sites:
www.uniud.it/didattica/servizi_studenti/programma_socrates
www.uniud.it/didattica/servizi_studenti/mobilita/programma_leonardo
FURTHER INFORMATION
Further information can be obtained
from:
- The University web site: www.uniud.it
- The Student Office (Segreteria Studenti)
via delle Scienze, 208 Rizzi - Udine - Tel.
++390432-558380/89 open from Monday to Friday, 9.00 am - 11.00 am, Thursday 2.00 - 4.00 p.m. as well.
- The Student Office - Affari generali,
diritto allo studio, via Mantica, 3 - Udine Tel. ++390432-556680 for information
about taxes, tax reductions, grants, etc.
Web site: http://www.uniud.it/didattica/servizi_studenti/tasse_contributi
- International Students Office (CRIN) via Palladio, 2 - Udine - Tel. ++390432-556220.
Web site: http://www.uniud.it/ateneo/organizzazione/amministrazione/amministrazione_centrale/crin
- International students service:
http://www.uniud.it/didattica/servizi_st
udenti/international_students_service
- the Faculty Office (Segreteria di Presidenza della Facoltà) via delle Scienze,
208 (loc. Rizzi) - Udine - Tel. ++390432558687/4/1 - Fax ++390432-558682,
open 12.00 am - 1.00 pm, Monday,
Wednesday and Friday.
284
general information and curricula
LECTURE TIMETABE
First term:
Second term:
Third term:
September 24, 2007 - November 30, 2007
January 14, 2008 - March 19, 2008
April 21, 2008 - June 20, 2008
Exams
First period:
Second period:
Third period:
December 3 - 21, 2007 and January 7 - 11, 2008
March 26, 2008 - April, 18, 2008
June 23, 2008 - July 31, 2008 and September 1 - 19, 2008
How to register for exams
To be registered for the exams, students must use the SINDY service, available through
the web, at the site http://sindy.uniud.it.
OFFICIAL FACULTY COMMITTEES
Consiglio di Facoltà
The Faculty is run by the Faculty Council,
chaired by the Dean of the Faculty (currently Carlo Tasso, Professor of Computer Science, elected for the 3-year term
2007/08 - 2009/10) and consisting of
full professors, associate professors, representatives of assistant professors and
representatives of students.
The current student representatives are:
Lorenzon Maria;
Bosa Elena;
Tellini Andrea.
Consigli di Corso di laurea
Each degree course has a Degree Council,
whose duties include solving all problems related to teaching and curricula.
The council is made up of all teachers
from the degree course (including temporary teaching staff), lecturers and student
representatives.
Computer Science
Consiglio Unificato dei Corsi di Laurea della
Classe 26 (Scienze e Tecnologie Informatiche) e Laurea
Specialistica della classe 23/s (Scienze Informatiche) currently chaired by Luca Chittaro, Professor of Human Computer Interaction. No student representative has
been elected.
Mathematics
Consiglio Unificato dei Corsi di laurea in
Matematica, currently chaired by Gianluca Gorni, professor of Mathematics. The
current student representatives are:
Molaro Chiara;
Lorenzon Maria;
Gerola Silvia.
Computational Physics
Consiglio di Corso di laurea Specialistica in
Fisica Computazionale, currently chaired
by Alessandro De Angelis, professor of
Physics. No student representative has
been elected.
general information and curricula
CURRICULA
THREE-YEAR LAUREA COURSE IN
COMPUTER SCIENCE
Normal duration
3 years, corresponding to 180 ECTS credits.
Features and Objectives
The course provides the competence necessary to work in the field of design,
development, management and maintenance of software and computer systems,
both in the manufacturing of computer
systems and in industries, public administration and laboratories that make use
of complex computer systems. Moreover,
the curriculum provides the theoretical
and methodological knowledge which
forms the basis for a future specialization, aiming towards a second level
degree or a first level master.
The course offers the following study
areas, or ‘curricula’, to fit specific professional needs:
- Software Design;
- Computer Services for Business and
Public Administration;
- Management and Planning;
- Basic Curriculum for Laurea Specialistica.
The degree course in computer sciences
features a strong emphasis on laboratory
courses and allows students to participate
in on-site training stages as an integral
part of their education, facilitating a
future transfer from university to the
business world.
Further information may be obtained
from the Faculty Web site or by contacting directly the Faculty Office.
285
THREE-YEAR LAUREA COURSE IN
WEB AND MULTIMEDIA
TECHNOLOGIES
Normal duration
3 years, corresponding to 180 ECTS credits.
Features and Objectives
The course provides the competence necessary to work in the fields of analysis,
design, development, management and
maintenance of Internet/World Wide
Web (WWW) and Multimedia systems,
in companies producing such systems as
well as in all sectors that make use of web
and multimedia systems. Moreover, the
curriculum provides the theoretical and
methodological knowledge aiming
towards a second level degree or a first
level master course.
Specifically, students will acquire the
skills necessary to: quickly and professionally join development projects concerning web and multimedia applications with specific hardware and software
requirements; select, evaluate, install and
maintain private or public software and
fit it to contexts typical of web and multimedia technologies; introduce new technologies and services based on web and
multimedia technologies; configure,
manage, monitor and analyse web sites
and computer network activities, with
regard also to security issues; support
management decisions related to web
activities and their integration with existing information systems; evaluate the
usability and accessibility of the offered
services.
Therefore the course curriculum provides: the necessary background on the
most recent developments in information, communication and interaction sciences and technologies, as well as their
applications; good familiarity with the
various communication forms allowed in
286
general information and curricula
multimedia systems; knowledge of programming languages and development
tools devoted to web and multimedia;
awareness of social, ethical and deontological implications of this activity.
The degree course in web and multimedia technologies features a strong emphasis on laboratory courses and allows students to participate in on-site training
stages as an integral part of their education, facilitating a future transfer from
university to the business world.
The programme also provides the opportunity to learn English and to acquire
communicative and organizational skills.
THREE-YEAR LAUREA COURSE IN
MATHEMATICS
Normal duration
3 years, corresponding to 180 ECTS credits.
Duration
3 years, corresponding to 180 ECTS credits.
Features and Objectives
The course is aimed at providing the
basic knowledge and competences on
biological systems (including the cellular, molecular and genomic levels), as
well as the multidisciplinary skills on the
typical techniques exploited in Biotechnology.
Features and Objectives
The course in Mathematics provides: basic
mathematical knowledge; computer and
computational skills; the ability to understand and use mathematical descriptions
and models of concrete scientific and economic situations; the ability to carry out
defined technical or professional tasks in
all sectors of industry, finance, services
and public administration, or in teaching
of mathematics and science.
A sound basis in mathematics, physics and
computer science is combined, from the
first phase of the course, with a professional preparation in various directions: general, teaching, statistical economics, logic
and computer science, physics, management and numerical analysis. Such a
preparation may be immediately exploited
in the working world or utilized for further
studies and research.
The degree course is therefore structured
in a way to offer different curricula,
designed to satisfy specific professional
needs.
THREE-YEAR LAUREA COURSE IN
BIOTECHNOLOGIES
(Degree course jointly organized
by the Faculties of
Agricultural Sciences, Mathematics,
Physics and Natural Sciences,
Medicine and Surgery and
Veterinary Medicine)
Activated Curricula
Three curricula are currently activated:
- Agricultural Biotechnology;
- Veterinary Medicine Biotechnology;
- Computational Biology/Bioinformatics.
FIRST LEVEL ON-LINE MASTER IN
OPEN DISTANCE LEARNING
Duration
One year, corresponding to 60 ECTS
credits.
Features and Objectives
The first level Master in Open Distance
Learning is aimed at providing knowledge and competences on new information and communication technologies
287
general information and curricula
for education and knowledge management.
The Master is delivered in online mode.
The major topics of the course are: elearning; basic knowledge of e-learning
systems and models; multimedia design,
accessibility and usability; virtual reality
and 3D graphics; learning objects;
human resource management; knowledge management; quality evaluation.
The Master includes also a stage or a project work.
This course is organized in cooperation
with the Universities of Macerata and
Camerino.
FIRST LEVEL MASTER IN
GEOGRAPHICAL INFORMATION
SYSTEMS (GIS)
Duration
One year, corresponding to 60 ECTS
credits.
Features and Objectives
The first level Master in Geographical
Information Systems is aimed at providing knowledge and competences in the
various fields included in this broad and
fast growing area.
The Master includes, among others,
courses on computer sciences, topography, environmental Law and Land Management; Risk Management Cartography,
Statistics, Spatial Data Bases, Image processing, geostatistics and geomarketing.
The Master includes a 250-hour stage.
OTHER FIRST LEVEL
MASTER COURSES
The Faculty cooperates to organize other
first level master courses.
Updated list at http://www.uniud.it/
didattica/facolta/scienze
LAUREA SPECIALISTICA IN
COMPUTER SCIENCE
Normal duration
2 years, corresponding to 120 ECTS credits.
Features and Objectives
The specialized degree in Computer Science aims at strengthening the graduate’s
knowledge of the theoretical foundations
of computer science as well as many application issues together with analysis,
design and evaluation methodologies.
The graduates will have the opportunity
to enter the computer science world at a
high competence level both in the
research field and in applications. The
strong preparation in the fundamentals
of computer science and in the application methodologies will allow the graduates to continue in the research field,
whereas the acquired design tools will
enable them to enter public and private
organizations to manage and innovate
information system and automation
processes.
Finally, those students who go on to earn
a PhD degree in Computer Science will
likely find employment at the university
and at research institutes.
In order to obtain a degree, a student has
to earn 120 credits, equally divided over
two years. The students may choose
between two curricula:
- Languages and algorithms, oriented
toward algorithm analysis, programming
languages and application of formal techniques to test software reliability;
- Design and implementation of software
systems, oriented toward information
system design and implementation.
288
general information and curricula
LAUREA SPECIALISTICA IN
INFORMATION TECHNOLOGY
Normal duration
2 years, corresponding to 120 ECTS credits.
Features and Objectives
The aim of this course is to provide highly specialized expertise and competences
on modern and innovative information
technologies, including high-level skills
on analysis, design development and
management of complex (networked)
information systems, both in public and
in private organizations.
The course strengthens the knowledge
acquired in the firs level degree courses
on Computer Science and Web and Multimedia Technologies.
The professionals with the Laurea Specialistica in Information Technologies
are meant to play the role of innovation
manager as well as top ICT designers.
In order to obtain a degree, a student has
to earn 120 credits, equally divided over
two years. In order to fulfil the above stated goals, the curriculum includes courses
on both traditional computer science technologies (such as software engineering,
data bases and information retrieval) and
innovative areas (such as mobile and wireless, web personalization, e-learning, egovernment and web design).
LAUREA SPECIALISTICA IN
MATHEMATICS
Normal duration
2 years, corresponding to 120 ECTS credits.
Features and Objectives
The course is aimed at completing, deep-
ening and strengthening the knowledge
of Mathematical disciplines.
The course includes three curricula:
- General, devoted to specifically prepare
towards research activities;
- Educational, devoted to teaching;
- Application, devoted to areas where
mathematical thinking and approaches
play a fundamental role, such as, for
example, statistics, economics, computer
logics and physical modelling.
LAUREA SPECIALISTICA IN
COMPUTATIONAL PHYSICS
Duration
2 years, corresponding to 120 ECTS credits.
Features and Objectives
The method of Physical Sciences is based
on the observation of the natural phenomena and on the elaboration of mathematical theories to describe their mechanisms and predict the outcomes. In the
last 30 years, a third paradigm has joined
the two traditional ones of Experimental
and Theoretical Physics: Computational
Physics. Thanks to computers, today is
possible not only to solve equations of
Theoretical Physics that could not be
faced otherwise, but also to perform virtual experiments (simulations) on properties of matter not accessible in laboratory.
The Laurea Specialistica in Computational Physics is meant to give skills to be
spent in the fields of industrial research
and development, and of pure and
applied computational research. The
studies are a balanced mixture of theoretical and experimental physics, as well as
of advanced techniques of numerical
commutation. A first period of 16 months
is mostly dedicated to basic instruction,
ranging from computer science to quan-
general information and curricula
tum mechanics; particular emphasis is
given to data acquisition laboratories and
to on-line data analysis. The last eight
months provide training in research concluded by a thesis.
Computational Physics allows to master
many modelling and simulation techniques, and requires creativity and flexibility of thought. Such qualities and skills
find a natural use in research and in all
modern technical and scientific jobs;
they can be applied in meteorology, seismology, ecology, optimization of production processes, and even on the control of
risks in the financial markets, not to
mention all the possible applications in
the biomedical area.
This course is organized in cooperation
with the SISSA (International school for
high advanced studies, Miramare - Trieste) and the University of Trieste.
289
LAUREA SPECIALISTICA IN
STATISTIC AND COMPUTER
SCIENCE
FOR ENTERPRISE MANAGEMENT
(course organized jointly with the
Faculty of Economics)
Normal duration
2 years, corresponding to 120 ECTS credits.
Features and Objectives
The course is aimed at providing knowledge and competences on various disciplines which play an important role for
managing and processing quantitative
information within enterprises, both in
the area of production and financial/economic services.
Activated Curricula
- Statistics and Computer Technology for
Enterprise Management;
- Statistics for the Analysis of Financial
Markets;
- Statistics and Computer Science.
programmes
three-year laurea course in Computer Science
THREE-YEAR LAUREA
COURSE IN
COMPUTER SCIENCE
ADVANCES IN DATABASE SYSTEMS
Teacher
Prof. Angelo Montanari
Credits
6
Program
Part 1 - Database design (additional material)
The conceptual design of databases and
the Dataflow model: the basic constructs
of the Dataflow model (process, data flow,
data repository, interface); context diagrams and Dataflow diagrams; functional
design based on the Dataflow model; the
design of information systems: an integrated approach to the design of system
functions and data (synthesis of external
ER schemas and their integration). The
logical design of databases: satisfiability
and violation of functional dependencies,
closure of dependency sets, a calculus of
dependencies (Armstrong’s axioms), closure of attribute sets, algorithms to compute the closure of attribute sets, equivalences among sets of dependencies, minimal covers, decompositions and their
properties, normal forms and normalization, algorithms to compute decompositions in specific normal forms.
Part 2 - The SQL language (additional
material)
SQL and the programming languages:
introduction, approaches to the database
programming, stored procedures, triggers, static embedded SQL (simple and
complex queries, the use of cursors),
dynamic embedded SQL (immediate execution and two-phase execution), database programming with function calls:
293
SQL/CLI (Call Level Interface), ODBC e
JDBC (a short account).
Part 3 - The physical organization of data
The storage of file records and the organization of primary files: introduction,
devices and techniques for the management of secondary storage, buffering of
blocks, placing file records on disks, operations on files, files of unordered records
(heap files), files of ordered records (sorted files), hashing techniques, other primary file organizations, parallelizing disk
access using RAID technology. Indexing
structures for files: types of single-level
ordered indexes (primary, clustering, secondary), multilevel indexes, dynamic
multilevel indexes using B-trees and B + trees, other types of indexes.
Part 4 - Database server technology
The notion of transaction: introduction to
transaction processing, desirable properties of transactions, transaction scheduling and recovery, serialization techniques, transaction support in SQL. Concurrency control techniques: problems,
architecture, the anomalies of concurrent
transactions, view-based techniques, conflict-based techniques, two-phase locking
techniques (2PL and strict 2PL), concurrency control based on timestamp ordering, multiversioning-based techniques,
granularity of data items. Buffer manager: architecture of the buffer manager,
primitives for the management of the
buffer, buffer management policies, on
the relationships between buffer manager and file system. Database recovery
techniques: basic concepts, architecture,
stable memory, organization of the log,
transaction processing, fault management. Query processing and optimization: system catalogs, query optimization
(query internal representation, relation
profiles, cost-based optimization), physical design of databases. Database security: introduction to database security
issues, mandatory access control and
294
role-based access control for multilevel
security, statistical database security (a
short account).
Part 5 - Distributed databases
Introduction to distributed databases,
basic elements of the client-server architecture, data fragmentation, data allocation, transparency levels, types of distributed DBMSs, query processing in distributed databases, concurrency control and
recovery in distributed databases.
Part 6 - Databases and World Wide Web
(a short account)
Basic notions (Internet, World Wide
Web, HTML, the http protocol), gateway
and form, tools and techniques to access
databases via web, database access via
CGI programs, development tools, the
limitations of the CGI protocol, serverbased solutions, client-based solutions,
web information systems, conceptual
design of web applications.
Part 7 - Additional topics (a short account)
Databases in support of management’s
decisions (data warehouse), semi structured data in XML, object and object-relational databases, active databases, temporal and spatial databases.
References
- P. A TZENI , S. C ERI , P. F RATERNALI , S.
P ARABOSCHI , R. T ORLONE , Basi di Dati:
Architetture e Linee di Evoluzione, McGrawHill, 2003.
- R. ELMASTRI, S. NAVATHE, Fundamentals
of Database Systems, 5th edition, Pearson
International Education / Addison Wesley, 2007.
Other suggested references:
- R. ELMASTRI, S. NAVATHE, Sistemi di basi
di dati. Complementi, quarta edizione,
Pearson Education Italia / Addison Wesley, 2005.
- J.D. ULLMAN, Principles of Databases and
Knowledge-Base Systems, Volume I, Computer Science Press, 1988.
- SILBERSCHATZ, H.F. KORTH, S. SUDAR-
three-year laurea course in Computer Science
Database System Concepts, 4th edition, McGraw-Hill, 2002. - A. A LBANO ,
Costruire sistemi per basi di dati, AddisonWesley, 2001.
- A. ALBANO, G. GHELLI, R. ORSINI, Fondamenti di basi di dati, Zanichelli, 2005.
- P. A TZENI , S. C ERI , S. P ARABOSCHI , R.
TORLONE, Basi di Dati: Modelli e Linguaggi
di Interrogazione, 2nd edition, McGrawHill, 2006.
SHAN,
ALGORITHMS AND DATA
STRUCTURES
Teacher
Prof. Alberto Policriti
Credits
10
Aims
During this course we will introduce the
notions at the basis of the theory of algorithms and data structures. Moreover, we
will present the fundamental techniques
for the analysis of the computational
complexity of programs. One of the main
objectives of this course is the study of
basic problems and techniques for the
design and analysis of algorithms. Having passed this course the student should
be able to algorithmically solve some classical problems, to choose the opportune
data structures to get computationally
efficient solutions, and to investigate the
complexity of the proposed algorithms.
Program
1. Introduction and preliminary notions.
Elements of logic and set theory. Threes
and graphs. Discrete mathematics and
Asymptotic analysis. Models for the definition of the computational complexity.
Recursive problems and algorithmic
aspects.
295
three-year laurea course in Computer Science
2. Sorting algorithms and order statistics.
Basic sorting algorithms: selection-sort,
insertion-sort, bubble-sort, heap-sort.
Recursive algorithms: quick-sort, mergesort. Computational complexity and
lower bounds. Linear-time algorithms
(outside the comparison-based model):
counting-sort, radix-sort, bucket-sort.
Selection in linear time.
3. Data structures. Elementary data structures: linked lists, stacks and queues.
Algorithms and data structures for
dynamic sets: hash tables, binary search
threes, red-black trees, and B-trees. Algorithms and data structures for disjoint
sets.
4. Graph algorithms. Data structures for
graphs. Breadth-first search and Depthfirst search. Strongly connected components. Topological-sort algorithms, minimum spanning tree (Prim and Kruskal),
single-source shortest paths (Dijkstra,
Bellmann-Ford), all-pairs shortest paths
(Floyd-Warshall, Johnson).
References
- T.H. C ORMEN , C.E. L EISERSON , R.L.
RIVEST, Introduction to Algorithms, MIT
Press, 2nd edition, 2001. Other suggested
references:
- A.V. AHO, J.E. HOPCROFT, J.D. ULLMAN,
Data Structures and Algorithms, AddisonWesley, 1983.
- A.V. AHO, J.E. HOPCROFT, J.D. ULLMAN,
The Design and Analysis of Computer Algorithms, Addison-Wesley, 1974.
- D.E. KNUTH, Selected Papers in Computer
Science Cambridge, University Press,
1996.
- R.E. TARJAN, Data Structures and Network
Algorithms, SIAM, 1983.
COMMUNICATION SKILLS
Teacher
Prof. Angelo Marzollo
Credits
1
Aims
The course corresponds to one credit, and
it coincides with the first eight lessons of
the Economics and Business Organization course. The course aims at providing
the students with basic communication
operational tools so as to facilitate their
first steps in the professional world.
Program
An analysis of individual communication
abilities both at group and at interpersonal level will first be carried out (public
reading and public speaking, CV preparation and illustration, job interviews and
professional meetings, etc.), thus revealing the main problems to be tackled in
these contexts. Specific communication
experts will also intervene and suggest
possible ways of overcoming the more
common difficulties.
Exams
The examination will consist of a communicational task (written and possibly
also oral) that will be as similar as possible to real situations to be met by the students in their social and professional
lives. The students following the course
in Economics and Business Organization
(the first eight lessons of which are devoted to the topics described above) are
exempt from taking a separate exam in
Effective Communication. Instead, they
will take a single exam (Economics and
Business Organization) that will also
include the course described here (Effective Communication). Therefore, passing
the examination in Economics and Business Organization will automatically
entail passing the one in Effective Communication, too.
References
Given the shortness of the course and its
296
three-year laurea course in Computer Science
mainly operational approach, specific
material will be indicated or distributed to
integrate direct training and note-taking.
Textbooks and manuals in the field are
overabundant, and often very similar to
one another. During the course they will
be rapidly illustrated for those who might
be interested in further individual study.
COMPUTER ARCHITECTURE
Teacher
Prof. Pietro Di Gianantonio
Credits
10
Aims
The course illustrates the structure and
functioning of a computer and its various
hardware parts. The analysis starts from
the smallest computer parts (digital gates
inside chips) and moves upwards until it
reaches the level of a full computer architecture. To better highlight the relations
between the hardware and software level,
the course deals with assembly programming.
Program
- Introduction: historical perspective on
computer architecture, basic concepts,
abstraction levels in computer architecture.
- Logic Circuits: logic gates, Boolean algebra, most frequently used combinational
circuits, synthesis of sequential circuits,
memory chips.
- Data Representation: binary representations, conversions, integer and floatingpoint numbers, character representation,
error detection and correction.
- Processor: fetch-decode-execute cycle,
data path, control unit, detailed example
of a simple architecture, pipeline, superscalar processor, branch prediction, Pentium IV, Sparc.
- Input/Output: programmed I/O, Interrupt, DMA, peripheral devices, bus, bus
arbitration, strobe control, PCI, USB,
SCSI.
- Memories: hard disk, RAID, optical
disk, cache memory, virtual memory,
pagination and segmentation, MMU.
- Parallel architectures: classification,
multiprocessor, multicomputer, processor interconnection, cache coherence,
UMA, NUMA, COW, MPP architectures.
- Assembly programming: MIPS architecture. MIPS assembly: assignment,
branch instructions, arithmetic and logic
instructions, subroutines.
Exams
The final exam consists of three parts: a
written exam, a laboratory evaluation and
oral discussion. During the course, student are offered the opportunity to take
three written exams, each one dealing
only with a part of the course topics. Students who pass successfully these three
written exams do not need to take the
written part of the final exam.
References
Textbook
- A.S. TANENBAUM, Structured Computer
Organization, 5th edition, Prentice-Hall,
2006.
COMPUTER ARCHITECTURE LAB
Teacher
Prof. Pietro Di Gianantonio
Credits
4
Aims
The laboratory allows the student to practically experiment some of the relevant
topics illustrated in the Computer Architecture course, by carrying out short projects with a computer.
297
three-year laurea course in Computer Science
Program
- Digital Circuits: Design and simulation
of combinational and sequential circuits
in a Macintosh environment. Implementation of small libraries of basic digital
components, and their use to build more
complex digital systems.
- Data Representation: Algorithms for
representation and processing of integer
numbers (signed and unsigned) and real
numbers (fixed-point and floating-point).
- Assembler Programming: Hands-on
development of programs aimed at
exploring all the different features of the
Motorola 68000 Assembler: directives,
assignment and comparison of registers,
addressing modes, exploitation of condition codes, control structures, arithmetic
and logic instructions, bit manipulation,
subroutines, allocation/deallocation of
memory.
- Besides basic assembler programming
techniques, some advanced topics will be
considered, such as implementation and
manipulation of data structures (vector,
string, matrix, set, list) in assembler, and
exception handling in the Motorola
microprocessor.
Exams
Written report about a project which
summarizes the different topics encountered in the laboratory. The specific project has to be assigned by the professor.
The student has to turn in the written
report to the professor before the oral discussion of the Computer Architecture
final exam (see Computer Architecture
course description).
Credits
6
Aims
The Computer Languages 1 course,
together with the Computer Languages 2
course, aims to give knowledge on the
characteristics of the various programming paradigms. It tries hard not to focus
on a specific language but to present the
general principles that guide project,
development and implementation of
modern programming languages. With a
solid knowledge of ‘universal’ characteristics one can learn new languages in no
time.
To achieve this general vision the main
programming paradigms are presented:
imperative, functional, logic and functional-logic. Besides examining the most
immediate pragmatic aspects of these
paradigms, they are analyzed and compared basing on general principles in
order to achieve a critical comprehension
of most popular languages. This is needed to reach a cognizant programming
style, where one knows which paradigm
is better to chose to solve a specific problem, and knows which language constructs to use, and at which cost.
The two courses aim to give a relatively
profound knowledge (especially regarding the programming aspect) on declarative paradigms (functional, logic and
functional-logic) that, thanks to their
expressiveness, can be naturally used as
basis for development of correct software.
The Computer Languages 1, in particular,
will treat the general concepts; the imperative paradigm and the functional paradigm. The Computer Languages 2 will
complete the presentation of declarative
paradigms: logic and functional-logic.
COMPUTER LANGUAGES 1
Teacher
Prof. Marco Comini
Program
Imperative Paradigm
- Abstract Machines, Interpretation e
Compilation.
298
three-year laurea course in Computer Science
- Describe a Computer Language (Syntax
and Semantics).
- Names and environments.
- Memory Management.
- Structuring control.
- p-code.
- Control Abstraction (Parameters Passing Methods).
- Structuring data.
- Monomorphic and Polymorphic Type
checking.
Functional Paradigm
- Introduction to Functional Programming.
- High-order Programming.
- The Haskell language (list comprehensions, partial applications of curried functions, sections, non-strict functions, infinite data structures, case expressions,
pattern matching).
- Types, Classes and Overloading.
- Haskell’s monadic I/O.
- Standard Haskell Classes.
- Monads.
- Modules.
References
- M. GABBRIELLI, S. MARTINI, Linguaggi di
Programmazione - Principi e Paradigmi,
McGraw-Hill. ISBN: 88-386-6261-4.
- HUDAK, FASEL, A Gentle Introduction to
Haskell, 1992.
Consultation Books and Texts:
- B. WADLER , Introduction to Functional
Programming Using Haskell, Prentice Hall
PTR, 1998. ISBN: 0134843460.
- N.D. JONES, C.K. GOMARD, P. SESTOFT,
Partial Evaluation and Automatic Program
Generation, Prentice-Hall, Englewood
Cliffs, NJ, 1993.
COMPUTER NETWORKS
Teacher
Prof. Elio Toppano
Credits
6
Aims
The aim of this course is to introduce
principles and fundamental concepts of
modern computer networks. In particular, the general characteristics of computer networks, the main structures, topologies, architectures and protocols will be
presented. Networking issues are also
addressed.
Program
- Introduction to computer networks Scope, applications, historic evolution,
main characteristics and layers, networks
topologies and architectures, network
protocols, error control, flow control,
packets and messages, service primitives,
circuit and packet switching, routing and
internetworking.
- Principal components of a network and
data transmission techniques - Optical
and electrical transmission media, signal
bandwidth, channel bandwidth, crosstalk, attenuation and distortion, analog
and digital signal transmission (PCM,
multiplexing), principal components of a
network (modem, multiplexer, bridge,
router, switch).
- The ISO/OSI model Architecture, services and protocols. The physical layer.
The data-link layer. Protocols for flow
(Stop & Wait, sliding window, Go-BackN) and error (CRC codes) control. HDLC
protocol.
- The network level - Routing techniques
(routing by network, address label swapping, source routing), router architecture,
routing tables, static routing algorithms
(fixed directory routing, flooding e selective flooding) and dynamic routing algorithms (distance vector and link state).
The IP protocol, IP addresses, sub-nets
and net mask. ARP, IGP, RIP, OSPF,
BGP protocols. Ipv6 protocol, packet format, optional headers. Network Address
Translation (NAT) protocol.
- The transport level - Services provided to
299
three-year laurea course in Computer Science
upper layers, addresses of transport layer,
establishing a connection, releasing a
connection. Three-ways handshake. The
transport level in Internet: the UPD (User
datagram protocol) and TCP (Transport
control protocol) protocols.
- The application layer - Telnet, File
Transfer Protocol (FTP), Domain Name
Server (DSN), Simple Network Management Protocol (SNMP), electronic mail,
ftp, World Wide Web, multimedia documents.
- Design and analysis of the network performances - Topological design, graph
theory, connectivity analysis and delay
analysis. Delay analysis, definition of flow
and line capacity. Performance analysis
of a computer network.
- New Trends - ISDN and broadband
ISDN. ATM networks.
Exams
The final exam will be organized in two
steps. The first step will consist in the
solution of exercises similar to those
solved during the course, while the second step will consist in an oral discussion
on the main arguments presented during
the course.
References
- A.S. T ANEMBAUM , Computer Networks,
Addison-Wesley, 2003.
Other suggested books:
- J. KUROSE, K. ROSS, Internet e Reti di Calcolatori, seconda edizione, McGraw-Hill,
2003.
- D. COMER, Internetworking con TCP/IP,
Addison-Wesley, pubblicato in Italia da
Pearson Education Italia, 2002.
- M. BALDI, P. NICOLETTI, Internetworking,
McGraw-Hill, 1999.
- R. ADINOLFI, Reti di Computer, seconda
edizione, McGraw-Hill, 1999.
- F. HALSALL, Reti di Calcolatori e Sistemi
Aperti, quarta edizione, Addison Wesley,
1998.
COMPUTER NETWORKS
AND SECURITY
Teacher
Prof. Marino Miculan
Credits
6
Aims
The aim of the course is to study the principal concepts of wireless networks and
of security of networks. In particular, the
student will acquire specific competency
about the operation of wireless LANs, the
main requisites of network security, the
design of adequate security policy, and
about the main protocols for network
security.
Program
1. Wireless LANs. Classification, Spread
Spectrum (Direct Sequence, Frequency
Hopping), Networks IEEE 802.11. The
physical layer and MAC in IEEE 802.11.
Bluetooth: design and application.
2. Security of computer networks. Levels
of security, diagnosis and monitoring of a
network, protection of network connections, authentication, integrity, security,
non-reputation. Principle of minimal
security. Evaluation of the security of a
system. Orange book.
3. Basics of cryptography. Cryptanalysis.
Transposition ciphers, monoalphabetic,
and polyalphabetic ciphers. Product
ciphers. Modern cryptography. Contemporary cryptography. Secret key algorithms: DES, IDEA, 3DES, AES. Public
key algorithms: RSA. Examples. Digital
signatures, key management.
4. Security in network protocols. Security
at physical layer in wireless networks:
WEP, WPA. Security at network level:
IPsec. Security at transport level: SSL,
TLS. Design of a screening router, packet
filtering. Security at the application level:
300
three-year laurea course in Computer Science
the SET framework.
5. Perimetric defense of a network. Theory and design of firewalls: multi-homed
host, bastion host, DMZ. Proxy server.
Example of a firewall. Honeypots, honeynets. Intrusion Detection Systems
(IDS) and real-time IDS. Intrusion Prevention Systems (IPS).
6. Threats externals to a network. Classification of attacks to a network. Ports and
services. Information gathering techniques (foot printing, network enumeration, DNS queries), scanning (ping scanning, port scanning, etc.). DOS attacks.
Attacks based on the prediction of sequent
numbers and hijacking of TCP sessions.
Man-in-the-middle attack. Attack tools
available to an hacker.
7. Network defense. Defense against
information gathering. Defense against
unauthorized logins. Models for the
design of a security plan.
Prerequisites
Computer Networks.
Exams
The examination test includes a written
test and an optional oral test. The written
test contains exercises and questions concerning the course subject.
References
- A.S. TANENBAUM, Computer Networks, 4th
edition, Addison-Wesley.
- W. STALLINGS, Cryptography and Network
Security, McGraw-Hill, 2004.
- W.R. C H E S W I C K , S.M. B E L L O V I N , A.
R UBIN , Firewalls and Network Security,
Pearson-Addison Wesley, 2003.
COMPUTER PROGRAMMING
Teachers
Dott. Claudio Mirolo
Dott. Fabio Alessi
Credits
10
Aims
- Understanding the concepts of algorithm programming language, and program.
- Developing basic problem solving skills,
in particular to apply the functional and
object-oriented paradigms to solve simple
problems.
- Understanding the logical properties
characterizing the correct behavior of a
program.
- Understanding some basic concepts of
data abstraction and object-oriented programming.
Program
Part I - Procedural abstraction (Scheme).
Algorithms for computing numerical and
non-numerical expressions. Procedural
abstraction of expressions. Choice and
truth values. recursive definitions. Evaluation model via substitution and reduction. General recursion and tail recursion. Iterative approach and tail recursion. Program correctness: proofs by
induction and invariants. Let.
Part II - Data Abstraction (Scheme).
Introduction to data abstraction. Different implementations of abstract data
types. Data of variable size: lists. Data
structures from the viewpoints of the
user and of the implementer. Stacks and
queues. Trees and evaluation trees.
Examples.
Part III - Abstraction of state (Scheme
and Java). Concept of state and imperative/sequential paradigm. Vectors. Data
structures and imperative approach.
Matrices. Computational costs of an algorithm. Memorization and dynamic programming. Basic commands and constructs of the Java language. Iterative programs. Invariants and correctness of the
iterative programs; termination. Func-
three-year laurea course in Computer Science
tional semantics of an imperative program. Introduction to object-oriented
programming in Java: classes and objects;
fields, constructors and methods. Concept of class invariant and runtime assertion checking. Examples. Recurrent Concepts: Imperative and recursive approaches; invariants; abstraction levels; data
abstraction; state and state transition;
object-oriented approach.
Prerequisites
Elementary Mathematics.
Exams
Organization of the exams:
- Three (written) tests, scheduled at the
end of the three terms;
- A few (simple) laboratory assignments;
- Oral discussion.
References
- M. H AILPERIN , B. K AISER , K. K NIGHT ,
Concrete Abstractions: an Introduction to
Computer Science Using Scheme,
Brooks/Cole Publishing Company, 1999.
ISBN: 0-534-95211-9.
- J. LEWIS, W. LOFTUS, Java Software Solutions - Foundations of Program Design,
Addison-Wesley, 2002, (Edizione italiana
2001). ISBN: 0-201-78129-8.
DATABASES
Teacher
Prof. Angelo Montanari
Credits
6
Program
Part 1 - Basic concepts
Role and functionalities of a database;
data abstractions; conceptual, logical, and
physical data models; schemas and
instances, logical and physical data inde-
301
pendence; data definition and data
manipulation languages; Database Management Systems (DBMSs); database
administrator and database users; data
dictionary; the structure and modules of a
DBMS.
Part 2 - The Entity/Relationship (ER)
model
Methodologies and models for database
design: the life cycle of an information
system; methodologies for database
design; the basic constructs of the Entity/Relationship (ER) model: entity types
and instances, relation types and
instances, attributes (simple, compound,
single-valued, multiple-valued, derived),
keys (internal and external identifiers, the
notions of weak entity, owner entity, partial key and identifying relation); attribute
domains and the use of NULL; constraints associated with relation (participation constraints and cardinality ratios);
recursive relations and roles; binary relations and relations with arity greater than
two; ER diagrams; documentation of ER
schemas; documentation techniques;
business rules (integrity constraints and
derivation rules); advanced ER constructs: specialization and category. UML
data modeling: class diagrams (class,
association, multiplicity, identifier, generalization).
Part 3 - The relational data model, the
relational algebra and the relational calculus
The relational model: basic notions, the
definition of relation, the definition of
relational model constraint (it may
involve a single relation or more than one
relation), update operations (insertion,
deletion, modification) and possible constraint violations; relational algebra: the
basic operations, queries in relational
algebra, additional operations, algebraic
optimization, the limitations of relational
algebra; the relational calculus: basic
notions, domain relational calculus and
302
duple relational calculus, the relationships between the relational calculi and
the relational algebra.
Part 4 - The SQL language
SQL data definition and data types;
queries in SQL; update statements in
SQL; additional data definition features
(generic integrity constraints, views,
specifying constraints as assertions); SQL
and database security (discretionary
access control based on granting and
revoking privileges); the DBMS MySQL.
Part 5 - Database design
The conceptual design: requirements collection and analysis; general criteria for
data representation; design strategies;
qualities of a conceptual schema; CASE
tools for database design. The logical
design: performance analysis on ER
schemas; restructuring of ER schemas
(redundancy analysis, elimination of specialization hierarchies, partitioning /
merging of entities / relations, the choice
of the primary identifiers); the mapping
of ER schemas into relational schemas.
The theory of the logical design of relational databases: functional dependencies, reasoning about functional dependencies, relation decomposition, lossless
join decompositions, decompositions
that preserve functional dependencies,
normal forms for relation schemas (1NF,
2NF, 3NF e BCNF), lossless join decomposition in BCNF, lossless join decomposition in 3NF that preserve functional
dependencies.
References
Main References:
- P. A TZENI , S. C ERI , S. P ARABOSCHI , R.
TORLONE, Basi di Dati: Modelli e Linguaggi
di Interrogazione, 2nd edition, McGrawHill, 2006.
- R. ELMASTRI, S. NAVATHE, Fundamentals
of Database System, 5th edition, Pearson
International Education / Addison Wesley, 2007.
three-year laurea course in Computer Science
As an alternative:
- R. ELMASTRI, S. NAVATHE, Sistemi di basi
di dati. Fondamenti, quarta edizione,
Pearson Education Italia / Addison Wesley, 2004.
Additional References:
- J.D. ULLMAN, Principles of Databases and
Knowledge-Base Systems, (Volume I),
Computer Science Press, 1988.
- S. ABITEBOUL, R. HULL, V. VIANU, Foundations of Databases, Addison-Wesley,
1995.
- A. ALBANO, G. GHELLI, R. ORSINI, Fondamenti di basi di dati, Zanichelli, 2005.
- C.J. DATE, An Introduction to Databases
Systems, 7 th edition, Addison-Wesley,
2000.
- SILBERSCHATZ, H.F. KORTH, S. SUDARSHAN, Database System Concepts, 4th edition, McGraw-Hill, 2002. - L. WELLING, L.
THOMSON, MySQL Tutorial, Pearson Education Inc., 2004.
DISCRETE MATHEMATICS
Teacher
Dott. Mario Mainardis
Credits
9
Aims
The purpose of the lectures is to introduce the fundamental tools of discrete
mathematics, algebra and linear algebra
with special attention to their applications to computer sciences.
Program
- Part 1: Arithmetic: divisors and multiples, Euclidean algorithm, linear diophantine equations, prime numbers, factorization.
- Part 2: Modular arithmetic: arithmetic
modulo n, linear congruencies, the a-ary
number system, the RSA cryptosystem,
radar detection.
303
three-year laurea course in Computer Science
- Part 3: Monoids and groups: Binary
operations, monoids, invertibility in
monoids, groups, cyclic subgroups,
cosets, normal subgroups and homomorphisms, symmetric groups and permutations.
- Part 4: Elementary graph theory. Graphs,
trees.
- Part 5: Rings and fields: Rings, ideals,
fields, polynomial rings, finite fields,
applications to error correcting codes.
- Part 6: Elements of linear algebra: Vector spaces, linear dependence, bases,
matrices, determinants, linear maps,
eigenvalues and eigenvectors.
References
- A.M. C OHEN , H. C UYPERS , H. S TERK ,
Algebra Interactive!, Springer, 1999.
ISBN: 3-540-65368-6.
- Notes written by the teacher.
ELECTROMAGNETIC FIELDS
AND WAVES
Teacher
Dott. Giovanni Luigi Michelutti
Credits
6
Aims
This course is for students who attended
to the Physics course for Computer Science, and completes the study of classical
Physics. It is also necessary to all Computer Science students who wish to continue with the MS in Computational
Physics. The course treats electromagnetic fields and waves and introduces concepts needed to proceed with the study of
Quantum Physics.
Program
In-depth review of classical electrodynamics. Maxwell’s equations. Waves in
continuous mechanical systems. Electromagnetic waves. Wave optics. Special relativity. Light-matter interaction. Radiation from accelerated charges. Sources of
electromagnetic radiation.
Exams
Written test.
References
Lecture notes.
ELECTRONIC LAB
Teacher
Prof. Lorenzo Santi
Credits
4
Aims
The course gives a basic knowledge of the
principles of modern Electronics. It also
includes a series of lab sessions.
Program
Circuits. Introduction to semiconductor
Physics. Diodes, bipolar transistors and
FET’s. Integrated circuit fabrication. The
TTL logic family. RAM memories,
DRAM’s, etc. ADC and DAC conversion.
Technology of a modern utility (the CDROM reader).
Exams
Practical test.
References
- HOROWITZ, HILL, The Art of Electronics,
Cambridge University Press.
- Lecture notes.
304
three-year laurea course in Computer Science
ELEMENTS OF
MATHEMATICAL LOGIC
Teacher
Prof. Alberto Marcone
Credits
3
Aims
The goal of the course is the introduction
of the basic elements of mathematical
logic, focusing in particular on algorithmic methods.
Program
Propositional calculus: syntax and semantics, satisfiability and logical consequence, transformation into normal
forms, semantic tableaux. Predicate calculus: syntax and semantics, satisfiability
and logical consequence, semantic
tableaux. Translation from natural language into formal language.
Exams
Written test, with optional oral colloquium.
References
Instructor’s notes.
EXPERT SYSTEMS
Teacher
Prof. Carlo Tasso
algorithms, truth maintenance systems,
and conceptual modeling techniques.
Some significant applications are also
illustrated and experimented with some
laboratory activities in the field of Web
information search and filtering.
Program
Introduction to Artificial Intelligence.
Definition of Knowledge-Based System.
Knowledge representation mechanisms
and reasoning algorithms. Semantic networks. Frames. Production rules. Conceptual Graphs. Non-monotonic reasoning systems. ATMS. JTMS. Blackboard
architecture. Conceptual modeling techniques. Heuristic classification and
generic tasks. Web information retrieval.
Exams
Each student will (I) deliver a final seminar on some relevant assigned topic in
the final week of the course and (II) take
an oral test.
References
- Study materials available on
http://twm.dimi.uniud.it/
- G. GUIDA, C. TASSO, Design and Development of Knowledge-Based Systems, J. Wiley,
1994.
- D. FUM, Intelligenza Artificiale, Il Mulino, 1994.
- C. T A S S O , P. O M E R O , La Personalizzazione dei Contenuti Web - e-commerce, iaccess, e-government, Franco Angeli,
Milano, 2002.
Credits
6
Aims
Provide an introduction to basic techniques for the development of knowledge-based systems and expert systems,
and, more specifically, knowledge representation mechanisms and reasoning
FORMAL METHODS OF
COMPUTER SCIENCE
Teacher
Prof. Marina Lenisa
Credits
180
305
three-year laurea course in Computer Science
Aims
The aim of this course is to introduce various formal methods for software and
hardware specification, validation and
verification. Several logical and mathematical techniques for specifying program semantics (operational, denotational) and several program logics will be discussed. Particular attention will be devoted to both parallel and distributed concurrent programs.
FOUNDATIONS OF
COMPUTER SCIENCE 1
Teacher
Prof. Furio Honsell
Credits
6
Aims
We want to make the student aware of the
limitations of effective procedures (algorithms). There exist intrinsic limitations
(as those studied by the theory of computability) and limitations depending on
the resources which can be used during
the computation (as those studied in the
theory of complexity). Students will meet
the concept of computable function, of
formal language, of automaton, of complexity class, and will study the relationships between these notions. After successfully completing the course the student: will know the existence of intrinsically unsolvable problems; will have a
clear idea about the known relations
between the classes of logarithmic space,
deterministic and non deterministic polynomial time, exponential time; will
known the basic notions of formal languages and their relations with automata.
Program
1. Computability. Computation models:
Turing machines. Computable functions
and decidable problems. Enumeration of
computable functions, universal function. Church’s thesis. Existence of nondecidable problems. 2. Complexity. Turing machines with limited resources.
Complexity classes; important classes: P,
NP, EXP, PSPACE. Polynomial reductions and complete problems. 3. Formal
languages. Grammars. Regular languages, regular expressions, finite
automata. Context free languages, derivation trees, pushdown automata.
References
- Lecture notes.
- N.J. CUTLAND, Computability: an Introduction to Recursive Function Theory, Cambridge University Press, Cambridge,
1980.
- J.E. HOPCROFT, J.D. ULLMAN, Introduction to Automata, Languages and Computation, Addison-Wesley, Reading, 1979.
FOUNDATIONS OF
COMPUTER SCIENCE 2
Teacher
Prof. Agostino Dovier
Credits
6
Aims
We will consider with more attention the
technical aspects of the results seen in
Foundations of Computer Science I.
After successfully completing the course
the student will be able to discuss the
decidability (polinomiality) of relevant
problems, using advances reduction techniques, and will know the relevant
notions of formal language theory.
Program
The course is organized in three parts:
306
formal languages, computability and
complexity.
- Formal languages. Summary of main definition and results on regular languages.
Deterministic and non-deterministic
finite state automata and their equivalence. Regular expressions. The pumping
lemma and its applications. Closure and
decidability properties of regular languages. The Myhill-Nerode Theorem and
automata minimization. Context-free
languages. Context Free Grammars and
derivation trees. Ambiguous grammars
and languages. Chomsky and Greibach
normal forms. The pumping lemma and
its applications. Closure and Decidability
properties of context free languages. Linear grammars, type 0 and type 1 grammars and Chomsky hierarchy.
- Computability. Summary of the main
definition and results on primitive functions and Turing machines. Equivalence
theorem between the two formalisms.
Computability and programming languages. The language While: syntax,
semantics, and while-computable functions. Turing completeness of while. The
language For, For-computable functions
and their equivalence with the primitive
recursive functions. Undecidability of the
halting problem without enumeration.
The S-m-n theorem and the specializers.
Kleene recursion theorem, Rice and RiceShapiro theorems and their applications.
Reducibility between sets. Recursive and
complete sets. The second recursion theorem and Myhil Theorem. Simple Sets:
definition, properties and their existence.
- Complexity. Languages and Problems.
Deterministic time complexity classes:
main results. Non-deterministic and
space classes. Main results and relative
relationships. Reductions and Completeness. Cook’s Theorems. NP-completeness of some fundamental problemsusing reductions.
three-year laurea course in Computer Science
Exams
Written and oral examination.
References
- A. DOVIER, R. GIACOBAZZI, Fondamenti
dell’Informatica: Linguaggi Formali, Calcolabilità e Complessità. Available on-line.
- N.J. CUTLAND, Computability: an Introduction to Recursive Function Theory, Cambridge University Press, Cambridge,
1980.
- J.E. HOPCROFT, J.D. ULLMAN, Introduction to Automata, Languages and Computation, Addison-Wesley, Reading, 1979.
- C.H. P APADIMITRIOU , Computational
Complexity, Addison Wesley, 1995.
HUMAN COMPUTER
INTERACTION 1
Teacher
Prof. Luca Chittaro
Credits
6
Aims
The course illustrates principles, design
methodologies and the different implementation choices which allow one to
build software which is usable in a simple, intuitive, productive, and reliable way
by the users for which it is meant. Achieving this goal requires the study of three
different kinds of topics: man (psychological aspects of the user); computer (user
interface development tools); interaction
(analysis, design, and evaluation of
human-machine interfaces). Besides presenting the fundamental concepts of
human-computer interaction, the course
highlights some recent relevant developments of the field, such as 3D Interfaces,
and Groupware systems.
Program
- Introduction: Goals of human-computer
interaction and its relevance to the appli-
307
three-year laurea course in Computer Science
cations of interactive computer systems.
- Psychological Aspects: Cognitive psychology. Sensory channels. Human limitations and expectations in perceptual
processes. Visual perception. Auditory
perception. Haptic perception. Human
memory: sensory, short-term, long-term.
Individual differences. Mental models.
Metaphors. Human error: slip and mistake.
- Devices for Human-Computer Interaction: Text input devices. Positioning and
pointing devices. 3D devices. Devices for
visual, auditory, and haptic output. Interfaces and devices for disabled users.
- Models and Paradigms of Human-Computer Interaction: Characterizing different phases of interaction. Ergonomic
aspects of interaction. Interaction styles:
from command language to 3D interfaces. Window interfaces (WIMP). Menu
and icon design. Interaction paradigms.
- Human-Computer Interaction and the
Software Life-Cycle: Analysis of usability
requirements. Usability principles. Usercentered design. Usability engineering.
Prototyping techniques. Envisioning
design techniques. Design rationale.
- Environment, User, Task Analysis:
Characterizing the context of interaction
with socio-technical models. The
USTM/CUSTOM technique. Task analysis. The HTA technique. Predictive models: GOMS, KLM.
- Formal Methods in Human-Computer
Interaction: State transition network and
other diagrammatic notations. Textual
notations. Dialogue analysis and design
with state transition network.
- Guidelines and Standards for User
Interfaces: Definition. Choosing and
using guidelines. Examples of guidelines:
MITRE, Apple, Microsoft, IBM guidelines for 3D interfaces. The ISO 9241
standard.
- Tools for User Interface Implementation: Windowing System. Programming
techniques. Toolkit. Case study: the Java
toolkit. User Interface Management Systems.
- Usability Evaluation: Goals of evaluation. Recording tools. Observing the user.
Collecting opinions. Interviews. Questionnaires. Experiments. Predictive evaluation. Cognitive walkthrough. Interpretive evaluation.
- Help: Assisting the user. Requirements
for help systems. Main approaches.
Adaptive and adaptable interfaces.
- Computer-Supported Cooperative
Work: Groupware. Computer-mediated
communication. E-mail and textual communication systems. Videoconference.
Virtual collaborative environments.
Workflow systems. Experimental and
organizational aspects.
- Recent Paradigms of Human-Computer
Interaction: Ubiquitous computing. Virtual reality. Types of virtual reality. Multisensory (or multi-modal) interfaces.
Information visualization. Hypertext.
Multimedia and Hypermedia interfaces.
References
- A. DIX, J. FINLAY, G. ABOWD, R. BEALE,
Human Computer Interaction, 3rd edition,
Prentice Hall, 2003.
- J. P REECE , Y. R OGERS , H. S HARP , D.
BENION, S. HOLLAND, T. CAREY, Human
Computer Interaction, Addison Wesley,
1994.
INTRODUCTORY MATHEMATICS
Teacher
Dott. Maurizio Trombetta
Aims
In order to prepare students beginning
the first year of the Degree Course in
Computer Science to succeed in passing
the scheduled Test, a course of introductory mathematics is organized.
308
Program
Basic concepts of Arithmetic, Algebra,
Analytic and Euclidean Geometry,
Trigonometric functions.
Exams
Written test.
References
Lecture notes.
LABORATORY OF ALGORITHMS
AND DATA STRUCTURES
Teacher
Dott. Massimo Franceschet
Credits
4
Aims
The aim of this laboratory is the implementation of some complex algorithms
which exploit advanced data structures
and the experimental evaluation of their
performances. In this way we intend to
provide a concrete support which can give
a deeper understanding of the notions
presented during the course of Algorithms and Data Structures. We assume
good knowledge of an imperative programming language.
Program
- Evaluation of the computation time and
comparison among different complexity
orders. Theoretical evaluation of the complexity for basic algorithms, asymptotic
notation. Time evaluation, relative error,
analysis of experimental results. Limits of
theoretical asymptotic analysis and role of
the multiplicative constants.
- Evaluation of the mean computational
costs. Casual number generators, standard deviation, confidence intervals.
- Code tuning. Techniques to improve
three-year laurea course in Computer Science
programs. Procedure calls and macroexpansion. Experimental evaluation.
- Implementation of algorithms and data
structures presented in the course of
Algorithms and Data Structures. Sorting
algorithms; other algorithms and data
structures (different every hear).
References
- S. M ARTINI , appunti disponibili sulla
pagina web.
- T.H. C ORMEN , C.E. L EISERSON , R.L.
RIVEST, Introduction to Algorithms, MIT
Press, 2nd edition, 2001.
MANAGEMENT INFORMATION
SYSTEMS
Teachers
Prof. Carlo Tasso
Prof. Maurizio Pighin
Credits
6
Aims
The main objective of the course is the
introduction to the problems related with
the computerized Management Information System (MIS) in a complex organization. The concept of MIS is defined, as
well as methods and techniques for analysis, design, implementation and management of MIS. Both the technical and the
organizational points of view are considered. The laboratory course (4 CFU) consists of a case study with the complete
analysis of enterprise information system
Program
Introduction to the concept of MIS: Definition of MIS. Economic relevance of
MISs. Professional competence related to
MISs. MIS life cycle. MIS Architecture:
Modeling a complex organization. Business processes. Value chain. Various
309
three-year laurea course in Computer Science
architectural organizations of MISs.
Application Portfolio. Strategic Information System. Various categories of information systems: transaction processing
systems, management information systems; decision support systems, executive information systems. Knowledge
Management: traditional and innovative
ICT tools for Knowledge Management.
Make, buy and outsourcing. Cost and
Performance: MIS development methodologies. Cost/benefit analysis. Risk analysis. Managing a MIS: Resource organization and decision processes. Acquisition
and Procurement. Project management
and planning. Enterprise Resource Planning: Major data and information flows:
administration and finance, logistics,
production, marketing and sales, procurement. Advanced systems: E-commerce and One-to-One Marketing. Customer Relationship Management (CRM).
Data Warehousing and Data Mining.
Business Intelligence.
Exams
The exams consists in the discussion of
an industrial case-study, followed by an
oral examination. Alternatively there is a
written/oral examination.
References
- G. BRACCHI, C. FRANCALANCI, G. MOTTA,
Sistemi Informativi e aziende in rete,
McGraw-Hill Italia, Milano, 2001.
- M. PIGHIN, A. MARZONA, Sistemi Informativi Aziendali - Struttura e Applicazioni,
Pearson Education Italia, 2005.
Other Textbooks:
- M. DE MARCO, Sistemi Infomativi Aziendali, Franco Angeli Edizioni, Milano,
2000.
- G. BRACCHI, G. MOTTA, Processi Aziendali e Sistemi Informativi, Franco Angeli
Edizioni, Milano, 2000.
- P.F. CAMUSSONE, Il Sistema Informativo
Aziendale, Etas, 2000.
- D. AMOUR, E-Business (R)Evolution, Tecniche Nuove, 2000.
MATHEMATICAL ANALYSIS
Teacher
Prof. Gianluca Gorni
Credits
12
Aims
To teach the basic concepts and techniques of infinitesimal and integral calculus in a way that is concise and suitable
for applications. The theory will be
explained with a fair level of formal rigor
in the statements and in those proofs that
will be explained in detail. The students
will be trained to perform calculations,
above all with pen and paper, but also
with computer, if facilities are available.
One emphasis in the course is to familiarize the students with the intuitive geometrical and dynamical meaning of the
concepts of limit, derivative and integral,
so that they will feel it natural to apply
such tools to problems that are not
already formalized.
Program
Real numbers, functions, limits and continuity, derivatives, integrals, series,
applications.
Exams
There are two ways to get the credits: the
main one is with the 3 ‘compitini’ at the
end of the terms, typically without an oral
exam; the other way is through a single
written and an oral exam in a session
between June and September. The precise rules are available on-line.
References
Textbook
310
three-year laurea course in Computer Science
- G.C. B AROZZI , Primo Corso di Analisi
Matematica, Zanichelli.
MATHEMATICAL LOGIC
MODELS AND ALGORITHMS FOR
RESOURCE MANAGEMENT
Teacher
Prof. Franca Rinaldis
Teacher
Prof. Giovanna D’Agostino
Credits
6
Credits
6
Aims
Purpose of the course is to present some
fundamental classes of problems, models
and techniques used in the management
of transportation and production-distribution systems. To complete the overview
of the methods of Optimization, we also
introduce the class of the approximation
algorithms and some local search techniques.
Program
Completeness e Compactness Theorems for
Predicate Logic
The resolution method for classical
propositional logic.
Compactness Theorem and Completeness Theorem for propositional resolution.
First Order logic, prenex normal form
and Skolemization.
Herbrand Models and Herbrand Theorem. Compactness Theorem.
Unification algorithm.
Completeness Theorem for predicative
resolution.
Undecidability of first order logic.
Expressive power of first order logic
Ehrenfeucht-Fraiss’ games. Logical and
algebraic characterizations.
Turing machine and finite models
Trankhenbrot Theorem on the undecidability of satisfiability over finite models.
Fagin theorem on a logical characterization of NP.
References
- A. NERDODE, R.A SHORE, Logic for Applications, Springer.
- L. LIBKIN, Elements of Finite Model Theory,
Springer.
Program
- Approximation algorithms and local
search techniques (12 hours). Approximation algorithms and Polynomial
approximation schemes. Examples. Local
search techniques: Simulated Annealing
and Tabu Search. Examples.
- Routing (18 hours). Arc routing problems: the Chinese Postman Problem, the
Rural Postman Problem and their variants. Node routing problems: the Traveling Salesman Problem, the Vehicle Routing Problem and their variants. For the
different problems we present both ILP
models and exact and/or heuristic algorithms. - Scheduling (18 hours). Definition, analysis and classification of scheduling problems. One machine models.
Parallel machine models. Open Shop,
Flow Shop and Job Shop scheduling.
Exams
The exam consists of an oral discussion.
References
Lecture notes.
311
three-year laurea course in Computer Science
MODERN PHYSICS
Teacher
Prof. Alessandro De Angelis
Credits
6
Web Page
http://www.fisica.uniud.it/~deangeli/fismod/corsofismod.html
Aims
To illustrate the basics of Quantum
Physics and Relativity. The course is
addressed to students of Computational
Physics, Mathematics, Computer Science
and Engineering.
Prerequisites
Mechanics, electromagnetism and waves.
Calculus for functions of one and many
variables.
Program
The fall of classical physics. The old quantum mechanics. Schroedinger’s equation
and applications. Conduction and semiconductors; applications to electronics.
Basics of quantum computing. Special
relativity. Basics of cosmology and particle physics.
Exams
Students attending the lectures: homework. Students not attending the course:
oral test.
References
- K.S. KRANE, Modern Physics, 2nd edition,
Wiley 1996.
- Lecture notes.
OBJECT ORIENTED PROGRAMMING
Teacher
Dott. Claudio Mirolo
Credits
6
Aims
The main objectives of the course are to
discuss the object-oriented programming
paradigm, as it has evolved from structured programming and abstract data
types, and to develop basic skills to design
object-oriented solutions. The fundamental features of an object-oriented programming language will be presented.
The concepts will be introduced by showing suitable examples.
Program
Concepts and methodologies. Basic concepts: interacting modules, messages and
methods, responsibility, classes and
instances, class hierarchies and inheritance, method overriding, exceptions.
Object-oriented design: identification of
the components and their responsibilities; behavior; interface; concept of state.
Benefits of object-oriented programming: information hiding, reliability,
code reuse, code sharing, polymorphism,
fast prototyping. Inheritance: subclasses,
types and substitutability. Specialization
and other forms of inheritance. Code
inheritance and behavior inheritance.
Dynamic binding. Class inheritance and
composition; dynamic composition.
Inner classes. Clones. Polymorphism
and polymorphic variables. Overloading.
Overriding: substitution and refinement.
Abstract methods. Design patterns: composite; decorator; factory method; flyweight; observer; prototype; proxy; strategy. Model-view-controller paradigm. Java
programming language. Features of the
programming language Java. Classes in
Java: program structure; data fields; constructors; modifiers; instances; inheritance and interfaces. Inner classes and
control frameworks. Event model in Java.
Exception handling. Multiple threads of
312
execution and synchronization. Garbage
collection. More advanced features.
Design of the user interface (GUI). Application Windowing Toolkit (AWT): components and layout managers. Input e
output in Java. Other utility classes: Math,
Random, System, String. Elementary
graphics in Java. Collections: Vector vs.
array; Dictionary. Applet and network
programming. Examples.
Prerequisites
Basic knowledge of Programming and
Mathematics.
Exams
Organization of the exams:
- Two (written) tests, scheduled at the end
of the two terms;
- Oral discussion (optional laboratory
assignment).
References
Textbooks
- T. BUDD, Understanding Object-Oriented
Programming with Java, Addison-Wesley,
2000. ISBN: 0-201-61273-9.
- D. ARNOW, G. WEISS, Introduction to Programming Using Java: an Object-Oriented
Approach, Addison-Wesley, 1998. ISBN:
0-201-31184-4.
Or
- J. LEWIS, W. LOFTUS, Java Software Solutions - Foundations of Program Design,
Addison-Wesley, 2002, (Edizione italiana
2001). ISBN: 0-201-78129-8.
Further Refrences
- B. LISKOV, J. GUTTAG, Program Development in Java, Addison-Wesley, 2000.
- X. JIA, Object Oriented Software Development Using Java, Addison-Wesley, 2002.
- B. ECKEL, Thinking in Java, Prentice Hall,
2000.
- K.A. L AMBERT , M. O SBORNE , A Framework for Program Design and Data Structures, Brooks/Cole, 2000.
three-year laurea course in Computer Science
OPERATING SYSTEMS
Teachers
Dott. Ivan Scagnetto
Prof. Marina Lenisa
Credits
11
Program
1. Introduction:
- the role of the operating system (OS) in
a computer system;
- OS evolution; OS types (batch/interactive, time-sharing/dedicated, real-time,
parallel, distributed, embedded);
- basic notions about the architecture of a
computer system (execution levels of
instructions, interrupt handling, I/O
management);
- the OS as a resource manager: processes, memory, devices, files, user interaction;
- the OS as a virtual machine: the kernel
and the system calls interface;
- structure of the OS (monolithic, layered,
virtual machines, exokernel, client-server
microkernel);
- some examples: traditional Unix, Linux,
Solaris, Mach, Windows NT.
2. Processes and Threads:
- the notion of process: definition and
role, the process descriptor;
- process manipulation: process creation/termination, state diagram of a
process, context-switch, process scheduling;
- lightweight processes (threads): thread
model, user level threads vs. kernel level
threads, hybrid solutions, pop-up threads,
switching from single threading to multithreading;
- kernel role: interrupt and trap handling,
wait and signal operations on wait conditions;
- CPU scheduling: basic notions, scheduling criteria, scheduling algorithms,
313
three-year laurea course in Computer Science
scheduling of multiprocessor systems,
real-time scheduling.
3. Concurrent Programming:
- race conditions and critical sections;
- mutual exclusion;
- synchronization between processes and
shared memories;
- message passing;
- communication and synchronization
primitives: semaphores, mutexes, monitors, message passing;
- classical problems: producer/consumer,
dining philosophers, readers/writers,
sleeping barber;
- deadlock: definition, deadlock models,
detection, prevention.
4. Memory Management:
- memory hierarchies: registers, cache,
main memory, virtual memory, disks;
- address binding, logical and physical
address spaces, relocation;
- allocation techniques: contiguous, paging, segmentation; fragmentation;
- virtual memory: paging on demand,
substitution algorithms, thrashing, the
Working Set model.
5. Input/Output:
- types of I/O devices - I/O hardware principles;
- low level management of I/O - PIO,
DMA, DVMA devices;
- interrupt handling, I/O drivers - blocking, non blocking, asynchronous I/O applications interface;
- disks - disk scheduling algorithms.
6. The File System:
- files, attributes, operations, physical
structure;
- access methods: sequential, direct,
indexed;
- directories and logical structure of a file
system: flat, hierarchical, graph;
- protection; consistency;
- file system implementation: organization, free space allocation and management, backup and restore;
- disk structure: partition handling, swap
area management;
- the Unix case study: UFS, EXT2. Kernel
tables. Virtual File System. Name resolution in inodes;
- disk operations, partitions and file system;
- introduction to journaled file systems.
7. Multiple Processors Systems:
- general notions - strictly/loosely coupled
processors;
- multiprocessors - hardware features,
software. Limitations;
- multicomputers - hardware features low level communication,
- user level communication - RPCs - distributed shared memory;
- distributed systems - net and distributed
services and protocols - client/server
model, protocols - ISO/OSI model,
TCP/IP suite - communication middleware;
- distributed models based on data migration, computation migration, process
migration; distributed coordination;
- remote procedures calls (RPC) - example
of a distributed service: NFS.
8. Introduction to security issues.
OPERATING SYSTEMS LAB
Teacher
Dott. Ivan Scagnetto
Credits
4
Program
1. The UNIX operating system: structure,
user interface, versions (Solaris, Linux).
The UNIX shell:
- role and variants,
- login procedure,
- file system organization,
- online manpages,
- the bash shell: pathname expansion, I/O
redirection, pipes, background jobs, history command, command line editing,
314
three-year laurea course in Computer Science
command completion,
- vi and (X)Emacs,
- the make command. The fundamental
shell commands:
- file management,
- process management,
- memory monitoring,
- filter commands: search, sort and editing. Shell scripts:
- variables,
- parameter passing,
- flow-control structures,
- login scripts.
2. Brief introduction to the C programming language.
3. System programming:
- process management,
- file system manipulation,
- inter-process communication,
- threads and multithreading.
OPERATIONS RESEARCH
Teacher
Prof. Paolo Serafini
Credits
6
Web Page
http://www.dimi.uniud.it/~serafini/ROI
NF0607.html
Aims
Operations Research deals with efficient
management problems via a mathematical and algorithmic approach. The course
aims at giving the student both the basic
tools to design a viable mathematical
model of a real problem and the necessary understanding of the mathematical
and algorithmic properties of the models,
with a special emphasis to linear programming. Several examples will be provided toward this goal. Most models will
be solved by using Excel or other linear
programming packages.
Program
- Introduction to linear programming.
General modeling issues: constraint
identification, soft and hard constraints;
objective identification; objectives and
constraints. Explicit objectives. Pareto
optima. Example of the diet problem:
modeling via linear programming. Sensitivity analysis. Identification of further
objectives. Efficient frontier identification. Integrality constraints. Model
refinement.
- Linear programming properties. Geometric structure. Vertices and basis solutions. Dual problem. Complementarity.
Overview of simplex method. Overview of
branch-and-bound methods for integer
variables.
- Routing models 1. Dynamic programming. Optimality principle. Recursive
equation. Shortest paths (Bellman-Ford,
Dijkstra, Floyd-Warshall).
- Routing models 2. Capacitated shortest
paths: network flow problems. Minimum
cost flows. Max Flow. Minimum cuts.
- Routing models 3. Traveling salesman
problem (cutting plane formulation).
Eulerian circuits. Matching. Minimal
spanning trees (Kruskal and Prim algorithms).
- Allocation models. Assignment. Knapsack. Bin packing. Staffing models. LP
with column generation: cutting stock,
max flow, crew scheduling.
- Scheduling. Infinite resource scheduling: PERT. Finite resource scheduling:
one machine problems, parallel machine
problems, flow-shop, job-shop and openshop. The detailed plan of the lectures is
available at http://www.dimi.uniud.it/
~serafini/ROINF0607.html
Exams
Oral examination. Information on Operations Research and Optimization may be
315
three-year laurea course in Computer Science
found at INFORMS (Institute for Operations Research and Management Science) http://www.informs.org/ or at
CIRO (Centro Interuniversitario in Ricerca Operativa) http://www.disp.uniroma2.it/ciro/index.html.
References
- TIPLER, Introduzione alla Fisica, Zanichelli.
- Lecture notes.
PROBABILITY AND STATISTICS
References
- Lecture notes available on-line.
- P. SERAFINI, Ottimizzazione, Zanichelli,
Bologna, 2000.
- L. S CHRAGE , LINDO: an Optimization
Modeling System, Palo Alto Scientific
Press, 1991.
PHYSICS
Teacher
Prof. Lorenzo Santi
Credits
6
Aims
The course gives a basic knowledge of
Physics. This includes elementary
Mechanics, Thermal Physics and Electromagnetism. Problem solving and operational knowledge are stressed throughout
the course.
Program
Introduction to Physics. Orders of magnitude, units. Kinematics. Forces and
Newton’s laws. Kinetic and potential
energy. Gravitational force and gravitational potential. Kepler’s laws. Scattering. Conservation of momentum. Thermal Physics. Electric and magnetic
forces. Introduction to circuits. Elementary introduction to electromagnetic
waves.
Exams
Written test.
Teacher
Prof. Luigi Pace
Credits
6
Aims
The aim of the course is to introduce the
students to the fundamental concepts of
Probability and Statistics, as a basic tool
in order to manage experimental situation involving uncertainty. These notions
will be presented from an applied viewpoint.
Program
1. Introduction to Probability Preliminaries on combinatorial calculus; uncertainty; probability spaces; axioms of probability; conditional probability; stochastic
independent events; Bayes’ theorem. 2.
One-dimensional random variables Random variables (r.v.); distribution functions; discrete and absolutely continuous
r.v.’s; probability density functions;
expectation; median, mode, variance and
moments; inequalities; moment generating function; the basic probability distributions. 3. Multidimensional random variables Discrete and absolutely continuous
bivariate r.v.’s; joint distribution functions; marginal probability distributions;
stochastic independence; bivariate uniform distribution; bivariate Gaussian distribution; covariance; correlation coefficient; conditional distribution function;
sums of r.v.’s. 4. Convergence and limit
theorems Sequences of r.v.’s; convergence in probability; weak law of large
316
three-year laurea course in Computer Science
numbers; convergence in distribution;
central limit theorem. 5. Introduction to
statistical inference The foundations of
statistical inference; parametric statistical
models; sample statistics; sample mean;
sample variance. 6. Point and interval
estimation Introduction to the theory of
point and interval estimation; estimates
and estimators; properties of estimators;
the method of moments; the method of
maximum likelihood; confidence limits;
confidence limits for the mean and the
variance of a normal population; confidence limits for a proportion; approximate confidence limits. 7. Hypothesis
testing Introduction to the theory of statistical tests; test for the mean and the
variance of a normal population; test for a
proportion; approximate test for the
mean.
Exams
The examination consists in a practical
part, mainly exercises, and in an oral discussion.
References
- G. CICCHITELLI, Probabilità e Statistica,
2nd edition, Maggioli, 1992.
- P. BALDI, Calcolo delle Probabilità e Statistica, McGraw-Hill, 1992.
PROGRAMMING LAB
Teacher
Prof. Fabio Alessi
Dott. Alberto Ciaffaglione
Credits
4
Aims
- Exposition to professional development
tools.
- Introduction to the development tools:
compilers, linkers/loaders, debuggers.
- Knowledge of the basic structures of a
programming language and application
to formalize simple programs.
Program
Syllabus: (48 hours)
- Introductory programming exercises.
- Recursive and iterative programs solving simple problems.
- Programs working on structured
datatypes.
- Program testing and verification.
- Project development as problem analysis and program design.
- Writing a short technical report to document the project development.
QUANTUM COMPUTING
Teacher
Prof. Alessandro De Angelis
Credits
6
Web Page
http://www.fisica.uniud.it/~riccardo/tea
ching/physics/qc2001.html
Aims
The course proposes an introduction on
quantum computing and its basic and
advanced features and applications. In
the first part the mathematical and conceptual foundations of quantum mechanics are discussed and analyzed. In the second part they will be used to show the
quantum computation and complexity
theories, analyzing the innovative contents and underlying the main differences and advantages with respect to the
classical theory. The course will also give
some basic elements on top level research
topics like the quantum information theory or the quantum teleporting theory.
317
three-year laurea course in Computer Science
Program
Mathematical foundations. Hilbert
spaces. Quantum mechanics. Compound
systems. Classical theory of computation
and complexity. Quantum theory of computation. Quantum algorithms. Possible
experimental realizations. An outline on
quantum information theory. Advanced
topics in quantum information theory.
Prerequisites
Modern Physics.
Exams
The final examination will be the discussion of a small thesis on a relevant
research topic.
References
- Lectures notes.
- M. NIELSEN, I. CHUANG, Quantum Computation and Quantum Information, Cambridge University Press, 2000.
SCIENTIFIC COMPUTING
Teacher
Prof. Rossana Vermiglio
Credits
6
Aims
It is an introductory course in the basic
numerical methods with particular
emphasis on accuracy, complexity and
implementation aspects. The students
will learn the fundamental techniques for
the solution of some problems of continuous mathematics, they will understand
the correct use of the methods, they will
appreciate the limitations of finite precision arithmetic and memory and they will
improve their programming experiences.
Finally they will be able to critically analyze the accuracy of the numerical results.
Program
Floating-point arithmetic.; non-linear
equation; remarks on linear algebra:
norms of vectors and matrices, scalar
product; linear equations; approximation
of data and functions; interpolation: polynomial, piecewise polynomial, trigonometric and splines; parametric splines
and Bezier curves; over determined systems and least squares; quadrature and
numerical differentiation; Fourier analysis. The course includes the MATLAB
knowledge and laboratory experiences
where the students can solve some exercises and treat case-studies interesting for
computer science.
Prerequisites
Calculus, linear algebra, basic computer
programming experience.
Exams
Written and oral examinations.
References
- Teacher’s notes available on-line.
- A. QUARTERONI, F. SALERI, Introduzione
al calcolo scientifico, Springer Verlag,
2002.
- C. M OLER , Numerical Computing with
MATLAB, SIAM, 2005.
SOCIAL ASPECTS AND
PROFESSIONAL ETHICS
Teacher
Dott. Antonio Piva
Credits
3
Aims
The main aims of course are: make the
student aware about the social context
and about social and ethics implications
resulting from the innovations in infor-
318
mation technology; make the student
aware in his own profession about the
deontological implications towards customers and users, and getting him
responsible to the users.
Particularly the course provides for the
ICT regulation always considering the
internet innovations.
Program
The subjects will be considered:
- International liberalization of telecommunications and in the Italian disposition
- Privacy and security; notions and development of privacy: from the 1980 OCSE
to the European directives, the Italian
rules about personal data, the net dispositions, the obligations for the Service
Providers, the security management, the
Programmatic Document in Security, the
juridical figures provided.
- The tutelage of the e-mailing secrecy in
the Italian system and the other countries.
- The Intellectual Property, Copyright
and Author rights; from the origin of
Copyright to the Intellectual Property in
the information society; the international
regulation regarding this matter. The
juridical tutelage of software: the Copyright on software and its patent, the
tenure of right and the tutelage of data
banks and multimedia.
- Domain Names in internet and juridical
aspects; grabbing and recording procedures; DN and Trademark, analysis on
juridical protection of some cases and
decision in Italian law court.
- Link utilization on web and some juridical cases.
- Digital Sign and Electronic Identity
Card; the electronic document and its
validity in Italian regulation; Cryptography: its history, evolution and techniques
of tutelage in web; Reserve, integrity,
authentication; the Authority Certifica-
three-year laurea course in Computer Science
tions recognized by CNIPA and electronics certificates; European and Italian regulations regarding electronic sign; comparison between digital and autograph
sign; the real date in electronic documents. Mentions about electronic identity card and the certified e-mailing. Computer science in the Public Administration: the E-government plan and the new
code of digital administration.
- Electronic commerce; the European
directions in matter of it; contracts whit
internet and telematic contracts; the tutelage of customers in internet and regulations about contracts arranged out of
commercial locations; advertising in web:
legal doctrines; banner and spamming in
Italian regulation.
- The informatic criminality and criminal
law in internet; the tutelage of informatic
property, the violation of informatic
domicile, the abusive access and the
hackers, the criminal regulation about it.
- The research of juridical information.
- The quality (facultative). History and
evolution of quality, from ISO9000:1994
to Vision 2000; their application to the
different situations, terminology, system
of management of quality, the principles
of quality, the approach to processes,
audit and inspections, the management
of non conformity, the preventive and
correctives actions, customer satisfaction,
human resources and continue improvement.
SOFTWARE ENGINEERING 1
Teacher
Prof. Carlo Tasso
Credits
6
Aims
The aim of the course is the introduction
319
three-year laurea course in Computer Science
of the basic elements of Software Engineering, i.e. the field of Computer Science devoted to study the methodologies,
techniques, and tools utilized in the
industrial production of software. More
specifically, the course describes several
process models of software development
and the various phases of the life cycle,
with reference to both traditional and
innovative software systems.
Program
The major topics concern: Introduction
to Software Engineering, origins and
motivations and basic definitions; the
concept of quality; life cycle; process
models: waterfall and spiral models; the
role of prototyping; requirement analysis
and specification; techniques for analysis
and modeling: DFD, UML, Petri Nets;
specification techniques; software design
and development; goals of design and
approaches; object oriented and functional design; architectural design, distributed architectures; verification and validation of software: testing and inspection; quality certification and ISO standards; management of software projects.
Exams
Written examination.
References
- I. SOMMERVILLE, Software Engineering, 7th
edition, Addison-Wesley, Harlow, UK,
2004.
Italian edition:
- I. SOMMERVILLE, Ingegneria del software,
settima edizione, Pearson Addison-Wesley, Milano, 2005.
- G. GUIDA, C. TASSO, Design and Development of Knowledge-Based Systems: from Life
Cycle to Development Methodology, John
Wiley & Sons, Chichester, UK, 1994.
- Study materials available on
http://twm.dimi.uniud.it/
SOFTWARE ENGINEERING 2
Teachers
Prof. Maurizio Pighin
Dott. Anna Marzona
Credits
6
Aims
The target of the course is to examine
closely the principal elements of Software
Engineering. We consider the design and
life cycle of a software product studying
the more advanced arguments: the configuration management, the test methodologies, the theoretic and practical metrics, the most famous product and
process quality models, the planning and
control methodologies, the principal
working tools. In the laboratory course (4
CFU) we develop a complete case-study,
following the whole software development process in the life cycle phases
(specifications, design, coding, test,
release, metrics, maintenance) and management phases (planning, cost analysis,
metrics, work organization).
Program
Introduction: The Software Engineering
motivations. The basic definitions. The
economic dimension of the problem. The
development process complexity factors.
Configuration Management: The motivations of Configuration Management. The
CM-Planning and the versioning/variants techniques. Assembly of components and system building. Existing Software Engineering: The motivation of
ESE. The methodologies of re-engineering. The methodologies of reuse. The
development with and for reuse. Verification and Validation: The negative theoretic results. The test strategies. The dynamic test. The test chains. The regression
test. The automatic test and the mutation-
320
al analysis. The static test. Formal test
methodologies. Metrics: The software
metric concept. The target of measure.
The measurement scale. The control and
predictive measure. The data collection.
The internal attributes ant their measure.
The Halstead metric. The Albrecht metric. The McCabe metric and other complexity metrics. The external attributes
and their measure Quality Models: The
quality certification and the principal
model of product and process certification: ISO9000, CMM. Notes on SYNQUEST, SPICE, BOOTSRAP, The ISO
9126 model. Cost Evaluation: The performance/cost analysis and the decision
analysis. The software cost evaluation.
The COCOMO model. Other evaluation
models. Production Process Evaluation
and Planning: The work-group organisation. The planning methodologies. The
Pert Diagram and the Gantt Scheme.
Maintenance: The maintenance: costs,
estimations, metrics. The COCOMO
model. Extreme programming: Operative
methodologies: planning, testing. Developing techniques Tools: The CASE technology: Tools and Environments. The
three-year laurea course in Computer Science
functionality. The tools in the different
phases of the development process.
Exams
The exam consists in the discussion of
the project produced in the laboratory.
Alternatively there is a written/oral examination.
References
- R.S. PRESSMAN, Principi di Ingegneria del
Software, McGrawHill, 4th edition, 2005.
- I. SOMMERVILLE, Software Engineering, 7th
edition, Addison Wesley P.C., 2004.
- N.E. F ENTON , S.L. P FLEEGER , Software
Metrics - A Rigorous and Practical
Approach, 2nd edition, PWS Publishing
Company, 1997.
- A. B INATO , A. F UGGETTA , L. S FARDINI ,
Ingegneria del Software, creatività e metodo,
Pearson-Addison Wesley, 2006.
- C. GHEZZI, M. JAZAYERI, D. MANDRIOLI,
Ingegneria del Software - Fondamenti e
Principi, 2nd edition, Pearson-PrenticeHall, 2004.
- AA. VV., Metriche del software - esperienze
e ricerche, Franco Angeli, 2006.
three-year laurea course in Web and Multimedia Technologies
THREE-YEAR LAUREA
COURSE IN
WEB AND MULTIMEDIA
TECHNOLOGIES
ADVANCED LABORATORY OF
COMMUNICATION TECHNIQUES
Teacher
Prof. Angelo Marzollo
Credits
4
Aims
As a whole, the course has two objectives:
the first and main one aims consists in
providing students with various tools
which are useful for facing in an appropriate way various communication tasks,
not only at University level (e.g. the
preparation of their thesis), but also in
their social and work activities, starting
from the writing of their C.V. and facing
work interviews up to more complex performances such as preparing and writing
reports, participating in work meetings,
preparing communications and papers
for congresses, public speeches, and so
on. The second aim of the course consists
in exposing students to basic notions and
terminology useful for understanding
some current cultural, social, environmental and economical realities and
trends, including the growing importance of mass media and of Internet communication.
Program
A preliminary analysis will be carried out
of the individual communication capabilities of the students, as they may appear
in collective frameworks, such as public
reading and speech, and in interpersonal
frameworks such as preparing and commenting his own C.V., social and work
meetings and similar events.
321
This analysis will point out critical points
and provide useful indications for their
overcoming, also thanks to the input provided by specialized experts.
The role of the language versus other
ways of communication will be outlined,
as well as the most significant differences
between oral and written expressions,
including the role of punctuation and of
deictic expressions.
Some appropriately chosen basic notions
of linguistics, mainly concerning semantics and pragmatics and the importance
of context will be dealt with several examples, and some indications will be provided on the use of appropriate dictionaries
including analogical ones.
Some basic notions of rhetoric will be
mentioned, and of its extended revival in
modern persuasion techniques including
advertising will be reviewed, showing
also various current examples, mainly
taken from TV practises.
Some main characteristics will be pointed out of specialized languages, e.g. in
science, technology and management.
The course will be completed by an
appropriate series of Seminars held by
chosen experts in specific fields related to
the above fields.
The practical, rather than theoretical
characteristics of the course imply that
students who choose this course are
expected to attend most lectures and
Seminars.
Exams
The final examination consists in a written and in a following oral examination,
concerning topics dealt with in the lectures and in the Seminars of the course.
Concerning the additional topics, the
teacher will yearly discuss with each student which texts to choose for intensive
reading and following critical report.
References
- A.M. T E S T A , Farsi Capire, Rizzoli,
Milano, 2000, 406 pages.
322
three-year laurea course in Web and Multimedia Technologies
- P. TABOSSI, Il linguaggio, Il Mulino,
Bologna, 1999, 125 pages.
- T. DE MAURO, Prima lezione sul linguaggio, Laterza, Bari 2002, 110 pages.
- G. LONGO, Il Nuovo Golem, come il computer cambia la nostra cultura, Laterza,
Bari, 1998, 128 pages.
- G. SARTORI, Homo Videns, Laterza, Bari
1999,153 pages.
- G. COSENZA, Semiotica dei nuovi Media,
Laterza, Bari 2004, 139 pages.
ADVANCED LABORATORY ON
SERVER-SIDE TECHNOLOGIES
Teachers
Dott. Vincenzo Della Mea
Dott. Ivan Scagnetto
Credits
4
Program
- Introduction to server side technologies:
web server operations, CGI, scripting.
- Introduction to PHP. The language and
exercises (cookies, MySQL, images).
- Introduction to the Java 2 Enterprise
Edition and to the servlet technology.
- Tomcat (installation, directory layout,
configuration files, practical use), servlet
examples (from the source code writing
activity to the server deployment).
- Advanced notions about servlets: the
destroy method, reading parameters
from the web.xml file, thread-safety,
client tracing by means of cookies and
sessions, writing in the Tomcat log file,
WAR.
- Files (deployment through the Tomcat
Web Manager).
- Introduction to JSP.
- Introduction to JDBC.
- An advanced example with the JSP technology: implementation of the front end
of an e-commerce virtual store.
- Introduction to CMS. Exercises with
Zope and Plone.
- Other server side techniques: templates,
MVC, web services. Exercises using PHP.
- Introduction to the Java 2 Enterprise
Edition and to the servlet technology.
- Tomcat (installation, directory layout,
configuration files, practical use), servlet
examples (from the source code writing
activity to the server deployment).
- Advanced notions about servlets: the
destroy() method, reading parameters
from the web.xml file, thread-safety, user
tracing by means of cookies and sessions,
writing in the Tomcat log file, WAR files
(deployment through the Tomcat Web
Manager).
- Introduction to JSP.
- Introduction to JDBC.
- An advanced example with the JSP technology: implementation of the front end
of an e-commerce virtual store.
ALGORITHMS AND
DATA STRUCTURES
Teacher
Prof. Carla Piazza
Credits
10
Aims
During this course we will introduce the
notions at the basis of the theory of algorithms and data structures. Moreover, we
will present the fundamental techniques
for the analysis of the computational
complexity of programs. One of the main
objectives of this course is the study of
basic problems and techniques for the
design and analysis of algorithms. Having passed this course the student should
be able to algorithmically solve some classical problems, to choose the opportune
323
three-year laurea course in Web and Multimedia Technologies
data structures to get computationally
efficient solutions, and to investigate the
complexity of the proposed algorithms.
Program
1. Introduction and preliminary notions.
Elements of logic and set theory. Threes
and graphs. Discrete mathematics and
Asymptotic analysis. Models for the definition of the computational complexity.
Recursive problems and algorithmic
aspects.
2. Sorting algorithms and order statistics.
Basic sorting algorithms: selection-sort,
insertion-sort, bubble-sort, heap-sort.
Recursive algorithms: quick-sort, mergesort. Computational complexity and
lower bounds. Linear-time algorithms
(outside the comparison-based model):
counting-sort, radix-sort, bucket-sort.
Selection in linear time.
3. Data structures. Elementary data structures: linked lists, stacks and queues.
Algorithms and data structures for
dynamic sets: hash tables, binary search
threes, red-black trees, and B-trees. Algorithms and data structures for disjoint
sets.
4. Graph algorithms. Data structures for
graphs. Breadth-first search and Depthfirst search. Strongly connected components. Topological-sort algorithms, minimum spanning tree (Prim and Kruskal),
single-source shortest paths (Dijkstra,
Bellmann-Ford), all-pairs shortest paths
(Floyd-Warshall, Johnson).
References
- T.H. C ORMEN , C.E. L EISERSON , R.L.
RIVEST, Introduction to Algorithms, 2nd edition, MIT Press, 2001.
Other suggested references
- A.V. AHO, J.E. HOPCROFT, J.D. ULLMAN,
Data Structures and Algorithms, AddisonWesley, 1983.
- A.V. AHO, J.E. HOPCROFT, J.D. ULLMAN,
The Design and Analysis of Computer Algorithms, Addison-Wesley, 1974.
- D.E. KNUTH, Selected Papers in Computer
Science, Cambridge University Press,
1996.
- R.E. TARJAN, Data Structures and Network
Algorithms, SIAM, 1983.
APPLIED STATISTICS
Teacher
Prof. Vidoni Paolo
Credits
6
Aims
The aim of the course is to introduce the
students to the fundamental concepts of
Descriptive and Inferential Statistics, as a
basic tool for data analysis and for managing experimental situation involving
uncertainty. These notions will be presented from an applied viewpoint.
Program
1. Descriptive Statistics: Variables; Frequency distributions; Location and variability indicators.
2. Probability: Basic concepts; Random
variables; Probabilistic models; Random
vectors and convergence concepts.
3. Inference: Point estimation; Confidence intervals; Hypothesis testing;
Hints on linear regression and analysis of
variance.
Exams
The examination consists in a practical
part, mainly exercises, and in an oral discussion.
References
- L. PACE, A. SALVAN, Introduzione alla Statistica, I Statistica Descrittiva, Cedam,
Padova, 1996.
- Lecture notes.
- G. CICCHITELLI, Probabilità e Statistica, 1st
edition, Maggioli Editore, 1984.
324
three-year laurea course in Web and Multimedia Technologies
COGNITIVE MODELING
COMMUNICATION SKILLS
Teacher
Dott. Silvia Gabrielli
Teacher
Prof. Angelo Marzollo
Credits
6
Credits
1
Aims
Three sections of the course: general psychology (introduction to build successive
knowledge); communication; and
research methodology (to be able to perform experiments).
The course aims to approach students to
psychology as science studying humans,
their behaviors and thinking ways, in
order to extend the general knowledge
about some aspects of daily life. Moreover, the course specifically aims to provide information that will be useful in
future activities of students (i.e. visual
perception, emotions’ role, use of the
communication), and to give a scientific
method to perform experiments.
Aims
The course corresponds to one credit, and
it coincides with the first eight lessons of
the Economics and Business Organization course. The course aims at providing
the students with basic communication
operational tools so as to facilitate their
first steps in the professional world.
Exams
Written test.
References
- L. ANOLLI, P. LEGRANZI, Psicologia Generale, Il Mulino, 2001. Chapter 1: paragraphs 1.1 and 1.2 (pag. 9-13). Chapter 2:
complete (pag. 47-75). Chapter 3: paragraphs 1 and 2 (pag. 77-86). Chapter 4:
paragraphs 1 and 2 (pag. 103-133). Chapter
5: complete (pag. 137-166). Chapter 6:
complete (pag. 169-202). Chapter 7: complete (pag. 203-230). Chapter 8: paragraphs 1, 2, 3, 4 (pag. 233-261).
- D.H. MCBURNEY, Metodologia della ricerca in psicologia, Il Mulino, 1986. Chapters: 3, 4, 5, 6, 7, 8, 10.
- R. Cialdini, Le armi della persuasione,
Giunti, 2005.
Program
An analysis of individual communication
abilities both at group and at interpersonal level will first be carried out (public
reading and public speaking, CV preparation and illustration, job interviews and
professional meetings, etc.), thus revealing the main problems to be tackled in
these contexts. Specific communication
experts will also intervene and suggest
possible ways of overcoming the more
common difficulties.
Exams
The examination will consist of a communicational task (written and possibly
also oral) that will be as similar as possible to real situations to be met by the students in their social and professional
lives. The students following the course
in Economics and Business Organization
(the first eight lessons of which are devoted to the topics described above) are
exempt from taking a separate exam in
Effective Communication. Instead, they
will take a single exam (Economics and
Business Organization) that will also
include the course described here (Effective Communication). Therefore, passing
the examination in Economics and Busi-
325
three-year laurea course in Web and Multimedia Technologies
ness Organization will automatically
entail passing the one in Effective Communication, too.
References
Given the shortness of the course and its
mainly operational approach, specific
material will be indicated or distributed to
integrate direct training and note-taking.
Textbooks and manuals in the field are
overabundant, and often very similar to
one another. During the course they will
be rapidly illustrated for those who might
be interested in further individual study.
COMPUTER ARCHITECTURE
Teacher
Prof. Pietro Di Gianantonio
Credits
8
Aims
The course illustrates the structure and
functioning of a computer and its various
hardware parts. The analysis starts from
the smallest computer parts (digital gates
inside chips) and moves upwards until it
reaches the level of a full computer architecture. To better highlight the relations
between the hardware and software level,
the course deals with assembly programming.
Program
- Introduction: historical perspective on
computer architecture, basic concepts,
abstraction levels in computer architecture.
- Logic Circuits: logic gates, Boolean algebra, most frequently used combinational
circuits, memory chips.
- Data Representation: binary representations, conversions, integer and floatingpoint numbers, character representation,
error detection and correction.
- Processor: fetch-decode-execute cycle,
data path, control unit, detailed example
of a simple architecture, pipeline, superscalar processor, branch prediction, Pentium IV, Sparc.
- Input/Output: programmed I/O, Interrupt, DMA, peripheral devices, bus, bus
arbitration, strobe control, PCI, USB,
SCSI.
- Memories: hard disk, RAID, optical
disk, cache memory, virtual memory,
pagination and segmentation, MMU.
- Assembly programming: MIPS architecture. MIPS assembly: assignment,
branch instructions, arithmetic and logic
instructions, subroutines.
Exams
The final exam consists of three parts: a
written exam and oral discussion. During
the course, student are offered the opportunity to take three written exams, each
one dealing only with a part of the course
topics. Students who pass successfully
these three written exams do not need to
take the written part of the final exam.
References
- A.S. TANENBAUM, Structured Computer
Organization, 5th edition, Prentice-Hall,
2006.
COMPUTER NETWORKS
Teacher
Prof. Elio Toppano
Credits
6
Aims
The aim of this course is to introduce
principles and fundamental concepts of
modern computer networks. In particular, the general characteristics of comput-
326
three-year laurea course in Web and Multimedia Technologies
er networks, the main structures, topologies, architectures and protocols will be
presented. Networking issues are also
addressed.
Program
- Introduction to computer networks Scope, applications, historic evolution,
main characteristics and layers, networks
topologies and architectures, network
protocols, error control, flow control,
packets and messages, service primitives,
circuit and packet switching, routing and
internetworking.
- Principal components of a network and
data transmission techniques - Optical
and electrical transmission media, signal
bandwidth, channel bandwidth, crosstalk, attenuation and distortion, analog
and digital signal transmission (PCM,
multiplexing), principal components of a
network (modem, multiplexer, bridge,
router, switch).
- The ISO/OSI model architecture, services and protocols - The physical layer.
The data-link layer. Protocols for flow
(Stop&amp;Wait, sliding window, GoBack-N) and error (CRC codes) control.
HDLC protocol.
- The network level - Routing techniques
(routing by network, address label swapping, source routing), router architecture,
routing tables, static routing algorithms
(fixed directory routing, flooding e selective flooding) and dynamic routing algorithms (distance vector and link state).
The IP protocol, IP addresses, sub-nets
and net mask. ARP, IGP, RIP, OSPF,
BGP protocols. Ipv6 protocol, packet format, optional headers. Network Address
Translation (NAT) protocol.
- The transport level - Services provided to
upper layers, addresses of transport layer,
establishing a connection, releasing a
connection. Three-ways handshake. The
transport level in Internet: the UPD (User
datagram protocol) and TCP (Transport
control protocol) protocols.
- The application layer - Telnet, File
Transfer Protocol (FTP), Domain Name
Server (DSN), Simple Network Management Protocol (SNMP), electronic mail,
ftp, World Wide Web, multimedia documents.
- Design and analysis of the network performances - Topological design, graph
theory, connectivity analysis and delay
analysis. Delay analysis, definition of flow
and line capacity. Performance analysis
of a computer network.
- New Trends - ISDN and broadband
ISDN. ATM networks.
Exams
The final exam will be organized in two
steps. The first step will consist in the
solution of exercises similar to those
solved during the course, while the second step will consist in an oral discussion
on the main arguments presented during
the course.
References
- A.S. T ANEMBAUM , Computer Networks,
Addison-Wesley, 2003.
Other suggested books
- J. KUROSE, K. ROSS, Internet e Reti di Calcolatori, seconda edizione, McGraw-Hill,
2003.
- D. COMER, Internetworking con TCP/IP,
Addison-Wesley, pubblicato in Italia da
Pearson Education Italia, 2002.
- M. BALDI, P. NICOLETTI, Internetworking,
McGraw-Hill, 1999.
- R. ADINOLFI, Reti di Computer, seconda
edizione, McGraw-Hill, 1999.
- F. HALSALL, Reti di Calcolatori e Sistemi
Aperti, quarta edizione, Addison Wesley,
1998.
327
three-year laurea course in Web and Multimedia Technologies
COMPUTER PROGRAMMING
AND LABORATORY
Teachers
Prof. Stefano Mizzaro
Dott. Paolo Coppola
Credits
6+4
Aims
We aim at introducing the basic notions
of computer programming: the concepts
of algorithm, program, and programming language, how to write a program,
how to use the APIs. The programming
language used is Java.
Program
- Structured programming. The basic
building blocks of a Java program: variables, types, expressions, control structures (sequence, selection, iteration),
arrays, methods, recursion.
- Abstract data types and information hiding. How to build larger and more complex programs, while keeping them easy
to modify, extend, understand, etc.: the
Abstract Data Type (ADT) concept and
encapsulation and information hiding
principles.
- Object Oriented (OO) programming
fundamentals. OO programming as an
evolution of ADTs: objects, classes,
instances, message passing, inheritance,
polymorphism (short account). Some
specific aspects of OO programming in
Java: abstract classes, interfaces, packages.
- Java APIs (Application Programming
Interfaces). Software libraries allowing to
write not trivial programs: file management, graphical user interface construction, applets implementation.
- Computability and complexity theories
(short accounts). The concepts of computable function (what a program can
do?) and computational complexity (how
to evaluate the efficiency of a program by
theoretical means?).
Exams
Written exam, term project, and oral
examination.
References
The main textbook is:
- S. MIZZARO, Introduzione alla programmazione con il linguaggio Java, 3rd edition,
Franco Angeli, Milano, 2001. ISBN: 88464-1696-1.
Laboratory exercises will be based on
material freely available on the Web. As
an integration, students can use:
- P. COPPOLA, S. MIZZARO, Laboratorio di
programmazione in Java, Apogeo, Milano,
2004. ISBN: 88-503-2145-7. Other course
material will be specified during the first
lessons (slides, Web pages, other textbooks).
DATABASES
Teacher
Dott. Massimo Franceschet
Credits
6
Program
Part 1 - Basic concepts
Role and functionalities of a database;
data abstractions; conceptual, logical, and
physical data models; schemas and
instances, logical and physical data independence; data definition and data
manipulation languages; Database Management Systems (DBMSs); database
administrator and database users; data
dictionary; the structure and modules of a
DBMS.
Part 2 - The Entity/Relationship (ER)
model
328
three-year laurea course in Web and Multimedia Technologies
Methodologies and models for database
design: the life cycle of an information
system; methodologies for database
design; the basic constructs of the Entity/Relationship (ER) model: entity types
and instances, relation types and
instances, attributes (simple, compound,
single-valued, multiple-valued, derived),
keys (internal and external identifiers, the
notions of weak entity, owner entity, partial key and identifying relation); attribute
domains and the use of NULL; constraints associated with relation (participation constraints and cardinality ratios);
recursive relations and roles; binary relations and relations with arity greater than
two; ER diagrams; documentation of ER
schemas; documentation techniques;
business rules (integrity constraints and
derivation rules); advanced ER constructs: specialization and category. UML
data modeling: class diagrams (class,
association, multiplicity, identifier, generalization).
Part 3 - The relational data model, the
relational algebra and the relational calculus
The relational model: basic notions, the
definition of relation, the definition of
relational model constraint (it may
involve a single relation or more than one
relation), update operations (insertion,
deletion, modification) and possible constraint violations; relational algebra: the
basic operations, queries in relational
algebra, additional operations, algebraic
optimization, the limitations of relational
algebra; the relational calculus: basic
notions, domain relational calculus and
duple relational calculus, the relationships between the relational calculi and
the relational algebra.
Part 4 - The SQL language
SQL data definition and data types;
queries in SQL; update statements in
SQL; additional data definition features
(generic integrity constraints, views,
specifying constraints as assertions); SQL
and database security (discretionary
access control based on granting and
revoking privileges); the DBMS MySQL.
Pari 5 - Database design
The conceptual design: requirements collection and analysis; general criteria for
data representation; design strategies;
qualities of a conceptual schema; CASE
tools for database design. The logical
design: performance analysis on ER
schemas; restructuring of ER schemas
(redundancy analysis, elimination of specialization hierarchies, partitioning /
merging of entities / relations, the choice
of the primary identifiers); the mapping
of ER schemas into relational schemas.
The theory of the logical design of relational databases: functional dependencies, reasoning about functional dependencies, relation decomposition, lossless
join decompositions, decompositions
that preserve functional dependencies,
normal forms for relation schemas (1NF,
2NF, 3NF e BCNF), lossless join decomposition in BCNF, lossless join decomposition in 3NF that preserve functional
dependencies.
References
Main references:
- P. A TZENI , S. C ERI , S. P ARABOSCHI , R.
TORLONE, Basi di Dati: Modelli e Linguaggi
di Interrogazione, seconda edizione,
McGraw-Hill, 2006.
- R. ELMASTRI, S. NAVATHE, Fundamentals
of Database System, 5th edition, Pearson
International Education / Addison Wesley, 2007.
As an alternative:
- R. ELMASTRI, S. NAVATHE, Sistemi di basi
di dati. Fondamenti, quarta edizione,
Pearson Education Italia / Addison Wesley, 2004.
Additional references:
- J.D. ULLMAN, Principles of Databases and
Knowledge-Base Systems, Volume I, Com-
three-year laurea course in Web and Multimedia Technologies
puter Science Press, 1988.
- S. ABITEBOUL, R. HULL, V. VIANU, Foundations of Databases, Addison-Wesley,
1995.
- A. ALBANO, G. GHELLI, R. ORSINI, Fondamenti di basi di dati, Zanichelli, 2005.
- C.J. DATE, An Introduction to Databases
Systems, 7 th edition, Addison-Wesley,
2000.
- SILBERSCHATZ, H.F. KORTH, S. SUDARSHAN, Database System Concepts, 4th edition, McGraw-Hill, 2002.
- L. WELLING, L. THOMSON, MySQL Tutorial, Pearson Education Inc., 2004.
329
References
See: http://www.dimi.uniud.it/~panti/didattica/MD/programma_MD.html
ELECTRONIC COMMERCE
Teacher
Dott. Roberto Pugliese
Credits
8
Aims
The course aims at providing the basic
tools in discrete mathematics, modern
algebra and linear algebra, mostly from
the viewpoint of computer science applications.
Aims
The course analyzes the problems to be
faced, the guidelines, the available tools
and design methodologies in developing
e-commerce services. Topics will be
examined from four different viewpoints:
customer (e.g., purchasing style, trust,
usability problems); seller (e.g., Internet
marketing, merchandising, e-commerce
strategies); service (e.g., current structure
of e-commerce services and future developments); and development (available
tools, guidelines, techniques). The course
will also deal with advanced topics such
as exploiting multimedia communication, 1-to-1 E-commerce, and Mobile
Commerce.
Program
- Basic arithmetic, divisors, Euclidean
algorithm, prime numbers and factorization.
- Modular arithmetic, congruencies, nadic representation of integer numbers,
public-key cryptography.
- Monoids, groups, cyclic groups, homomorphisms and normal subgroups, permutations and symmetric groups.
- Graphs and trees.
- Rings, ideals, fields, polynomial rings,
finite fields.
- Linear algebra, vector spaces, basis,
matrices, determinants, linear mappings,
eigenvalues and eigenvectors.
Program
- Business-to-business (B2B) Applications. Company-centric B2B. From Traditional to Internet-Based EDI. E-Marketplaces and B2B. Extranets. B2B Support
Services.
- Other E-commerce applications. Consumer-to-Consumer (C2C). Dynamic
Pricing, Auction. Service Industries,
Online Publishing, and Knowledge Dissemination. Intrabusiness, e-Government. E-Communities.
- Mobile Commerce. Wireless and mobile
technologies. M-commerce applications.
Mobile marketing, advertising and customer service. Location-based commerce.
DISCRETE MATHEMATICS
Teacher
Prof. Giovanni Panti
Credits
6
330
three-year laurea course in Web and Multimedia Technologies
Current limitations of M-commerce.
- Developing E-commerce services. Infrastructure. Tools. Page design. Web programming. E-Commerce Security. Electronic Payment Systems. Order Fulfillment, Logistics, and Supply Chain Management.
- User Interfaces for E-commerce applications. Guidelines. E-commerce Interface
Design. Recent research trends: user
interfaces for 1-to-1 e-commerce, mobile
commerce, experiential e-commerce.
References
- E. TURBAN, J. LEE, D. KING, M. WARKENTIN,
H.M. C HUNG , Electronic Commerce: a
Managerial Perspective, 2nd edition, Prentice-Hall, 2002.
- G.P. SCHNEIDER, J.T. PERRY, Electronic
Commerce, 2nd edition, Thomson Learning, 2001.
ELEMENTARY MATHEMATICS
Teacher
Prof. Giovanna D’Agostino
Credits
3
Program
- Sets, functions, and relations.
- Natural numbers: induction principle,
divisibility and primes, Euclid’s algorithm.
- Proof Methods: proof by contradiction,
proof by cases, proof by contraposition.
- Equivalences and partitions, arithmetic
modulo n.
- The RSA cryptosystem.
- Cardinality.
- Orders.
- Matrix.
References
We use the same book as in the course of
Discrete Mathematics, see
http://www.dimi.uniud.it/~panti/didattica/MD/programma_MD.html
HUMAN COMPUTER
INTERACTION 1
Teacher
Prof. Luca Chittaro
Credits
6
Aims
The course illustrates principles, design
methodologies and the different implementation choices which allow one to
build software which is usable in a simple, intuitive, productive, and reliable way
by the users for which it is meant. Achieving this goal requires the study of three
different kinds of topics: man (psychological aspects of the user); computer (user
interface development tools); interaction
(analysis, design, and evaluation of
human-machine interfaces). Besides presenting the fundamental concepts of
human-computer interaction, the course
highlights some recent relevant developments of the field, such as 3D Interfaces,
and Groupware systems.
Program
- Introduction: Goals of human-computer
interaction and its relevance to the applications of interactive computer systems.
- Psychological Aspects: Cognitive psychology. Sensory channels. Human limitations and expectations in perceptual
processes. Visual perception. Auditory
perception. Haptic perception. Human
memory: sensory, short-term, long-term.
Individual differences. Mental models.
Metaphors. Human error: slip and mistake.
- Devices for Human-Computer Interac-
three-year laurea course in Web and Multimedia Technologies
tion: Text input devices. Positioning and
pointing devices. 3D devices. Devices for
visual, auditory, and haptic output. Interfaces and devices for disabled users.
- Models and Paradigms of Human-Computer Interaction: Characterizing different phases of interaction. Ergonomic
aspects of interaction. Interaction styles:
from command language to 3D interfaces. Window interfaces (WIMP). Menu
and icon design. Interaction paradigms.
- Human-Computer Interaction and the
Software Life-Cycle: Analysis of usability
requirements. Usability principles. Usercentered design. Usability engineering.
Prototyping techniques. Envisioning
design techniques. Design rationale.
- Environment, User, Task Analysis:
Characterizing the context of interaction
with socio-technical models. The
USTM/CUSTOM technique. Task analysis. The HTA technique. Predictive models: GOMS, KLM.
- Formal Methods in Human-Computer
Interaction: State transition network and
other diagrammatic notations. Textual
notations. Dialogue analysis and design
with state transition network.
- Guidelines and Standards for User
Interfaces: Definition. Choosing and
using guidelines. Examples of guidelines:
MITRE, Apple, Microsoft, IBM guidelines for 3D interfaces. The ISO 9241
standard.
- Tools for User Interface Implementation: Windowing System. Programming
techniques. Toolkit. Case study: the Java
toolkit. User Interface Management Systems.
- Usability Evaluation: Goals of evaluation. Recording tools. Observing the user.
Collecting opinions. Interviews. Questionnaires. Experiments. Predictive evaluation. Cognitive walkthrough. Interpretive evaluation.
- Help: Assisting the user. Requirements
for help systems. Main approaches.
331
Adaptive and adaptable interfaces.
- Computer-Supported Cooperative
Work: Groupware. Computer-mediated
communication. E-mail and textual communication systems. Videoconference.
Virtual collaborative environments.
Workflow systems. Experimental and
organizational aspects.
- Recent Paradigms of Human-Computer
Interaction: Ubiquitous computing. Virtual reality. Types of virtual reality. Multisensory (or multi-modal) interfaces.
Information visualization. Hypertext.
Multimedia and Hypermedia interfaces.
References
- A. DIX, J. FINLAY, G. ABOWD, R. BEALE,
Human Computer Interaction, 3rd edition,
Prentice Hall, 2003.
- J. P REECE , Y. R OGERS , H. S HARP , D.
BENION, S. HOLLAND, T. CAREY, Human
Computer Interaction, Addison Wesley,
1994.
INTRODUCTORY MATHEMATICS
Teacher
Dott. Maurizio Trombetta
Aims
In order to prepare students beginning
the first year of the Degree Course in
Computer Science to succeed in passing
the scheduled Test, a course of introductory mathematics is organized.
Program
Basic concepts of Arithmetic, Algebra,
Analytic and Euclidean Geometry,
Trigonometric functions.
Exams
Written test.
References
Lecture notes.
332
three-year laurea course in Web and Multimedia Technologies
MATHEMATICAL ANALYSIS
Teacher
Prof. Lorenzo Freddi
Matematica per le Scienze Naturali e Applicate, Forum Editrice Universitaria Udinese.
- Lecture notes provided by the teacher.
Credits
12
Aims
The aim of the course is to provide the
basic ideas and techniques of the infinitesimal, differential and integral calculus
in a concise and application-oriented way.
Particular attention will be payed to the
formal correctness of the statements and
of those proofs which will be selected for
a detailed explanation. Students are
trained to make computations mainly by
hand, using paper and pen, but also using
a personal computer when it turns out to
be useful. A special emphasis will be put
on the intuitive geometrical and dynamical meaning of the notions of limit, derivative and integral, in order to make natural for the students to employ such tools in
solving problems even when a precise
mathematical formulation of the problem is not a priori given.
Program
Real numbers, functions, limits and continuity, derivatives, integrals, series,
applications.
Exams
Credits can be earned in two different
ways. The first consists in 2-3 mid term
examinations during the course; the
other consists in some single global
examinations in between June and
December. Detailed instructions will be
communicated by the teacher during the
course and published on the web.
References
Suggested readings:
- P. B AITI , L.F REDDI , Corso integrato di
MULTIMEDIA SYSTEMS
Teacher
Prof. Elio Toppano
Credits
180
Program
Introduction Communication and information processes: the FRISCO framework. Basic elements of semiotics. Multimedia: taxonomies of multimedia objects,
relationships (spatial, temporal, syntactic
and semantic) among media objects.
Ipertexts and ipermedia: the Dexter
model. Uses of ipermedia. Modeling
multimedia presentations: the SMIL language. Multimedia Building blocks Digital Text: character sets and alphabets, text
formats, writing texts for the web. Sound:
MIDI versus digital audio, preparing digital audio sounds, sampling and quantization, compression standards, editing
techniques, file formats, making MIDI
audio, audio 3D, adding sound to multimedia projects. Images: bitmap and vector graphics, 2-D and 3-D drawing and
rendering, understanding light and color,
image file formats and compression techniques, images transformations and
restoring. Animation: principles of animation, making animations for the web.
Virtual reality. Digital video: television
standards, DV, video compression
(MJPEG, and the MPEG.xx family), non
linear editing, video delivery, adding
video to web sites. Media integration and
design methodology Guidelines for
media integration. User centered design:
usability and accessibility. Media develop-
333
three-year laurea course in Web and Multimedia Technologies
ment stages, methods and tools. Distributed Multimedia systems and applications HW and SW infrastructures. Multimedia Operating Systems. Streaming
audio e video. Main streaming architectures: QuickTime, Real Media, Windows
Media. Unicasting and Multicasting.
Videoconference. Quality of service.
Standards for videoconference. Applications for e-learning and web-based
instruction.
types, and to develop basic skills to design
object-oriented solutions. The fundamental features of an object-oriented programming language will be presented.
The concepts will be introduced by showing suitable examples.
References
- B. ECKEL, Thinking in Java, APOGEO,
2003.
- S. M AZZANTI , V. M ILANESE , Programmazione di Applicazioni Grafiche in Java,
APOGEO, 2006.
MULTIMEDIA SYSTEMS LAB
Teachers
Dott. Elio Toppano
Dott. Roberto Ranon
Credits
4
Program
Analysis and design of multimedia
objects and ipermedia for the web. Software tools for media editing and development: SoundForge, Cakewalk, CoolEdit
(sound); Macromedia Fireworks (graphics); Macromedia Flash (animation);
Macromedia Dreamweaver (site development) and SMIL (multimedia modeling
languages).
OBJECT ORIENTED PROGRAMMING
Teacher
Prof. Vitaliano Milanese
Credits
6
Aims
The main objectives of the course are to
discuss the object-oriented programming
paradigm, as it has evolved from structured programming and abstract data
OPERATING SYSTEMS
Teacher
Dott. Giorgio Brajnik
Credits
9
Aims
This course (based on 40 2-hour lectures)
aims at giving students the ability to manage a modern operating system. Beyond
an introductory discussion of basic concepts (computer system resources,
processes and threads, memory management), concurrent programming in Java
is presented and several prototypical
examples are discussed. Then the course
will touch the topics of system installation, management, update; shell programming; configuration, management,
and monitoring of network services;
security management. Students will be
asked to carry out practical projects within the Operating Systems Laboratory.
More details are available on
www.dimi.uniud.it/giorgio/dida/so/so.h
tml
334
three-year laurea course in Web and Multimedia Technologies
OPERATING SYSTEM LAB
Teacher
Dott. Antonio D’Angelo
Credits
4
Web Page
http://www.dimi.uniud.it/~dangelo/Lab
OS/labos.html
Aims
The aim of the Lab is that to provide a student of the related course of Operative
Systems with practical tools to investigate
crucial issues concerned with modern
operating systems. Lectures are primarily
based on examples and exercises to be
solved hands-on in the lab of the school.
Program
1. Unix shell: 1.1 Historical development
of Operating Systems; 1.2 Installing a
Linux distribution; 1.3 Role of shells in
Unix; 1.4 Main commands, stream redirection and predefined variables, scripts;
1.5 Tools for system configuration and
maintenance. 1.6 Computer Network
applications: remote command execution.
2. System programming within Unix: 2.1
Using g++ compiler: simple programs
and code generation; 2.2 A brief introduction to C language; 2.3 Software maintenance: the make command; 2.4 Multithreading, signal handling and semaphores; 2.5 Communicating programs:
introducing sockets; 2.6 Asynchronous
input/output to simulate environment
interaction.
3. Computer Communication: 3.1 Protocols for program communication; 3.2
Examples of application using HTML,
Javascript, CGI and Perl; 3.3 Multithreading; 3.4 Using signals: SIGALRM and
SIPOLL/SIGIO; 3.5 Flow of data commu-
nication via non connected sockets.
4. System Services Maintenance: 4.1
Accessing and controlling system configuration; 4.2 Apache Server; 4.3 Mail Server; 4.4 Iptables, the Unix firewall.
Exams
A number of individual and team exercises to be solved hands-on, based on examples developed during the course and
assigned with specified constraints.
References
- G. GLASS, K. ABLES, UNIX for Programmers and Users, 2nd edition, Prentice Hall,
1999.
- P. CORNES, The Linux A-Z, Prentice Hall,
1997.
- K. HAVILAND, D. GRAY, B. SALAMA, UNIX
System Programming, 2nd edition, Addison Wesley, 1999.
- C. B ROWN , Unix Distributed Programming, Prentice-Hall, 1994.
- A. S ILBERSCHATZ , P. G ALVIN , Sistemi
Operativi, 4th edition, Addison Wesley,
1996.
- H. DEITEL, P. DEITEL, D. CHOFFNES, Sistemi Operativi, 3rd edition, Pearson Education Italia, 2005.
- S. L EFFLER , M. M C K USICK , M. K ARELS ,
J.QUARTERMAN, The Design and Implementation of the 4.3BSD UNIX Operating System, Addison Wesley, 1990.
- R. THOMAS, L. ROGERS, J. YATES, OSBORNE,
Advanced Programmer’s Guide to Unix
System V, McGrawHill, 1986.
- A. BERSON, Client Server Architectures, 2nd
edition, McGraw Hill, 1996.
- A. D’ANGELO, Lectures from the Course,
available via Web.
PHYSICS
Teacher
Dott. Hans Grassmann
Credits
3
three-year laurea course in Web and Multimedia Technologies
Aims
In the future the computer and networks
of computers will increasingly interact
directly with the physics world - not only
with educated operators, as is done today.
In order to participate at this future development, students of TWM will need to
know about physics, which is the science
underlying the physics world. The lecture
therefore tries to give a broad overview
over the various fields of physics, including exercises. In particular, some hours
of the lecture are dedicated to a discussion of problems of information processing from a physics point of view, including practical examples from the world of
industrial application.
SOCIAL ASPECTS AND
PROFESSIONAL ETHICS
Teacher
Dott. Antonio Piva
Credits
3
Aims
The main aims of course are: make the
student aware about the social context
and about social and ethics implications
resulting from the innovations in information technology; make the student
aware in his own profession about the
deontologic implications towards customers and users, and getting him
responsible to the users.
Particularly the course provides for the
ICT regulation always considering the
internet innovations.
Program
These subjects will be considered:
- International liberalization of telecommunications and in the Italian disposition.
335
- Privacy and security; notions and development of privacy: from the 1980 OCSE
to the European directives, the Italian
rules about personal data, the net dispositions, the obligations for the Service
Providers, the security management, the
Programmatic Document in Security, the
juridical figures provided.
- The tutelage of the e-mailing secrecy in
the Italian system and the other countries.
- The Intellectual Property, Copyright and
Author rights; from the origin of Copyright to the Intellectual Property in the
information society; the international
regulation regarding this matter. The
juridical tutelage of software: the Copyright on software and its patent, the
tenure of right and the tutelage of data
banks and multimedia.
- Domain Names in internet and juridical
aspects; grabbing and recording procedures; DN and Trademark, analysis on
juridical protection of some cases and
decision in Italian law court.
- Link utilization on web and some juridical cases.
- Digital Sign and Electronic Identity
Card; the electronic document and its
validity in Italian regulation; Cryptography: its history, evolution and techniques
of tutelage in web; Reserve, integrity,
authentication; the Authority Certifications recognized by CNIPA and electronics certificates; European and Italian regulations regarding electronic
sign; comparison between digital and
autograph sign; the real date
in
electronic documents. Mentions about
electronic identity card and the certified
e-mailing. Computer science in the Public Administration: the E-government
plan and the new code of digital administration.
- Electronic commerce; the European
directions in matter of it; contracts whit
internet and telematic contracts; the tute-
336
three-year laurea course in Web and Multimedia Technologies
lage of customers in internet and regulations about contracts arranged out of
commercial locations; advertising in web:
legal doctrines; banner and spamming in
Italian regulation.
- The informatic criminality and criminal law in internet; the tutelage of informatic property, the violation of informatic domicile, the abusive access and the
hackers, the criminal regulation about it.
- The research of juridical information.
- The quality (facultative). History and
evolution of quality, from ISO9000:1994
to Vision 2000; their application to the
different situations, terminology, system
of management of quality, the principles
of quality, the approach to processes,
audit and inspections, the m a n a g e ment of non conformity, the preventive
and correctives actions, customer satisfaction, human resources and continue
improvement.
SOFTWARE ENGINEERING 1
Teacher
Prof. Carlo Tasso
Credits
6
Aims
The aim of the course is the introduction
of the basic elements of Software Engineering, i.e. the field of Computer Science devoted to study the methodologies,
techniques, and tools utilized in the
industrial production of software. More
specifically, the course describes several
process models of software development
and the various phases of the life cycle,
with reference to both traditional and
innovative software systems.
Program
The major topics concern: Introduction
to Software Engineering, origins and
motivations and basic definitions; the
concept of quality; life cycle; process
models: waterfall and spiral models; the
role of prototyping; requirement analysis
and specification; techniques for analysis
and modeling: DFD, UML, Petri Nets;
specification techniques; software design
and development; goals of design and
approaches; object oriented and functional design; architectural design, distributed architectures; verification and validation of software: testing and inspection; quality certification and ISO standards; management of software projects.
Exams
Written examination.
References
- I. SOMMERVILLE, Software Engineering, 7th
edition, Addison-Wesley, Harlow, UK,
2004.
Italian edition:
- I. SOMMERVILLE, Ingegneria del software,
settima edizione, Pearson Addison-Wesley, Milano, 2005.
- G. GUIDA, C. TASSO, Design and Development of Knowledge-Based Systems: from Life
Cycle to Development Methodology, John
Wiley & Sons, Chichester, UK, 1994.
- Study materials available on
http://twm.dimi.uniud.it/
WEB SITE DESIGN
Teacher
Dott. Giorgio Brajnik
Credits
6
Web Page
www.dimi.uniud.it/giorgio/dida/psw/ps
w.html
Aims
The purpose of the course is to highlight
three-year laurea course in Web and Multimedia Technologies
and discuss basic principles of access and
interaction with information systems. In
the context of web applications the following goals are pursued: (1) comprehend the concepts of information and
interaction architecture, (2) being able to
assess usability and accessibility, (3) to
know the main phases of development
processes, and (4) to get a basic understanding of technologies that support the
web.
Program
- Information processes and information
systems; persuasion.
- Natures of information systems; conversational structure; types of web systems.
- Information architecture.
- Basic concepts of human-computer
interaction; interaction models and theories.
- Accessibility and usability.
- User-centered design: phases, methods,
approaches.
References
- G. BRAJNIK, E. TOPPANO, Creare siti web
multimediali, Pearson Education, Addison-Wesley, 2007.
- R. P OLILLO , Plasmare il web, Apogeo,
2006. Chapters 3 to 10.
- J. T HATCHER ET AL ., Web Accessibility:
Web Standards and Regulatory Compliance, FriendsofEd, 2006. Chapters 4 to
15.
WEB TECHNOLOGY
Teacher
Prof. Vito Roberto
Credits
6
Aims
The course introduces the World Wide
Web, with the related information tech-
337
nologies and social entailments: a general overview accompanied by practical laboratory exercises that anticipates the contents of other courses in the ‘laurea’
degree. The basic concepts of computer
networks are introduced: protocols, formats, technologies with emphasis on the
HyperText Transfer Protocol and the
HTML language. The topic of security in
computer networks in introduced also,
through the basics of cryptography and
authentication techniques. Multimedia
technologies are introduced through the
formats and standards of compression, as
well as audio, video, graphics and animation data representations. Issues in web
interactivity are also accounted for, such
as scripting languages and man-machine
interaction in the design of web pages
and web-based GUI’s. Social aspects of
the web involve: the privacy, intellectual
property on the Net, international and
intercultural implications.
WEB TECHNOLOGIES LAB
Teacher
Prof. Vito Roberto
Credits
4
Aims
The course deals with markup languages:
SGML, HTML, XML. The goals are getting acquainted with such languages,
with browsers and sw tools for authoring
of documents on the web; getting more
details on some of the topics discussed
during the course in WT. The main topics
are: documents on markup languages
that may be found on the net; markup
languages and their evolution from
SGML.; the syntax of HTML; browsers;
authoring tools; tools for automated generation of HTML and web pages; XML
and recent developments.
338
three-year laurea course in Mathematics
THREE-YEAR LAUREA
COURSE IN
MATHEMATICS
ALGEBRA 1
Teacher
Prof. Dikran Dikranjan
Credits
6
Aims
The aim of this course is to develop the
algebraic skills and thinking of the
student. The groups, will be introduced
outlining their connection to other areas
of mathematics, in particular, to
geometry. We intend to develop students
abilities to formalize the concepts and
the structures usually appearing in
mathematics and their capacity to extract
the underlying common algebraic
structure.
Program
Algebraic structures.
Groups and subgroups.
Homorphisms and direct product of
groups.
Abelian groups.
Non-abelian groups: the essential facts.
Exams
The exam has two parts: written and oral.
References
Lecture notes prepared by the lecturer.
ALGEBRA 2
Teacher
Dott. Maria Silvia Lucido
Credits
6
Aims
The aim of this course is to develop the
algebraic skills and thinking of the
student. The rings and fields will be
studied outlining their connection to
other areas of mathematics, in particular,
to geometry. We intend to develop
students abilities to formalize the
concepts and the structures usually
appearing in mathematics and their
capacity to extract the underlying
common algebraic structure.
Program
Rings and ideals.
Homorphisms and direct product of
rings.
Polynomial rigs over a domain.
Fields extensions.
Exams
The exam has two parts: written and oral.
References
Lecture notes prepared by the lecturer.
ALGEBRA 3
Teacher
Dott. Mario Mainardis
Credits
6
Program
Group, ring and K-algebra actions:
Group actions: G-sets, G-subsets,
homomorphisms, quotients, orbits,
equation of the orbits, transitive and
primitive actions, applications: Sylow
theorems, centre of a finite p-group,
Theorem of Schur-Zassenhaus,
simplicity of projective special linear
groups.
Ring actions: R-modules, submodules,
homomorphisms, quotients, cyclic
339
three-year laurea course in Mathematics
modules, irreducible modules, tensor
product of modules, structure theorem of
finitely generated modules over a
principal ideal domain,
applications: Rational canonical form and
Jordan form of matrices.
Algebra actions: A-modules, submodules,
homomorphisms, quotients, cyclic
modules, irreducible modules,
Wedderburn-Artin theorem, sketches of
linear representations of finite groups.
Rational and integral properties. Root
system and their classification.
References
- M. M AINARDIS , Appunti di teoria dei
gruppi, pdf file, downloadable at the
following address:
http://users.dimi.uniud.it/~mario.maina
rdis/classnotes.htm
- N. JACOBSON, Basic Algebra 1.
- I.N. HERSTEIN, Algebra.
- M. ASCHBACHER, Finite Groups.
- J. A L P E R I N , R.B. B E L L , Groups and
Representations.
Aims
This course aims at introducing the basic
notions of Commutative Algebra and
Category Theory.
ALGEBRA 5
Teacher
Prof. Giovanni Panti
Credits
6
Program
Commutative rings and ideals. Modules.
Localization. Primary decomposition.
Categories and functors. Natural
transformations.
Exams
Oral exam.
ALGEBRA 4
Teacher
Dott. Maria Silvia Lucido
Credits
6
Program
The aim of the course is to classify the
semi simple Lie algebras over an
algebraically closed field of characteristic
0.
Program
Definitions, matrix algebras, sl(n, K), u(n,
k), t(n, K). Orthogonal and simplettic
algebras. Nilpotent algebras. Engel
Theorem. Soluble algebras. Lie Theorem.
Killing Form. Semisimple algebras. Weyl
theorem. Decomposition in root spaces.
Irreducible representations of sl(2,K).
References
- A TIYAH , M AC D ONALD , Introduction to
Commutative Algebra, Addison Wesley.
- ZARISKI, SAMUEL, Commutative Algebra,
Graduate Texts in Mathematics n. 28,
Springer.
- M AC L ANE , Categories for the Working
Mathematician, Graduate Texts in
Mathematics n. 5, Springer.
ANALYTICAL MECHANICS 1
Teacher
Dott. Stefano Ansoldi
Credits
6
Aims
Introduction of the basic principles of
340
analytical mechanics as a tool for the
study of classical systems with a finite
number of point masses; basics of
calculus of variations; study and solution
of the central force problem.
Program
Preliminary concepts: coordinate system,
position, displacement, velocity. Basic
concepts in classical mechanics and their
generalization: space, time, simultaneity
Galilean transformations, Galilean law of
composition of velocities, principle of
Special Relativity; law of propagation of
light in vacuo and apparent contradiction
with the principle of Special Relativity;
relativity of simultaneity, time in special
relativity; Lorentz transformations; open
problems in Special Relativity; the
principle of general covariance and noninertial reference systems; inertial and
gravitational mass; Einstein’s lift
‘Gedankenexperiment’: conceptual
foundations of General Relativity.
Variational calculus: introduction;
functional; variation of the independent
variables and their ‘proximity’;
continuous and linear functionals;
variation of a functional; extremum of a
functional and related necessary
condition; integral functionals that
depend from many real functions on the
Reals, Euler equations, ‘extremals’. The
mechanics of a point mass; first and
second Newton’s law, momentum and
angular momentum and energy
conservation. Dynamics of systems of
point-masses: internal and external
forces, third Newton’s law (weak and
strong form), conservative forces;
conservation theorems center of mass
and properties; decomposition of the
motion in the center of mass motion and
in the relative motion; corresponding
decomposition of relevant dynamical
quantities; potential energy in terms of
internal and external potential energies.
three-year laurea course in Mathematics
Harmonic oscillator and its relevance for
the study of small fluctuations around
stable equilibrium points of a generic
potential. Constraints and constrained
systems: constraints classification,
degrees of freedom, generalized
(Lagrangian) coordinates, generalized
velocities; real and virtual displacements;
active forces and forces of constraint;
virtual work of active forces; virtual work;
d’Alembert’s principle; kinetic energy as
a quadratic non-homogeneous form of
the generalized velocities; Euler-Lagrange
equations of the first kind; potential
function; Lagrange function (Lagrangian);
Lagrangian theory: Euler-Lagrange
equations of the second kind; generalized
potential function; Hamilton function
and its physical significance; cyclic
coordinates and conserved quantities;
Hamiltonian conservation theorem;
(extended) configuration space,
(extended) phase space, motion in
configuration and extended configuration
space, phase curve, first integrals of
motions and their representation in the
phase space; description of an arbitrary
system in terms of an autonomous;
applications of variational calculus to
Lagrangian systems; action functional
and Hamilton’s principle; variational
principles as tools to conveniently
formulate the dynamics of constrained
systems; symmetry and invariance for a
Lagrangian system; group structure of the
symmetry transformations; symmetries
and conserved quantities: Noether’s
theorem. Motion in a central conservative
force field: reduction to a one-dimensional
effective problem: qualitative analysis of
the motion; first integrals and reduction
of the problem to quadratures;
determinations of all the potentials for
which all bounded orbits are closed;
Kepler’s problem: solution of the
equations for bounded orbits; Kepler’s
laws and their proofs. Conservative, two
341
three-year laurea course in Mathematics
point-mass systems without external
forces: decomposition of the motion in
the center of mass motion and the relative
motion (reduced mass) and its solution.
Basics of analytical mechanics on
manifolds using differential geometry
concepts: differentiable manifold, tangent
space, tangent bundle, Lagrangian as a
function of the tangent bundle.
Exams
Written and oral.
References
- H. G O L D S T E I N , C. P O O L E , J. S A F K O ,
Classical Mechanics, Addison Wesley.
- V.I. ARNOLD, Mathematical Methods of
Classical Mechanics, New York, NY,
Springer-Verlag.
- L.E. ELSGOLTS, Differential Equations and
the Calculus of Variations, University
Press of the Pacific.
ANALYTICAL MECHANICS 2
Teacher
Prof. Lorenzo Freddi
Credits
6
Program
Geometry of masses. Kinematics of rigid
body motion. Dynamical quantities of
systems. Mechanics of discrete systems.
Statics and dynamics of systems.
Analytical mechanics.
References
Suggested readings will be communicated
to the students at the beginning of the
course.
ARITHMETIC
Teacher
Prof. Pietro Corvaja
Credits
6
Aims
The aim of the course is to give the students
the necessary tools to attend the degree
course in Mathematics. The notions of set,
map, relation and quotient set will be
introduced. The set of natural, integer,
rational, real and complex numbers will be
introduced, with emphasis on the
arithmetic of the integers. The first notions
of combinatorial analysis and the properties
of permutations will be presented.
Program
- Sets and operations with sets.
- First notions of combinatorial analysis
and permutations.
- The natural numbers: the induction.
- The integers numbers and their
arithmetic: division algorithm, greatest
common divisor, prime numbers, main
theorem of arithmetic, rational numbers.
- The complex numbers.
- The polynomials: the euclidean division
algorithm.
Exams
The exam has two parts: written and oral.
References
- B. S C I M E M I , Algebretta, Decibel,
Zanichelli.
- Lecture notes prepared by the lecturer.
342
three-year laurea course in Mathematics
COMMUNICATION SKILLS
Teacher
Prof. Angelo Marzollo
Credits
1
Aims
The course corresponds to one credit, and
it coincides with the first eight lessons of
the Economics and Business
Organization course. The course aims at
providing the students with basic
communication operational tools so as to
facilitate their first steps in the
professional world.
Program
An analysis of individual communication
abilities both at group and at interpersonal
level will first be carried out (public
reading and public speaking, CV
preparation and illustration, job
interviews and professional meetings,
etc.), thus revealing the main problems to
be tackled in these contexts. Specific
communication experts will also
intervene and suggest possible ways of
overcoming the more common
difficulties.
Exams
The examination will consist of a
communicational task (written and
possibly also oral) that will be as similar
as possible to real situations to be met by
the students in their social and
professional lives. The students following
the course in Economics and Business
Organization (the first eight lessons of
which are devoted to the topics described
above) are exempt from taking a separate
exam in Effective Communication.
Instead, they will take a single exam
(Economics and Business Organization)
that will also include the course described
here (Effective Communication).
Therefore, passing the examination in
Economics and Business Organization
will automatically entail passing the one
in Effective Communication, too.
References
Given the shortness of the course and its
mainly operational approach, specific
material will be indicated or distributed to
integrate direct training and note-taking.
Textbooks and manuals in the field are
overabundant, and often very similar to
one another. During the course they will
be rapidly illustrated for those who might
be interested in further individual study.
COMPLEMENTARY
MATHEMATICS 1
Teacher
Prof. Alberto Marcone
Credits
6
Aims
The course will be held in a computer lab.
Its main goal is to acquaint students with
some of the software products that are
widely used in teaching mathematics in
primary and secondary schools.
Program
The first part of the course is devoted to a
dynamic geometry software, such as
Cabri.
The second part of the course is devoted
to computer algebra system (such as
Maple, Mathematics, Derive): probably
we will be using the freeware Maxima.
Exams
Final exam using software in the lab.
three-year laurea course in Mathematics
COMPLEMENTARY
MATHEMATICS 2
(on hold during 2007/08 A.Y.)
Credits
6
Aims
We aim at giving the students who are
planning a career in teaching a modern
and advanced viewpoint on some topics
which lie behind the mathematics taught
in high school. Prospective teachers
should have a sound theoretical
background on the matters they will
teach.
Program
Classical geometry will be dealt with from
a modern viewpoint, using a rigorous
approach to axiomatics of plane geometry.
Different geometric models will be
introduced to discuss axioms as they are
introduced. We will eventually deal with
neutral (or absolute) geometry and focus
on the Cartesian and Poincaré planes,
studying euclidean and hyperbolic
geometry.
Exams
Oral colloquium.
References
- R.S. MILLMAN, G.D. PARKER, Geometry. A
Metric Approach with Models, Springer,
1991.
COMPUTER SCIENCE 1
Teacher
Prof. Agostino Dovier
Credits
6
Aims
The course is aimed to provide the basic
343
computer science notions and to help the
student to increase his sensitivity with
respect to the computational aspects of
mathematics and, more generally, of
science.
Program
- A short history of Computer.
- Computer Programming. Algorithms.
Existence of non computable functions.
Flow Charts and the Bohm-Jacopini
Theorem. Overview on Programming
Languages;
compilation
and
interpretation. Programming with C.
Reserved Words, Identifiers, Variables,
Primitive Types, Constants, and Literals.
Operators, Expressions, and their types.
Assignment. Sequence, Block, if-(then)else, while and for instructions. Arrays
and Matrixes. Functions: definitions and
use. Formal and actual parameters. ‘By
value’ and ‘By reference’ parameter
passing. Local and Global variables.
Recursive definitions.
- Laboratory: Writing, Compiling and
Executing C programs, such as: Euclide’s
algorithm, the primality test, printing of
2D figures, computing max and min of
array’s elements, and the recursive
definitions of factorial, Euclide’s
algorithm, Hanoy tower problem,
Fibonacci sequence, and arithmetic
algorithms on ‘long’ integers numbers.
MATLAB: main instructions, matrix
computations, graphics, and programming.
- Complexity. Main Concepts.
Comparison of the main complexity
classes and effects of the hardware
evolution on them. The ‘O’ notation.
Computing the complexity of C programs
also in presence of recursion. Linear and
binary search of elements in an array.
Array’s ordering: bubble and merge sort.
- Information Representation. Integer
and ‘real’ numbers, characters, images
and hints on data compression.
- Computer architecture. Hierarchy of
344
three-year laurea course in Mathematics
abstract machines, Von Neumann and
Bus Architectures. CPU, Data and address
bus, main memory, secondary and Cache
memory.
Exams
Written and oral examination.
References
- J.G. B ROOKSHEAR , Informatica. Una
panoramica generale, Addison-Wesley/
Pearson.
- Lecture Notes available on-line.
COMPUTER SCIENCE 2
Teacher
Prof. Carla Piazza
Credits
6
Aims
This course aims at systematically
deepening the arguments studied in the
course Computer Science I. In particular,
we will discuss the study, analysis and
design of algorithms, present some
advanced data structures and propose
techniques for the evaluation of the
time/space computational complexity.
We will also introduce some basic
elements of computability theory and of
complexity theory. Part of the course will
be held in laboratory where the students
should implement some algorithms
using an imperative programming
language.
Program
- Basic notions of Computability theory.
Intuitive notion of algorithm. Turing
machines. Church’s thesis. Universal
Turing machines. Halting problem.
Computability and Decidability.
Unlimited Register Machine.
- The notion of complexity. Space and
time complexity. Uniform model and
Logarithmic model. Extended Church’s
thesis. Asymptotic complexity. Recurrences.
Complexity classes.
- Elements of Algorithms and Data
Structures. Data structures: arrays,
records, linked lists, stacks, queues,
threes, graphs. Algorithms: Heap-Sort,
Matrix Multiplication, String Matching,
graph algorithms.
References
- T.H. C ORMEN , C.E. L EISERSON , R.L.
R IVEST , Introduction to Algorithms, 2 nd
edition, MIT Press, 2001.
- J.E. HOPCROFT, J.D. ULLMAN, Introduction
to Automata Theory, Languages and
Computation, Addison-Wesley, 1979.
- N. CUTLAND, Computability, Cambridge
University Press.
COMPUTER TOOLS FOR
MATHEMATICS
Teacher
Prof. Gianluca Gorni
Credits
1
Aims
Introducing the students to the use of
LaTeX, the free, standard tool for writing
mathematical texts.
Program
Motivation and history of TeX; basic
syntax; large-scale structure of a LaTeX
document; formatting text; formatting
math formulas.
Exams
Making a course project, which is a couple
of pages written with LaTeX, containing
titles, sectioning, text and formulas.
345
three-year laurea course in Mathematics
References
- Course presentation notes, and other
materials available on the internet.
GEOMETRY 1
Teacher
Prof. Pietro Corvaja
FOUNDATIONS OF MATHEMATICS 1
(on hold during 2007/08 A.Y.)
Credits
6
Credits
6
Aims
Introduction to the fundamental concepts
of linear algebra, and the corresponding
main theorems. Use of the language of
linear algebra for geometric descriptions:
affine and euclidean geometry. It is
expected that at the end of the course the
students be able not only to do
computational exercises but to provide
(simple) formal proofs in an autonomous
way.
Program
The foundational crisis and Hilbert’s
program. The set theoretic foundation of
mathematics. Mathematics without
infinity and Godel’s incompleteness
theorems First order Peano’s Arithmetic
(PA). Transfinite Arithmetic and the
consistency of PA. Mathematics of the
infinity and the independence of the
Axiom of Choice and the Continuum
Hypothesis.
References
- Notes from the course.
- S. FEFERMAN ET AL. (eds.), Kurt Godel Collected Works, Vol. I and II, Oxford
University Press, 1986-1990.
- M. SZABO, The Collected Papers of Gerhard
Gentzen, North Holland, 1969.
- R. S MULLIAN , Godels’s Incompleteness
Theorems, Oxford Logic Guides.
- F. ARZARELLO, Matematica dell’Infinito,
Vol. I e II, CLU, Torino, 1980.
- K. KUNEN, Set Theory: an Introduction to
Independence Results, North Holland,
1981.
- G. L O L L I , Dagli insiemi ai numeri,
Boringhieri, 1994.
Program
Linear Algebra Vector space. Linear map.
Subspace of a vector space; kernel, image
of a linear map. Vector and matrix
notation, matrix product. Matrix notation
for linear systems, Gauss’ method. Row
and column operation, reduction in step
form. Basis, dimension, rank. Theorem
of Rouché Capelli. Trace, determinant.
Dual vector space. Operators: eigenvalues,
eigenvectors, diagonalizability. Bilinear
forms and quadratic forms. Theorem of
Sylvester. Symmetric operators.
Geometry Affine space, affine maps.
Affine subspaces. Fundamental theorem
of affine geometry. Distance. Euclidean
space, isometries. Planar and space
geometry. If time allows: projective
geometry, projective transformations,
cross-ratio.
Exams
Written and oral. It will be possible to
replace the final written test by some
written tests during the course.
References
- E. SERNESI, Geometria 1, Boringhieri.
346
three-year laurea course in Mathematics
GEOMETRY 2
GEOMETRY 3
Teacher
Prof. Pietro Corvaja
Teacher
Prof. Paolo Cragnolini
Credits
6
Credits
6
Aims
Introduction to the fundamental concepts
of linear algebra, and the corresponding
main theorems. Use of the language of
linear algebra for geometric descriptions:
affine and euclidean geometry. It is
expected that at the end of the course the
students be able not only to do
computational exercises but to provide
(simple) formal proofs in an autonomous
way.
Aims
We will complete the study of linear
algebra, developing its geometrical
interpretations. In particular we introduce
the projective space, as natural
completition of affine space, and some
hypersurfaces. The student is requested
to applicate the notions learned in the
earlier courses and establish connections
with those of algebra and analysis.
Program
Linear Algebra Vector space. Linear map.
Subspace of a vector space; kernel, image
of a linear map. Vector and matrix
notation, matrix product. Matrix notation
for linear systems, Gauss’ method. Row
and column operation, reduction in step
form. Basis, dimension, rank. Theorem
of Rouché Capelli. Trace, determinant.
Dual vector space. Operators: eigenvalues,
eigenvectors, diagonalizability. Bilinear
forms and quadratic forms. Theorem of
Sylvester. Symmetric operators.
Geometry Affine space, affine maps.
Affine subspaces. Fundamental theorem
of affine geometry. Distance. Euclidean
space, isometries. Planar and space
geometry. If time allows: projective
geometry, projective transformations,
cross-ratio.
Exams
Written and oral. It will be possible to
replace the final written test by some
written tests during the course.
References
- E. SERNESI, Geometria 1, Boringhieri.
Program
Projective spaces, linear subspaces,
projective transformations, cross-ratio.
Quadrics, Sylvester’s theorem, projective
and affine classification.
Exams
Written and oral.
References
Main text:
- C. K O S N I O W S K I , Introduzione alla
topologia algebrica, Zanichelli.
Other texts:
- K. JANICH, Topologia, Zanichelli.
- I. SINGER, S. THORPE, Lezioni di topologia
elementare, Bollati Boringhieri.
GEOMETRY 4
Teacher
Prof. Paolo Cragnolini
Credits
6
Aims
We introduce general topology as one of
347
three-year laurea course in Mathematics
the fundamental languages of modern
geometry. After basic definitions and
theorems, some notions of algebraic
topology will be treated. The aim is to get
the student familiar with the main
notions as well as to develop its geometric
intuition.
Program
Topological spaces, continuous functions,
subspaces, finite products, quotients,
compactness, connectedness. The
fundamental group. Topology of some
projective and affine hypersurfaces.
Exams
Written and oral examination.
References
- E. SERNESI, Geometria 1, Boringhieri.
GEOMETRY 5
Teacher
Prof. Francesco Zucconi
Credits
6
Aims
Definition of differentiable manifold and
map. Geometric application of
multivariable calculus. Manifolds as
models for mathematics problems.
Program
Differentiable manifolds and maps;
tangent spaces and differentials. Structure
theorems for immersions and submersions.
Transversality. Differentiable homotopy.
Sard’s theorem and applications. Manifolds
with boundary. Abstract manifolds.
Other topics (such as Riemannian
geometry, differential forms and De
Rham cohomology) will be treated
depending on available time and students’
interests.
Exams
Written and oral.
References
Suggested books:
- V. GUILLEMIN, A. POLLACK, Differential
Topology.
Other text:
- J. MILNOR, Topology from the Differentiable
Viewpoint.
GEOMETRY 6
Teacher
Prof. Francesco Zucconi
Credits
6
Aims
Introduction to complex analysis in one
variable, with some geometric
applications.
Program
Local analysis of holomorphic functions.
Cauchy formula, analyticity of
holomorphic functions. Sequences,
series and infinite products of
holomorphic functions. Riemann
surfaces, complex tori, elliptic functions
and the j modular function. Analytic
theory of projective cubics.
Exams
Oral exam after homeworks.
References
- WHITTAKER, WATSON, Modern Analysis,
Cambridge University Press.
- H. C A R T A N , Théorie élémentaire des
fonctions analytiques d’une ou plusieurs
variables complexes, Hermann.
348
INTRODUCTORY MATHEMATICS
three-year laurea course in Mathematics
MATHEMATICAL ANALYSIS 1
Teacher
Prof. Paolo Cragnolini
Teacher
Dott. Paolo Baiti
Aims
The aim of the course is that of revisiting
some basic concepts in mathematics
which are useful for all the scientific
courses of the first year.
Credits
6
Program
- Elements of logic and set theory; natural
numbers, integers, rational and real
numbers; powers and polynomials;
algebraic equations and inequalities of
the first and the second degree in one
variable; some linear systems.
- Equations and inequalities with radicals.
- Some elementary functions and their
graphs.
- Exponentials and logarithms.
- Elements of trigonometric functions
and their properties. Use of trigonometric
functions in some geometric problems. Elements of analytic geometry: Cartesian
coordinates; equations of the line,
circumference, parabola, hyperbola and
ellipse.
- Some formulas for surfaces and
volumes.
Exams
There is not a formal examination.
Exercises will be given to the students for
their free self-evaluation.
References
Suggested texts:
- E. ACERBI, G. BUTTAZZO, Matematica preuniversitaria di base, Pitagora Ed.
- M. TROMBETTA, Precorso di matematica,
Forum Editrice Universitaria, Udine.
Aims
The course is aimed to introduce the
students to Mathematical Analysis
providing the basic concepts and
applications.
Program
Preliminaries. Relations and functions.
Elements of topology. Limits of
sequences. Limits of functions.
Continuous functions.
Exams
Written and oral examination.
References
- ACERBI, BUTTAZZO, Primo corso di Analisi
Matematica, Pitagora.
- C. C I T R I N I , Analisi Matematica 1,
Boringhieri.
- Lecture Notes available on-line.
MATHEMATICAL ANALYSIS 2
Teacher
Prof. Carlo Cecchini
Credits
6
Aims
The aim of the course is to introduce our
students to the methods of Mathematical
Analysis by approaching the first ideas of
the subject and giving the first
applications.
Program
- Preliminaries.
349
three-year laurea course in Mathematics
- Relations and functions.
- Some topology.
- Limits of sequences. Numerical series.
- Limits of functions and continuity.
Exams
Written and oral.
References
- C. C I T R I N I , Analisi Matematica 1,
Boringhieri.
- E. G IUSTI , Analisi Matematica 1 e 2,
Boringhieri.
- Lecture notes.
MATHEMATICAL ANALYSIS 3
Teacher
Dott. Maurizio Trombetta
Credits
6
Program
- Remarks about some main topological
properties in finite dimensional spaces.
- Differential calculus for (real valued and
vector valued) functions of several
variables.
- Complete metric spaces and the
contraction mapping principle.
- The implicit function theorem, the local
inversion theorem and their applications.
- Extremum problems: free and
constrained.
- Vector fields and conservative fields.
- Arc length and integration along paths.
- Some selected topics in the study of the
functions of complex variable.
MATHEMATICAL ANALYSIS 4
Teacher
Prof. Fabio Zanolin
Credits
6
Aims
A first part of the course gives the basic
notions of measure theory and integration
in the sense of Lebesgue. The second part
constitutes a first introduction to the
study of differential equations.
Program
Measure and integral in the sense of
Lebesgue. Monotone convergence and
dominated convergence theorems.
Derivatives of parameter depending
integrals. Fubini’s theorems and integral
calculus. Integration by substitution.
Surface integrals. Ordinary differential
equations. First order equations and the
Cauchy problem. Non linear separable
equations. Existence and uniqueness of
the solution to the Cauchy problem.
Systems of linear differential equations.
Differential equations with constant
coefficients. Some examples.
Exams
Written and oral.
References
- E. G I U S T I , Analisi Matematica 2,
Boringhieri.
- Lectures notes.
MATHEMATICAL ANALYSIS 5
Teacher
Prof. Gianluca Gorni
Credits
6
Aims
Completing the basic instruction in
Mathematical Analysis in the field of
differential equations and differential
forms.
350
three-year laurea course in Mathematics
Program
Nonlinear differential equations:
maximal solutions, existence and
uniqueness in the large, exiting compact
sets, asymptotic criterion, first integrals.
The Henstock-Kurzweil integral.
Parametric curves. Rectifiable curves.
The integral formula for the length of a
curve. Differential forms: integration
along curves, closed forms, exact and
locally exact forms, homotopy.
Exams
A written exam on exercises, an oral exam
on theory only.
References
- G. DE MARCO, Analisi Due.
MATHEMATICAL ANALYSIS 6
Teacher
Prof. Gianluca Gorni
Credits
6
Aims
Introduction to Functional Analysis:
definition and study of the main normed
vector spaces of integrable function, and
of Hilbert spaces, with applications to
Fourier series.
Program
Abstract integration, L^p spaces, Hilbert
spaces, Fourier series.
Exams
A written exam on exercises, an oral exam
on theory only.
References
W. RUDIN, Real and Complex Analysis.
MATHEMATICAL LANGUAGE
Teacher
Prof. Franco Parlamento
Credits
2
Program
Introduction to the mathematical
language: the mathematical language
differs from other ‘professional’
languages for a large use of symbolic
formalism and for a continuous and
necessary use of some logic paradigms.
The aim of these lectures is to make the
student explicitly aware of the various
aspects of the mathematical language.
MATHEMATICAL LOGIC 1
Teacher
Prof. Franco Parlamento
Credits
6
Aims
Purpose of the course is the development
of a good skill in verifying whether a
possible relation of logical consequence
holds or not, as well as the placement of
such a competence in within a
mathematically precise and particularly
rigorous theoretical frame.
Program
1. logical operators and deduction rules 2.
Intuitionistic, minimal and classical logic
3. First order languages 4. Systems of
natural deduction 5. Completeness and
decidability of the classical propositional
calculus 6. Sequent calculus 7. Hilbert’s
style systems 8. Semantic tableaux and
completeness of classical logic 9.
Compactness and theorem of
Lowenheim-Skolem.
351
three-year laurea course in Mathematics
Exams
Written and oral.
References
- Notes of the teacher.
MATHEMATICAL PHYSICS
Teacher
Dr. Stefano Ansoldi
Credits
6
MATHEMATICAL LOGIC 2
Teacher
Prof. Franco Parlamento
Credits
6
Aims
To supplement the basic knowledge of
mathematical logic and to develop a good
acquaintance with the elementary parts
of axiomatic set theory and computability
theory.
Program
A1. Hilbert’s type systems.
A2. Logic with identity.
A3 The method of classical evaluations.
A4. Herbrand and Skolem transforms
and resolution.
A5. Extensions by definitions and
syntactic interpretations.
A6. Set theoretic semantics.
A7. Relations among set theoretic
interpretations.
B1. Axioms of ZF.
B2. Ordinals and natural numbers.
B3. Induction and recursion.
B4. Well founded sets.
B5. Cardinals.
B6. Axiom of Choice.
C1 Primitive recursive and partial
recursive functions.
C2 Unlimited Registers Machine.
C3 Coding programs and computations.
C4. Klenee’s normal form theorem.
C5. Undecidable problems.
C6. Undecidability of Horn logic.
Aims
Introduction to the theory of Relativity
(both Special and General) using the
techniques and methods of Differential
Geometry. A short, very basic,
introduction about classical Field
Theories in Physics will also be given.
Program
Basics concepts in field theory: from discrete
to continuous systems; the concept of
field, Lagrangian, Hamiltonian and
momentum density; basics of Lagrangian
and Hamiltonian formulation of a field
theory; basics of variational calculus in
many dimensions.
Complements of linear algebra: tensor
product of vector spaces, the concepts of
tensor and of tensor components,
contractions of tensors; pseudo-Euclidean
scalar product/metric, signature of
metrics, Lorentzian metrics, classification
of time-like, space-like and null vectors.
Differential geometry: complements (basic
definitions in topology, vector bundles
and sections, partition of unity, curves on
manifolds, tangent vectors, Lie brackets
and properties of Lie brackets); tensors
and tensor fields on manifold; connection
and covariant derivative; curvature;
definition of the Riemann tensor; relation
of the Riemann tensor with the second
covariant derivatives of a vector field;
components of the Riemann tensor in a
coordinate basis; symmetry properties of
the Riemann tensor; Ricci tensor, Ricci
scalar; self-parallel curves and the
exponential map on manifolds;
Riemannian and Lorentzian geometry;
352
three-year laurea course in Mathematics
Riemannian/Lorentzian
metric;
existence of Riemannian and Lorentzian
metrics.
Relativity: Special relativity, principle of
special relativity and the law of
propagation of light in vacuo, Einstein
ideas about the concepts of space and
time; operational definition of
simultaneity; General Relativity, inertial
and non-inertial systems, Einstein lift
experiment; the equivalence principle;
the principle of general covariance;
Einstein equations in vacuo and their
derivation from a variational principle,
properties of Einstein equations, physical
meaning of the metric field; conservation
properties in classical physics and in
special relativity, conservation laws and
general covariance, the stress energy
tensor and the form of Einstein equations
in the presence of sources.
Exams
Oral examination or project based exam.
References
- Lecture Notes (also available on-line).
Program
The fall of classical physics. The old
quantum mechanics. Schroedinger’s
equation and applications. Conduction
and semiconductors; applications to
electronics. Basics of quantum
computing. Special relativity. Basics of
cosmology and particle physics.
Prerequisites
Mechanics, electromagnetism and waves.
Calculus for functions of one and many
variables.
Exams
Students attending the lectures:
homework. Students not attending the
course: oral test.
References
- K.S. KRANE, Modern Physics, 2nd edition,
Wiley, 1996.
- Lecture notes.
NUMERICAL ANALYSIS 1
Teacher
Prof. Dario Fasino
MODERN PHYSICS
Teacher
Prof. Alessandro De Angelis
Credits
6
Web Page
http://www.fisica.uniud.it/~deangeli/fis
mod/corsofismod.html
Aims
To illustrate the basics of Quantum
Physics and Relativity. The course is
addressed to students of Computational
Physics, Mathematics, Computer Science
and Engineering.
Credits
6
Aims
Numerical Analysis deals with the study
of algorithms, that is, constructive
procedures, in continuum mathematics.
This course is aimed at introducing
students to some basic topics in this
discipline, emphasizing formal methods,
by means of the study of main algorithms
in numerical linear algebra, basic error
analysis tools, and fundamental
techniques in scientific computing.
Classroom lectures are supported by
computational examples. By the end of
this course, students will be able to
353
three-year laurea course in Mathematics
analyze and solve numerically problems
in continuum mathematics, to appraise
result reliability, and recognize restraints
on accuracy and workload arising from
computational resources.
Program
- Numerical linear algebra: basic notions,
vector and matrix norms, inner products,
Schur factorization, Gram-Schmidt
algorithm, spectral and singular value
decomposition.
- Linear systems: direct methods, LU
factorization and its variants, QR
factorization, Rigal-Gaches theorem.
- Stationary iterative methods: linear
iterations, Richardson, Jacobi, GaussSeidel methods.
- Least squares problems: solution
techniques using normal equations, QR
factorization, and SVD. Eigenvalue
problems: Gershgorin and Bauer-Fike
theorems, power method, inverse power
method, QR iteration.
- Error Analysis: absolute and relative
errors, inherent and algorithmic errors,
conditioning of computational problems,
machine numbers and operations,
machine precision, catastrophic
cancellation, algorithmic stability
concepts.
- Nonlinear equations and systems:
bisection and secant methods, functional
iterations, contractive mapping theorem,
Newton-type methods, local vs. global
convergence, convergence order,
stopping criteria.
Exams
Final written and oral exam. Written
exam can be replaced by two intermediate
tests.
References
- E. TYRTYSHNIKOV, A Brief Introduction to
Numerical Analysis, Birkhauser, 1997.
- Teacher’s lecture notes.
NUMERICAL ANALYSIS 2
Teacher
Prof. Rossana Vermiglio
Credits
6
Aims
The purpose of the course is to provide
the mathematical foundations of
numerical methods for approximation,
integration and differentiation theory, to
analyse their basic theoretical properties
(stability, accuracy, computational
complexity) and their performances on
computational examples. This is done
using MATLAB software, which will
allow also to treat some case studies in
laboratory. Program Approximation of
data and functions: interpolation by
polynomials, piecewise polynomials,
trigonometric polynomials and splines;
parametric splines and Bezier curves;
Approximation of data and functions:
best approximation, Chebyshev theory.
Fourier theory. Orthogonal polynomials.
Numerical integration: quadrature
formulae, Newton-cotes formulae.
Gaussian formulae. Richardson
extrapolation and Romberg integration.
Composite quadrature formulae,
Adaptive integration. Singular integrals.
Numerical approximations of function
derivatives: finite difference, compact
finite difference and pseudo-spectral
derivative. The course includes laboratory
experiences where the students can solve
some exercises and treat case-studies
interesting for application.
Exams
Oral examinations.
References
- Teacher’s notes.
- A. Q UARTERONI , R. S ACCO , F. S ALERI ,
354
three-year laurea course in Mathematics
Matematica Numerica, Springer Verlag
Italia, 2000.
- L.N. T REFETHEN , Spectral Methods in
MATLAB, SIAM, 2000.
OPTIMIZATION 1
convexity. Differential properties of
duality. Duality and sensitivity.
Linear programming (18) Geometric
properties. Algebraic properties.
Complementarity. Simplex method.
Variants of the Simplex method. Interior
point methods.
Teacher
Prof. Franca Rinaldi
OPTIMIZATION 2
Credits
6
Teacher
Prof. Franca Rinaldi
Aims
‘Operations Research aims to provide
rational bases for decision making by
seeking to understand and structure
complex situations and to use this
understanding to predict system
behaviour and improve system
performance. Much of this work is done
using analytical and numerical techniques to
develop and manipulate mathematical and
computer models of organizational systems
composed of people, machines, and
procedures’(INFORMS, What is OR/MS?)
Optimization is one of the main theoretical
disciplines which provide the analytical
tools to Operations Research. In the
course the fundamental topics of
Optimization will be covered with
emphasis on the mathematical and
algorithmic properties.
Credits
6
Program
Introduction to optimization problems (4
hours)
Basics of computational complexity (12)
Algorithm complexity. Problem
complexity. Class P. Class NP.
Trasformations. NP-complete problems.
Basics of convex analysis (6) Definitions.
Separation theorem. Supporting planes.
Convex functions.
Duality (8) Dual problem. Optimality
Conditions. Examples. Duality and
Aims
‘Operations Research aims to provide
rational bases for decision making by
seeking to understand and structure
complex situations and to use this
understanding to predict system
behaviour and improve system
performance. Much of this work is done
using analytical and numerical
techniques to develop and manipulate
mathematical and computer models of
organizational systems composed of
people, machines, and procedures’
(INFORMS, What is OR/MS?) Optimization
is one of the main theoretical disciplines
which provide the analytical tools to
Operations Research. In the course the
fundamental topics of Optimization will
be covered with emphasis on the
mathematical and algorithmic properties.
Program
Network Flows (14) Optimality conditions:
Gamma curve. Residual network.
Polynomial algorithms for Shortest Path
(Dijkstra) and Max Flow. Network
Simplex.
Deterministic Dynamic Programming (12)
Optimality principle. Bellman’s equation.
Bellman-Ford algorithm for general networks.
355
three-year laurea course in Mathematics
Algorithm for acyclic and layered networks.
Floyd-Warshall algorithm. Knapsack
problems. Combinatorial problems.
Combinatorial Optimization (22) Matching
problems. Matroids and spanning trees.
Polyhedral combinatorics.
PARTICLES AND FUNDAMENTAL
INTERACTIONS
Teacher
Dott. Marina Cobal
Resonances. Structure of hadrons and
deep inelastic scattering. Strangeness.
Quark model of hadrons. Heavy quarks.
The GIM mechanism. The CKM matrix.
Electroweak unification and the W and Z
bosons. Neutral currents. Discrete
symmetries and weak interactions:
parity, charge conjugation and CP.
Quantum chromo-dynamics (QCD):
colour, strong coupling constant,
confinement, jets. The Higgs mechanism
and experimental searches for the Higgs.
Credits
6
Prerequisites
Mechanics, electromagnetism and waves.
Quantum Mechanics, and Relativity.
Web Page
http://www.fisica.uniud.it/%7Ecobal/pa
rticelle_welcome.html
Exams
Homework and summary report on a
chosen paper.
Aims
This course is an introduction to particle
physics. We shall discuss some of the
properties of the basic constituents of
matter and their interactions, as well as
some of the experimental methods and
technologies used in high-energy physics.
In general we shall not derive theoretical
models from first principles, but rather
compare phenomenological predictions
with experimental results to gain insight
into the world of sub-nuclear phenomena.
The lessons are addressed to students of
Computational Physics, Mathematics,
Computer Science and Engineering.
References
- PERKINS, High Energy Physics, 4th edition,
Addison-Wesley.
- B.R. MARTIN, G. SHAW, Particle Physics,
2nd edition, Wiley.
Notes
from
the
lecturer
http://www.fisica.uniud.it/~cobal/partic
elle_welcome.html
Program
Basic concepts: units, special relativity,
cross sections, decay rates. Fundamental
particles and interactions: quarks,
leptons, gauge bosons; electromagnetic,
strong and weak interactions. Leptons:
electron, positron, muon and tau leptons;
neutrinos. Experimental methods:
particle accelerators and particle
detectors. Hadrons and nuclear forces.
PHYSICS 1
Teacher
Prof. Furio Ercolessi
Credits
6
Aims
The purpose of the course is to supply the
basic elements of mechanics and
thermodynamics. Several examples and
exercises are presented throughout the
course.
356
three-year laurea course in Mathematics
Program
Measurement of space and time; the
International System. Scalars and vectors.
Kinematics: trajectory, velocity and
acceleration, circular motion, relative
motion. Mass and force: Newton laws,
inertial reference systems. Forces:
gravitational, normal, tension, elastic,
friction (static and dynamic). Kinetic
energy, work, potential energy and
energy conservation. Centre of mass,
momentum. Variable mass systems.
Collisions. Rotation around a fixed axis:
moment of inertia, moment of a force,
angular momentum, Newton laws in
angular form. Rolling, precession. Static
equilibrium. Oscillations: harmonic
motion, pendulum. Fluids: pressure,
Pascal and Archimedes principles,
continuity and Bernoulli equations.
Thermology: temperature, heat. Ideal
gases and kinetic theory of gases.
Thermodinamical transformations, first
law of thermodynamics. Thermal
machines: Kelvin and Clausius
postulates, Carnot cycle and Carnot
theorem. Entropy and the second law of
thermodynamics.
Web Page
http://www.fisica.uniud.it/~deangeli/fisi
ca2/corsonuovo.html
Exams
The exam consists of a written test and an
oral test.
PROBABILITY 1
References
- D. H ALLIDAY , R. R ESNICK , J. W ALKER ,
Fundamentals of Physics, 7 th edition,
Wiley.
PHYSICS 2
Teacher
Prof. Alessandro De Angelis
Credits
6
Aims
To illustrate the basics of electromagnetism
and wave mechanics. The course is addressed
to students of Mathematics.
Program
Interactions. Gravitation. Electromagnetism.
Waves (electromagnetic waves in particular).
Optional: special relativity.
Prerequisites
Basic calculus (limits, derivatives,
integrals). Mechanics.
Exams
Written test including theory and
problems; homework.
References
- SERWAY, JEWETT, Principles of Physics.
or
- HALLIDAY, RESNICK, WALKER,
Fundamentals of Physics.
- Lecture notes.
Teacher
Prof. Carlo Cecchini
Credits
6
Aims
The aim of the course is giving the
student the basic ideas and tools of
probability and showing their use in
applications. In this process we shall use
the mathematical techniques learned in
the first two years, of which this course is
also seen as an application. Special
attention will be devoted to topics of
interest in teaching.
357
three-year laurea course in Mathematics
Program
1. Basic definitions and theorems: probability
spaces, expectations, conditional probabilities
and expectations, moments and applications
in discrete and continuous probability. 2.
Random walks. 3. Generating and
characteristic functions, law of large numbers,
central limit theorem. 4. Introduction to
markovianity and martingales.
References
- S. Ross, Stochastic Processes, 2nd edition,
Wiley, 1996.
- HOFFMANN, JURGENSEN, Probability with
a View toward Statistics, Chapman and
Hall, 1994.
- G.R. G R I M M E T T , D.R. S T I R Z A K E R ,
Probability and Random Processes, Oxford
Clarendon Press, 1992.
Exams
There will be a written and oral
examination.
STATISTIC 1
References
- G RIMMETT , S TIRZAKER , Probability and
Random Processes, Oxford Clarendon
Press.
PROBABILITY 2
Teacher
Prof. Vidoni Paolo
Credits
6
Aims
This course gives some complements on
basic probability theory and introduces
the theory of stochastic processes, with a
view towards applications.
Program
- Complements on random vectors and
on the multivariate normal distribution.
- Complements on limit theorems.
- Introduction to stochastic processes.
- Poisson processes.
- Markov processes.
- Gaussian processes.
Exams
The examination consists in an oral
discussion.
Teacher
Prof. Luigi Pace
Credits
6
Aims
This course presents an introduction to
statistical inference based on the
likelihood.
Program
- Probability complements. The bivariate
and the multivariate normal distribution;
the distribution of linear combinations
and quadratic forms of normal vectors.
- Statistical models. Parametric and
nonparametric models; special
parametric models; graphical methods
for checking model adequacy (probability
plots, density estimation).
- Inference: basic procedures. Point
estimation; hypotheses testing;
confidence regions; KolmogorovSmirnov tests; simulation.
- The likelihood function. Motivation and
basic definitions; the maximum
likelihood estimator; the maximum
likelihood tests; interest and nuisance
parameters: the profile likelihood;
penalised likelihood and model selection.
Exams
The examination consists in a practical
358
three-year laurea course in Mathematics
part, mainly exercises, and in an oral
discussion.
References
- Lecture notes.
- A. A Z Z A L I N I , Inferenza Statistica:
un’introduzione basata sul concetto di
verosimiglianza, Springer-Verlag, 1992.
- L.J. BAIN, M. ENGELHARDT, Introduction
to Probability and Mathematical Statistics,
PWS-Kent Publishing co., 1992.
STATISTIC 2
Teacher
Prof. Luigi Pace
Credits
6
Aims
This course gives theoretical complements
on parametric statistical inference based on
the likelihood and presents some
applications to regression models.
Program
- The likelihood: theoretical aspects. The
immutability of likelihood; sufficient
statistics and likelihood; asymptotic
sampling distributions of likelihood
quantities and their usefulness as
approximations.
- Optimal procedures. Minimum variance
unbiased estimators; most powerful
tests; most accurate confidence regions;
the main theorems.
- Binomial models. The sign test; logistic
regression; the Newton-Raphson
algorithm.
- Multinomial models. Estimation of cell
probabilities; the goodness-of-fit test; test
of independence in contingency tables.
- Poisson models.
- Normal models. Estimation and tests;
linear regression models.
Exams
The examination consists in a practical
part, mainly exercises, and in an oral
discussion.
References
- Lecture notes.
- A. A Z Z A L I N I , Inferenza Statistica:
un’introduzione basata sul concetto di
verosimiglianza, Springer-Verlag, 1992.
- L. PACE, A. SALVAN, Teoria della Statistica,
CEDAM, 1996.
359
three-year laurea course in Biotechnology
THREE-YEAR LAUREA
COURSE IN BIOTECHNOLOGY
Courses given by Faculty of Mathematical,
Physical and Natural Sciences teachers.
ALGORYTHMS AND
DATA STRUCTURES
Teacher
Prof. Paolo Serafini
Credits
5
Web Page
http://www.dimi.uniud.it/~serafini/ASD
0607.pdf
Aims
The course introduces the student to the
main concepts underlying data
processing. Data must be input to a
computer according to specific structures
and processed in a precisely defined way
which can be replicated to classes of data
of the same type, that is according to an
algorithm. It is fundamental to
understand how time and space resources
are used by an algorithm so that
processing can be carried out in
reasonable time and without exceeding
computer memory. How an algorithm
behaves depends both on the type of
problem to be solved and on the way data
are structured. The most important data
structures will be presented together with
the most commonly used algorithms.
The course will also present some graph
problems which can be used to solve
computational biology problems.
Program
Algorithms: Definitions, Complexity
measures, Complexity classes.
Complexity of Problems: Decision
Problems, Class P, Transformations of
problems, Class NP, NP-complete
problems.
Data Structures: Data structure
specification,
Data
structure
implementation, implementation
efficiency,
Elementary data structures: stacks, lists,
trees, binary search trees.
Recursive equations: Factorial, Fibonacci
numbers, Explicit formulas, Master
Theorem.
Algorithms for Sorting: Insertion,
Bubblesort, Quicksort, Mergesort,
Heapsort, Radixsort.
Dynamic Programming: Optimality
principle, Bellman equation, Shortest
paths, Bellman-Ford algorithm, Dijkstra
algorithm, Floyd-Warshall algorithm,
String comparison, other examples.
Other graph algorithms: Minimal
spanning tree, Max flow-min cut,
Assignment.
Linear Programming: primal and dual
problems, Complementarity, Total
unimodularity.
NP-complete problems: TSP, Stable sets,
knapsack.
Exams
Oral examination.
BIOINFORMATICS 3
Teacher
Prof. Giuseppe Lancia
Credits
3
Program
Introduction to bioinformatics. Historical
notes. Sequence comparison and
alignments. Multiple alignment.
Substitution matrices. Phylogenetic
360
three-year laurea course in Biotechnology
trees. Single Nucleotide Polymorphisms
and haplotyping models. Protein
structures. Protein fold prediction and
comparison. Structural data bases.
COMPUTER SCIENCE
Teachers
Prof. Alberto Policriti
Dott. Nicola Vitacolonna
Credits
3
Aims
The course is an introduction to the
fundamental notions and concepts of
Computer Science, with the goal of
making students familiarize with the
most important technological tools
available in the current professional and
research activities in the scope of
biotechnology.
The first part of the course deals with
architectural aspects of computing
machines, operating systems and
databases: the basic notions are taught
and the capabilities of applications
relevant to bioinformatics are illustrated.
The second part of the course focuses on
the use of computational tools in scientific
activities, with special emphasis on the
algorithmic and computational aspects
related to the modern research techniques
in Biology. The notion of an ‘algorithm’ is
explained in detail and exemplified through
the learning of modern imperative
languages; besides, the ability to apply
procedural and ricursive/functional
paradigms to the solution of simple
biological problems is developed.
Program
Fundamentals of computer science
1. von Neumann’s architecture.
2. Elements of operating systems.
3. Elements of databases and query
languages.
4. Introduction to biological data banks.
5. Basics of computer networks.
6. Algorithms and programming
languages for biotechnology.
Languages
1. Perl: introduction and fundamentals
with examples and exercises.
2. Programming Perl scripts for the
solution of problems in molecular
biology.
Exams
The exam consists of a written test and an
optional oral interview. An optional
project may be developed by the student,
consisting in the design and
implementation of a Perl program.
References
Recommended texts and books:
- C. G I B A S , P. J A M B E K , Developing
Bioinformatics Computer Skills, O’Reilly.
- G. V ALLE , M. H ELMER C ITTERICH , M.
ATTIMONELLI, G. PESOLE, Introduzione alla
Bioinformatica, Zanichelli.
- J. T I S D A L L , Beginning Perl for
Bioinformatics, O’Reilly.
- Notes from the classes and didactic
material provided by the teachers.
DISCRETE MATHEMATICS
Teacher
Prof. Giuseppe Lancia
Credits
7
Program
Basic notions of boolean algebra, logic,
set theory, functions.
Sums. Induction and recursion.
Combinatorics and counting.
Permutations and sequences. The pigeonhole principle.
361
three-year laurea course in Biotechnology
Fibonacci numbers. The principle of
inclusion-exclusion. Derangements.
Integer division. Euclid’s algorithm.
Prime numbers. Fermat’s little theorem.
Combinatorial probabilities. sorting by
reversals. Generation of random sets and
permutations.
Graph theory. Hamiltonian and Eulerian
graphs. Bipartite graphs. Connectivity.
Trees. Digraphs and weighted graphs.
Combinatorial optimization. The
minimum spanning tree. Matchings and
coverings. Stable marriages. The
travelling salesman problem.
References
- SERWAY, JEWETT, Principles of Physics,
or
- HALLIDAY, RESNICK, WALKER,
Fundamentals of Physics
- Lecture notes.
PHYSICS 1
Aims
The aim of the course is to present the
fundamental concepts of operating
systems and their internal functionalities.
Beside the standard concepts about
process and processor management,
memory management and file system,
we will discuss also the basis of concurrent
programming and of parallel and
distributed computation on clusters,
which is of particular interest for the
computational biologist.
Several lab activities will allow the
student to apply in practice the notions
learned during classroom lectures. In
particular, these lab activities will be
about scripting languages and system
administration, using the operating
systems most commonly used for
bioinformatics.
Teacher
Prof. Alessandro De Angelis
([email protected])
Credits
4 (1 of Laboratory)
Web Page
http://www.fisica.uniud.it/~deangeli
Aims
To illustrate the basics of mechanics and
fundamental interactions. The course is
addressed to students of Biotechnology.
Program
SI Units. Kinematics. Fundamental
interactions: gravitation, electricity and
magnetism. Dynamics. Energy.
Oscillations; basics of wave mechanics
and electromagnetic waves.
Prerequisites
Basic calculus (limits, derivatives,
integrals).
Exams
Written test including theory and
problems; homework.
OPERATING SYSTEMS
Teacher
Prof. Marino Miculan
Credits
?
Program
1. General aspects. Principles of computer
architectures.
2. Processes and threads.
3. Concurrent programming.
4. Memory management.
5. File System.
6. Network services and network
operating systems.
7. Multi-processors systems.
362
three-year laurea course in Biotechnology
Prerequisites
Computer Science.
Exams
The examination is composed by an oral
test, and an homework about scripting
languages in Linux.
References
- ANCILLOTTI, BOARI, CIAMBOLINI, LIPARI,
Sistemi Operativi, McGraw-Hill, 2004.
ISBN: 88-386-6069-7.
- Handouts from lectures.
involving uncertainty. These notions will
be presented from an applied viewpoint,
with particular regard to biological
applications.
Program
1) Descriptive Statistics: Variables;
Frequency distributions; Location and
variability indicators. 2) Probability: Basic
concepts; Random variables; Probabilistic
models; Random vectors and convergence
concepts. 3) Inference: Point estimation;
Confidence intervals; Hypothesis testing;
Analysis of variance; Hints on
multivariate statistical analysis.
STATISTICS 1
Teacher
Prof. Paolo Vidoni
Credits
6
Aims
The aim of the course is to introduce the
students to the fundamental concepts of
Descriptive and Inferential Statistics, as a
basic tool for data analysis and for
managing experimental situation
Exams
The examination consists in a practical
part, mainly exercises, and in an oral
discussion.
References
- CAMUSSI, MÖLLE, OTTAVIANO, SARI
G O R L A , Metodi statistici per la
sperimentazione biologica, seconda
edizione, Zanichelli, 1995.
- G. CICCHITELLI, Probabilità e Statistica,
Maggioli Editore, 1984.
- Lecture notes.
LS in Computer Science
LAUREA SPECIALISTICA IN
COMPUTER SCIENCE
ABSTRACT INTERPRETATION AND
AUTOMATIC SOFTWARE ANALYSIS
(Analysis, Debugging, Semantic Based
Automatic Program Verification and
Transformation)
Teacher
Prof. Marco Comini
Credits
6
Aims
The increasing dependency of society on
computer applications lets analysis and
verification of correctness of complex
software systems a more and more critical factor of the development process.
Systems malfunctioning, either hardware or software, can cause relevant damage
of any kind: from financial to human
beans losses. Moreover, when defects are
not revealed before the usage of a system,
the a posteriori application of corrective
measures is, if possible, harder and
expensive.
Examples from the recent past include
the millennium bug, the errors in some
versions of the Pentium processor, the 32
milliards dollars uncovered of the N.Y.
Bank, the explosion of the first Ariane 5
vector and the mortal incidents cause by
Therac-25.
The course aims to give a (relatively)
extended introduction to the formal techniques which are the basis of Automatic
Software Analysis and Verification (including Debugging).
Program
- Introduction to semantic based software
manipulation techniques.
- Recall of Semantics concepts: Posets,
363
CPO, Lattices; Operational Semantics;
Denotational Semantics; Fix Point
Semantics.
From programs to proprieties: static program analysis
- Data-flow analysis.
- Abstract Interpretation: Complete lattices and Galois connections; upper closure operators; standard and non-standard
semantics of logic programs.
- Abstract Domains for analysis: Pos, Def
e Sharing.
- Abstract Domains Desing: reduced product, complementation, refinement.
- Fix Point acceleration techniques (Widening/Narrowing).
- Applications.
From programs to programs: Transformation and Partial Evaluation
- Transformation.
- Optimization by partial evaluation.
With programs and proprieties: Debugging
and Verification
- Specifications and program proprieties.
- Algorithmic Debugging.
- Abstract Diagnosis.
- Hoare Logic and verification of sequential programs.
- Assertions as abstract domain.
- Abstract Verification: Analysis and verification, toward a unifying theory: Type
checking as a particular case of Abstract
Verification.
From proprieties to programs: Program
Synthesis
- Synthesis of logic programs.
References
- K.R. A PT , E. O LDEROG , Verification of
Sequential and Concurrent Programs, 2nd
edition, 1997. ISBN: 0-387-94896-1.
- N.D. JONES, C.K. GOMARD, P. SESTOFT,
Partial Evaluation and Automatic Program
Generation, Prentice-Hall, Englewood
Cliffs, NJ, 1993.
- P. COUSOT, R. COUSOT, Abstract Interpretation and Application to Logic Programs,
364
LS in Computer Science
Journal of Logic Programming, 13(23):103-179, 1992.
- M. C OMINI , An Abstract Interpretation
Framework for Semantics and Diagnosis of
Logic Programs, Ph.D. thesis TD-5/98,
Dipartimento di Informatica, Università
di Pisa, 1998.
- P. COUSOT, Semantic Foundations of Program Analysis, In S.S. M UCHNICK , N.D.
J O N E S (eds.), Program Flow Analysis:
Theory and Applications, Chapter 10,
pages 303-342, Prentice-Hall, Inc.,
Englewood Cliffs, New Jersey, USA,
1981.
- P. COUSOT, Abstract Interpretation Based
Formal Methods and Future Challenges,
Invited Paper, In R. WILHELM (ed.), Informatics - 10 Years Back, 10 Years Ahead,
volume 2000 of Lecture Notes in Computer Science, pages 138-156, SpringerVerlag, 2000.
ADVANCED ALGORITHMS
Teacher
Prof. Alberto Policriti
Credits
6
Program
String matching algorithms. Randomized and approximation algorithms.
Amortized analysis of algorithms. Search
trees and self-adjusting splay trees.
References
- Notes from the lecturer.
- T.H. CORMEN, C.E. LEISERSON, R.L. RIVEST, Introduction to Algorithms, 2nd edition,
MIT Press, 2001.
- D. GUSFIELD, Algorithms on Strings, Trees
and Sequences, Cambridge University
Press, 1997.
R. MOTWANI, P. RAGHAVAN, Randomized
Algorithms, Cambridge University Press,
1995.
- R.E. TARJAN, Data Structures and Network
Algorithms, SIAM press, 1983.
ADVANCES IN COMPILERS
Teacher
Prof. Maria Staniszkis
Credits
6
Program
Symbol Tables.
- Specifications of semantics and constructions of corresponding automata.
- Object code generation.
- Treatment of semantic errors.
- Abstract interpretation and dynamic
properties of programs.
- Compilation of non imperative languages.
References
A.V. AHO, R. SETHI, D. ULLMAN, Compilers, Principles, Techniques and Tools, Addison Wesley, 1987.
ADVANCES IN DATABASE SYSTEMS
Teacher
Prof. Angelo Montanari
Credits
6
Program
Part 1 - Database design (additional material) The conceptual design of databases
and the Dataflow model: the basic constructs of the Dataflow model (process,
data flow, data repository, interface); context diagrams and Dataflow diagrams;
functional design based on the Dataflow
model; the design of information systems:
an integrated approach to the design of
system functions and data (synthesis of
LS in Computer Science
external ER schemas and their integration). The logical design of databases:
satisfiability and violation of functional
dependencies, closure of dependency
sets, a calculus of dependencies (Armstrong’s axioms), closure of attribute sets,
algorithms to compute the closure of
attribute sets, equivalences among sets of
dependencies, minimal covers, decompositions and their properties, normal
forms and normalization, algorithms to
compute decompositions in specific normal forms.
Part 2 - The SQL language (additional
material)
SQL and the programming languages:
introduction, approaches to the database
programming, stored procedures, triggers, static embedded SQL (simple and
complex queries, the use of cursors),
dynamic embedded SQL (immediate execution and two-phase execution), database programming with function calls:
SQL/CLI (Call Level Interface), ODBC e
JDBC (a short account).
Part 3 - The physical organization of data
The storage of file records and the organization of primary files: introduction, devices and techniques for the management
of secondary storage, buffering of blocks,
placing file records on disks, operations
on files, files of unordered records (heap
files), files of ordered records (sorted
files), hashing techniques, other primary
file organizations, parallelizing disk
access using RAID technology. Indexing
structures for files: types of single-level
ordered indexes (primary, clustering,
secondary), multilevel indexes, dynamic
multilevel indexes using B-trees and B + trees, other types of indexes.
Part 4 - Database server technology
The notion of transaction: introduction to
transaction processing, desirable properties of transactions, transaction scheduling and recovery, serialization techni-
365
ques, transaction support in SQL. Concurrency control techniques: problems,
architecture, the anomalies of concurrent
transactions, view-based techniques, conflict-based techniques, two-phase locking
techniques (2PL and strict 2PL), concurrency control based on timestamp ordering, multiversioning-based techniques,
granularity of data items. Buffer manager: architecture of the buffer manager,
primitives for the management of the
buffer, buffer management policies, on
the relationships between buffer manager and file system. Database recovery
techniques: basic concepts, architecture,
stable memory, organization of the log,
transaction processing, fault management. Query processing and optimization: system catalogs, query optimization
(query internal representation, relation
profiles, cost-based optimization), physical design of databases. Database security: introduction to database security
issues, mandatory access control and
role-based access control for multilevel
security, statistical database security (a
short account).
Part 5 - Distributed databases
Introduction to distributed databases,
basic elements of the client-server architecture, data fragmentation, data allocation, transparency levels, types of distributed DBMSs, query processing in distributed databases, concurrency control and
recovery in distributed databases.
Part 6 - Databases and World Wide
Web(a short account)
Basic notions (Internet, World Wide
Web, HTML, the http protocol), gateway
and form, tools and techniques to access
databases via web, database access via
CGI programs, development tools, the
limitations of the CGI protocol, serverbased solutions, client-based solutions,
web information systems, conceptual
design of web applications.
366
LS in Computer Science
Part 7 - Additional topics (a short account)
Databases in support of management’s
decisions (data warehouse), semi structured data in XML, object and object-relational databases, active databases, temporal and spatial databases.
References
- P. A TZENI , S. C ERI , P. F RATERNALI , S.
P ARABOSCHI , R. T ORLONE , Basi di Dati:
Architetture e Linee di Evoluzione, McGrawHill, 2003.
- R. ELMASTRI, S. NAVATHE, Fundamentals of
Database Systems, 5th edition, Pearson International Education / Addison Wesley, 2007.
Or:
- R. ELMASTRI, S. NAVATHE, Sistemi di basi
di dati. Complementi, quarta edizione,
Pearson Education Italia / Addison
Wesley, 2005. Other references:
- J.D. ULLMAN, Principles of Databases and
Knowledge-Base Systems, volume I, Computer Science Press, 1988.
- SILBERSCHATZ, H.F. KORTH, S. SUDARSHAN, Database System Concepts, 4th edition, McGraw-Hill, 2002.
- A. ALBANO, Costruire sistemi per basi di
dati, Addison-Wesley, 2001.
- A. ALBANO, G. GHELLI, R. ORSINI, Fondamenti di basi di dati, Zanichelli, 2005.
- P. A TZENI , S. C ERI , S. P ARABOSCHI , R.
TORLONE, Basi di Dati: Modelli e Linguaggi
di Interrogazione, seconda edizione,
McGraw-Hill, 2006.
ALGORITHMS AND
COMPLEXITY THEORY
Teacher
Prof. Carla Piazza
Credits
6
Aims
During this course we intend to present
the main results in the field of computa-
tional complexity of algorithms. In particular, we intend to discuss the classical
hierarchy of complexity classes and the
main techniques for the analysis of related problems. We will also present basic
ideas and notions of some interesting
innovative computational models recently proposed in the scientific community.
Program
- Computational classes. Hierarchy theorem. Gap theorem. Savitch theorem.
Immermann-Szelepscenyi theorem and
consequences. Computational reductions
and completeness. Classes outside NP.
- Quantum Computing. Quantum Turing
machine. Universal quantum Turing
machine. Computational classes in quantum computing. Quantum algorithms.
- DNA Computing. Adleman and Lipton
model. Solutions for SAT and other NPcomplete problems. Universal Turing
machine in DNA computing.
- Algorithms. The problem of automata
minimization and the notion of bisimulation. Hopcroft algorithm. Paige-Tarjan
algorithm. Paige-Tarjan-Bonic algorithm.
The notion of simulation and efficient
algorithms to compute the maximum
simulation quotient.
References
- C.H. P APADIMITRIOU , Computational
Complexity, Addison Wesley, 1995.
- Other research papers.
ARTIFICIAL INTELLIGENCE
Teacher
Prof. Carlo Tasso
Credits
6
Aims
The aim of the course is to introduce
367
LS in Computer Science
some of the basic notions of artificial
intelligence.
Program
Contents of the course and references
may be updated/modified later on.
- Introduction. The intelligent computer.
Intelligent applications.
- The role of the orderly methodology in
AI. Symbolic and natural constraints
Constraint propagation. Backtracking
techniques. Control metaphors: interacting procedures
- The search problem: exploring alternatives. Problem formulation as search into a
state space. Problem examples. Search
algorithms: depth-first, breadth-first, hill
climbing, best-first. A* algorithm, simulated annealing. Game resolution by searching strategy: min-max procedure,
alpha-beta procedure, euristic methods.
- Learning. Introduction. Decision trees.
Learning by examples. Inductive learning. Induction heuristics, induction procedures, identification.
- Supervised learning: neural networks.
The human neural system. Main structure of a neural network. Perceptron, multilayer perceptron, back-propagation.
Application examples
References
- S. RUSSEL, P. NORVIG, Artificial Intelligence: a Modern Approach, Prentice-Hall
International, 1995.
- P.H. WINSTON, Artificial Intelligence, 3rd
edition, Addison-Wesley, 1992.
- E.RICH, K.KNIGHT, Artificial Intelligence,
McGraw-Hill, 2nd edition, 1992.
References for consultation:
- E.A. BENDER, Mathematical Methods in
Artificial Intelligence, IEEE Computer
Society Press, 1995.
- B.D. R IPLEY , Pattern Recognition and
Neural Networks, Cambridge University
Press, UK, 1996.
- M.GINSBERG, Essentials of Artificial Intelligence, Morgan Kaufman, 1993.
COGNITIVE MODELING
Teacher
Dott. Silvia Gabrielli
Credits
6
Aims
Goal of the course: The course aims to
approach students to psychology as science studying humans, their behaviours
and thinking ways, in order to extend the
general knowledge about some aspects of
daily life. Moreover, the course specifically aims to provide information that will be
useful in future activities of students (i.e.
visual perception, emotions’ role, use of
the communication), and to give a scientific method to perform experiments.
Program
Three sections of the course: general psychology (introduction to build successive
knowledge); communication; and research methodology (to be able to perform
experiments).
Exams
Written test.
References
- L. ANOLLI, P. LEGRANZI, Psicologia Generale, Il Mulino, 2001. Chapter 1: paragraphs 1.1 and 1.2 (pag. 9-13). Chapter 2:
complete (pag. 47-75). Chapter 3: paragraphs 1 and 2 (pag. 77-86). Chapter 4:
paragraphs 1 and 2 (pag. 103-133). Chapter
5: complete (pag. 137-166). Chapter 6:
complete (pag. 169-202). Chapter 7: complete (pag. 203-230). Chapter 8: paragraphs 1, 2, 3, 4 (pag. 233-261).
- D.H. MCBURNEY, Metodologia della ricerca in psicologia, Il Mulino, 1986. Chapters: 3, 4, 5, 6, 7, 8, 10.
- R. C IALDINI , Le armi della persuasione,
Giunti, 2005.
368
LS in Computer Science
COMPILERS
Teacher
Prof. Maria Staniszkis
Credits
6
Program
- Rewriting systems: definitions, properties, examples.
- Lexical analysis: the Thompson construction, the Berry-Sethi construction,
generation of lexical analyzers.
- Syntactic analysis: the algorithm of
Coce-Younger-asami; parsing top-down:
LL parsers; parsing bottom-up: LR parsers. The properties of LR grammars and
languages.
- Syntactic errors and the recovery.
References
- A.V. AHO, R. SETHI, D. ULLMAN, Compilers, Principles, Techniques and Tools, Addison Wesley, 1987.
- S. SIPPU, E. SOISALON-SOININEN, Parsing
Theory, vol. 1 and 2, Springer.
- G. BERRY, R.SETHI, From Regular Expressions to Deterministic Automata, Theoretical Computer Science, 48 (1986), pp. 117126.
COMPUTATIONAL GEOMETRY
Teacher
Prof. Adriano Pascoletti
Credits
6
Aims
Basics of Computational Geometry illustrated through the discussion of problems whose solutions require nonstandard data structures and algorithmic
techniques; their role in the solution of
more complex tasks. Assessment of efficiency and robustness of data structures
and algorithms used by the solution of a
geometric problem.
Program
Representation of geometric objects; segment intersections; triangulations; pointlocation, proximity and visibility problems; motion planning.
Exams
Oral discussion.
References
- M. DE BERG, M. VAN KREVELD, M. OVERMARS , O. S CHWARZKOPF , Computational
Geometry - Algorithms and Applications,
Springer Verlag, 1997.
- A. PASCOLETTI, lecture notes (in italian).
COMPUTATIONAL MATHEMATICS
Teacher
Prof. Rossana Vermiglio
Credits
6
Aims
In the last years, the mathematical
models described by differential equations in scientific applications are becoming more complex and the numerical
analysis plays an important role. ‘The
solution of ordinary differential equations (ODEs) by discrete methods is one
of the oldest and most successful areas of
numerical computation’ (L. Trepheten).
The course presents the essential features of the discrete methods for ODEs (initial value problem and boundary value
problem) with particular emphasis on the
fundamental ideas of accuracy, stability
and convergence. All these notions are
important to introduce the basic ideas to
369
LS in Computer Science
develop the numerical schemes for PDEs.
The course could include also some
advanced topics. Program Difference
equations. Numerical methods for initial
value problems (IVPs) for ODEs. Onestep methods and multi-step methods.
Continuous methods. Stiff problems.
Stability analysis. Numerical geometric
integration. Numerical methods for
boundary value problems (BVPs) for
ODEs. Finite difference methods. Shooting methods. Collocation methods. Integral formulation of BVP. The Lax-Milgram theorem. The Galerkin-finite elements approach. The Galerkin-spectral
approach. The generalized Galerkin
method. Partial differential equations:
elliptic, parabolic and hyperbolic. Finite
difference methods. Finite element
methods.
Exams
Oral.
References
- Teacher’s notes.
- A. Q UARTERONI , F.S ALERI , Modellistica
numerica per problemi differenziali, Springer Verlag Italia, 2003.
- A. Q UARTERONI , R.S ACCO , F.S ALERI ,
Matematica numerica, Springer Italia,
2000.
Further references:
- P. DEUFHARD, F. BORNEMANN, Scientific
Computing with Ordinary Differential
Equations, Springer, New York, 2002.
- E. H AIRER , S.P. N ORSETT , G. W ANNER ,
Solving Ordinary Differential Equations I,
Springer, Berlin, 1987.
- E. HAIRER, G. WANNER, Solving Ordinary
Differential Equations II, Springer, Berlin,
1996.
- E. HAIRER, C. LUBICH, G. WANNER, Geometric Numerical Integration, Springer,
Berlin, 2001.
- C. LAMBERT, Numerical Methods for Ordinary Differential Equations, Wiley, 1991.
COMPUTER LANGUAGES 1
Teacher
Prof. Marco Comini
Credits
6
Aims
The Computer Languages 1 course,
together with the Computer Languages 2
course, aims to give knowledge on the
characteristics of the various programming paradigms. It tries hard not to focus
on a specific language but to present the
general principles that guide project,
development and implementation of
modern programming languages. With a
solid knowledge of ‘universal’ characteristics one can learn new languages in no
time.
To achieve this general vision the main
programming paradigms are presented:
imperative, functional, logic and functional-logic. Besides examining the most
immediate pragmatic aspects of these
paradigms, they are analyzed and compared basing on general principles in order
to achieve a critical comprehension of
most popular languages. This is needed
to reach a cognizant programming style,
where one knows which paradigm is better to chose to solve a specific problem,
and knows which language constructs to
use, and at which cost.
The two courses aim to give a relatively
profound knowledge (especially regarding the programming aspect) on declarative paradigms (functional, logic and
functional-logic) that, thanks to their
expressiveness, can be naturally used as
basis for development of correct software.
The Computer Languages 1, in particular,
will treat the general concepts; the imperative paradigm and the functional paradigm. The Computer Languages 2 will
complete the presentation of declarative
370
paradigms: logic and functional-logic.
Program
Imperative Paradigm
- Abstract Machines, Interpretation e
Compilation.
- Describe a Computer Language (Syntax
and Semantics).
- Names and environments.
- Memory Management.
- Structuring control.
- p-code.
- Control Abstraction (Parameters Passing Methods).
- Structuring data.
- Monomorphic and Polymorphic Type
checking.
Functional Paradigm
- Introduction to Functional Programming.
- High-order Programming.
- The Haskell language (list comprehensions, partial applications of curried functions, sections, non-strict functions, infinite data structures, case expressions,
pattern matching).
- Types, Classes and Overloading.
- Haskell’s monadic I/O.
- Standard Haskell Classes.
- Monads.
- Modules.
References
- M. GABBRIELLI, S. MARTINI, Linguaggi di
Programmazione - Principi e Paradigmi,
McGraw-Hill. ISBN: 88-386-6261-4.
- HUDAK, FASEL, A Gentle Introduction to
Haskell, 1992.
Consultation Books and Texts:
- B. WADLER , Introduction to Functional
Programming Using Haskell, Prentice Hall
PTR, 1998. ISBN: 0134843460.
- N.D. JONES, C.K. GOMARD, P. SESTOFT,
Partial Evaluation and Automatic Program
Generation, Prentice-Hall, Englewood
Cliffs, NJ, 1993.
LS in Computer Science
COMPUTER LANGUAGES 2
Teacher
Prof. Marco Comini
Credits
6
Aims
The Computer Languages 2 course,
together with the Computer Languages 1
course, aims to give knowledge on the
characteristics of the various programming paradigms. It tries hard not to focus
on a specific language but to present the
general principles that guide project,
development and implementation of
modern programming languages. With a
solid knowledge of ‘universal’ characteristics one can learn new languages in no
time.
To achieve this general vision the main
programming paradigms are presented:
imperative, functional, logic and functional-logic. Besides examining the most
immediate pragmatic aspects of these
paradigms, they are analyzed and compared basing on general principles in order
to achieve a critical comprehension of
most popular languages. This is needed
to reach a cognizant programming style,
where one knows which paradigm is better to chose to solve a specific problem,
and knows which language constructs to
use, and at which cost.
The Computer Languages 2 course, in
particular, presents the declarative paradigms (functional, logic and functionallogic) that, thanks to their expressiveness,
can be naturally used as basis for development of correct software. It will be shown
how characteristics like high-order and
non-determinism can be fruitfully used
to write compact, elegant and flexible
(reusable) code.
371
LS in Computer Science
Program
Execution Models of the Functional Paradigm
- Term Rewriting Systems, Pattern Matching.
Logic Paradigm
- Introduction to Logic Programming:
unification, SLD-derivations.
- Denotational Semantics of Logic Programs.
- Non-deterministic Programming.
- The Prolog language.
- Warren Abstract Machine.
Functional-Logic Paradigm
- Functional-Logic Programming: narrowing (needed narrowing).
- High-order Non-deterministic Programming.
- The Curry language.
References
- M. GABBRIELLI, S. MARTINI, Linguaggi di
Programmazione - Principi e Paradigmi,
McGraw-Hill. ISBN: 88-386-6261-4.
- TERESE, Term Rewriting Systems. Cambridge Tracts in Theoretical Computer
Science, Vol. 55, Cambridge University
Press, 2003.
- K.R. A PT , From Logic Programming to
Prolog, International Series in Computer
Science, Prentice Hall, 1997.
- L. STERLING, E. SHAPIRO, The art of Prolog,
MIT Press, 1986.
- H ASSAN A IT -K ACI , Warren’s Abstract
Machine: a Tutorial Reconstruction, MIT
Press, 1991. ISBN: 0-262-01123-9.
- M. HANUS, The Integration of Functions
into Logic Programming: from Theory to
Practice, Journal of Logic Programming,
19-20: 583-628, 1994.
- S. ANTOY, R. ECHAHED, M. HANUS, A Needed Narrowing Strategy, Journal of the
ACM, 2000.
- M. HANUS, S. ANTOY, Curry: a Tutorial
Introduction, 2004.
Consultation Books and Texts:
- HUDAK, FASEL, A Gentle Introduction to
Haskell, 1992.
- B. WADLER , Introduction to Functional
Programming Using Haskell, Prentice Hall
PTR, 1998. ISBN: 0134843460.
COMPUTER NETWORKS
AND SECURITY
Teacher
Prof. Marino Miculan
Dott. Paolo Dal Cin
Credits
6
Aims
The aim of the course is to study the principal concepts of wireless networks and
of security of networks. In particular, the
student will acquire specific competency
about the operation of wireless LANs, the
main requisites of network security, the
design of adequate security policy, and
about the main protocols for network
security.
Program
1. Wireless LANs. Classification, Spread
Spectrum (Direct Sequence, Frequency
Hopping), Networks IEEE 802.11. The
physical layer and MAC in IEEE 802.11.
Bluetooth: design and application.
2. Security of computer networks. Levels
of security, diagnosis and monitoring of a
network, protection of network connections, authentication, integrity, security,
non-reputation. Principle of minimal
security. Evaluation of the security of a
system. Orange book.
3. Basics of cryptography. Cryptoanalysis.
Transposition ciphers, monoalphabetic,
and polyalphabetic ciphers. Product
ciphers. Modern cryptography. Contemporary cryptography. Secret key algo-
372
rithms: DES, IDEA, 3DES, AES. Public
key algorithms: RSA. Examples. Digital
signatures, key management.
4. Security in network protocols. Security
at physical layer in wireless networks:
WEP, WPA. Security at network level:
IPsec. Security at transport level: SSL,
TLS. Design of a screening router, packet
filtering. Security at the application level:
the SET framework.
5. Perimetric defense of a network.
Theory and design of firewalls: multihomed host, bastion host, DMZ. Proxy
server. Example of a firewall. Honeypots,
honeynets. Intrusion Detection Systems
(IDS) and real-time IDS. Intrusion Prevention Systems (IPS).
6. Threats externals to a network. Classification of attacks to a network. Ports and
services. Information gathering techniques (foot printing, network enumeration, DNS queries), scanning (ping scanning, port scanning, etc.). DOS attacks.
Attacks based on the prediction of sequent
numbers and hijacking of TCP sessions.
Man-in-the-middle attack. Attack tools
available to an hacker.
7. Network defense. Defense against
information gathering. Defense against
unauthorized logins. Models for the design of a security plan.
Prerequisites
Computer Networks.
Exams
The examination test includes a written
test and an optional oral test. The written
test contains exercises and questions concerning the course subject.
References
- A.S. TANEMBAUM, Computer Networks, 4th
edition, Addison-Wesley.
- W. STALLINGS, Cryptography and Network
Security, McGraw-Hill, 2004.
- W.R. C H E S W I C K , S.M. B E L L O V I N , A.
LS in Computer Science
R UBIN , Firewalls and Network Security,
Pearson-Addison Wesley, 2003.
DATA WAREHOUSE
Teacher
Dott. Anna Marzona
Credits
6
Aims
The course supplies the fundamental
knowledge on information systems, covering Data Warehousing, multidimensional databases, OLAP Analysis. The course follows the steps required to build data
warehousing systems, looking in depth at
the conceptual and logical design of multidimensional databases. The final lessons introduce data mining as an extension of data warehousing systems. Real
cases taken from business environments
are given as examples and used to experience the design process.
Program
- Decision Support Systems (DSS). Motivations, methodologies and architecture.
- Differences between informational and
applicative systems. Informational
Systems: the multidimensional model
and OLAP analysis. Data Warehouse and
Data Mart: definitions, usage objectives,
differences.
- Data Warehouse Design: data warehousing systems lifecycle. Requirement and
sources analysis. Sources reconciliation.
Main architectural solutions. A conceptual multidimensional model: Data Fact
Model (DFM). Logical models: MOLAP,
ROLAP, HOLAP. Star and Snowflake
schemas. The treatment of variations in
both facts and dimensions.
- Update politics. Generation and update
of the multidimensional data structure.
373
LS in Computer Science
Total and incremental alimentation processes. Extraction, Transformation and
data Loading (ETL): man problems to be
solved, examples of applicable solutions.
- Tools for Data analysis: Reporting,
OLAP browsers, Data Mining. Deepening on the Hypotheses driven approach
and on OLAP analysis.
- Introduction to Data Mining: fundamental problems, application environments, practical aspects.
- Analysis and design of a real-world casestudy: from the entity-relation model to
the multidimensional conceptual and
logical models.
se Toolkit: the Complete Guide to Dimensional Modeling, Hoepli, 2002.
- J. HAN, M. KAMBR, Data Mining, Morgan
Kaufman, 2001.
- I.H. W ITTEN , E. F RANK , Data Mining,
Elsevier, 2005.
Prerequisites
The student should have a good knowledge of the program covered in the course
‘Basi di dati (Relational Databases)’.
Aims
The course analyzes the problems to be
faced, the guidelines, the available tools
and design methodologies in developing
e-commerce services. Topics will be examined from four different viewpoints:
customer (e.g., purchasing style, trust,
usability problems); seller (e.g., Internet
marketing, merchandising, e-commerce
strategies); service (e.g., current structure
of e-commerce services and future developments); and development (available
tools, guidelines, techniques). The course
will also deal with advanced topics such
as exploiting multimedia communication, 1-to-1 E-commerce, and Mobile
Commerce.
Exams
16 two-hours lessons; development of a
project in small groups; individual final
oral examination.
References
- M. GOLFARELLI, S. RIZZI, Data Warehouse: teoria e pratica della progettazione,
McGraw-Hill, 2006.
- M. PIGHIN, A. MARZONA, Sistemi Informativi Aziendali - Struttura e applicazioni,
Pearson Italia, 2004. (Parte 3: I Sistemi
Informazionali).
- Additional materials available on the
course’s Web Page.
Further reading:
- M. PIGHIN, A. MARZONA, Sistemi Informativi Aziendali - Struttura e applicazioni,
Pearson Italia, 2004. (Parte 1 e Parte 2).
- G. BRACCHI., G. MOTTA, Processi Aziendali e Sistemi Informativi, Franco Angeli,
2000.
- A TZENI , C ERI , P ARABOSCHI , T ORLONE ,
Database Systems: Concepts, Languages &
Architectures, McGraw-Hill, 1999.
- R. KIMBALL, M. ROSS, The Data Warehou-
ELECTRONIC COMMERCE
Teacher
Dott. Roberto Pugliese
Credits
8
Program
- Business-to-business (B2B) Applications. Company-centric B2B. From Traditional to Internet-Based EDI. E-Marketplaces and B2B. Extranets. B2B Support
Services.
- Other E-commerce applications. Consumer-to-Consumer (C2C). Dynamic Pricing, Auction. Service Industries, Online
Publishing, and Knowledge Dissemination. Intrabusiness, e-Government. ECommunities.
- Mobile Commerce. Wireless and mobile
374
LS in Computer Science
technologies. M-commerce applications.
Mobile marketing, advertising and customer service. Location-based commerce.
Current limitations of M-commerce.
- Developing E-commerce services. Infrastructure. Tools. Page design. Web programming. E-Commerce Security. Electronic Payment Systems. Order Fulfillment, Logistics, and Supply Chain Management.
- User Interfaces for E-commerce applications. Guidelines. E-commerce Interface
Design. Recent research trends: user
interfaces for 1-to-1 e-commerce, mobile
commerce, experiential e-commerce.
References
- E. TURBAN, J. LEE, D. KING, M. WARKENTIN, H.M. CHUNG, Electronic Commerce: a
Managerial Perspective, 2nd edition, Prentice-Hall, 2002.
- G.P. SCHNEIDER, J.T. PERRY, Electronic
Commerce, 2 nd edition, Thomson Learning, 2001.
EXPERT SYSTEMS
Teacher
Prof. Carlo Tasso
Credits
6
Aims
Provide an introduction to basic techniques for the development of knowledgebased systems and expert systems, and,
more specifically, knowledge representation mechanisms and reasoning algorithms, truth maintenance systems, and
conceptual modelling techniques. Some
significant applications are also illustrated and experimented with some laboratory activities in the field of Web information search and filtering.
Program
Major topics: Introduction to Artificial
Intelligence. Definition of KnowledgeBased System. Knowledge representation
mechanisms and reasoning algorithms.
Semantic networks. Frames. Production
rules. Conceptual Graphs. Non-monotonic reasoning systems. ATMS. JTMS.
Blackboard architecture. Conceptual
modelling techniques. Heuristic classification and generic tasks. Web information retrieval.
Exams
Report on the laboratories activities and
oral examination.
References
- Study materials available on
http://twm.dimi.uniud.it/
- G. GUIDA, C. TASSO, Design and Development of Knowledge-Based Systems, J. Wiley,
1994.
- D. FUM, Intelligenza Artificiale, Il Mulino, 1994.
- C. TASSO, P. OMERO, La Personalizzazione dei Contenuti Web - e-commerce, i-access,
e-government, Franco Angeli, Milano,
2002.
FORMAL METHODS
OF COMPUTER SCIENCE 1
Teacher
Prof. Marina Lenisa
Credits
6
Aims
The aim of this course is to introduce
various formal methods for software and
hardware specification, validation and
verification. Several logical and mathematical techniques for specifying program semantics (operational, denotatio-
375
LS in Computer Science
nal) and several program logics will be
discussed. Particular attention will be
devoted to both parallel and distributed
concurrent programs.
FOUNDATIONS OF
COMPUTER SCIENCE 2
Teacher
Prof. Agostino Dovier
Credits
6
Aims
We will consider with more attention the
technical aspects of the results seen in
Foundations of Computer Science I.
After successfully completing the course
the student will be able to discuss the
decidability (polinomiality) of relevant
problems, using advances reduction techniques, and will know the relevant
notions of formal language theory.
Program
The course is organized in three parts:
formal languages, computability, and
complexity. Formal languages. Summary
of main definition and results on regular
languages. Deterministic and non-deterministic finite state automata and their
equivalence. Regular expressions. The
pumping lemma and its applications.
Closure and decidability properties of
regular languages. The Myhill-Nerode
Theorem and automata minimization.
Context-free languages. Context Free
Grammars and derivation trees. Ambiguous grammars and languages. Chomsky and Greibach normal forms. The
pumping lemma and its applications.
Closure and Decidability properties of
context free languages. Linear grammars,
type 0 and type 1 grammars and Chomsky hierarchy. Computability. Summary
of the main definition and results on primitive functions and Turing machines.
Equivalence theorem between the two
formalisms. Computability and programming languages. The language While:
syntax, semantics, and while-computable
functions. Turing completeness of while.
The language For, For-computable functions and their equivalence with the primitive recursive functions. Undecidability of the halting problem without enumeration. The S-m-n theorem and the
specializers. Kleene recursion theorem,
Rice and Rice-Shapiro theorems and
their applications. Reducibility between
sets. Recursive and complete sets. The
second recursion theorem and Myhil
Theorem. Simple Sets: definition, properties and their existence. Complexity.
Languages and Problems. Deterministic
time complexity classes: main results.
Non-deterministic and space classes.
Main results and relative relationships.
Reductions and Completeness. Cook’s
Theorems. NP-completeness of some
fundamental problemsusing reductions.
Exams
Written and oral examination.
References
- A. DOVIER, R. GIACOBAZZI, Fondamenti
dell’Informatica: Linguaggi Formali, Calcolabilità e Complessità. Available on-line.
- N.J. CUTLAND, Computability: an Introduction to Recursive Function Theory, Cambridge University Press, Cambridge,
1980.
- J.E. HOPCROFT, J.D. ULLMAN, Introduction to Automata, Languages and Computation, Addison-Wesley, Reading, 1979.
- C.H. P APADIMITRIOU , Computational
Complexity, Addison Wesley, 1995.
376
HIGH PERFORMANCE COMPUTING
Teacher
Prof. Dario Fasino
Credits
6
Aims
This course is intended to introduce students to the main issues of parallel computing, that is, computation performed
using multiple processing units, in its
diverse aspects (architectures, languages,
algorithms), with a main emphasis on
scientific computing on cluster architectures. The course focus is on communicating parallel programming concepts
and practices, not strictly bound to specific technologies or computing environments, that can be usefully exploited in
various applicative contexts.
Program
Introduction to parallel architectures:
Flynn taxonomy, shared or distributed
memory, vector computers, superscalar
and multiprocessor computers, clusters;
processor-memory and processor-processor connection topologies; basic parallel
algorithms; process synchronization and
communications; Fundamental parallel
algorithm concepts: data and workload
decomposition, serial and parallel program optimization techniques, granularity, load balancing; message-passing
model: basic concepts and methods, onesided, collective and peer-to-peer communications, synchronous and asynchronous primitives; introduction to BSP,
PVM, MPI, and other scientific computing libraries. Performance analysis:
performance concepts and measures,
speed-up and scalability of parallel algorithms, Amdahl-Ware’s and Gustafsson’s
law, isoefficiency, parallel overhead, communication time analysis. High Perfor-
LS in Computer Science
mance Scientific Computing: case studies from numerical linear algebra (sparse matrix technology, structured matrix
computations) or computational mathematics.
Exams
Final written and oral exam, including
discussion of lab activity.
References
- K. D OWD , C. S EVERANCE , High Performance Computing, O’Reilly, 1998.
- L. RIDGWAY SCOTT, T. CLARK, B. BAGHERI,
Scientific Parallel Computing, Princeton
University Press, 2005.
HUMAN COMPUTER
INTERACTION 1
Teacher
Prof. Luca Chittaro
Credits
6
Aims
The course illustrates principles, design
methodologies and the different implementation choices which allow one to
build software which is usable in a simple, intuitive, productive, and reliable way
by the users for which it is meant. Achieving this goal requires the study of three
different kinds of topics: man (psychological aspects of the user); computer (user
interface development tools); interaction
(analysis, design, and evaluation of
human-machine interfaces). Besides presenting the fundamental concepts of
human-computer interaction, the course
highlights some recent relevant developments of the field, such as 3D Interfaces,
and Groupware systems.
Program
- Introduction: Goals of human-computer
377
LS in Computer Science
interaction and its relevance to the applications of interactive computer systems.
- Psychological Aspects: Cognitive psychology. Sensory channels. Human limitations and expectations in perceptual
processes. Visual perception. Auditory
perception. Haptic perception. Human
memory: sensory, short-term, long-term.
Individual differences. Mental models.
Metaphors. Human error: slip and
mistake.
- Devices for Human-Computer Interaction: Text input devices. Positioning and
pointing devices. 3D devices. Devices for
visual, auditory, and haptic output. Interfaces and devices for disabled users.
- Models and Paradigms of Human-Computer Interaction: Characterizing different phases of interaction. Ergonomic
aspects of interaction. Interaction styles:
from command language to 3D interfaces. Window interfaces (WIMP). Menu
and icon design. Interaction paradigms.
- Human-Computer Interaction and the
Software Life-Cycle: Analysis of usability
requirements. Usability principles. Usercentered design. Usability engineering.
Prototyping techniques. Envisioning
design techniques. Design rationale.
- Environment, User, Task Analysis: Characterizing the context of interaction with
socio-technical models. The USTM/
CUSTOM technique. Task analysis. The
HTA technique. Predictive models:
GOMS, KLM.
- Formal Methods in Human-Computer
Interaction: State transition network and
other diagrammatic notations. Textual
notations. Dialogue analysis and design
with state transition network.
- Guidelines and Standards for User
Interfaces: Definition. Choosing and
using guidelines. Examples of guidelines:
MITRE, Apple, Microsoft, IBM guidelines for 3D interfaces. The ISO 9241 standard.
- Tools for User Interface Implementa-
tion: Windowing System. Programming
techniques. Toolkit. Case study: the Java
toolkit. User Interface Management
Systems.
- Usability Evaluation: Goals of evaluation. Recording tools. Observing the user.
Collecting opinions. Interviews. Questionnaires. Experiments. Predictive evaluation. Cognitive walkthrough. Interpretive evaluation.
- Help: Assisting the user. Requirements
for help systems. Main approaches.
Adaptive and adaptable interfaces.
- Computer-Supported Cooperative
Work: Groupware. Computer-mediated
communication. E-mail and textual communication systems. Videoconference.
Virtual collaborative environments.
Workflow systems. Experimental and
organizational aspects.
- Recent Paradigms of Human-Computer
Interaction: Ubiquitous computing. Virtual reality. Types of virtual reality. Multisensory (or multi-modal) interfaces.
Information visualization. Hypertext.
Multimedia and Hypermedia interfaces.
References
- A. DIX, J. FINLAY, G. ABOWD, R. BEALE,
Human Computer Interaction, 3rd edition,
Prentice Hall, 2003.
- J. P REECE , Y. R OGERS , H. S HARP , D.
BENION, S. HOLLAND, T. CAREY, Human
Computer Interaction, Addison Wesley,
1994.
HUMAN COMPUTER
INTERACTION 2
Teacher
Prof. Luca Chittaro
Credits
6
Aims
The main goal of the course is to explore
378
the most recent developments and trends
in Human-Computer Interaction and to
study the most important applications
that are deriving from them. The course
topics belong to three equally important
categories: Information Visualization
(design of a visual interface and visualization techniques), Interacting with mobile
devices and services (e.g., mobile phones,
PDAs, on-board vehicle systems), Virtual
Reality (Immersive, Desktop, or Webbased).
Program
- Information Visualization (IV). Information Visualization (IV): definitions. Data
vs. Information. Goals of IV. Information
Visualization vs. Scientific Visualization.
Issues involved in IV Design. Mapping:
principles, visual attributes, examples.
2D vs. 3D visualizations. Typical IV design problems. A model for IV. A classification of data types: Categorical, Numerical, Topological, Symbolic, Textual Data.
An alternative classification of data types:
1-dimensional, 2-dimensional, 3-dimensional, temporal, multi-dimensional,
tree, network. A classification of task
types: overview, zoom, filter, details-ondemand, relate, history, extract. - Techniques for visualizing and interacting with
data. Bivariate, Trivariate, Multivariate
data: Scatterplots, Mosaic Display, Parallel coordinate plots, Starplot, Chernoff
Faces, Hierarchical Axis, Dimensional
Stacking, Dynamic Queries, Alphasliders, The Attribute Explorer, SDM (Selective Display and Manipulation). InfoZoom. Pixel-oriented visualizations:
screen-filling curves, recursive pattern,
circle segments. Trees: Treemaps, Cone
Trees, Camtrees, Star Tree, Hyperbolic
Trees. Networks: SeeNet, HierNet, NetMap. Temporal data: Lifelines, AsbruView, Paint Strips. Documents: TileBars,
document Galaxies, Themescape, Citeseer-Relator, MDS-interactive. Informa-
LS in Computer Science
tion Workspace: Rooms, Web Forager,
Windows Task Gallery, Sun Looking
Glass. - The presentation problem. Overview+Detail techniques. Focus+Context
techniques. Distortion-oriented techniques. Table Lens. Perspective Wall. Fisheye view. - Case study: IV for the internet
and the web. NattoView. Self-organizing
maps. Skitter. Cichlid. Web Forager. Disk
tree. Time tube. Dome tree. Web page
caricatures. Visualizing Social activities
on the Web.
- Case study: IV in medicine. Visualizing
medical data: medical imaging vs. IV. A
gallery of examples: Therapy Planning,
Interactive Data Exploration of clinical
databases, Digital libraries of anatomical
images, Preoperative Surgery Planning,
Treatment of Phobias, Magnetic Resonance Image Viewing, visual data mining
of Hemodialysis data.
- Cognitive and human factors in IV. Visual
perception aspects. Navigation in abstract
or physical spaces. Improving navigation.
Navigation aids. User Evaluation of IV
systems. Detailed case studies: querying
medical databases, 3D navigation aids.
- Mobile HCI. Mobile and Wireless Devices. Mobile Operating Systems. Wireless
Networks. Differences between the mobile context and the desktop PC context.
Size issues in mobile devices. Cultural
issues. Social issues. The Mobile User
Experience.
- Mobile phones. Mobile Phones: Historical Data. User Interfaces (UIs) of Mobile
Phones. Mobile Product Categories. UI
Styles in Mobile Phones. Example: Twosoftkey UI vs. Navi-key UI. Usability of
different UI Styles. Evolving different UI
Styles. Case Study: unexpected reactions
to Nokia Ringo. Case Study: the Nokia
Navi-roller failure. Interface Elements of
Menu-based Mobile Phones. Menu Interfaces in Mobile Phones. Call-related Interactions. Number of Keys in Mobile Devices.
379
LS in Computer Science
- Evaluation in mobile HCI. Ethnographic
methods. Case study: Indian users. Paper
Prototyping Tour. Controlled experiments. Case Study: a mixed-design experiment with WAP phones. Longitudinal
User Studies. Example: the Nokia OneRow Keyboard.
- Mobile information visualization. Visualizing data for mobile users. Visualizing
data about mobile users. Relevant
Subjects of Mobile Visualizations. Visualizing text on mobile devices. Visualizing
maps on mobile devices. DateLens.
- In-car user interfaces and safety issues.
Centralized Control Systems. Examples:
COMAND, Connect, iDrive, future concepts. Using the Keystroke-level model in
the Automotive Domain (SAE J2365).
Distraction-related crashes. Types of driver distraction. Task performed by drivers with mobile devices (cell phones,
navigation systems, Internet services).
Measuring driver distraction and behavior. Reducing risks.
- Interaction with virtual reality systems.
General architecture of a virtual reality
(VR) system. Output peripherals: headmounted displays, 3D Glasses, new types
of display, 3D projection, CAVE, retinal
display, 3D positional audio. Input
peripherals: trackers, data glove, phantom.
- 3D interactive graphics. Rendering engine. Tools for developing interactive 3d
environments. Typical trade-offs. Physically-based computer animation. Particle
systems. Example: cloth and dress simulation.
- Designing 3D web sites. Issues in 3D Web
site design. Added value. A case study:
designing the 3D Web site of the Italian
Aerobatic Team.
- Virtual humans. Avatars. Ergonomic
dummies. Autonomous agents. Embodied interface agents. General architecture. Applications.
References
Suggested Readings: - R. SPENCE, Information Visualization, Addison Wesley,
2000.
- C. LINDHOLM, T. KEINONEN, Mobile Usability, McGraw-Hill Education, 2003.
- W.R. SHERMAN, A.B. CRAIG, Understanding Virtual Reality: Interface, Application,
and Design, Morgan Kaufmann, 2000.
IMAGE PROCESSING: THEORIES
AND TECHNIQUES
Teacher
Prof. Vito Roberto
Credits
6
Aims
The Course gives an overview on principles and techniques of pattern recognition, for what concerns image acquisition, analysis, interpretation and communication. All the topics are supported by
practical sessions, based on the hw/sw
resources available at the Machine Vision
Laboratory, Dept. Informatics, University
of Udine, Italy. Informations about the
Machine Vision Lab are available on the
Internet, at the WWW site:
http://mvl.dimi.uniud.it/
Program
Signal and image representations. Analog
and digital signals and images. Correlation, convolution. Statistical representations. Representations in the frequency
domain. Applications: linear filtering;
sampling; acquisition models. Early
visual processing. Image filtering and filtered representations. Statistical filtering.
Fourier filtering. Derivative operators
and edge extraction. Improving robustness: edge linking, following and clustering. Image segmentation: global and
local techniques.
380
LS in Computer Science
Practical sessions. Three main topics are
covered:
- Statistical signals;
- Representations in the frequency
domain;
- Image representations and processing
The sessions adopt the software environment MATLAB (a trade mark of The
Mathworks, Inc.), version 5.1.0.421, with
the specialized toolboxes: Signal Processing (4.0.1); Statistics (2.1.0); Image Processing (2.0).
References
- Lecture notes are available both in electronic and paper formats at the WWW
site reported here above.
Suggested references are:
- D.H. BALLARD, C.M. BROWN, Computer
Vision, Prentice Hall, 1982.
- R. KLETTE, P. ZAMPERONI, Handbook of
Image Processing Operators, Wiley, 1996.
- J.C. RUSS, The Image Processing Handbook, CRC Press, 1995.
IMAGES AND MULTIMEDIA
Teacher
Prof. Vito Roberto
Credits
6
Aims
The Course gives an overview on principles and techniques of pattern recognition, for what concerns image acquisition, analysis, interpretation and communication. All the topics are supported by
practical sessions, based on the hw/sw
resources available at the Machine Vision
Laboratory, Dept. Informatics, University
of Udine, Italy. Information about the
Machine Vision Lab are available on the
Internet, at the WWW site: http://mvl.
dimi.uniud.it/
Program
Introductory machine vision. Image acquisition models. Image formation and
camera model. Stereo Vision models. Stereo reconstruction algorithms. Motion
analysis and reconstruction.
Synthesis of 3D worlds. The Virtual Reality
Modeling Language (VRML). Rendering
techniques of VRML objects: color,
sound, motion.
Images and multimedia systems. Multimedia object terminology. Compression and
coding principles. Standards of compression and coding: JPEG, MPEG.
Practical sessions. Two main topics are
covered:
- 3D Reconstruction algorithms: tomography, stereo matching;
- Algorithms for motion analysis The sessions adopt the software environment
MATLAB (a trade mark of The
Mathworks, Inc.), version 5.1.0.421, with
the specialized toolboxes: Signal Processing (4.0.1); Statistics (2.1.0); Image Processing (2.0).
References
- D.H. BALLARD, C.M. BROWN, Computer
Vision, Prentice Hall, 1982.
- R. KLETTE, P. ZAMPERONI, Handbook of
Image Processing Operators, Wiley, 1996.
- J.C. RUSS, The Image Processing Handbook, CRC Press, 1995.
INFORMATION THEORY
Teacher
Prof. Agostino Dovier
Credits
6
Aims
The course deals with the foundations of
Information Theory, with particular
emphasis on data compression and error
correcting codes.
381
LS in Computer Science
Program
The course is organized in two parts:
Source Coding and Channel Coding.
Source Coding. B-LV codes. Code trees.
Uniquely Decodable and Instantaneous
Decodable Codes. Kraft-McMillan Inequality. Discrete Probability and Expected
Length of a code. Entropy, Divergence,
and Shannon first Theorem. ShannonFano codes. Memoryless Information
Sources. Rate and asymptotical optimality of Shannon-Fano codes. Fano and
Huffman codes. Conditional Entropy,
Mutual Information, Self Information.
Universal (multinomial) Code and its
optimality. LV-B codes. Exhaustive and
Complete Families. Tunstall trees and
coding and their optimality. B-B codes.
Code value in error-free coding. Coding
with error: delta typical sequences and
the second Shannon Theorem. LV-LV
codes. Asymptotically optimum codes.
Ziv-Lempel, Ziv-Lempel-Welch, and Burrows-Wheeler Universal codes. Channel
Coding. Parity check, repetition, and
Hadamard codes. Mathematical formalization of the channel. Channel’s capacity:
definition and computation on some
channels. Shannon’s channel coding
Theorem. Maximum likelihood decoding. Minimum distance of a code, code
rate and its relationships with error probability. Singleton, Plotkin, Hamming,
and Gilbert limitations. Error correcting
codes: introduction to algebraic codes.
Decoding using Slepian’s table. Hamming codes. Perfect codes: main results.
BCH codes and Reed-Muller codes.
Cyclic codes: main definitions, generator
and check matrixes, generator polynomial. Using primitive roots for the project
of cyclic codes. Relationships with the
minimum distances. Convolutional
codes and Viterbi’s algorithm. A brief
history of cryptography and main results
of public key cryptography.
Exams
Oral Examination.
References
- F. FABRIS, Teoria dell’Informazione, codici, cifrari, Bollati-Boringhieri, Torino,
2001.
- E. BERLEKAMP, Algebraic Coding Theory,
McGraw-Hill, 1968.
- R. G ALLAGER , Information Theory and
Reliable Communication, Wiley, New
York, 1968.
- F.J. M AC W ILLIAMS , N.J. S LOANE , The
Theory of Error Correcting Codes, North
Holland, 1977.
LANGUAGES AND MODELS
FOR GLOBAL COMPUTING
Teachers
Prof. Marina Lenisa
Prof. Marino Miculan
Credits
6
Aims
The recent shift from the standalone
computational model to the interconnected, global computing has enlightened
many subtle issues concerning distributed computation. The need of reasoning
formally and rigorously about these new
aspects has led to investigate and develop
new models, techniques and methodologies which overcome the limitations of
traditional program logics. In this course,
we will present some of the most successful abstract models and formal methods
for global and ubiquitous computing. In
particular, we will focus on calculi for
systems with dynamic topology, with
cryptographic protocols and with mobility of computations. Applications and
open problems of this cutting-edge
research field will be presented as well.
382
Program
1. Introduction to the calculi for concurrency. The CCS. 2. The p-calculus: syntax,
operational semantics (late and early),
bisimulation (late, early, open). 3. The
spi-calculus. Syntax, operational semantics, typing system, security by typing. 4.
The calculus of mobile ambient. Syntax,
operational semantics, modal spatial
logic, typing systems. Variants of the
pure calculus.
Prerequisites
Formal Methods of Computer Science 1.
Exams
Monographic seminar on a subject related to the course.
References
- Course handouts, papers and notes
from the teachers.
MANAGEMENT INFORMATION
SYSTEMS
Teachers
Prof. Carlo Tasso
Prof. Maurizio Pighin
Credits
6
Aims
The main objective of the course is the
introduction to the problems related with
the computerized Management Information System (MIS) in a complex organization. The concept of MIS is defined, as
well as methods and techniques for analysis, design, implementation and management of MIS. Both the technical and the
organizational points of view are considered. The laboratory course (4 CFU) consists of a case study with the complete
LS in Computer Science
analysis of enterprise information
system.
Program Introduction to the concept of
MIS: Definition of MIS. Economic relevance of MISs. Professional competence
related to MISs. MIS life cycle. MIS
Architecture: Modelling a complex organization. Business processes. Value
chain. Various architectural organizations of MISs. Application Portfolio.
Make, buy and outsourcing. Cost and
Performance: MIS development methodologies. Cost/benefit analysis. Risk
analysis. Managing a MIS: Resource
organization and decision processes.
Acquisition and Procurement. Project
management and planning. Enterprise
Resource Planning: Major data and information flows: administration and finance, logistics, production, marketing and
sales, procurement. Advanced systems:
E-commerce and One-to-One Marketing.
Customer Relationship Management
(CRM). Data Warehousing and Data
Mining. Business Intelligence.
Exams
The exams consists in the discussion of
an industrial case-study, followed by an
oral examination. Alternatively there is a
written/oral examination.
References
- G. BRACCHI, C. FRANCALANCI, G. MOTTA,
Sistemi Informativi e aziende in rete,
McGraw-Hill Italia, Milano, 2001.
- M. PIGHIN, A. MARZONA, Sistemi Informativi Aziendali - Struttura e Applicazioni,
Pearson Education Italia, 2005. Other
Textbooks:
- M. DE MARCO, Sistemi Infomativi Aziendali, Franco Angeli Edizioni, Milano,
2000.
- G. BRACCHI, G. MOTTA, Processi Aziendali e Sistemi Informativi, Franco Angeli edizioni, Milano, 2000.
383
LS in Computer Science
- P.F. CAMUSSONE, Il Sistema Informativo
Aziendale, Etas, 2000.
- D. AMOUR, E-Business (R)Evolution, Tecniche Nuove, 2000.
MATHEMATICAL LOGIC
Teacher
Prof. Giovanna D’Agostino
Credits
6
Aims
The aim of the course is to gain an adequate understanding of the theoretical
aspects of applications of Logic to Computer Science, with a particular emphasis
on completeness and correctness issues,
decidability and expressive power of classical and non classical logics.
Program
Resolution for propositional and first
order logic; Introduction to Prolog; Modal
and Temporal Logics.
Exams
Written and oral examinations.
References
- N ERODE , S HORE , Logic for Application,
Springer.
- B LACKBURN , DE R IJKE , V ENEMA , Modal
Logic, Cambridge Tracts in Theoretical
Computer Science, 53.
Aims
This course presents an introduction to
statistical inference based on the likelihood.
Program
- Probability complements The bivariate
and the multivariate normal distribution;
the distribution of linear combinations
and quadratic forms of normal vectors.
- Statistical models Parametric and nonparametric models; special parametric
models; graphical methods for checking
model adequacy (probability plots, density estimation).
- Inference: basic procedures Point estimation; hypotheses testing; confidence
regions; Kolmogorov-Smirnov tests;
simulation.
- The likelihood function Motivation and
basic definitions; the maximum likelihood estimator; the maximum likelihood tests; interest and nuisance parameters: the profile likelihood; penalised
likelihood and model selection.
Exams
The examination consists in a practical
part, mainly exercises, and in an oral
discussion.
References
- Lecture notes.
- A. AZZALINI, Inferenza Statistica: un’introduzione basata sul concetto di verosimiglianza, Springer-Verlag, 1992.
- L.J. BAIN, M. ENGELHARDT, Introduction
to Probability and Mathematical Statistics,
PWS-Kent Publishing co., 1992.
MATHEMATICAL STATISTIC 1
MATHEMATICAL STATISTIC 2
Teacher
Prof. Luigi Pace
Credits
6
Teacher
Prof. Luigi Pace
Credits
6
384
LS in Computer Science
Aims
This course gives theoretical complements on parametric statistical inference
based on the likelihood and presents
some applications to regression models.
Program
- The likelihood: theoretical aspects The
immutability of likelihood; sufficient statistics and likelihood; asymptotic sampling distributions of likelihood quantities and their usefulness as approximations. - Optimal procedures Minimum
variance unbiased estimators; most
powerful tests; most accurate confidence
regions; the main theorems.
- Binomial models The sign test; logistic
regression; the Newton-Raphson algorithm. - Multinomial models Estimation
of cell probabilities; the goodness-of-fit
test; test of independence in contingency
tables.
- Poisson models. - Normal models Estimation and tests; linear regression
models.
Exams
The examination consists in a practical
part, mainly exercises, and in an oral
discussion.
References
- Lecture notes.
- A. AZZALINI, Inferenza Statistica: un’introduzione basata sul concetto di verosimiglianza, Springer-Verlag, 1992.
- L. PACE, A. SALVAN, Teoria della Statistica,
CEDAM, 1996.
MEDICAL INFORMATICS
Teacher
Dott. Vincenzo Della Mea
Credits
6
Aims
The Medical Informatics course is aimed
at introducing students to the problems
related to introduction of ICT into the
health care field. This will be obtained by
starting from an introduction to basic
data and reasoning features in Medicine.
Peculiar attention will be posed on clinical information systems, of traditional
kind like Electronic Healthcare Records
as well as aspects related to decision support (protocols and terminologies).
During the course some general topic will
be mentioned too, when it has interest for
its medical application. In particular, biosignal and bioimage processing and
Semantic Web applications will be discussed.
Program
1. Data and reasoning in Medicine.
2. Electronic Healthcare Records:
- features;
- implementation and available standards.
3. Terminologies and classifications.
4. Protocol-based systems.
5. Biosignal and bioimage processing.
6. Medical applications of the Semantic
Web.
Exams
Each student will deepen a course topic,
by means of one of the following possibilities: an internal seminar during the
course, a written report, or a short project.
This is followed by an oral examination.
References
Suggested readings:
- E.H. SHORTLIFFE, L.M. FAGAN, G. WIEDERHOLD, L.E. PERREAULT, Medical Informatics: Computer Applications in Health
Care and Biomedicine, 2nd edition, Springer-Verlag, 2000.
- J. V AN B EMMEL , Handbook of Medical
Informatics, 2nd edition, Springer-Verlag,
2002.
385
LS in Computer Science
- E. COIERA, Guida all’Informatica Medica,
Internet e Telemedicina, Pensiero Scientifico, 2000.
- Slides and other material provided by
the teacher. The course web site can be
found at http://mitel.dimi.uniud.it/med/
MODEL CHECKING
Teacher
Prof. Giovanna D’Agostino
Credits
6
Aims
To give an introduction to the techniques
of Model Checking for verifying the correctness of programs. In particular we
will develop the necessary prerequisites
to present and use efficient algorithms
for the verification of programs based on
Classical and Symbolic Model Checking.
Program
Introduction and Preliminaries: Classical
and Modal Logic. Temporal Logic. Automata and infinite words. Computational
Complexity. Basic Technique: Formal
representation of systems and properties.
Verification (hardware and software).
Basic Model Checking. State Explosion
problem and Symbolic Model Checking,
OBDD. Advances Technique: Model
Checking for more expressive languages.
Automata Model Checking. Model
Checking and infinite state systems.
Temporal Automata. Real-time Model
Checking. An introduction to the Model
checkers SPIN, SMV, NuSMV, VIS, with
examples.
References
- E. C LARKE , O. G RUMBERG , D. P ELED ,
Model Checking, MIT press, 1999.
- R. A LUR , D.L. D ILL , A Theory of Timed
Automata, Theoretical Computer Science, 126:183-235, 1994.
- R. ALUR, C. COURCOUBETIS, N. HALBWACHS, T.A. HENZINGER, P. HO, X. NICOLLIN,
A. O LIVERO , J. S IFAKIS , S. Y OVINE , The
Algorithmic Analysis of Hybrid Systems,
Theoretical Computer Science, 138:3-34,
1995.
Remark: the course will take place in the academic year 07/08 but not in 08/09.
MODELS AND ALGORITHMS
FOR RESOURCE MANAGEMENT
Teacher
Prof. Franca Rinaldi
Credits
6
Aims
Purpose of the course is to present some
fundamental classes of problems, models
and techniques used in the management
of transportation and production-distribution systems. To complete the overview of the methods of Optimization, we
also introduce the class of the approximation algorithms and some local search
techniques.
Program
- Approximation algorithms and local
search techniques (12 hours). Approximation algorithms and Polynomial
approximation schemes. Examples. Local
search techniques: Simulated Annealing
and Tabu Search. Examples.
- Routing (18 ore). Arc routing problems:
the Chinese Postman Problem, the Rural
Postman Problem and their variants.
Node routing problems: the Traveling
Salesman Problem, the Vehicle Routing
Problem and their variants. For the different problems we present both ILP
models and exact and/or heuristic algorithms.
386
LS in Computer Science
- Scheduling (18 ore). Definition, analysis
and classification of scheduling problems. One machine models. Parallel
machine models. Open Shop, Flow Shop
and Job Shop scheduling.
Exams
The exam consists of an oral discussion.
References
Lecture notes.
MODERN LANGUAGES
Teacher
Prof. Agostino Dovier
Credits
6
Aims
The student will learn the foundations of
the modern declarative programming
paradigms based on the notion of constraint. Particular emphasis will be given
on constraint logic programming and on
answer set programming. Those languages are nowadays successfully employed
for encoding optimization problems (e.g.
scheduling, timetabling, planning, etc).
Semantics and implementation techniques will be rigorously presented, and the
languages will be also studied from a
practical point of view in lab.
Program
Brief summary of first-order logic, with
particular emphasis on syntactic and
semantic unification and on the resolution algorithm. Summary of Horn clauses-based programming languages; their
Turing completeness and semantics.
Logic Programming with Constraints:
Syntax and Semantics. Declarative programming: Generate test vs. Constrain
generate. Constraints over finite domains
and their solvers. Some case studies to
develop in lab: N-queens, Map Coloring,
puzzles, scheduling problems, computational biology problems, and games.
Answer Set Programming: Syntax and
Semantics. Using ASP for encoding NPcomplete problems. Foundations of Concurrent Constraint Programming and the
LINDA coordination model.
Exams
Development of a project and oral examination.
References
- K. MARRIOTT, P. STUCKEY, Programming
with Constraints, The MIT Press, 1998.
- K.R. A PT , Principles of Constraint Programming, Cambridge University Press,
2003.
- A. DOVIER, Course lecture notes available on-line.
- K.R. A PT , From Logic Programming to
Prolog, International Series in Computer
Science, Prentice Hall, 1997.
- L. STERLING, E. SHAPIRO, The Art of Prolog, 2nd edition, The MIT Press, 1994.
- Material made available during the course.
MULTIMEDIA SYSTEMS
Teacher
Prof. Elio Toppano
Credits
6
Program
Introduction. Communication and information processes: the FRISCO framework. Basic elements of semiotics.
Multimedia: taxonomies of multimedia
objects, relationships (spatial, temporal,
syntactic and semantic) among media
objects. Ipertexts and ipermedia: the Dexter model. Uses of ipermedia. Modelling
LS in Computer Science
multimedia presentations: the SMIL language. Multimedia Building blocks Digital Text: character sets and alphabets, text
formats, writing texts for the web. Sound:
MIDI versus digital audio, preparing digital audio sounds, sampling and quantisation, compression standards, editing
techniques, file formats, making MIDI
audio, audio 3D, adding sound to multimedia projects. Images: bitmap and vector graphics, 2-D and 3-D drawing and
rendering, understanding light and
colour, image file formats and compression techniques, images transformations
and restoring. Animation: principles of
animation, making animations for the
web. Virtual reality. Digital video: television standards, DV, video compression
(MJPEG, and the MPEG.xx family), non
linear editing, video delivery, adding
video to web sites. Media integration and
design methodology Guidelines for
media integration. User centred design:
usability and accessibility. Media development stages, methods and tools. Distributed Multimedia systems and applications
HW and SW infrastructures. Multimedia
Operating Systems. Streaming audio e
video. Main streaming architectures:
QuickTime, Real Media, Windows Media.
Unicasting and Multicasting. Videoconference. Quality of service. Standards for
videoconference. Applications for e-learning and web-based instruction.
OBJECT ORIENTED
ANALYSIS AND DESIGN
Teacher
Prof. Stefano Mizzaro
Credits
6
Aims
To present the advanced concepts and
387
techniques for Object Oriented (OO)
analysis and design. Basic OO programming principles are supposed to be
known. The course will be neither too formal nor too practical, but mainly conceptual. Focal topics are: UML (Unified
Modeling Language), principles leading
to good quality OO design, and design
patterns. Also case studies from real
world problems will be discussed.
Program
- UML for design. UML diagrams used
for software design: class, collaboration,
sequence, state, activity, component, and
deployment diagrams.
- OO Design principles. Concepts and
techniques leading to good OO design,
for instance: domains, encumbrance,
cohesion, state space, behavior, type
conformance, design by contract, etc.
- Design patterns. Design patterns are for
OO design what structured programming is for classical imperative programming. Patterns are recurrent solution
schema and their knowledge simplifies
the design of new software. Main patterns are presented and discussed.
- UML for analysis. The UML description
is concluded by presenting conceptual
class and case use diagrams. The main
issues of OO analysis with UML are
discussed.
- Case studies. The concepts and techniques introduced during the course are
exemplified in real world cases, by means
of seminars (by invited experts or, optionally, by students). Possible topics are:
group development of UML models; tools
for UML diagrams (e.g., Rational Rose);
eXtreme Programming (XP); analysis of
Java APIs (standard edition, enterprise
edition, micro edition); development of
Web applications (servlet, Java Server
Pages, EJB); UML extensions for Web;
refactoring; other OO languages like C++
or C#; agent programming as an exten-
388
LS in Computer Science
sion of object oriented programming;
Jini; etc.
Exams
Oral examination plus optional (but
warmly suggested) term projects or seminars, that lead to a simpler oral exam and
to higher marks. A laboratory can be attached to the course, in which case the
project and/or seminar is more demanding.
References
- M. P AGE -J ONES , Progettazione a oggetti
con UML, Apogeo, Milano, 2002. ISBN:
88-7303803-4.
- E. GAMMA, R. HELM, R. JOHNSON, J. VLISSIDES, Design Patterns, Addison Wesley,
1997. ISBN: 0201634988.
- M. F O W L E R , K. B E C K , J. B R A N T , W.
OPDYKE, D. ROBERTS, Refactoring: Improving the Design of Existing Code, AddisonWesley, 1999. ISBN: 0201485672.
- A. SHALLOWAY, J. TROTT, Design Patterns
Explained - A New Perspective on Object
Oriented Design, Addison Wesley, 2002.
ISBN: 0201715945.
OPERATIONS RESEARCH
Teacher
Prof. Paolo Serafini
Credits
6
Web Page
http://www.dimi.uniud.it/~serafini/ROI
NF0607.html
Aims
Operations Research deals with efficient
management problems via a mathematical and algorithmic approach. The course
aims at giving the student both the basic
tools to design a viable mathematical
model of a real problem and the necessary understanding of the mathematical
and algorithmic properties of the models,
with a special emphasis to linear programming. Several examples will be provided toward this goal. Most models will
be solved by using Excel or other linear
programming packages.
Program
- Introduction to linear programming.
General modeling issues: constraint
identification, soft and hard constraints;
objective identification; objectives and
constraints. Explicit objectives. Pareto
optima. Example of the diet problem:
modeling via linear programming. Sensitivity analysis. Identification of further
objectives. Efficient frontier identification. Integrality constraints. Model refinement.
- Linear programming properties. Geometric structure. Vertices and basis solutions. Dual problem. Complementarity.
Overview of simplex method. Overview of
branch-and-bound methods for integer
variables.
- Routing models 1. Dynamic programming. Opitmality principle. Recursive
equation. Shortest paths (Bellman-Ford,
Dijkstra, Floyd-Warshall).
- Routing models 2. Capacitated shortest
paths: network flow problems. Minimum
cost flows. Max Flow. Minimum cuts.
- Routing models 3. Traveling salesman
problem (cutting plane formulation).
Eulerian circuits. Matching. Minimal
spanning trees (Kruskal and Prim algorithms).
- Allocation models. Assignment. Knapsack. Bin packing. Staffing models. LP
with column generation: cutting stock,
max flow, crew scheduling.
- Scheduling. Infinite resource scheduling: PERT. Finite resource scheduling:
one machine problems, parallel machine
problems, flow-shop, job-shop and open-
389
LS in Computer Science
shop. The detailed plan of the lectures is
available
at
http://www.dimi.uniud.it/~serafini/ROI
NF0607.html
Exams
Oral examination.
References
- Lecture notes available on-line.
- P. SERAFINI, Ottimizzazione, Zanichelli,
Bologna, 2000.
- L. SCHRAGE, LINDO: An Optimization
Modeling System, Palo Alto Scientific
Press, 1991. Information on Operations
Research and Optimization may be
found at INFORMS (Institute for Operations Research and Management Science),
http://www.informs.org/ or at CIRO (Centro
Interuniversitario in Ricerca Operativa),
http://www.disp.uniroma2.it/ciro/index.ht
ml.
OPTIMIZATION 1
tools to Operations Research. In the course the fundamental topics of Optimization will be covered with emphasis on the
mathematical and algorithmic properties.
Program
Introduction to optimization problems (4
hours).
Basics of computational complexity (12).
Algorithm complexity. Problem complexity. Class P. Class NP. Trasformations. NP-complete problems.
Basics of convex analysis (6). Definitions.
Separation theorem. Supporting planes.
Convex functions.
Duality (8). Dual problem. Optimality
Conditions. Examples. Duality and convexity. Differential properties of duality.
Duality and sensitivity.
Linear programming (18). Geometric properties. Algebraic properties. Complementarity. Simplex method. Variants of
the Simplex method. Interior point
methods.
Teacher
Prof. Franca Rinaldi
OPTIMIZATION 2
Credits
6
Teacher
Prof. Franca Rinaldi
Aims
‘Operations Research aims to provide
rational bases for decision making by
seeking to understand and structure
complex situations and to use this understanding to predict system behavior and
improve system performance. Much of
this work is done using analytical and
numerical techniques to develop and
manipulate mathematical and computer
models of organizational systems composed of people, machines, and procedures’(INFORMS, What is OR/MS?) Optimization is one of the main theoretical
disciplines which provide the analytical
Credits
6
Aims
‘Operations Research aims to provide
rational bases for decision making by
seeking to understand and structure
complex situations and to use this understanding to predict system behavior and
improve system performance. Much of
this work is done using analytical and
numerical techniques to develop and
manipulate mathematical and computer
models of organizational systems composed of people, machines, and procedu-
390
res’(INFORMS, What is OR/MS?) Optimization is one of the main theoretical
disciplines which provide the analytical
tools to Operations Research. In the course the fundamental topics of Optimization will be covered with emphasis on the
mathematical and algorithmic properties.
Program
Network flows (14). Optimality conditions:
Gamma curve. Residual network. Polynomial algorithms for Shortest Path (Dijkstra) and Max Flow. Network Simplex.
Deterministic dynamic programming (12).
Optimality principle. Bellman’s equation.
Bellman-Ford algorithm for general
networks. Algorithm for acyclic and layered networks. Floyd-Warshall algorithm.
Knapsack problems. Combinatorial problems.
Combinatorial optimization (22). Matching problems. Matroids and spanning
trees. Polyhedral combinatorics.
REACTIVE SYSTEMS: AUTOMATA,
LOGIC AND ALGORITHMS
Teacher
Prof. Angelo Montanari
Credits
6
Program
Part 1. Reactive Systems Reactive and
real-time systems, fair transition systems,
a simple programming language (SPL):
syntax and semantics, modules, logical
specifications and their properties, the
use of temporal logic for the specification, verification, and validation of programs.
Part 2. Automata on Infinite Objects
Automata on infinite words: notation,
BÃ_chi automata, congruencies and
LS in Computer Science
complementation, the sequential calculus, determinism and McNaughton
Theorem, elements of game theory, game
theory and star-free languages, star-free
omega-languages and temporal logic.
Automata on infinite trees: notation,
automata on finite trees, BÃ_chi and
Rabin non-deterministic automata on
infinite trees and their relationships,
emptiness problem and regular trees,
complementation and determinacy of
games, monadic tree theory and decidability results.
Part 3. Modal and Temporal Logic Introduction, classification of temporal logics,
linear temporal logics, branching temporal logics, a framework for concurrent
computation: abstract and concrete computational models, concurrent computation and temporal logic, expressiveness,
decidability, and complexity of temporal
logics, satisfiability-checking and modelchecking algorithms, other interesting
modal and temporal logics in computer
science (a short account).
Part 4. Verification and Validation of
Reactive Systems Satisfiability-checking
and model-checking algorithms for the
verification of finite-state programs: satisfiability and validity of temporal formulas, satisfiability and validity with respect
to a finite-state program, examples.
Part 5. Verification of infinite state
systems(a short account) Introduction,
basic techniques, context-free and prefixrecognizable graphs, rational and automatic graphs, the contraction method.
reachability problems.
References
- W. THOMAS, Automata on Infinite Objects,
in J. VAN LEEUWEN (ed.), Handbook of Theoretical Computer Science, Vol. B, chapter 4,
Elsevier Science Publisher, 1990.
- W. THOMAS, Languages, Automata, and
Logic, in G. R O Z E N B E R G , A. S A L O M A A
(eds.), Handbook of Formal Languages,
391
LS in Computer Science
Vol. III, Springer, pp. 389-455, 1997.- D.
PERRIN, J. PIN, Infinite Words, Pure and
Applied Mathematics Series, Elsevier,
2004.
- E.A. E MERSON , Temporal and Modal
Logic, in J. VAN LEEUWEN (ed.), Handbook
of Theoretical Computer Science, Vol. B,
chapter 16, Elsevier Science Publisher,
1990.
- Z. MANNA, A. PNUELI, The Temporal Logic
of Reactive and Concurrent Systems: Specification, Springer, 1992.
- Z. MANNA, A. PNUELI, Temporal verification of Reactive Systems: Safety, Springer,
1995.
REAL-TIME RENDERING
cal usage of OpenGL - analysis and practical usage of a rendering engine.
Exams
The student is required to present a practical project that uses and/ or extends
some of the arguments or tools presented
in the course. The exam then consists in a
discussion about the project and questions about the course arguments.
References
- T. A KENINE -M ULLER , E. H AINES , RealTime Rendering, A.K. Peters Ltd. ISBN:
1568811829.
- E. ANGEL, Interactive Computer Graphics:
a Top-Down Approach with OpenGL, Addison-Wesley. ISBN: 020138597X.
Teacher
Dott. Roberto Ranon
ROBOTICS
Credits
6
Teacher
Dott. Antonio D’Angelo
Web Page
http://www.dimi.uniud.it/ranon/int3d.h
tml
Credits
6
Aims
The course will cover main real-time rendering algorithms and tools, also introducing the relevant application areas (videogames, scientific visualization). The course will present both theoretical (such as
popular techniques for real-time rendering) and practical (such as programming
libraries and rendering engines) aspects.
Program
The real-time rendering pipeline - the
graphical primitives - transforms - lighting and shading: basic and advanced
techniques - basic and advanced usage of
textures - image-based rendering - spatial
data structures - culling algorithms - programmable shaders - analysis and practi-
Web Page
http://www.dimi.uniud.it/~dangelo/Rob
otica/robos.html
Aims
The aim of the course is that to provide a
student with practical tools to understand
and implement programs which are able
to control autonomous vehicles. The
general notion of situated agent is presented by introducing behavior-based
systems, the direct coupling of perception
to action and the dynamic interaction
with the environment. A number of
examples from industrial robotics and
autonomous vehicle control are discussed with some experimental lectures
using available moving platforms. The
locomotion problem for the so called leg-
392
ged-robots is also presented discussing
various kinds of mechanical structures,
humanoids included.
Program
1. Situated Agents: 1.1 Sensing and
Acting; 1.2 Planning; 1.3 Reactive Systems;
1.4 Biological Motivations; 1.5 Environment Constraints through Agent Embodiment; 1.6 Behavior-based Architectures.
2. Autonomous Vehicles: 2.1 Mobile
Robotics; 2.2 Control Issues; 2.3 Breitenberg’s Vehicles; 2.4 Applications.
3. Dynamical Agents: 3.1 Dynamical
System Review; 3.2 Mobile Vehicles; 3.3
Representational Issues; 3.4 Energybased Methods for Movement Controls;
3.5 Roboticles.
4. Implementing Behaviors: 4.1 Perceptual Basis for Behavior-based Control; 4.2
Representational Issues; 4.3 Reactive
Architectures; 4.4 Hybrid Architectures;
4.5 Adaptive Behaviors; 4.6 Collective
Behaviors.
5. Locomotion: 5.1 Wheel-driven vehicles;
5.2 Legged robots; 5.3 Exapodes, four-legged and bipedal robots; 5.4 Humanoid: a
brief introduction; 5.5 Active and Passive
Walking; 5.6 Gait control using the inverted pendulum model.
6. Experimental Activity: 6.1 Using Robot
Whiskers; 6.2 Using Saphira Simulator;
6.3 Using LEGO Mindstorm.
Exams
Discussion of a topic with some robotic
reference suggested by the student. Some
experimental issues are considered if
they are required by the student.
References
- R.C. A RKIN , Behavior-Based Robotics,
MIT Press, 1998.
- R. PFEIFER, C. SCHEIER, Understanding
Intelligence, MIT Press, 1999.
- M. BRADY, Robotics Science, MIT Press,
1989.
LS in Computer Science
- FU, LEE, GONZALES, Robotics, Mc-Graw
Hill, 1987.
- J.C. L ATOMBE , Robot Motion Planning,
Kluwer, New York, 1991.
- RUSSEL, NORVIG, Artificial Intelligence: a
Modern Approach, Prentice Hall.
- JOHNS, FLYNN, Mobile Robots, Inspiration
to Implementation, A.K. Peters, 1993.
- A. D’ANGELO, Lectures from the Course,
available via Web.
SEMANTICS OF PROGRAMMING
LANGUAGES
Teacher
Prof. Fabio Alessi
Credits
6
Aims
In this course we shall study in more
detail the mathematical tools to describe
the semantics of programming languages, introduced in the Formal Methods I
course. In particular we shall discuss
functional programming, category
theory, domain theory, and type theory.
Program
- Functional Programming and Functional Languages: the ML language: expressions and types, declarations, patterns,
functions, polymorphism, recursive data
types, exceptions, imperative features,
modules, funtors.- Semantics: operational and denotational semantics of languages with context; denotable, storable and
expressible values; abstractions, correspondence, parametrization and qualification principles; continuations, direct
and continuation-based semantics.- Category Theory: objects and morphisms,
functors, natural transformations, limits
and colimits.- Domain Theory: the solution of recursive domain equations; the
LS in Computer Science
inverse limit construction; a functional
metalanguage for defining points in
domains which is also a functional programming language and a term language
for a logic of programs.- Type Theory:
type assignment systems for simple types
to lambda-calculus, Robinson’s unification algorithm, Milner’s principal type
algorithm; initiality of the principal type,
correctness and completeness of Milner’s
algorithm with respect to the type assignment system of simple types to lambdacalculus, semantics for simple types, correctness of the type assignment system
with respect to the operational semantics
of the language. The Calculus of Constructions.
Exams
The final exam is oral.
References
- G. WINSKEL, The Formal Semantics of Programming Languages, MIT Press, Cambridge, 1993.
- Papers appeared in scientific journals.
- Lecture notes.
SEMANTIC WEB
Teacher
Dott. Alessio Gugliotta
Credits
6
Aims
Using the notions acquired on the XML
language, the student will:
- Be aware of the hierarchical model on
which the Semantic Web is grounded,
and correctly move through it;
- Be aware of the main technologies involved, with emphasis on the ontologies;
- Acquire design capabilities with respect
to some application domains, in order to
393
realize software within the semantic
layer;
- Collect practical experience on the mentioned technologies through homeworks,
case studies and exercises.
Program
- Introduction to the Semantic Web
A critical analysis of the present Web;
Motivations; main technological issues.
- Developing ontologies
Methods of ontology design and maintenance; practical examples and exercises
adopting the language OWL and the
Protègè development tool.
- A layered approach to the Semantic Web
XML structures for the access to the documents; describing and organizing resources with the RDF language; the language
OWL.
- Tools and applications
Applications are discussed with emphasis on: knowledge representation and
management, personalization and service-oriented architectures. Languages and
tools introduced during the course will be
adopted.
References
- G. A N T O N I O U , F. V A N H A R M E L E N , A
Semantic Web Primer, Cambridge, MA:
MIT Press, 2004.
- J. DAVIES, R. STUDER, P. WARREN, Semantic Web Technologies. Trends and Research
in Ontology-Based Systems, Wiley, 2006.
- A. GOMEZ-PEREZ, M. FERNANDEZ-LOPEZ,
O. C O R C H O , Ontological Engineering,
Springer, 2004.
- T. BERNERS-LEE, J. HENDLER, O. LASSILA,
The Semantic Web, Scientific American
284,5 (May 2001): 34-43.
- T. BERNERS-LEE, Weaving the Web, Harper, 1999.
- Semantic Web Vision, a collection of
resources
http://www.ics.forth.gr/isl/swprimer/in
dex2.php?selected=1&opened=6
394
LS in Computer Science
- OWL Web Ontology Language
http://www.w3.org/TR/owl-ref/
- Protégé project. http://protege.stanford.
edu/
- Ontology Development 101: A Guide to
Creating Your First Ontology, N.F. NOY, D.L.
MCGUINNESS http://www.ksl.stanford.edu/
people/dlm/papers/ontology101/ontology101-noy-mcguinness.html
- Semantic Web Challenge. A new application award. http://challenge.semanticweb.org/
SOFTWARE ENGINEERING 2
Teachers
Prof. Maurizio Pighin
Dott. Anna Marzona
Credits
6
Aims
The target of the course is to examine closely the principal elements of Software
Engineering. We consider the design and
life cycle of a software product studying
the more advanced arguments: the configuration management, the test methodologies, the theoretic and practical metrics,
the most famous product and process
quality models, the planning and control
methodologies, the principal working
tools. In the laboratory course (4 CFU) we
develop a complete case-study, following
the whole software development process
in the life cycle phases (specifications,
design, coding, test, release, metrics,
maintenance) and management phases
(planning, cost analysis, metrics, work
organization).
Program
Introduction: The Software Engineering
motivations. The basic definitions. The
economic dimension of the problem. The
development process complexity factors.
Configuration Management: The motivations of Configuration Management. The
CM-Planning and the versioning/variants
techniques. Assembly of components
and system building. Existing Software
Engineering: The motivation of ESE. The
methodologies of re-engineering. The
methodologies of reuse. The development with and for reuse. Verification and
Validation: The negative theoretic results.
The test strategies. The dynamic test. The
test chains. The regression test. The automatic test and the mutational analysis.
The static test. Formal test methodologies. Metrics: The software metric concept. The target of measure. The measurement scale. The control and predictive
measure. The data collection. The internal attributes ant their measure. The Halstead metric. The Albrecht metric. The
McCabe metric and other complexity
metrics. The external attributes and their
measure Quality Models: The quality certification and the principal model of product and process certification: ISO9000,
CMM. Notes on SYNQUEST, SPICE,
BOOTSRAP, The ISO 9126 model. Cost
Evaluation: The performance/cost analysis and the decision analysis. The software cost evaluation. The COCOMO model.
Other evaluation models. Production
Process Evaluation and Planning: The
work-group organization. The planning
methodologies. The Pert Diagram and
the Gantt Scheme. Maintenance: The
maintenance: costs, estimations, metrics.
The COCOMO model. Extreme programming: Operative methodologies: planning, testing. Developing techniques
Tools: The CASE technology: Tools and
Environments. The functionality. The
tools in the different phases of the development process.
Exams
The exams consists in the discussion of
395
LS in Computer Science
the project produced in the laboratory.
Alternatively there is a written/oral examination.
References
- R.S. PRESSMAN, Principi di Ingegneria del
Software, 4th edition, McGrawHill, 2005.
- I. SOMMERVILLE, Software Engineering, 7th
edition, Addison Wesley P.C., 2004.
- N.E. F ENTON , S.L. P FLEEGER , Software
Metrics - A Rigorous and Practical Approach, 2 nd edition, PWS Publishing Company, 1997.
- A. B INATO , A. F UGGETTA , L. S FARDINI ,
Ingegneria del Software, creatività e metodo,
Pearson-Addison Wesley, 2006. - C.
GHEZZI, M. JAZAYERI, D. MANDRIOLI, Ingegneria del Software - Fondamenti e Principi,
seconda edizione, Pearson-PrenticeHall,
2004.
- AA. VV., Metriche del software - esperienze
e ricerche, Franco Angeli, 2006.
SOUND DESIGN
Teacher
Prof. Elio Toppano
Credits
3
Aims
The main goal of the course is the acquisition of conceptual knowledge, methodologies and techniques for the analysis,
design and production of sound objects
for communicative goals (e.g. advertisement, multimedia, auditory interfaces,
sonification of public spaces).
Program
Spectro-morphological analysis of sound
objects. Perceptual categorization of
sound objects and modes of listening.
Sound synthesis techniques. Effects and
digital signal processing. Virtual instru-
ments. Editing, mixing and sound recording. Sound structures. The audiovisual.
Choreographed displacement of sound
objects in space and time.
Exams
The course includes listening practices
and the analysis of actual projects made
by professional sound designers. The
final assessment is based on a test and
the development of a project.
SPATIAL DATABASES
Teachers
Prof. Angelo Montanari
Dott. Alessandra Chiarandini
Credits
6
Program
The course aims at illustrating the
distinctive features of spatial information
by describing concepts, techniques,
methodologies, and tools developed in
the database field to deal with spatial/geographic information. We focus our attention on data models, data definition and
manipulation languages, and design
methodologies which have been proposed in the framework of spatial databases.
In particular, we describe the representation techniques for spatial objects and the
algorithms that implement operations on
such data. In the second part of the course, we explore the relationships between
spatial databases and Geographic Information Systems (GIS). At the end of the
course, we expect the student to be able to
design not trivial spatial databases and to
analyze the functional and technological
properties of spatial databases to be used
in the context of Geographic Information
Systems.
Part I. A general introduction to the cour-
396
se: spatial databases and Geographic
Information Systems, the basic features
of spatial databases, geospatial data manipulation. Representation of spatial
objects: spatial data models and representation modes, entity-based models and
field-based models, raster and vector spatial data formats, logical models for spatial databases, representation methods
(lists of coordinates vs. structures based
on a topological model). Topological relations, direction-based relations, and
distance-based relations. Relational geoalgebra. Spatial extensions to SQL. Oracle
Spatial. Design methodologies for spatial
databases: conceptual and logical design.
Spatial access methods (indexes): basic
elements, index types (space-driven vs.
data-driven), grid file and fixed grid,
quadtree, R-tree. The Geography Markup
Language (GML).
Part II. Introduction to Geographic Information Systems. The technology of Geographic Information Systems. Data
models and customization. Creation and
management of a geographical database.
The cartography: basic elements. Structured territorial information. The GeoMedia system. WebGIS. Metadata, quality of
data, and interoperability. Remote sensing and image processing. The GPS
network.
References
Main references:
- F. RIGAUX, M. SCHOLL, A. VOISARD, Spatial Databases with Application to GIS,
Academic Press, 2002.
- Moreover, a lot of teaching material, produced by A. CHIARANDINI, D. GUBIANI E A.
MONTANARI, is available on the net.
Additional references:
- M.F. WORBOYS, GIS: A Computing Perspective, Taylor Francis Ltd, 1995.
- S. SHEKHAR, S. CHAWLA, Spatial Databases: a Tour, Paerson Education Inc., 2003.
- T. BERNHARDSEN, Geographic Information
Systems: an Introduction, 3rd edition, John
Wiley & Sons, 2002.
LS in Computer Science
SYSTEM THEORY I
Teacher
Prof. Adriano Pascoletti
Credits
6
Aims
Introduction of some mathematical tools
useful in the study of problems that can
be modeled as dynamical systems. The
topics covered in the course are supplemented by several examples (often drawn
from fields other than computer science)
that show how a model can be set up and
how the formal tools can be applied to its
analysis.
Program
Models depending on a discrete parameter, linear recurrences and systems of
first order linear recurrences; evolution
and long-term behavior; equilibria and
stability.
Exams
Oral discussion.
References
- D.G. LUENBERGER, Introduction to Dynamic Systems: Theory, Models & Applications, J. Wiley, 1979.
- A. PASCOLETTI, lecture notes (in Italian).
System Theory Lab.
SYSTEM THEORY 2
Teacher
Prof. Adriano Pascoletti
Credits
6
Aims
A deeper insight into some topics treated
in the course System Theory I; a systemic
approach to problem solving applied to
397
LS in Computer Science
the analysis and implementation of techniques for generating and counting combinatorial objects that naturally lead to
symbolic dynamics.
Program
Dynamical systems that generate and
count combinatorial objects; generating
functions; positive systems and discrete
Markov chains.
Exams
Oral discussion.
References
- D.G. LUENBERGER, Introduction to Dynamic Systems: Theory, Models & Applications, J. Wiley, 1979.
- A. PASCOLETTI, lecture notes (in Italian).
Primary analysis processes: opportunity
analysis and plausibility study. Primary
development processes: development of
the demonstrator. development of the
prototype, design techniques and development tools. Implementation, installation, and delivery of the target system.
Knowledge acquisition techniques. Personalization of Web contents: general
definitions, user modeling, personalization techniques: user tracking and identification, content selection, collaborative
filtering, cognitive filtering and knowledge-based filtering. Application of personalization techniques.
Exams
Each student will (I) deliver a final seminar on some relevant assigned topic in
the final week of the course and (II) take
an oral test.
WEB CONTENT PERSONALIZATION
Teacher
Prof. Carlo Tasso
Credits
6
Aims
The course illustrates the concepts of
adaptive personalization of Web contents
and introduces to the development
methodologies for knowledge-based
systems. More specifically, the course
illustrates the methodologies for the
analysis, design, development, and evaluation of knowledge-based systems and
knowledge acquisition techniques.
Moreover, the user modeling area is presented together with the main techniques
for Web personalization.
Program
The major topics of the course concern:
Development processes for knowledgebased systems. The KLIC methodology.
References
- Study materials available on
http://twm.dimi.uniud.it/
- C. TASSO, P. OMERO, La Personalizzazione dei Contenuti Web - e-commerce, i-access,
e-government, Franco Angeli, Milano,
2002.
- G. GUIDA, C. TASSO, Design and Development of Knowledge-Based Systems, J. Wiley,
1994.
WEB INFORMATION RETRIEVAL
Teacher
Prof. Stefano Mizzaro
Credits
6
Aims
To present the main topics in Information Retrieval (IR), a subject that has a
high historical importance and has received an even higher attention after the
398
coming of the Web. Indeed, after e-mail,
using a search engine is today the second
activity of Web users, and several Web
users perceive a search engine (typically,
Google, Yahoo! or MSN Search) as the
main access to the Web. Also, the Web IR
field is experiencing a major economical
development. Besides classical and well
established IR topics, the course emphasizes more recent Web specific issues.
Both basic topics and advanced research
trends are discussed.
Program
The course is divided into three parts:
- Classic Information Retrieval: conceptual models of information seeking, conceptual and formal models of IR systems,
design and implementation of IR systems,
data structures and algorithms for
indexing and search, user interfaces for
IR, evaluation of IR systems.
- Web Information Retrieval: Web modelling (shape and size of the Web graph,
introduction to social network analysis
and scale-free and small-world networks),
link and connectivity analysis, hyperlink
and crawling, multimedia IR, meta-search, design and implementation for Web
search engines, digital libraries.
- Advanced issues: parallel and distributed IR, information seeking with mobile
devices and on peer-to-peer networks,
foundational issues (e.g., concepts of
information and relevance), information
filtering and routing, clustering, specialized (e.g., medical) databases, etc. These
advanced issues are presented by means
of seminars by invited experts or, optionally, by students.
Exams
Oral examination plus optional (but
warmly suggested) term projects or seminars, that lead to a simpler oral exam and
to higher marks. A laboratory c an be attached to the course, in which case the
LS in Computer Science
project and/or seminar is more demanding.
References
- R. B A E Z A -Y A T E S , B. R I B E I R O -N E T O ,
Modern Information Retrieval, Addison
Wesley, 1999. ISBN: 020139829X.
- R. BELEW, Finding Out About - A Cognitive Perspective on Search Engine Technology
and the WWW, Cambridge University
Press, 2000. ISBN: 0-521-63028-2. - R.
KORFHAGE, Information Storage and Retrieval, Wiley, 1997. ISBN: 0471143383.
- M. L EVENE , An Introduction to Search
Engines and Web Navigation, Addison
Wesley, 2006.
- S. CHAKRABARTI, Mining the Web, Morgan Kaufmann, 2003.
Further textbooks may be communicated
at course start. Other teaching material
(slides covering all the lectures, Web
pages, lecture notes, scientific articles,
reference texts) will be communicated or
provided during the lectures.
WEB SITE DESIGN
Teacher
Dott. Giorgio Brajnik
Credits
6
Web Page
www.dimi.uniud.it/giorgio/
dida/psw/psw.html
Aims
The purpose of the course is to highlight
and discuss basic principles of access and
interaction with information systems. In
the context of web applications the following goals are pursued: (1) comprehend
the concepts of information and interaction architecture, (2) being able to assess
399
LS in Computer Science
usability and accessibility, (3) to know the
main phases of development processes,
and (4) to get a basic understanding of
technologies that support the web.
Program
- Information processes and information
systems; persuasion.
- Natures of information systems; conversational structure; types of web systems.
- Information architecture.
- Basic concepts of human-computer interaction; interaction models and theories.
- Accessibility and usability.
- User-centered design: phases, methods,
approaches.
References
- G. BRAJNIK, E. TOPPANO, Creare siti web
multimediali, Pearson Education - Addison-Wesley, 2007.
- R. P OLILLO , Plasmare il web, Apogeo,
2006: chapters 3 to 10.
- J. THATCHER ET AL.,Web Accessibility: Web
Standards and Regulatory Compliance,
FriendsofEd, 2006; chapters 4 to 15.
WEB TECHNOLOGIES
Teacher
Prof. Vito Roberto
Credits
6
Aims
The course introduces the World Wide
Web, with the related information technologies and social entailments: a general
overview accompanied by practical laboratory exercises that anticipates the contents of other courses in the ‘laurea’
degree.
Program
The basic concepts of computer networks
are introduced: protocols, formats, technologies with emphasis on the HyperText
Transfer Protocol and the HTML language. The topic of security in computer
networks in introduced also, through the
basics of cryptography and authentication techniques. Multimedia technologies are introduced through the formats
and standards of compression, as well as
audio, video, graphics and animation data
representations. Issues in web interactivity are also accounted for, such as scripting languages and man-machine interaction in the design of web pages and
web-based GUI’s. Social aspects of the
web involve: the privacy, intellectual property on the Net, international and intercultural implications.
XML TECHNOLOGIES
Teacher
Dott. Massimo Franceschet
Credits
6
Program
1) Introduction. A general introduction to
XML and traditional databases.
2) Schema definition languages for XML:
W3C XML Schema language.
3) Query and update languages for XML:
XML Path Language (XPath), XML Query
Language (XQuery) and XQuery Update
Facility.
4) Native XML databases. We will use at
least one native database for XML.
5) Transformation languages: Extensible
Stylesheet Language Transformations
(XSLT).
6) Programming with XML. We will
learn to access XML documents from
Java applications through the Java API
forXML Processing (JAXP).
400
LAUREA SPECIALISTICA IN
INFORMATION TECHNOLOGY
ADVANCES IN DATABASE SYSTEMS
Teacher
Prof. Angelo Montanari
Credits
6
Program
Part 1 - Database design (additional material)
The conceptual design of databases and
the Dataflow model: the basic constructs
of the Dataflow model (process, data flow,
data repository, interface); context diagrams and Dataflow diagrams; functional
design based on the Dataflow model; the
design of information systems: an integrated approach to the design of system
functions and data (synthesis of external
ER schemas and their integration). The
logical design of databases: satisfiability
and violation of functional dependencies,
closure of dependency sets, a calculus of
dependencies (Armstrong’s axioms), closure of attribute sets, algorithms to compute the closure of attribute sets, equivalences among sets of dependencies, minimal covers, decompositions and their
properties, normal forms and normalization, algorithms to compute decompositions in specific normal forms.
Part 2 - The SQL language (additional
material)
SQL and the programming languages:
introduction, approaches to the database
programming, stored procedures, triggers, static embedded SQL (simple and
complex queries, the use of cursors),
dynamic embedded SQL (immediate execution and two-phase execution), database programming with function calls:
SQL/CLI (Call Level Interface), ODBC e
JDBC (a short account).
LS in Information Technology
Part 3 - The physical organization of data
The storage of file records and the organization of primary files: introduction,
devices and techniques for the management of secondary storage, buffering of
blocks, placing file records on disks, operations on files, files of unordered records
(heap files), files of ordered records (sorted files), hashing techniques, other primary file organizations, parallelizing disk
access using RAID technology. Indexing
structures for files: types of single-level
ordered indexes (primary, clustering, secondary), multilevel indexes, dynamic
multilevel indexes using B-trees and B + trees, other types of indexes.
Part 4 - Database server technology
The notion of transaction: introduction to
transaction processing, desirable properties of transactions, transaction scheduling
and recovery, serialization techniques,
transaction support in SQL. Concurrency
control techniques: problems, architecture, the anomalies of concurrent transactions, view-based techniques, conflictbased techniques, two-phase locking techniques (2PL and strict 2PL), concurrency
control based on timestamp ordering,
multiversioning-based techniques, granularity of data items. Buffer manager: architecture of the buffer manager, primitives
for the management of the buffer, buffer
management policies, on the relationships
between buffer manager and file system.
Database recovery techniques: basic concepts, architecture, stable memory, organization of the log, transaction processing,
fault management. Query processing and
optimization: system catalogues, query
optimization (query internal representation, relation profiles, cost-based optimization), physical design of databases. Database security: introduction to database
security issues, mandatory access control
and role-based access control for multilevel security, statistical database security
(a short account).
401
LS in Information Technology
Part 5 - Distributed databases
Introduction to distributed databases,
basic elements of the client-server architecture, data fragmentation, data allocation, transparency levels, types of distributed DBMSs, query processing in distributed databases, concurrency control and
recovery in distributed databases.
Part 6 - Databases and World Wide
Web(a short account)
Basic notions (Internet, World Wide
Web, HTML, the http protocol), gateway
and form, tools and techniques to access
databases via web, database access via
CGI programs, development tools, the
limitations of the CGI protocol, serverbased solutions, client-based solutions,
web information systems, conceptual
design of web applications.
Part 7 - Additional topics (a short account)
Databases in support of management’s
decisions (data warehouse), semi-structured data in XML, object and object-relational databases, active databases, temporal and spatial databases.
References
- P. A TZENI , S. C ERI , P. F RATERNALI , S.
P ARABOSCHI , R. T ORLONE , Basi di Dati:
Architetture e Linee di Evoluzione, McGrawHill, 2003.
- R. ELMASTRI, S. NAVATHE, Fundamentals
of Database Systems, 5th edition, Pearson
International Education / Addison Wesley, 2007.
Or:
- R. ELMASTRI, S. NAVATHE, Sistemi di basi
di dati. Complementi, (quarta edizione),
Pearson Education Italia / Addison Wesley, 2005. Other references
- J.D. ULLMAN, Principles of Databases and
Knowledge-Base Systems, Volume I, Computer Science Press, 1988. - S I L B E R SCHATZ , H.F. K ORTH , S. S UDARSHAN ,
Database System Concepts, 4 th edition,
McGraw-Hill, 2002.
- A. ALBANO, Costruire sistemi per basi di
dati, Addison-Wesley, 2001.
- A. ALBANO, G. GHELLI, R. ORSINI, Fondamenti di basi di dati, Zanichelli, 2005.
- P. A TZENI , S. C ERI , S. P ARABOSCHI , R.
TORLONE, Basi di Dati: Modelli e Linguaggi
di Interrogazione, seconda edizione,
McGraw-Hill, 2006.
ALGORITHMS AND
COMPLEXITY THEORY
Teacher
Prof. Carla Piazza
Credits
6
Aims
During this course we intend to present
the main results in the field of computational complexity of algorithms. In particular, we intend to discuss the classical
hierarchy of complexity classes and the
main techniques for the analysis of related problems. We will also present basic
ideas and notions of some interesting
innovative computational models recently proposed in the scientific community.
Program
- Computational classes. Hierarchy theorem. Gap theorem. Savitch theorem.
Immermann-Szelepscenyi theorem and
consequences. Computational reductions and completeness. Classes outside
NP.
- Quantum Computing. Quantum Turing machine. Universal quantum Turing
machine. Computational classes in quantum computing. Quantum algorithms.
- DNA Computing. Adleman and Lipton
model. Solutions for SAT and other NPcomplete problems. Universal Turing
machine in DNA computing.
- Algorithms. The problem of automata
minimization and the notion of bisimula-
402
LS in Information Technology
tion. Hopcroft algorithm. Paige-Tarjan
algorithm. Paige-Tarjan-Bonic algorithm.
The notion of simulation and efficient
algorithms to compute the maximum
simulation quotient.
References
- C.H. P APADIMITRIOU , Computational
Complexity, Addison Wesley, 1995.
- Other research papers.
COMPUTER LANGUAGES
Teacher
Prof. Marco Comini
Credits
6
Aims
The Computer Languages course aims to
give knowledge on the characteristics of
the various programming paradigms. It
tries hard not to focus on a specific language but to present the general principles that guide project, development and
implementation of modern programming languages. With a solid knowledge
of ‘universal’ characteristics one can
learn new languages in no time.
To achieve this general vision the main
programming paradigms are presented:
imperative and functional. Besides examining the most immediate pragmatic
aspects of these paradigms, they are analyzed and compared basing on general
principles in order to achieve a critical
comprehension of most popular languages. This is needed to reach a cognizant programming style, where one
knows which paradigm is better to chose
to solve a specific problem, and knows
which language constructs to use, and at
which cost.
The course aims to give a relatively profound knowledge (especially regarding
the programming aspect) on the functional paradigm that, thanks to its expressiveness, can be naturally used as basis
for development of correct software.
Program
Imperative Paradigm
- Abstract Machines, Interpretation e
Compilation.
- Describe a Computer Language (Syntax
and Semantics).
- Names and environments.
- Memory Management.
- Structuring control.
- p-code.
- Control Abstraction (Parameters Passing Methods).
- Structuring data.
- Monomorphic and Polymorphic Type
checking.
Functional Paradigm
- Introduction to Functional Programming.
- High-order Programming.
- The Haskell language (list comprehensions, partial applications of curried functions, sections, non-strict functions, infinite data structures, case expressions,
pattern matching).
- Types, Classes and Overloading.
- Haskell’s monadic I/O.
- Standard Haskell Classes.
- Monads.
- Modules.
References
- M. GABBRIELLI, S. MARTINI, Linguaggi di
Programmazione - Principi e Paradigmi,
McGraw-Hill. ISBN: 88-386-6261-4.
- HUDAK, FASEL, A Gentle Introduction to
Haskell, 1992.
Consultation Books and Texts
- B. WADLER , Introduction to
Scarica

Guida ai programmi Facoltà di Scienze MM.FF.NN. a.a. 2007/08