UNIVERSITÀ DEGLI STUDI DI PERUGIA Facoltà di Scienze MM FF NN Laurea Triennale in Informatica Classe delle Lauree in Scienze e Tecnologie Informatiche (Classe 26) Vecchio Ordinamento – Nuovo Regolamento NOTIZIARIO Anno Accademico 2008– 2009 Rev. 01 del 10/03/09 1/1 INDICE PREMESSA .........................................................................................................................................4 OBIETTIVI GENERALI .........................................................................................................................4 SBOCCHI PROFESSIONALI ..................................................................................................................4 ATTIVITÀ FORMATIVE .......................................................................................................................5 REQUISITI PER L’ACCESSO .................................................................................................................5 OBBLIGHI DI FREQUENZA ..................................................................................................................5 CREDITI FORMATIVI UNIVERSITARI (CFU) ........................................................................................5 RICONOSCIMENTO DI CREDITI ACQUISITI PRESSO ALTRE ISTITUZIONI ................................................6 SVOLGIMENTO DELL’ATTIVITÀ DIDATTICA .......................................................................................6 INSEGNAMENTI COMUNI A TUTTI I CURRICULA ............................................ 7 INSEGNAMENTI CURRICULARI............................................................................. 8 A) B) C) RETI DI COMPUTER ....................................................................................................................8 SISTEMI DI ACQUISIZIONE DATI ..................................................................................................8 SISTEMI DI REALTÀ VIRTUALE MOLECOLARE ...............................................................................8 ALTRE ATTIVITÀ FORMATIVE ............................................................................ 10 A SCELTA DELLO STUDENTE ...........................................................................................................10 ALTRE .............................................................................................................................................10 PROVA FINALE ................................................................................................................................10 PROGRAMMI DEI CORSI........................................................................................ 12 ALGORITMI E STRUTTURE DATI I.........................................................................................13 ALGORITMI E STRUTTURE DATI II .......................................................................................14 ANALISI MATEMATICA I .........................................................................................................14 ANALISI MATEMATICA II........................................................................................................15 APPLICAZIONI E CALCOLO IN RETE.....................................................................................16 ARCHITETTURA DEGLI ELABORATORI I ............................................................................17 ARCHITETTURA DEGLI ELABORATORI II ...........................................................................18 ARCHITETTURA DELLE RETI DI COMPUTER .....................................................................19 BASI DI DATI E SISTEMI INFORMATIVI I .............................................................................20 BASI DI DATI E SISTEMI INFORMATIVI II............................................................................20 CALCOLO DELLE PROBABILITÀ E STATISTICA MATEMATICA ....................................21 CALCOLO NUMERICO ..............................................................................................................21 ELEMENTI DI SCIENZE ATOMICHE E MOLECOLARI ........................................................22 FISICA DEI DISPOSITIVI ELETTRONICI ................................................................................22 FISICA GENERALE.....................................................................................................................23 INGEGNERIA DEL SOFTWARE................................................................................................25 LABORATORIO DI ALGORITMI ..............................................................................................26 LABORATORIO DI ARCHITETTURA ......................................................................................26 LABORATORIO DI BASI DI DATI............................................................................................27 LABORATORIO DI LINGUAGGI DI REALTÀ VIRTUALE ...................................................27 LABORATORIO DI PROGRAMMAZIONE...............................................................................28 LABORATORIO DI RETI DI COMPUTER................................................................................28 LABORATORIO DI SISTEMI OPERATIVI ...............................................................................29 LINGUA INGLESE.......................................................................................................................31 LINGUAGGI DI REALTÀ VIRTUALE ......................................................................................31 LINGUAGGI FORMALI E COMPILATORI ..............................................................................32 MATEMATICA DISCRETA I......................................................................................................33 2/2 MATEMATICA DISCRETA II ....................................................................................................34 MODELLISTICA MOLECOLARE..............................................................................................35 PROGRAMMAZIONE I ...............................................................................................................36 PROGRAMMAZIONE II..............................................................................................................36 RETI DI CALCOLATORI: PROTOCOLLI .................................................................................37 SISTEMI APERTI E DISTRIBUITI .............................................................................................38 SISTEMI MULTIMEDIALI..........................................................................................................39 SISTEMI OPERATIVI ..................................................................................................................40 TECNICHE DI ACQUISIZIONE DATI I.....................................................................................41 TECNICHE DI ACQUISIZIONE DATI II ...................................................................................42 RECAPITI DEI DOCENTI......................................................................................... 44 DOCENTI DEGLI INSEGNAMENTI COMUNI A TUTTI I CURRICULA..............................44 DOCENTI DEGLI INSEGNAMENTI CURRICULARI..............................................................44 NUMERI UTILI .................................................................................................................................45 GUIDA AL TIROCINIO (STAGE) PRESSO I CORSI DI LAUREA IN INFORMATICA DELLA FACOLTÀ DI SS MM FF NN DELL’UNIVERSITÀ DEGLI STUDI DI PERUGIA..................................................................................... 46 MODULISTICA: TIROCINI – STAGE .............................................................................................49 3/3 Premessa Il Corso di Laurea in Informatica (triennale – vecchio ordinamento) appartiene appartiene alla classe delle Lauree in Scienze e Tecnologie Informatiche (Classe 26), ha durata triennale ed è articolato in 3 curricula: Il primo anno è comune a tutti i curricula. Gli orientamenti si differenziano a partire dal secondo anno. Gli studenti possono proporre percorsi formativi personalizzati, che devono soddisfare le condizioni di natura generale imposte sui crediti. Nell’A.A. 2008-2009 verranno attivati tutti gli insegnamenti previsti per il secondo e terzo anno del Corso di Laurea in Informatica (nuovo regolamento) e anche quelli del terzo anno (vecchio regolamento). Potranno essere attivate in corso di anno delle Potranno essere attivate in corso di anno delle attività seminariali, corsi o moduli a valere per “altre attività formative” di cui all’art. 10, comma 1 lettera f, DM 509/1999. Le attività didattiche vengono svolte presso il Dipartimento di Matematica e Informatica dell’Università degli Studi di Perugia, Via Vanvitelli 1. Per ulteriori informazioni gli studenti possono consultare la pagina web dei Corsi di Laurea in Informatica http://www.informatica.unipg.it/, o anche rivolgersi al Presidente del Consiglio Intercorso in Informatica oppure alla Segreteria Didattica di Informatica al II piano del Dipartimento di Matematica e Informatica (tel. 075.585.5063, e-mail: [email protected]). CORSO DI LAUREA IN INFORMATICA (TRIENNALE – VECCHIO ORDINAMENTO, Nuovo Regolamento) Classe delle Lauree in Scienze e Tecnologie Informatiche (Classe 26) Obiettivi generali Il Corso di Laurea in Informatica ha come obiettivo generale la formazione di una figura professionale, dotata di preparazione tecnica rispondente alle esigenze di un rapido inserimento nel mondo del lavoro nel settore delle tecnologie dell’informazione e della comunicazione. Il laureato in Informatica dovrà essere in grado di utilizzare le conoscenze e le competenze acquisite nella progettazione, sviluppo e gestione di sistemi informatici; dovrà inoltre possedere le capacità necessarie per affrontare ed analizzare problemi in vari contesti applicativi. Nel corso degli studi, la comprensione della tecnologia informatica ed il suo utilizzo nella risoluzione di problemi applicativi è integrata con una solida preparazione di base, onde permettere al laureato di seguire la rapida evoluzione tecnologica e di adattarsi in modo flessibile a realtà lavorative molto differenziate. Sbocchi professionali I laureati in Informatica svolgeranno attività professionale negli ambiti della progettazione, organizzazione e gestione di sistemi informatici, sia in imprese produttrici di hardware o software nelle aree dei sistemi informatici e delle reti, sia nelle imprese che utilizzano le tecnologie dell'informazione nel loro settore specifico (banche, assicurazioni, enti pubblici,…). Inoltre, le competenze acquisite durante il corso di studi consentono di avviare attività professionali autonome, prospettiva che oggi trova sempre più spazio nel mondo del lavoro. A norma del DPR 328, 5 giugno 2001, la Laurea triennale in Informatica dà titolo per l’ammissione all’esame di stato per la professione di Ingegnere dell’Informazione, Sez. B. 4/4 Attività formative La durata normale del corso di laurea è di tre anni. Uno studente può laurearsi in Informatica dopo aver acquisito 180 crediti in totale e quindi 60 crediti per anno, in media. Il credito formativo universitario (CFU) è l’unità di misura convenzionale del lavoro di apprendimento necessario allo studente per l’espletamento delle attività formative prescritte per il conseguimento del titolo di studio. Ad un credito corrispondono 25 ore di lavoro di apprendimento, comprensivo di ore di lezione, di esercitazione, di laboratorio, di seminario e di altre attività formative, ivi comprese le ore di studio individuale. I 180 CFU sono suddivisi secondo le tipologie elencate nelle successive tabelle. Le attività formative consistono in attività di base, caratterizzanti, affini, di orientamento, integrative, di conoscenza della lingua inglese. Altre attività sono a libera scelta dello studente o consistono in tirocini, acquisizione di ulteriori abilità linguistiche. Infine, esistono attività formative per la predisposizione della prova finale. Le attività formative possono essere specificate in corso di anno con motivata domanda al Presidente del Consiglio di Corso di Laurea. Il Corso offre 3 diversi orientamenti o curricula (Reti di Computer, Sistemi di acquisizione dati, Sistemi di realtà virtuale molecolare) destinati alla formazione di figure professionali specifiche. Di tali curricula verrà fatta menzione nel certificato complementare degli studi previsto dalle disposizioni vigenti. Nel primo anno di Corso vengono svolte attività formative comuni a tutti i curricula. Contestualmente all’iscrizione al secondo anno di Corso, lo studente specifica il curriculum prescelto e le eventuali altre attività formative da svolgere nel secondo anno. All’atto dell’iscrizione al terzo anno, lo studente dovrà infine indicare, per quanto gli compete, tutte le rimanenti attività formative con l’unica eccezione della prova finale. I crediti formativi acquisiti dagli studenti nell’ambito di programmi di studio internazionali presso istituzioni universitarie legate da contratti bilaterali con l’Università di Perugia verranno riconosciuti tramite il sistema di trasferimento crediti europeo (ECTS). In caso di accordo bilaterale tra l’Università di Perugia e l’istituzione di provenienza, si procederà in conformità con i termini dell’accordo. Crediti acquisiti dagli studenti presso altre istituzioni di livello universitario italiane, dell’Unione Europea o di altri paesi potranno essere riconosciuti a delibera della struttura didattica in base alla documentazione prodotta dallo studente. Requisiti per l’accesso L’accesso al primo anno di Corso di Laurea vecchio ordinamento non è previsto per l’AA 2008/2009 essendo stato attivato nell’AA corrente il Corso di Laurea nuovo ordinamento. Obblighi di frequenza La frequenza è fortemente consigliata ma non esistono obblighi di frequenza. Crediti formativi universitari (CFU) La misura del lavoro di apprendimento, compreso lo studio individuale, richiesto ad uno studente per l’acquisizione di conoscenze ed abilità nelle attività formative è espresso in crediti formativi. Ad un credito formativo corrispondono 25 ore di lavoro per studente. Per conseguire la laurea di I livello in Informatica lo studente deve avere acquisito 180 crediti. La durata del corso di laurea di primo livello (3 anni) è indicativa; lo studente potrebbe conseguire i crediti richiesti ed i corrispondenti titoli anche in un tempo inferiore con le modalità stabilite dalla struttura didattica. 5/5 Riconoscimento di crediti acquisiti presso altre istituzioni I crediti formativi acquisiti dagli studenti nell’ambito di programmi di studio internazionali presso istituzioni universitarie legate da contratti bilaterali con l’Università di Perugia verranno riconosciuti tramite il sistema di trasferimento crediti europeo (ECTS). In caso di accordo bilaterale tra l’Università di Perugia e l’istituzione di provenienza, si procederà in conformità con i termini dell’accordo. Crediti acquisiti dagli studenti presso altre istituzioni di livello universitario italiane, dell’Unione Europea o di altri paesi potranno essere riconosciuti a delibera della struttura didattica in base alla documentazione prodotta dallo studente. Svolgimento dell’attività didattica L'anno accademico è suddiviso in due semestri (1 ottobre 2008 – 16 gennaio 2009 e 2 marzo 2009 – 12 giugno 2009). Ogni corso di insegnamento avrà durata semestrale e potrà essere svolto in forma intensiva. I crediti vengono acquisiti previo esito positivo di verifiche individuali (esami) del profitto. Le prove di esame saranno svolte di norma nei periodi 19 gennaio – 27 febbraio 2009, 15 giugno – 31 luglio 2009 e 1 settembre – 30 settembre 2009. Le prove – a discrezione del docente – potranno essere scritte e/o orali e/o di laboratorio e potranno essere effettuate parzialmente anche in itinere. Con l’unica eccezione della prova finale, la valutazione sarà espressa in trentesimi da apposite commissioni, che comprendono il responsabile dell'attività formativa, costituite secondo le norme contenute nel Regolamento Didattico di Ateneo. Per essere ammessi alla prova finale occorre avere conseguito tutti i crediti nelle attività formative previste dal piano di studi. Le attività formative relative alla preparazione della prova finale per il conseguimento del titolo e la relativa verifica consistono nell’approfondimento di un argomento specifico con relativa relazione finale, secondo le modalità comunicate dalla competente struttura didattica. 6/6 ELENCO DEGLI INSEGNAMENTI E DELLE ALTRE ATTIVITÀ FORMATIVE INSEGNAMENTI COMUNI A TUTTI I CURRICULA Semestre Disciplina Docente ore/sett CFU - 6 6 6 6 3 6 6 3 6 6 4 4 4 3 4 4 3 4 4 4 6 6 3 6 6 3 6 6 6 4 6 4 3 6 3 Primo anno di Corso (AA 08-09 NON ATTIVATO) I II I II II I II II I II I Analisi Matematica I Analisi Matematica II Architettura degli Elaboratori I Architettura degli Elaboratori II Laboratorio di Architettura Programmazione I Programmazione II Laboratorio di Programmazione Matematica Discreta I Matematica Discreta II Lingua Inglese 1 Antonio Boccuto Antonio Boccuto Ferruccio Barsi Ferruccio Barsi Alfredo Navarra Marco Baioletti Stefano Marcugini Stefano Marcugini Maria Cristina Vipera Massimo Giulietti C.L.A. Secondo anno di Corso (attivato) I II I I II I I II I II I II Algoritmi e Strutture Dati I Maria Cristina Pinotti Algoritmi e Strutture Dati II Maria Cristina Pinotti Laboratorio di Algoritmi Rosanna Bicocchi Sistemi Operativi Andrea Formisano Ingegneria del Software Alfredo Milani Laboratorio di Sistemi Operativi Pietro Tito Melacci Fisica Generale Attilio Santocchia Calcolo Numerico Ivan Gerace Calcolo delle Probabilità e Statistica Giulianella Coletti Matematica Linguaggi formali e Compilatori Arturo Carpi Terzo anno di Corso (attivato) Basi di Dati e Sistemi Informativi Andrea Formisano Laboratorio di Basi di Dati Valentina Poggioni NB: CFU = Credito Formativo Universitario; 1 CFU = 25 ore di lavoro per studente (ex art. .5 c. 1 DM 509/99) Propedeuticità Tutti gli insegnamenti denominati “I” sono propedeutici agli insegnamenti denominati “II”. Il corso di Programmazione I è propedeutico al corso di Linguaggi Formali e Compilatori. 1 Lingua Inglese Tutti gli studenti devono, inizialmente, sostenere presso il Centro Linguistico di Ateneo (CLA) il “test di piazzamento” e in seguito sostenere e superare il “test finale”, che assume il valore di prova scritta. Successivamente, dovranno frequentare le lezioni tenute a livello di Facoltà di SSMMFFNN e al termine sostenere la prova orale che conclude l’esame. Il livello minimo richiesto per il conseguimento dell’idoneità e dei 4 cfu relativi alla lingua inglese è il B1. Note: Coloro che si iscrivono nel corrente anno accademico al III anno di corso è che non hanno provveduto al passaggio al nuovo regolamento relativo all’AA 07/08, avranno i seguenti corsi comuni: Terzo anno di Corso (attivato) I II Basi di Dati e Sistemi Informativi I Basi di Dati e Sistemi Informativi II Andrea Formisano Valentina Poggioni 4 4 6 6 7/7 INSEGNAMENTI CURRICULARI Anno Semestre Disciplina Docente ore/sett CFU Osvaldo Gervasi 4 6 Sergio Tasso Simonetta Pallottelli Francesco Tarantelli, Loriano Storchi Sergio Tasso 4 4 4 6 6 6 3 4 3 6 Totale CFU 33 a) Reti di Computer II I III III III I I I Architettura delle Reti di Computer Sistemi aperti e distribuiti Sistemi multimediali Applicazioni e Calcolo in Rete III III II II Laboratorio Reti di Computer Reti di Calcolatori: Protocolli Bruno Checcucci b) Sistemi di Acquisizione Dati II III III II II I Fisica dei dispositivi elettronici Leonello Servoli Laboratorio Reti di Computer Sergio Tasso Architettura delle Reti di Osvaldo Gervasi Computer 4 3 4 6 3 6 III III I II Tecniche di Acquisizione dati I Piero Giorgio Verdini Tecniche di Acquisizione dati Giovanni Ambrosi II 4 4 6 6 III II Reti di Calcolatori: Protocolli 4 6 Totale CFU 33 Bruno Checcucci c) Sistemi di Realtà Virtuale Molecolare II II Elementi di Scienze Atomiche Antonio Laganà, Leonardo e Molecolari Pacifici 4 6 III III I I Sistemi Aperti e Distribuiti Applicazioni e Calcolo in Rete 4 4 6 6 III III III II I II Modellistica Molecolare Massimo Baroni Linguaggi di realtà Virtuale Osvaldo Gervasi Laboratorio di Linguaggi di Osvaldo Gervasi realtà virtuale 4 4 3 6 6 3 Totale CFU 33 Sergio Tasso Francesco Tarantelli, Loriano Storchi NB: CFU = Credito Formativo Universitario; 1 CFU = 25 ore di lavoro per studente (ex art. .5 c. 1 DM 509/99) Propedeuticità Tutti gli insegnamenti denominati “I” sono propedeutici agli insegnamenti denominati “II”. 8/8 a) Reti di Computer L'indirizzo si propone di fornire l'insieme delle competenze necessarie per il disegno, la progettazione e la gestione di Reti di Computer complesse. Ambisce a formare figure professionali dotate di approfondite conoscenze sulla teoria, le tecnologie e le applicazioni delle reti informatiche. Nell'ambito dell'indirizzo vengono fornite le conoscenze sull'architettura delle Reti, sui protocolli ed i Servizi Internet, sulle tematiche emergenti quali la sicurezza delle reti e le applicazioni ed i servizi Web. Vengono approfondite le conoscenze relative alle implementazioni di applicazioni complesse fruibili in rete e basate su sistemi distribuiti e paralleli. Allo studente viene inoltre offerta la possibilità di sviluppare conoscenze e applicazioni multimediali, attraverso le metodologie più avanzate. b) Sistemi di Acquisizione dati L'indirizzo si propone di fornire l'insieme delle competenze necessarie per la progettazione e l’utilizzo di sistemi di acquisizione di dati da apparecchiature scientifiche e/o industriali. La figura professionale prevista sarà in grado di gestire in completa autonomia i problemi che nascono in realtà industriali, commerciali, scientifiche per l’acquisizione dati, il controllo dei processi ed il trattamento dell’informazione acquisita. La medesima figura professionale avrà anche la capacità di collaborare con le figure professionali competenti nel disegno di sistemi complessi per la struttura di sottosistemi. c) Sistemi di Realtà Virtuale Molecolare L'indirizzo si propone di preparare dei laureati in informatica con sufficiente conoscenze nella gestione di ambienti di realtà virtuale costituiti da atomi e molecole. Il percorso di apprendimento prevede l'acquisizione degli elementi di base di strutturistica e modellistica atomica e molecolare nonché degli strumenti matematici e algoritmici utili alla descrizione delle strutture e dei processi degli atomi e delle molecole. Il percorso prevede la familiarizzazione con le tecnologie che consentano calcoli ad alta prestazione e rappresentazioni interattive ed efficienti di realtà virtuali diverse. Questo sarà finalizzato in particolare a rappresentazioni di realtà virtuali di sistemi atomici e molecolari. Tale percorso formativo è funzionale alla progettazione di sistemi molecolari complessi e trova applicazioni in biologia, medicina, farmaceutica, nanotecnologie, materiali, ecologia e in tutte quelle discipline in cui sostanze e processi debbono essere razionalizzati in termini molecolari o ne debbono essere formulati di nuovi. 9/9 ALTRE ATTIVITÀ FORMATIVE Attività formative descrizione A scelta dello studente (art. 10, comma 1, lettera d - DM 509/99) Attività appartenenti a tutti i settori scientifico -disciplinari 1. Tirocini (stage in aziende private o enti pubblici); 2. abilità informatiche e relazionali; 3. ulteriori conoscenze linguistiche, etc. Relazione finale (Tesi) Altre (art. 10, comma 1, lettera f - DM 509/1999) Prova finale CFU 9 9 8 NB: CFU = Credito Formativo Universitario; 1 CFU = 25 ore di lavoro per studente (ex art. .5 c. 1 DM 509/99) A scelta dello studente In base a quanto stabilito dall’art. 10 c. 1 lett. d del DM 509/99, lo studente deve scegliere autonomamente esami appartenenti a tutti i settori scientifico-disciplinari di un qualsiasi corso di laurea, fino a concorrenza di 9 CFU. Sono esclusi insegnamenti di base di informatica tenuti presso altri corsi di Laurea. Altre In base all’articolo 10 comma 1 lettera f del DM 509/99, le altre attività formative sono attività formative, non previste dalle lettere precedenti, volte ad acquisire ulteriori conoscenze linguistiche, nonché abilità informatiche e telematiche, relazionali, o comunque utili per l’inserimento nel mondo del lavoro, nonché attività formative volte ad agevolare le scelte professionali, mediante la conoscenza diretta del settore lavorativo cui il titolo di studio può dare accesso, tra cui, in particolare, i tirocini formativi e di orientamento di cui al decreto del Min. del Lavoro 25 marzo 98, n.142. Acquisizione dei crediti Qualora lo studente realizzi un tirocinio formativo organizzato dal Corso di Laurea in Informatica di Perugia e comprovato da firme di presenza per almeno 230 ore sul registro rilasciato dalla Segreteria Didattica di Informatica (presso il II piano del Dipartimento di Matematica ed Informatica), i 9 crediti sono automaticamente riconosciuti; negli altri casi, lo studente dovrà richiedere al Consiglio di Corso di Laurea la convalida dei crediti, producendo tutta la documentazione che ritiene idonea a provare di avere effettuato un’attività formativa, ex art. 10, comma 1, lettera f del DM 509/1999, per un totale di 9 crediti. Prova finale Per essere ammessi alla prova finale occorre avere conseguito tutti i crediti nelle attività formative previste dal piano di studi (cioè un totale di 172 CFU ottenuti dalla somma di 121 CFU per insegnamenti comuni a tutti i curricula, 33 CFU per insegnamenti curriculari, 9 CFU per insegnamenti a scelta dello studente e 9 CFU per tirocinio / oppure abilità informatiche / oppure abilità linguistiche). Le attività formative relative alla preparazione della prova finale per il conseguimento del titolo e la relativa verifica consistono nell’approfondimento di un argomento specifico con relativa relazione 10 / 10 finale, in base a quanto stabilito dal CILL Informatica nella seduta 05/05/20041 secondo quanto segue: - Lo studente deve presentare al Relatore prescelto la richiesta di tesi; il Relatore provvederà a comunicare l’inizio di tesi al Presidente del Corso di Laurea. - Ci sono due possibilità: a) tesina/monografia sotto forma di elaborato scritto da discutere brevemente con la Commissione di Laurea e corrispondente ad un impegno di un mese circa di lavoro e b) tesi di tipo implementativo o di approfondimento tecnico/scientifico corrispondente ad un impegno di quattro mesi circa di lavoro. Entrambe le modalità comportano la produzione di un elaborato scritto che deve essere presentato alla Commissione di Laurea, secondo i tempi stabiliti dal C.C.L. e pubblicizzati nel calendario degli esami. - Il criterio di valutazione della prova finale è il seguente: nel caso della Tesi il voto assegnato può variare da 0 ad 6 punti che, aggiunti alla media dei voti degli esami sostenuti2, contribuiscono alla formazione del voto finale di laurea; nel caso della Tesina il voto assegnato può variare da 0 a 3 punti che, aggiunti alla media dei voti degli esami sostenuti, ponderata rispetto ai crediti e tradotta in centodecimi, contribuiscono alla formazione del voto finale di laurea; Si ricorda che per sostenere la prova finale è necessario assolvere i seguenti adempimenti: 1. pagare la tassa presso la segreteria studenti (di norma entro il 15/09); 2. presentare il titolo della RELAZIONE finale alla segreteria studenti (foglio giallo), entro la scadenza stabilita nel calendario degli esami per l’AA in corso; 3. Entro la scadenza stabilita nel medesimo calendario degli esami, consegnare una copia della Relazione finale alla Segreteria Studenti della Facoltà di Scienze MM FF NN, una copia alla Segreteria Didattica del Corso di Laurea in Informatica. Certificato complementare Ai sensi e per gli effetti previsti dall’art. 11, comma 8, del DPR n. 509/99, il diploma attestante il conseguimento del titolo è integrato da un certificato complementare in cui viene specificato: il curriculum prescelto dallo studente; l’attività di tirocinio svolta; la prova finale 1 2 Cfr. verbale n. 6/A AA 2003-2004 del Consiglio Intercorso di Informatica del 05/05/04. la media, ponderata rispetto ai crediti e tradotta in centodecimi, è ottenuta escludendo il voto più basso. 11 / 11 PROGRAMMI DEI CORSI 12 / 12 ALGORITMI E STRUTTURE DATI I (Docente: M. Cristina Pinotti) Obiettivi del corso Progettare e analizzare l'efficienza degli algoritmi. Manipolare le strutture dati elementari: dizionari, alberi e grafi. Prerequisiti: Nozioni basilari dei corsi di Analisi Matematica, Matematica Discreta e Programmazione I (anche senza aver necessariamente sostenuto l’esame). Periodo didattico: I semestre Programma: Algoritmi: correttezza, terminazione, complessità (caso pessimo, caso medio). Analisi di InsertionSort. Metodi di progetto: Divide et Impera. Analisi di Ricerca binaria e MergeSort. Fondamenti di Matematica. Principio di Induzione (prova di terminazione e correttezza di programmi). Ordine di grandezza di funzioni: O, Ω, θ, o, ω. Base, tetto, esponenziali, Logaritmi. Sommatorie e serie. Soluzioni di ricorrenze, verifiche di soluzioni. Il Teorema dell'esperto. Generalità sugli alberi. Alberi binari (definizione ricorsiva). Rappresentazione con arrays. Heap: procedura di mantenimento dalla proprietà di heap e calcolo della sua complessità. Costruzione di un heap: metodo dal basso e dall'alto, calcolo delle complessità HeapSort e sua complessità. Code di priorità. Inserimento e cancellazione su un heap, complessità. Heaps d-ary. Ordinamento: Procedure di partizione (3 versioni). Analisi della complessità di QuickSort (caso peggiore, caso migliore, complessità media). Limiti teorici della complessità di ordinamento per confronto. CountingSort. Radix Sort. Mediana: Complessità di calcolo del minimo e del massimo in una sequenza. La mediana e la selezione dell'i-esimo elemento: algoritmo di complessità media O(n); algoritmo di complessità O(n) nel caso peggiore. Tabelle hash: Memorizzazione su tabelle con indirizzamento diretto. Collisioni. Tabelle hash. Criteri per funzioni hash. Gestione delle collisioni. Scansione esterna (liste di trabocco). Scansione interna (lineare, quadratica, doppio hashing, pseudocasuale). Cancellazione di dati. Complessità della scansione esterna ed interna senza agglomerati primari. Alberi di ricerca: Generalità sugli alberi ordinati, realizzazione. Alberi binari di ricerca. Ricerca di chiavi, minimo, massimo, successore e predecessore. Inserimento e cancellazione. Complessità delle operazioni di ricerca e problema del bilanciamento. Alberi binari di ricerca bilanciati. Alberi bilanciati per realizzare insiemi disgiunti (union, find). Generalità e rappresentazione in memoria. Schema generale di visita di grafi. Alberi di copertura e componenti connesse.Visita in ampiezza (BFS), visita in profondità (DFS) e loro proprietà (classificazione degli archi). Grafi aciclici e ordine topologico (algoritmo con la cancellazione di sorgenti, algoritmo con i tempi di fine-visita DFS). Componenti fortemente connesse (algoritmo con i tempi di fine-visita DFS). Modalità di Esame. Per accedere all'esame orale, lo studente deve superare una prova scritta di 2 ore, senza possibilità di consultare i testi. Una volta superata la prova scritta lo studente dovrà - a pena dell'annullamento della prova - sostenere l'orale nello stesso appello. Testi consigliati: T. H. CORMEN, C. E. LEISERSON, R. L. RIVEST, C. STEIN Introduzione agli algoritmi e strutture dati (Seconda edizione), McGraw-Hill, 2005, ISBN: 88-386-6251-7. 13 / 13 ALGORITMI E STRUTTURE DATI II (Docente: M. Cristina Pinotti) Obiettivi del corso Progettare e realizzare algoritmi per problemi combinatori, utilizzando tecniche di programmazione avanzate. Conoscere strutture dati per la memoria secondaria. Riconoscere i problemi trattabili e non. Periodo didattico: II semestre Prerequisiti: È necessario aver seguito il corso Algoritmi e Strutture Dati I. Programma: B-alberi e hashing per la memoria secondaria. Alberi di copertura di costo minimo: algoritmo di Kruskal, algoritmo di Prim. Cammini minimi da sorgente unica: algorimi di Dijkstra, algoritmo di Bellman-Ford. Heap binomiali e Heap di Fibonacci. Programmazione dinamica: moltiplicazione di matrici con il minimo numero di prodotti, la piu' lunga sottosequenza a comune fra due stringhe, problema dello zaino intero con/senza ripetizioni, palindrome, proghrammazione delle catene di montaggio. Algoritmi Greedy: selezione delle attività, colorazione di un grafo di intervalli, codici di Huffman. Cammini minimi fra tutte le coppie: algoritmo di Floyd-Warshall, algoritmo analogo alla moltiplicazione di matrici, algoritmo di Johnson per grafi sparsi. Flusso massimo; metodo di Ford-Fulkerson, algoritmo di Edmonds-Karp. Non-determinismo e algoritmi enumerativi. Teoria della NP-completezza e riducibilita'. Modalità di Esame. Per accedere all'esame orale, lo studente deve superare una prova scritta di 2 ore, senza possibilita' di consultare i testi. Una volta superata la prova scritta lo studente dovrà - a pena dell'annullamento della prova - sostenere l'orale nello stesso appello. Testi consigliati: T. H. CORMEN, C. E. LEISERSON, R. L. RIVEST, C. STEIN Introduzione agli algoritmi e strutture dati (Seconda edizione), McGraw-Hill, 2005, ISBN: 88-386-6251-7. ANALISI MATEMATICA I (Docente: Antonio Boccuto) Obiettivi del Corso Il Corso si propone di fornire le basi e gli strumenti necessari per il Calcolo di limiti, derivate, studio di funzioni e serie e una metodologia critica di studio. Prerequisiti Conoscenze preliminari di decomposizione di polinomi, regola di Ruffini, logaritmi, funzione esponenziale, funzioni trigonometriche. Periodo didattico: I semestre Programma Funzioni cosiddette „elementari“: potenza, radice, esponenziale, logaritmo, funzioni trigonometriche e fondamentali proprietà. Studio di vari tipi di disequazioni (di primo e secondo grado, esponenziali, logaritmiche, trigonometriche, razionali). Calcolo di domini di funzioni attraverso le disequazioni (esercizi). Definizioni e proprietà fondamentali dell‘estremo superiore e inferiore. Successioni e funzioni 14 / 14 monotone. Definizione di limite. Significato geometrico del limite. „0 x limitata=0“ (senza dim.). Altre proprietà fondamentali dei limiti (senza dim.). Teoremi dell‘unicità del limite, della limitatezza locale, della permanenza del segno (senza dim.). Esercizi sui limiti e risoluzione di forme indeterminate. Continuità e punti di discontinuità. Teoremi di Weierstrass, dei valori intermedi, degli zeri delle funzioni continue (senza dim.). Applicazioni. Definizione, significato geometrico e proprietà fondamentali della derivata (senza dim.). Derivabilità implica continuità (con dim.), ma non è vero il viceversa. Esercizi sulle derivate e sulle derivate notevoli. Punti di massimo e minimo assoluti e relativi, teorema di Fermat (senza dim.). Continuità, convessità, flessi e asintoti. Studi di funzione ed esercizi. Teorema di Rolle (con dim. ed esempi correlati), teorema di Lagrange (con dim.), conseguenze del teorema di Lagrange (con dim. di una a piacere), teorema di Cauchy (con dim.), teorema de L‘Hospital nei casi „zero su zero“ e „infinito su infinito“ (senza dim.). Teorema di Darboux (senza dim.). Calcolo di alcuni limiti con l‘aiuto del Teorema de l‘Hospital (esercizi). Serie: convergenza, divergenza e indeterminatezza. Serie geometrica e serie armonica generalizzata (senza dim.). Una serie A termini positivi o converge o diverge (con dim.). Se una serie converge, allora il limite del termine generale è zero (con dim.). Non è vero il viceversa (esempio). Criteri del confronto, del confronto asintotico, della radice, del rapporto, criteri di Leibnitz (senza dim.). Esercizi. Modalità di esame L’esame verte in una prova scritta, su esercizi sugli argomenti del Corso, e di una prova orale su tutto il programma, esercizi compresi. Sono ammessi all’orale solo gli studenti che alla prova scritta riportano una votazione non inferiore a 16/30. Testi consigliati Dispense fornite dal Docente ADAMS, Calcolo differenziale I, Ambrosiana Editrice, Milano PAGANI-SALSA, Analisi Matematica per Diplomi Universitari, Masson, Milano VINTI, Lezioni di Analisi Matematica, Vol. I, Galeno, Perugia ZWIRNER, Esercizi di Analisi Matematica, Vol. I, Cedam, Padova DEMIDOVIC, Esercizi e problemi di Analisi Matematica, MIR ANALISI MATEMATICA II (Docente: Antonio Boccuto) Obiettivi del Corso Il Corso si propone di fornire le basi e gli strumenti necessari per il Calcolo di limiti, derivate, studio di funzioni e serie e una metodologia critica di studio. Periodo didattico: II semestre Programma (N.B.: Solo dov'è esplicitamente indicato viene richiesta la dimostrazione; altrimenti si intende senza dimostrazione) Integrazione alla Riemann e principali proprietà. Integrale inferiore e superiore. Funzione di Dirichlet. Funzione integrale e sua lipschitzianità (con dim.), teorema della media nelle varie versioni (tutte quante con dim.), teorema di Torricelli-Barrow (con dim.), Formula Fondamentale del Calcolo Integrale (con dim.). Significato geometrico dell`integrale (con esercizi); legami, differenze e affinità tra integrale ed aree; calcolo di aree. 15 / 15 Integrale indefinito e sue fondamentali proprietà. Integrazione per parti e per sostituzione. Formule della tangente dell’arco metà. Varie versioni della formula di Hermite (escluso il caso di radici complesse multiple). Legami tra integrabilità alla Riemann ed esistenza di primitive (esempi). Integrali generalizzati o impropri (cenni). Formula di Taylor. Differenziale. Sviluppi in serie di Taylor ed esempi. Introduzione ai numeri complessi: operazioni elementari, potenze, radici, logaritmi. Teorema fondamentale dell’algebra (senza dim.; solo un cenno). Funzioni di due variabili: intorni, continuità, differenziabilità, derivate parziali, gradiente, Hessiano. Ricerca di massimi e minimi per funzioni di due e tre variabili. Punti stazionari o critici, punti sella. Autovalori e autovettori di matrici 2 x 2 e 3 x 3. Integrali doppi (con esercizi, senza particolari approfondimenti teorici). Integrali importanti per il Calcolo delle Probabilità e Statistica Matematica. Cenni sulla funzione Gamma e sue principali proprietà. Equazioni differenziali: Generalità su equazioni differenziali ordinarie del primo ordine, problema di Cauchy. Equazioni a variabili separabili. Equazioni lineari del primo ordine. Equazioni lineari del secondo ordine a coefficienti costanti. Metodo della variazione delle costanti arbitrarie (sia per il primo che per il secondo ordine: molto bene). Applicazioni a problemi della Fisica riguardanti i circuiti oscillanti, il moto dei gravi e il pendolo. Applicazioni all’equazione logistica e alla dinamica delle popolazioni. Cenni sulle linee di livello. Modalità di esame L’esame consiste in due prove, prova scritta e orale. La prova scritta verte su esercizi su argomenti del corso. La prova orale verte su tutto il programma, esercizi compresi. Passano la prova scritta solamente gli studenti che riportano una votazione non inferiore a 16/30. Testi consigliati Dispense fornite dal docente R. A. ADAMS, Calcolo Differenziale, Vol. I, Ambrosiana, 1999 C. VINTI, Lezioni di Analisi Matematica, Vol. I e II, Galeno, 1992 C. D. PAGANI - S. SALSA, Matematica per i Diplomi Universitari, Masson, 1997 G. ZWIRNER, Esercizi di Analisi Matematica, Vol. II, CEDAM, 1977 B. DEMIDOVIC, Esercizi di Analisi Matematica, MIR, 1987 APPLICAZIONI E CALCOLO IN RETE (Docenti: Tarantelli Franccesco, Storchi Loriano) Obiettivi del corso Familiarizzare con l'evoluzione delle architetture da sequenzialita' a concorrenza. Sviluppare la capacita' di analizzare algoritmi semplici sia per ambienti sequenziali che paralleli. Familiarizzare con la programmazione di socket. Approfondimento della conoscenza degli strumenti per la parallelizzazione e la distribuzione su rete di programmi scientifici e relative applicazioni. Periodo didattico: I semestre Programma: - L'interfaccia di Socket. - a. basi di programmazione in ambieti UNIX. - b. utilizzo di socket su protocollo TCP/IP. - c. sviluppo di semplici applicazioni in C/C++. - Dalla sequenzialita' alla concorrenza - a. Verso la concorrenza su elaboratori a singola cpu 16 / 16 - b. Piattaforme concorrenti a piu' cpu - c. Piattaforme di elaborazione su grid - d. Soluzioni concorrenti di problemi elementari - Strumenti e tecniche di parallelizzazione e valutazione delle prestazioni - a. Programmazione parallela e valutazione delle prestazioni - Approcci concorrenti al calcolo tecnico-scientifico - a. Modelli di programmazione parallela e paradigmi di programmazione - b. MPI: nascita ed evoluzione - c. Applicazioni di paradigmi e modelli di parallelismo Testi Consigliati: Materiale fornito dal docente. Modalità di Esame Colloquio orale. Testi consigliati Rivolgersi al docente. ARCHITETTURA DEGLI ELABORATORI I (Docente: Ferruccio Barsi) Obiettivi del corso Analisi e sintesi delle reti digitali. Introduzione alla modellistica discreta ed al progetto di sistemi numerici. Periodo didattico: I semestre Programma LE RETI LOGICHE Funzioni logiche e reti logiche. Circuiti AND, OR, NOT, NAND, NOR e loro impiego. Rappresentazione grafica. LE RETI COMBINATORIE Funzioni logiche e loro rappresentazione. Implicazione e copertura. Implicanti ed implicati. La ricerca degli implicanti. Espressioni irridondanti e minime. Procedure sistematiche per l’ottenimento delle forme minime. La tabella di copertura. Tabelle cicliche. Funzioni non completamente specificate e funzioni a più uscite. MODULI COMBINATORI I moduli combinatori. Addizionatori, codificatori e decodificatori, Multiplexer e Demultiplexer, PLA. ROM. LE RETI SEQUENZIALI Reti sequenziali. La macchina sequenziale. Gli elementi di memoria. Riduzione del numero di stati di una macchina sequenziale.La procedura di Moore e la Tabella di Unger. La macchina minima. Sintesi. Macchine non completamente specificate. Copertura, compatibilità, riduzione. Procedure sistematiche per la riduzione di macchine non completamente specificate. Sintesi. MODULI SEQUENZIALI Moduli sequenziali. Contatori e registri. Modalità di Esame Per accedere all'esame orale, lo studente deve superare una prova scritta generalmente consistente in un questionario a risposte multiple. Una volta superata la prova scritta lo studente dovrà - pena 17 / 17 l'annullamento della prova - sostenere l'orale in un appello dell'anno accademico di riferimento. Lo studente ha facoltà di rinunciare al proseguimento della prova orale (la rinuncia non comporta menzione nella carriera dello studente) per una ed una sola volta senza che la prova scritta venga annullata ma non è consentito ripetere l'esame nella stessa sessione. Testi consigliati F. BARSI, Architettura degli Elaboratori. Prima parte: Reti Logiche, Margiacchi - Galeno Editrice, 2001 - ISBN 88-86494-40-8 F. BARSI, Reti Logiche e Aritmetica di macchina - Esercizi e Test, Margiacchi - Galeno Editrice, 2005 - ISBN 88-86494-60-2 ARCHITETTURA DEGLI ELABORATORI II (Docente: Ferruccio Barsi) Obiettivi del corso Analisi di sistemi digitali e loro architettura tipo. Sintesi elementare. Capacità di comprensione di sistemi complessi. Aritmetica dei calcolatori. Periodo didattico: II semestre Programma ARCHITETTURA A LIVELLO DEI REGISTRI Considerazioni generali sull?architettura di un sistema digitale. Il livello descrittivo dei registri. Il linguaggio RTL. Le micro-operazioni ( op). op di trasferimento ed aritmetico ? logiche. Considerazioni generali sul controllo. Cicli di macchina. Formato istruzioni. Indirizzamento. Controllo cablato e programmato. Architetture RISC e CISC. UN CALCOLATORE ELEMENTARE A CONTROLLO CABLATO Un calcolatore didattico a controllo cablato. L?architettura a livello di registri. Il bus di sistema. Tipi di istruzioni. Istruzioni che fanno riferimento alla memoria. Linguaggi a livello macchina. Assembly language. Programmazione assembly. Esempi di programmi. Cicli e subroutines. UN CALCOLATORE ELEMENTARE A CONTROLLO MICROPROGRAMMATO Architettura. Il linguaggio µ-Assembler. La routine di fetch. Le altre routine. Decodifica dei campi funzione. Il generatore di indirizzi. ARCHITETTURA A LIVELLO DEI PROCESSOR La CPU L'unità aritmetico logica. Lo shifter. Lo stack di memoria. LA MEMORIA Dispositivi di Memoria. Caratteristiche dei dispositivi di Memoria. Dischi. Memorie Veloci. Memoria Virtuale. Gerarchie di memoria. Address mapping. Allocazione dinamica.. Allocazione nelle diverse organizzazioni di memoria principale di memoria. L'INGRESSO/USCITA L'Interfaccia di I/O. I/O Bus e Modulo di interfaccia. I/O Bus e Memory Bus. Un esempio di interfaccia I/O. Trasferimento dati. Modalità di controllo di I/O. L'interrupt. Hardware priority interrupt. Accesso Diretto in Memoria. I/O Processor. L'INFORMAZIONE La rappresentazione dei numeri.. Sistemi numerici posizionali in base fissa. Rappresentazione di un numero in base fissa. Cambiamento della base della rappresentazione. La rappresentazione dei numeri relativi. Rappresentazione in complemento al campo. I numeri razionali. Rappresentazione di un numero frazionario. Rappresentazione di un numero razionale. OPERAZIONI ARITMETICHE Addizione di interi relativi. Traboccamento. Moltiplicazione di interi relativi. La virgola mobile. PROTEZIONE DELL'INFORMAZIONE DA ERRORE 18 / 18 La parola di informazione. Le ipotesi di errore. Rilevazione e correzione di errore. Codici binari lineari. Codici di Hamming. SISTEMI DI SICUREZZA La criptografia. Riservatezza ed autenticazione. Sicurezza assoluta e computazionale. Tipi di criptosistemi. Le firme digitali. Il criptosistema DES. Il criptosistema RSA. La moneta elettronica nel criptosistema RSA. Il criptosistema PGP. Modalità di Esame Per accedere all'esame orale, lo studente deve superare una prova scritta realmente consistente in un questionario a risposte multiple. Una volta superata la prova scritta lo studente dovrà - pena l'annullamento della prova - sostenere l'orale in un appello dell'anno accademico di riferimento. Lo studente ha facoltà di rinunciare al proseguimento della prova orale (la rinuncia non comporta menzione nella carriera dello studente) per una ed una sola volta senza che la prova scritta venga annullata ma non è consentito ripetere l'esame nella stessa sessione. Testi consigliati F. BARSI, Architettura degli Elaboratori. Parte Seconda: Struttura dei Sistemi, Margiacchi Galeno Editrice, 2006 – ISBN 88-86494-63-7 F. BARSI, L’Informazione – Rappresentazione Trattamento Protezione, Margiacchi - Galeno Editrice, 2006 – ISBN 88-86494-64-5 F. BARSI, Reti Logiche e Aritmetica di macchina - Esercizi e Test, Margiacchi - Galeno Editrice, 2005 - ISBN 88-86494-60-2 ARCHITETTURA DELLE RETI DI COMPUTER (Docente: Osvaldo Gervasi) Obiettivi del corso Conoscenza delle tecnologie e dei servizi di rete. Comprensione del funzionamento dei principali servizi Internet. Approfondimento del ruolo dei diversi dispositivi hardware e funzionalità dei protocolli software delle reti di computer. Periodo didattico: I semestre Prerequisiti Uso della rete Internet (posta elettronica e Web). Programma Il corso presenta il modello di riferimento ISO/OSI e le principali architetture di reti locali, reti geografiche e reti MAN. In particolare vengono presentate in dettaglio le tecnologie Ethernet (e le sue varianti) ed i protocolli Frame Relay ed ATM. Viene presentata la famiglia di protocolli TCP/IP, i Servizi di rete Internet, i protocolli di routing dinamici OSPF, RIP e BGP. Vengono forniti e studiati esempi di configurazioni di reti TCP/IP e di routing, in ambiente Linux, Windows e Cisco. Modalità di Esame: 15 test individuali al computer (sistema EOL). Colloquio orale. Testi consigliati Dispense messe a disposizione dal docente. Per ulteriori approfondimenti: 1. Andrew S. Tanenbaum: Reti di Computer, UTET-Prentice Hall International, ISBN 887750- 453-6 2. Douglas Comer: Internetworking con TCP/IP - Principi, protocolli, Architettura; Gr. Ed. Jackson-Prentice Hall Int. ISBN 88-256-0346-0 19 / 19 BASI DI DATI E SISTEMI INFORMATIVI I (Docente: Andrea Formisano) Obiettivi del corso Il corso si propone di fornire le competenze essenziali relative a fondamenti, concetti, metodi e tecniche per il progetto e l'utilizzo delle basi di dati e dei sistemi di gestione delle basi di dati. Lo studente dovrebbe acquisire capacita` di comprensione e utilizzo delle nozioni e strumenti basilari connessi alla progettazione e realizzazione delle basi di dati. Periodo didattico: I semestre Prerequisiti Architettura degli elaboratori e Sistemi operativi. Programma Introduzione ai database ed ai DBMS. Il modello Entità-Relazione. Progettazione concettuale. Il modello relazionale. Algebra e calcolo relazionale. Il linguaggio SQL. Normalizzazione. Introduzione alla tecnologia dei DBMS. Testi consigliati R.A.Elmasri e S.B.Navathe: Sistemi di basi di dati, 5a edizione, Pearson-AddisonWesley (2007) Eventuale materiale complementare fornito dal docente. (anche disponibile presso la portineria del dipartimento). Modalità di Esame Prova scritta (eventuale prova orale). BASI DI DATI E SISTEMI INFORMATIVI II (Docente: Valentina Poggioni) Obiettivi del corso Il corso ha un duplice obiettivo: da una parte offrire una panoramica sugli aspetti tecnologici di un DB server e sulle principali applicazioni e/o estensioni del modello standard dei database relazionali (DB distribuiti e ad oggetti). Dall'altra si illustrano i sistemi con cui comunemente sono sviluppate le applicazioni che accedono ai DB. Una significativa parte del corso si svolgerà in laboratorio per garantire agli studenti l’acquisizione di abilità specifiche nella effettiva realizzazione di database. Periodo didattico: II semestre Prerequisiti Basi di dati e Sistemi informativi I, Programmazione II. Programma Gestione delle transazioni: Transazioni e loro proprietà. Controllo di affidabilità: log, ripresa a caldo e a freddo. Controllo di concorrenza: anomalie, teoria della concorrenza, soluzioni proposte, gestione dei lock, i deadlock. Organizzazione fisica di un DB e gestione delle interrogazioni: Gestione del buffer . Strutture dati per l'organizzazione dei file. Esecuzione e ottimizzazione delle interrogazioni. Basi di dati ad oggetti: caratteristiche principali, lo standard ODMG, basi di dati relazionali ad oggetti Architetture distribuite: Basi di dati distribuite. Tecnologia dei DB distribuiti, protocollo di commit a due fasi, TS distribuito, replicazione, cenni al parallelismo e alla cooperazione dei DB Cenni sulle architetture dei sistemi informativi su Web. Laboratorio: JDBC, PostgreSQL, DB4O, Database attivi. 20 / 20 Modalità di Esame Realizzazione di un progetto, colloquio orale. Testi consigliati Atzeni P., Ceri S., Paraboschi S., Torlone R., Basi di dati, Architetture e linee di evoluzione. McGraw-Hill, seconda edizione. CALCOLO DELLE PROBABILITÀ E STATISTICA MATEMATICA (Docente: Giulianella Coletti) Obiettivi del corso Fornire, in modo integrato, alcuni concetti fondamentali di probabilità e statistica, cercando di stimolare le capacità critiche del discente, per metterlo così in grado anche di affrontare ogni nuovo problema e non solo quelli di "routine" . Periodo didattico: I semestre Prerequisiti Concetti base di Analisi I e II, Elementi di logica booleana Programma Eventi. Operazioni fra eventi. La probabilità come grado di fiducia. Coerenza e additività . La valutazione combinatoria. Numeri aleatori semplici. Previsione e varianza di numeri aleatori semplici. La valutazione frequentista. Eventi condizionati e probabilità condizionata. Indipendenza stocastica. Distribuzione binomiale e ipergeometrica. Test di ipotesi. Numeri aleatori discreti e continui. Distribuzioni di Poisson, geometrica, uniforme, esponenziale, normale. Distribuzioni multiple. Il teorema centrale. Variabili statistiche discrete e continue. Media, moda, mediana. Misure di dispersione. Correlazione di dati bidimensionali. Rette di regressione. Campionamento statistico e stima dei parametri. Intervalli di confidenza. Testi consigliati Romano Scozzafava: Incertezza e Probabilita' , Zanichelli (2008) Joseph Toscano : Traning autogeno in probabilità , Zanichelli (2008) Modalità di Esame Prova scritta e orale (facoltativa). N.B. l' eventuale prova orale può essere sostenuta solo avendo ottenuto la sufficienza nella prova scritta. CALCOLO NUMERICO (Docente: Bruno Iannazzo) Obiettivi del corso Fornire allo studente gli strumenti per realizzare e analizzare algoritmi per la risoluzione numerica di problemi matematici continui. Periodo didattico: II semestre Programma Risoluzione di un’equazione non lineare - Metodo di bisezione. Metodi di iterazione funzionale. Metodo delle tangenti e altri metodi classici. Efficienza dei metodi. Analisi dell' errore - Numeri di macchina. Condizionamento di un problema. Errore algoritmico. Analisi dell’errore. 21 / 21 Algebra lineare numerica - Norme vettoriali e norme matriciali. Matrici riducibili. Metodi diretti per la risoluzione di sistemi lineari. Algoritmo di eliminazione di Gauss. Fattorizzazioni LU, QR e di Cholesky. Localizzazione degli autovalori di una matrice. Metodo delle potenze. Il modello dei motori di ricerca. Interpolazione e integrazione numerica - Interpolazione polinomiale. Trasformata veloce di Fourier. Cenni sulle formule di quadratura. Modalità di Esame Una prova scritta ed una orale (Prerequisiti: Calcolo differenziale: studio di funzione, derivate, integrali. Algebra lineare: sistemi lineari, determinanti, autovalori. È richiesta inoltre una buona familiarità con la programmazione). Testi consigliati 1. R. Bevilacqua, D. Bini, M. Capovani, O. Menchi, Metodi Numerici, Zanichelli. 2. D. Bini, M. Capovani, O. Menchi, Metodi Numerici per l'Algebra Lineare, Zanichelli. ELEMENTI DI SCIENZE ATOMICHE E MOLECOLARI (Docente: Antonio Laganà, Leonardo Pacifici) Obiettivi del corso Fornire, in modo integrato, alcuni concetti fondamentali delle strutture atomiche e molecolari partendo dai principi fondamentali della fisica e collegandoli all’esito dei processi chimici. Esaminare in modo sistematico il variare delle proprietà di atomi e molecole collegandole alla progressivo arricchirsi della struttura elettronica. Sviluppare le capacità del discente nel comprendere la natura molecolare dei processi chimici. Periodo didattico: II semestre Programma Le proprietà dei processi bimolecolari e la meccanica classica. Modelli con soluzioni analitiche e numeriche per collisioni elastiche e reattive. Superamento della visione classica e trattamento quantistico per potenziali modello. Il caso degli stati discreti e la costruzione dell’atomo idrogenoide. Le soluzioni numeriche e i metodi di approssimazione. I sistemi a tre o più corpi. Metodi numerici dello sviluppo in un set di base. I sistemi a molti corpi. Sistematica principali dei vari gruppi. Struttura elettronica degli atomi. Origini della meccanica quantistica e dualismo onda particella. L'atomo di idrogeno. Atomi polielettronici. Il legame chimico. Orbitali Molecolari. Proprieta` periodiche. Sistematica principali dei vari gruppi. Esercitazioni al calcolatore. Modalità di Esame Prova scritta e orale Testi consigliati Peter Atkins e Loretta Jones, Chimica Generale, Zanichelli FISICA DEI DISPOSITIVI ELETTRONICI (Docenti: Leonello Servoli) Obiettivi del corso Comprensione del funzionamento dei dispositivi elettronici impiegati sulle macchine attuali e degli sviluppi futuri del campo. Capacità di realizzare semplici circuiti. 22 / 22 Periodo didattico: II semestre Programma MODELLO ATOMICO. Atomo di idrogeno, principio di esclusione di Pauli, Livelli di energia, buche ed effetto tunnel, distribuzione di Fermi-Dirac, Livelli di Fermi. FISICA DEI MATERIALI SEMICONDUTTORI. Conduttori, semiconduttori, isolanti. Cenni sulla meccanica quantistica. Livello di fermi nei metalli. Densità degli stati disponibili. Teoria delle bande nei solidi. Concetto di lacuna. Massa efficace. Esempi di bande nei semiconduttori (gr. IV e gr III-V). Semiconduttori intrinseci ed estrinseci. Livello di Fermi nei semiconduttori. Fenomeni di trasporto nei materiali semiconduttori. Equazione generale della diffusione. GIUNZIONE P-N. Equilibrio termodinamico, regione di svuotamento. Caratteristica i-v, funzionamento come un diodo, modello lineare del diodo, tempi di transizione. Diodi zener e tunnel. TRANSISTORE BIPOLARE. Effetto transistore e regioni di funzionamento. Guadagno di corrente, fattore di trasporto ed efficienza di emettitore. Il modello di Ebers-Moll. Caratteristiche statiche I-V. Effetto Early. Effetti della polarizzazione di emettitore. Resistenza di base. Modelli e circuiti equivalenti principali. ELEMENTI DI ELETTRONICA DIGITALE. Implementazione delle operazioni logiche. Famiglie logiche DISPOSITIVI OPTOELETTRONICI. Transizioni radiative e assorbimento ottico. Diodi emettitori di luce: LED, Laser a semiconduttore. Fotorivelatori, celle solari. Trasduttori. Sensori. DISPOSITIVI QUANTISTICI PER IL QUANTUM COMPUTING E DISPOSITIVI PER LA NANOELETTRONICA. Dispositivi quantistici (memorie e quantum computing). Nanotubi di carbonio: Proprietà generali. Proprietà elettriche. FET su nanotubi di carbonio. Prestazioni dei dispositivi nanometrici. CENNI SUI DISPOSITIVI PER LA BIOELETTRONICA. Laboratorio: - Simulazione di circuiti elettrici e dispositivi logici. - Esperienze con componentistica discreta analogica e digitale. - Realizzazione di semplici circuiti logici. Testi consigliati Libro principale: Microelettronica; J. Millman, A.Grabel (Mc Graw Hill) Ulteriori Testi di Consultazione: - Dispositivi a Semiconduttore; S.M. Sze Biblioteca Scientifica Hoepli - Elettronica Integrata Digitale; E. Taub, D. Schilling (Gruppo Editoriale Jackson) Modalità di Esame Colloquio orale sugli argomenti del corso e discussione delle relazioni sperimentali della attività di Laboratorio. FISICA GENERALE (Docenti:, Attilio Santocchia) Obiettivi del corso Comprensione dei concetti fondamentali di fisica classica con particolare riguardo agli aspetti rilevanti per il funzionamento dei calcolatori e delle loro periferiche. Periodo didattico: I semestre Programma MECCANICA Misure. Moto rettilineo: velocità media, velocità istantanea, accelerazione. Esempi ed esercizi. 23 / 23 Moto in due e tre dimensioni. Posizione, spostamento, velocità, accelerazione. Composizione e decomposizione dei moti. Moto dei proiettili. Moto circolare uniforme e moto armonico Forze e moto: Le forze. Forza di gravità, forza elastica, forze di attrito. Le forze ed il moto. Moti relativi: Moti relativi. Sistemi inerziali. Esempi ed esercizi. Forze e moto: Cenni storici sulla meccanica newtoniana. Le forze della natura. Massa. Baricentro, moto del baricentro. Energia cinetica e lavoro: Energia cinetica. Lavoro: lavoro di una forza costante e di una forza variabile, esempi. Il teorema dell’energia cinetica per il moto di un corpo senza energia interna. Esempi ed esercizi. Lavoro ed energia: Lavoro ed energia. Forze conservative e non conservative. Conservazione dell’energia: Energia interna ad un sistema. Il principio di conservazione dell’energia in generale. Cenni alla dinamica dei moti rotatori. Equilibrio. MECCANICA DEI FLUIDI I fluidi: Densità e pressione. Misura della pressione. Principio di Pascal. Principio di Archimede. Dinamica dei fluidi: Linee di flusso ed equazione di continuità. Equazione di Bernoulli ed applicazioni. TERMOLOGIA E TERMIDINAMICA Calorimetria: Temperatura e calore. Esempi ed esercizi. Il primo principio della termodinamica. Trasmissione del calore. Equazione di stato dei gas perfetti. Temperatura assoluta e gas: Equazione di stato dei gas perfetti. Il modello molecolare dei gas perfetti. La temperatura assoluta. Cenno ai gas reali. Macchine termiche e frigorifere. Il secondo principio della termodinamica. Cenni al terzo principio della termodinamica. Propagazione del calore. ELETTROSTATICA Carica elettrica e campo elettrico: Carica elettrica, conservazione della carica. Legge di Coulomb. Campo elettrico. La carica dell’elettrone. Il concetto di campo. Legge di Gauss per il campo gravitazionale ed elettrostatico. Energia potenziale e potenziale elettrico. Capacità e condensatori: Capacità e condensatori. Condensatori piani. Calcolo della capacità. Condensatori in serie e parallelo. L’oscillografo. Energia immagazzinata nel campo elettrico. Dielettrici. CORRENTI ELETTRICHE CONTINUE Cariche in movimento, densità di corrente e corrente elettrica. Legge di Ohm. Potenze nei circuiti elettrici. Dissipazione della potenza. Elettrolisi. Resistenze in serie e parallelo. Esempi ed esercizi. Cenno ai superconduttori. Generatori di f.e.m. Resistenza interna. Generatori di tensione e di corrente. Cenni ai semiconduttori. Circuiti in corrente continua. Amperometri, voltmetri, Ohmetri. Esempi ed esercizi. Principi di Kirchhoff. Esempi ed esercizi INTRODUZIONE ALL’ELETTRONICA Carica e scarica di un condensatore. Elementi non lineari. Diodo a giunzione. Il LED. Il transistore a giunzione e ad effetto di campo: principio di funzionamento. Applicazioni dei transistori: Il transistore come amplificatore, il transistore come interruttore. CAMPI MAGNETICI STATICI Il campo magnetico. Legge di Ampère. Solenoidi e toroidi Dipolo magnetico. Il teorema di Gauss per il campo magnetico. Equivalenza di una spira percorsa da corrente con un dipolo magnetico. 24 / 24 Fenomeni magnetici e struttura della materia. Cenno al ferromagnetismo. CAMPI ELETTRICI E MAGNETICI VARIABILI E INTRODUZIONE ALL’ELETTRODINAMICA Legge di induzione di Faraday-Lenz. Esempi ed applicazioni. Considerazioni energetiche. Alternatori e motori. Induttori ed induttanza. Energia immagazzinata in un campo magnetico. Mutua induttanza, Campi magnetici indotti. Corrente di spostamento. Cenno alle equazioni di Maxwell. Propagazione dell’onda elettromagnetica: trattazione qualitativa. Velocità della luce. Trasporto di energia. Cenno ai fenomeni ondulatori: interferenze e diffrazione. INTRODUZIONE ALL’OTTICA Riflessione, rifrazione. Il prisma e la scomposizione della luce. Le fibre ottiche. Introduzione all’ottica geometrica. Immagini. Proprietà delle lenti. CIRCUITI IN CORRENTE ALTERNATA Oscillazioni LC. L’analogia tra oscillazioni in corrente alternata e gli oscillatori in meccanica. Corrente alternata. Ciruiti in corrente alternata. Cenno alla analisi di Fourier. Il trasformatore Oscillazioni smorzate. Oscillazioni forzate. CENNI DI STRUTTURA DELLA MATERIA ED APPLICAZIONI Cenni alla struttura atomica. Tavola periodica degli elementi. Laser e luce laser. Principio di funzionamento del laser. Modalità di Esame L'esame è costituito da una prova scritta eventualmente seguita da una prova orale nei casi in cui la prova scritta sia leggermente insufficiente o lo studente reputi la sua preparazione superiore al risultato conseguito o, infine, a giudizio del docente. La prova scritta è costituita da quesiti a scelta multipla. Il voto in trentesimi è proporzionale al numero di risposte corrette. La prova è valida per la sola sessione di esame in cui è stata effettuata. Testi consigliati Halliday - Resnick: Fondamenti di fisica - Sesta edizione Casa Editrice Ambrosiana (Anche le edizioni precedenti vanno bene). Note: I trasparenti delle lezioni ed un esempio di prova scritta alla fine del modulo sono disponibili su http://lariccia-pc2.pg.infn.it/moodle/ e saranno in futuro disponibili sul sito di Facoltà e-science INGEGNERIA DEL SOFTWARE (Docente: Alfredo Milani) Obiettivi del corso Fornire, in modo integrato, alcuni concetti fondamentali di probabilità e statistica, cercando di stimolare le capacità critiche del discente, per metterlo così in grado anche di affrontare ogni nuovo problema e non solo quelli di "routine" . Periodo didattico: II semestre Prerequisiti Concetti di base di programmazione ad oggetti. Elementi di logica booleana. Programma Il software: processo e prodotto. Modelli di Ciclo di Vita del Software e Tecniche di Analisi. 25 / 25 Linguaggi di modellazione: UML. Metriche di prodotto e di processo. Tecniche di Test e di Verifica Formale, Model Checking. Standard Valutazione del Software e della Sicurezza. Tecnologie di supporto al riuso. Modalità di esame: Progetto individuale e prova orale. Testi consigliati Ghezzi et al. INGEGNERIA del SOFTWARE, Ed. Mondadori Informatica Appunti del Docente LABORATORIO DI ALGORITMI (Docente: Rosanna Bicocchi) Obiettivi del corso: Implementare algoritmi operanti su strutture dati elementari: liste, pile, code, alberi, grafi. Periodo didattico: I semestre Programma: Tipi di dati astratti: specifica sintattica e semantica, implementazione. Rappresentazione di insiemi. Rappresentazione di tipi di dati astratti (gioco, contenitore, ecc.) Liste semplici: specifica sintattica e semantica, rappresentazione sequenziale e collegata. Algoritmi operanti su liste semplici. Liste bidirezionali: rappresentazione collegata . Algoritmi operanti su liste bidirezionali. Liste circolari. Liste ordinate. Alberi radicati: specifica sintattica e semantica, possibili rappresentazioni. Alberi binari: rappresentazione sequenziale e collegata. Algoritmi di visita. Algoritmi operanti su alberi binari. Alberi binari di ricerca. Algoritmi operanti su alberi binari di ricerca: ricerca di una chiave, inserimento di un nodo, cancellazione di un nodo. Grafi: specifica sintattica e semantica, possibili rappresentazioni. Algoritmi di visita. Modalità di esame: l`esame e` costituito da una prova scritta, che deve essere superata con voto >= 18, seguita da una prova orale. Testi consigliati: A. A. Bertossi: “Algoritmi e strutture di dati”, UTET, 2000. LABORATORIO DI ARCHITETTURA (Docente: Alfredo Navarra) Obiettivi del corso: Acquisizione di elementi base relativi alla conoscenza della architettura degli elaboratori, con particolare enfasi rivolta alla programmazione assembly e micro-programmazione. 26 / 26 Periodo didattico: II semestre Programma: Introduzione, storia ed evoluzione dell'Elaboratore. Architetture CISC/RISC. Potere Computazionale di un Elaboratore. DEC-PDP8: Utilizzo dell'emulatore, linguaggio Assembly. Metodologia del Pipelining. La Memoria Cache, Virtuale e di Massa. Periferiche e Bus. Modalità di esame: Esame scritto e orale. Testi consigliati: C. Hamacher, Z. Vranesic, S. Zaky: Introduzione all'architettura dei calcolatori s.e. McGraw-Hill; F. Barsi: Architettura degli elaboratori, parte seconda: struttura dei sistemi, Margiacchi-Galeno. LABORATORIO DI BASI DI DATI (Docente: Valentina Poggioni) Obiettivi del corso Il corso, che si svolge interamente in laboratorio, ha come obiettivo l'acquisizione di capacità di programmazione nell'ambito delle basi di dati permettendo allo studente di applicare le conoscenze acquisite durante il corso di Basi di dati e Sistemi Informativi. Periodo didattico: Prerequisiti Laboratorio di Programmazione. Programma Programmazione in SQL, realizzazione e interrogazione di database relazionali. Creazione di applicazioni che si connettono a database con JDBC per Java e PHP Modalità di Esame Realizzazione di un progetto. Testi consigliati Manuali dei linguaggi e dei software utilizzati. LABORATORIO DI LINGUAGGI DI REALTÀ VIRTUALE (Docente: Osvaldo Gervasi) Obiettivi del corso Conoscenza delle tecnologie alla base della rappresentazione virtuale degli oggetti e delle scene e delle tecnologie Web3D, in particolare i linguaggi X3D e VRML. Periodo didattico: II semestre Programma: Approfondimento delle tematiche affrontate nel corso di Linguaggi di Realtà Virtuale. Esercitazioni guidate in laboratorio. Sviluppo dell’applicazione oggetto dell’esame. Modalità di Esame Test idoneativo mediante il sistema EOL. 27 / 27 Presentazione della relazione in formato HTML o Openoffice o PDF o Powerpoint inerente il progetto di Mondo Virtuale sviluppato dallo Studente ed assegnato dal Docente. Testi consigliati: Materiale multimediale e bibliografia di siti Internet forniti dal Docente. LABORATORIO DI PROGRAMMAZIONE (Docente: Stefano Marcugini) Obiettivi del corso Capacità di progettare e realizzare programmi applicativi. Periodo didattico: II semestre Programma Approfondimento del linguaggio Java. Esempi di applicazioni. Programmazione mirata all'ambiente di rete Socket. Applicazioni client-server. Modalità di Esame La prova di esame consiste in una prova pratica da svolgere in laboratorio su esercizi proposti dal docente e in una discussione orale sulla prova realizzata. Testi consigliati: Karsten Samaschke, Java "Dai fondamenti alla programmazione avanzata" edizioni Apogeo Appunti forniti dal docente Altri testi di riferimento L.Lemay, C.L. Perkins, Java 1.2, Edizioni Sams net Cay S. Horstmann e Gary Cornell, Java 2 i fondamenti, Mc Graw Hill; Cay S. Horstmann e Gary Cornell, Java 2 tecniche avanzate, Mc Graw Hill; LABORATORIO DI RETI DI COMPUTER (Docenti: Sergio Tasso) Obiettivi del corso Fornire conoscenze ed esperienze sulla gestione del hardware di rete, dei servizi Internet e di strumenti per la messa in sicurezza delle reti. Periodo didattico: II semestre Programma Introduzione alla gestione delle reti Configurazione del TCP/IP: Come definire sottoreti, definizione delle interfacce La configurazione del Routing: minimale, statico, dinamico (RIP, OSPF, EGP) Servizi di rete (definizione, configurazione ed uso): La gestione dei nomi la Host table, il DNS (Domain Name Service); L'accesso a risorse in rete comandi remoti, il servizio NIS (Network Information Service), il sistema NFS (Network File System); La posta elettronica gli aliases, il servizio sendmail; 28 / 28 Servizi di controllo e gestione: SNMP (Simple Network Management Protocol) definizione del protocollo, MIB (Management Information Base), applicazioni di gestione, monitoraggio, definizione degli allarmi, trattamento degli eventi; Altri comandi e tools di diagnostica in Unix; Sicurezza: Criteri di valutazione dei rischi Strumenti per il controllo dei rischi Limitazione degli accessi TCP wrapper Firewall Strumenti di monitoraggio e IDS Esempi ed esercitazioni su tutti gli argomenti trattati Modalità di Esame Test a risposte chiuse e progetto di LAN aziendale Testi consigliati: Gary Govanus: TCP/IP Per configurare, implementare e gestire TCP/IP sulla vostra rete, McGraw-Hill Craig Hunt: TCP/IP Network Administration, O’Reilly & Associates, Inc. Materiale fornito dal Docente. LABORATORIO DI SISTEMI OPERATIVI (Docente: Pietro Tito Melacci) Obiettivo del corso: Studio di uno specifico SO dal punto di vista dell’utente e sviluppo di semplici programmi di interazione con il sistema. Periodo didattico: I semestre Programma: IL SISTEMA OPERATIVO UNIX. Organizzazione a livelli (HW, Kernel, Tools, Shell). La portabilità` di UNIX. La storia di UNIX. Formato dei comandi. Il manuale UNIX in linea. Comandi interattivi e non interattivi. Interfaccia utente. I codici speciali (eof, esc, lnext, intr, quit, start, stop). La procedura di bootstrap. Il processo init. I processi utente. I daemon. LA GESTIONE DEI FILE. Il file system, la struttura gerarchica. Le directory standard di UNIX. I tipi di file di UNIX (file ordinari, directory, file speciali, pipe, link simbolici). I pathname. I nomi dei file e i metacaratteri. I meccanismi di protezione dei file (i diritti di accesso, i diritti di accesso sulle directory). Maschera di creazione dei file. Modifica dei diritti di accesso ai file (modo numerico, modo simbolico). Home directory. Operazioni sui file ordinari (cp, mv, rm, ln). Hard link, link simbolici (symlink). Verifica del contenuto dei file ordinari. Reperire informazioni sui file. File e directory significativi di UNIX. I file speciali (major number, minor number). Le espressioni regolari. LA GESTIONE DEI PROCESSI. 29 / 29 Verifica dell`evoluzione dei processi (stati di avanzamento di un processo UNIX). Manipolazione dell`evoluzione dei processi. La gestione dei segnali. La creazione di un processo e l`esecuzione di un programma (la primitiva exec, la primitiva fork). LA SHELL UNIX. Le shell di UNIX, la Bourne shell e la C shell. Il meccanismo di esecuzione dei comandi: i comandi built-in ed i comandi esterni (primitive fork ed exec), meccanismo di esecuzione di un comando. Multitasking: comandi foreground, comandi background (metacarattere &), meccanismo di esecuzione di un commando in background. REDIREZIONE: Redirezione dello standard output (metacaratteri > e >>), Redirezione dello standard input (metacarattere < ), Redirezione dello standard error (nella Bourne shell e nella C shell), Here documents ( metacarattere <<). COMPOSIZIONE DEI COMANDI: Esecuzione seriale (metacarattere ;), il meccanismo di esecuzione seriale; pipeling (metacarattere |), il meccanismo di esecuzione di una pipeline; esecuzione con subshell (metacaratteri ( e )), il meccanismo di esecuzione con subshell. Esecuzione condizionale dei comandi utilizzando && e | | AMBIENTE SHELL: Il file .profile e le variabili di ambiente nella Bourne shell, Il file .login e le variabili di ambiente nella C shell. Caratteristiche tipiche della C shell (la history, aliasing, il job control). La gestione del login (il file /etc/passwd). MANIPOLAZIONE TESTI. L`editor vi. Command mode, text input mode. Le modifiche con ex. Pattern di ricerca. Le espressioni regolari dell`editor. Interazione con la Shell. Personalizzazione di vi. Gestori di testi. LINGUAGGI E STRUMENTI DI SUPPORTO ALLA PROGRAMMAZIONE. Compilatori ed interpreti (opzioni, il file oggetto). I compilatori Fortran, Pascal, C. Debugger. Librerie. STRUMENTI DI GESTIONE DEI FILE. Gestione avanzata dei file. Comandi filtro (comandi dell`algebra relazionale). Confrontare file. Selezionare file. Occupazione della memoria. STRUTTURA INTERNA DEL FILE SYSTEM UNIX. La suddivisione del file system (bootstrap, superblock, i-list, area dati). Blocco di bootstrap. Il super-block, i-node, i-number, l`area dati, la i-list, i link. Struttura di un i-node. L`indirizzamento indiretto ai blocchi dati. Interpretazione del pathname. Lista dei blocchi liberi. Link multipli allo stesso file. I file system montati, chiamate al sistema mount/unmount. Monitoraggio del sistema. IL LINGUAGGIO DELLA SHELL. Gli shell script. Variabili, passaggio di parametri, strutture di controllo, login script. Meccanismi di esecuzione di shell script. La variabile PATH. Ambiente di valutazione (le variabili di ambiente, le variabili predefinite). Il metacarattere (back apostrophe). La history. Aliasing. Funzioni. Bourne shell: elementi del linguaggio, costrutti di controllo (for, case, while, if), funzioni, esempi di shell script. C shell: elementi del linguaggio, caratteristiche tipiche della C-shell, variabili numeriche (simbolo @, operatori), input/output, espressioni (operatori), costrutti di controllo (foreach, switch, while, if, repeat, goto), esempi di shell script. Debugging di shell script. COMUNICAZIONI. 30 / 30 La comunicazione immediata di messaggi. Il sistema di posta elettronica, la funzione mail, i programmi mailer. Connessione remota (telnet), modo comandi. Trasferimento file (ftp), comandi di ftp. CHIAMATE DI SISTEMA UNIX. Chiamate relative ai file. Chiamate relative ai processi. X WINDOW SYSTEM. Modalità di esame: Presentazione di un progetto, prova scritta che deve essere superata con voto >= 18, prova orale. Testi di riferimento: A. Bonsignori, A. Fabrizio: ''UNIX'', Jackson libri, 1993. G. Glass: ''UNIX for Programmers and Users. A Complete Guide'', Prentice Hall International Editions, 1993. Appunti forniti dal docente e disponibili in forma elettronica sulla cartella H:\comune\docenti\melacci\ nei PC del Laboratorio di Informatica del Dipartimento. LINGUA INGLESE I Corsi vengono svolti dal Centro Linguistico di Ateneo (CLA). www-b.unipg.it/clateneo LINGUAGGI DI REALTÀ VIRTUALE (Docente: Osvaldo Gervasi) Obiettivi del corso Realizzazione di mondi virtuali mediante diversi ambienti di programmazione. Tecnologie Web3D (X3D e VRML). Presentazione delle tecnologie AjaX3D e Collada. Periodo didattico: I semestre Prerequisiti Introduzione ai sistemi operativi e alla gestione di file grafici. Programma Esperienze significative nell'evoluzione della Realtà Virtuale; Sensorama; Sketchpad; Head Mounted Display (HMD); Virtual Interface Environment Workstation; VR devices: BOOM, CAVE, Digital Glove; Immersive VR; Shared Virtual Environments; Non immersive VR. Il linguaggio VRML Creazione di mondi con VRML; sintassi VRML; lo spazio VRML; Eventi e Route. Il nodo Shape; il nodo Appearance; il nodo Material; i nodi Box, Cone, Cylinder, Spere; Il nodo Group. il nodo Text; il nodo FontStyle. Il nodo Transform. il nodo TimeSensor; Il nodo PositionInterpolator; Il nodo OrientationInterpolator; il nodo ColorInterpolator; il nodo ScalarInterpolator. Il nodo ElevationGrid. Gestione delle luci in VRML; il nodo PointLight; il nodo DirectionalLight; il nodo SpotLight. Gestione di sfondi e della nebbia nel mondo virtuale. Riproduzione di filmati e e suoni. Controllo del punto di vista e delle proprietà dell’avatar: i nodi Viewpoint e NavigationInfo. Scrittura di programmi Script in Java e Javascript; Il nodo Script; Le API Java e Javascript. X3D Presentazione delle specifiche del Web3D Consortium per X3D. Introduzione ad XML, XML Schema e Document Type Definition (DTD). Formati supportati in X3D. Caratteristiche dei nodi X3D esistenti anche in VRML. Caratteristiche dei nodi specifici di X3D: Arc2D, ArcClose2D, 31 / 31 AudioClip, BooleanFilter, BooleanSequencer, BooleanToggle, BooleanTrigger, Circle2D, ColorRGBA, Contour2D, ContourPolyline2D, CoordinateInterpolator2D, Disk2D, EspduTransform, FillProperties, GeoCoordinate, GeoElevationGrid, GeoLocation, GeoLOD, GeoMetadata, GeoOrigin, GeoPositionInterpolator, GeoTouchSensor, GeoViewpoint, HAnimDisplacer, HAnimHumanoid, HAnimJoint, HAnimSegment, HAnimSite, IndexedTriangleFanSet, IndexedTriangleSet, IndexedTriangleStripSet, IntegerSequencer, IntegerTrigger, KeySensor, LineProperties, LineSet, LoadSensor, MetadataDouble, MetadataFloat, MetadataInteger, MetadataSet, MetadataString, MultiTexture, MultiTextureCoordinate, MultiTextureTransform, NurbsCurve, NurbsCurve2D, NurbsOrientationInterpolator, NurbsPatchSurface, NurbsPositionInterpolator, NurbsSet, NurbsSurfaceInterpolator, NurbsSweptSurface, NurbsSwungSurface, NurbsTextureCoordinate, NurbsTrimmedSurface, Polyline2D, Polypoint2D, PositionInterpolator2D, RecieverPdu, Rectangle2D, SignalPdu, StaticGroup, StringSensor, TextureBackground, TextureCoordinateGenerator, TimeTrigger, TransmitterPdu, TriangleFanSet, TriangleSet, TriangleSet2D, TriangleStripSet. Programmazione di nodi Script e Scene Authoring Interface (SAI). Java3D Presentazione delle API Java3D. Rappresentazione di forme. Apparenza delle forme. Rotazione di forme. Testi. Sfondi. Interazioni. Animazioni. Luci. Textures. Tecnologie emergenti AjaX3D. Collada. Modalità di Esame: Presentazione di un progetto e colloquio orale. Testi consigliati Dispense messe a disposizione dal docente. Per approfondimenti: D. Brutzman, L. Daly: X3D Extensible 3D Graphics for Web Authors, Morgan Kaufmann Publishers, April 2007 LINGUAGGI FORMALI E COMPILATORI (Docente: Arturo Carpi) Obiettivi del corso Conoscere le basi della teoria dei linguaggi formali e del parsing. Comprensione degli aspetti formali sintattico/semantici dei linguaggi di programmazione e del funzionamento di interpreti e compilatori. Periodo didattico: II semestre Prerequisiti Concetti base di Programmazione e Matematica Discreta. Programma Generalità sui linguaggi di programmazione e compilatori, esempi, problemi Alfabeto, parole, linguaggi, grammatiche, operazioni tra linguaggi Analisi lessicale: automi a stati finiti, modello deterministico e non deterministico, linguaggi regolari e teorema di Kleene, automa minimo e teorema di Myhill-Nerode, grammatiche lineari destre, lemma di iterazione, analizzatori lessicali, proprietà di chiusura dei linguaggi regolari. Analisi sintattica: grammatiche non contestuali, grammatiche ambigue e linguaggi inerentemente ambigui, lemma di iterazione per linguaggi non contestuali, forme normali di Chomsky e Greibach, 32 / 32 automi a pila, riconoscimento per pila vuota e stato finale, caratterizzazione dei linguaggi non contestuali mediante automi a pila, algoritmi di parsing. La gerarchia di Chomsky: linguaggi contestuali e monotoni, linguaggi ricorsivi e ricorsivamente enumerabili. Analisi semantica: cenni Modalità diEsame Prova scritta e orale. Testi consigliati J. Hopcroft, R. Motwani, J. Ullman, Automi, linguaggi e calcolabilità, Pearson A.V. Aho, R. Sethi, J.D. Ullman, Compilers. Principles, Techniques and Tools, Addison Wesley, 1988 MATEMATICA DISCRETA I (Docente: Maria Cristina Vipera) Obiettivi del corso Fornire le nozioni di Matematica necessarie per trattare strutture discrete. Periodo didattico: I semestre Programma INSIEMI Insiemi e sottoinsiemi. Operazioni tra insiemi: proprietà. Insieme delle parti, complementare, leggi di De Morgan. Prodotto cartesiano. APPLICAZIONI Corrispondenze e applicazioni. Applicazioni iniettive, suriettive, biiettive. Composizione di applicazioni. Inversa di una applicazione biiettiva. Immagini e controimmagini di sottoinsiemi. NUMERI NATURALI E CARDINALITÀ Numeri naturali, divisibilità, M.C.D. e m.c.m. Numeri primi; unica fattorizzazione. Principio d'induzione (due forme). Divisione con resto. Cardinalità di insiemi finiti. Formule fondamentali del calcolo combinatorio: disposizioni semplici e con ripetizione, combinazioni semplici, binomio di Newton. RELAZIONI D'EQUIVALENZA Relazioni binarie in un insieme. Relazioni d'equivalenza e partizioni. RELAZIONI D'ORDINE E RETICOLI Relazioni d'ordine: ordinamenti forti e deboli, totali e parziali. Massimo e minimo. Elementi massimali e minimali. Estremo superiore e inferiore. Isomorfismi di insiemi ordinati. Reticoli, distributività, complementi. Algebre booleane: proprietà fondamentali, legge di dualità; struttura e cardinalità delle algebre booleane finite. NUMERI INTERI RELATIVI E CONGRUENZE Definizione di alcune strutture algebriche: semigruppi, monoidi: elementi invertibili, cancellabili. Gruppi, anelli, campi. Relazioni d'equivalenza compatibili e strutture quoziente. Anello degli interi. Algoritmo delle divisioni successive, identità di Bézout. Congruenze e classi di resto. Divisori dello 0. Inversi modulo n. Risoluzione di congruenze e sistemi di congruenze. Cenni ai campi razionale e reale e alla rappresentazione dei numeri. GRAFI Definizione di grafo. Grado di un vertice. Grafi completi. Sottografi, grafo complementare, isomorfismi di grafi. 33 / 33 Cammini e circuiti, cicli. Grafi connessi. Componenti connesse. Distanza, geodetiche. Centro di un grafo. Alberi: definizioni equivalenti e proprietà. Cammini e circuiti euleriani. Cenno ai cammini e ai cicli hamiltoniani. Punti di taglio e ponti. Connettività (cenni). Grafi bipartiti, grafi bipartiti completi. Grafi planari, facce. Caratterizzazione dei grafi piani (senza dimostrazione). Definizione di digrafo (o grafo diretto) e di grafo orientato. Cammini e semicammini. Connessione forte, debole, unilaterale di un digrafo, componenti. Digrafi inversi, dualità. Sorgenti e pozzi. Alberi orientati. Modalità di Esame La prova scritta è divisa in due parti. La prima è formata da 3 o 4 esercizi da risolvere. Durante questa prova gli studenti potranno consultare testi ed appunti. La seconda parte consiste nel rispondere ad alcuni quesiti per verificare la comprensione della teoria. In questa seconda fase non è consentito consultare libri o appunti. La durata totale delle due prove è di circa 3 ore e mezzo, che includono un intervallo tra le due prove. La prova orale si terrà di regola dopo due o tre giorni e si baserà, almeno in parte, su un commento alla seconda parte della prova scritta. Testi consigliati M. Cristina Vipera, Corso di Matematica Discreta, Margiacchi - Galeno Editrice - 2001. MATEMATICA DISCRETA II (Docente: Massimo Giulietti) Obiettivi del corso Fornire conoscenze algebriche di base, con particolare riguardo all'Algebra Lineare e alle strutture algebriche finite. Periodo didattico: II semestre Prerequisiti Matematica Discreta I. Programma GRUPPI Gruppi e sottogruppi. Potenze e loro proprietà. Elementi periodici e aperiodici. Proprietà del periodo. Sottogruppi ciclici. Gruppi ciclici. Congruenze modulo un sottogruppo. Laterali, teorema di Lagrange e conseguenze. Gruppi di permutazioni. Decomposizione di una permutazione in cicli disgiunti. Inversi. Parità. Coniugio in un gruppo; permutazioni coniugate. Sottogruppi normali e gruppi quozienti. Omomorfismi: nucleo e immagine. Isomorfismi. ALGEBRA LINEARE Spazi vettoriali, sottospazi. Combinazioni lineari. Sistemi di generatori. Dipendenza lineare, basi, dimensione. Dimensione di un sottospazio. Matrici e sistemi lineari: eliminazione di Gauss. Calcolo del rango (per colonne). Teorema di Rouché-Capelli. Somma e somma diretta di sottospazi. Dimensione della somma diretta. Formula di Grassmann (senza dimostrazione). Applicazioni lineari: nucleo, immagine e loro dimensione. Matrice associata ad un'applicazione lineare rispetto a due basi fissate. Prodotto di matrici. Matrice della composizione di due applicazioni lineari. Isomorfismi e matrici invertibili. Calcolo della matrice inversa mediante l'eliminazione di Gauss. Determinante: definizione e proprietà (senza dimostrazione). Criteri per l'invertibilità di una matrice. Metodi per il calcolo del determinante. Formule di Laplace (senza dimostrazione) e calcolo della matrice inversa mediante i cofattori. Definizioni equivalenti di rango di una matrice. Teorema di Cramer. Soluzione dei sistemi con l'uso dei determinanti. 34 / 34 POLINOMI. Anelli di polinomi (in una indeterminata) a coefficienti in un campo. Grado. Divisione con resto. Polinomi irriducibili. Decomposizione di polinomi. M.C.D e m.c.m. di polinomi. Radici, teorema di Ruffini. Radici multiple. Estensioni algebriche semplici. Il campo complesso; radici complesse di polinomi reali. Campi finiti (cenni). DIAGONALIZZAZIONE. Cambiamenti di base. Matrici coniugate. Autovalori e autovettori. Diagonalizzazione. Modalità di Esame Prova scritta e orale (facoltativa). Nota bene la eventuale prova orale può essere sostenuta solo avendo ottenuto la sufficienza nella prova scritta. Testi consigliati M. Cristina Vipera, Corso di Matematica Discreta, Marghiacchi – Galeno Editrice, 2001. MODELLISTICA MOLECOLARE (Docente: Massimo Baroni) Obiettivi del corso Acquisire di conoscenze di base della modellistica molecolare in alcuni suoi aspetti. Sapere affrontare problematiche d’interesse chimico mediante strumenti informatici. Conseguire capacità di analisi degli aspetti algoritmici ed implementativi nello sviluppo di softwares dedicati alla modellistica molecolare ed alla chemioinformatica. Periodo didattico: II semestre Programma Introduzione alla modellistica molecolare. Gli hardwares e softwares per il chimico modellista. Lo sviluppo di un programma: algoritmi, complessità computazionale, progettazione. Richiami di programmazione orientata agli oggetti in C++: tipi di dati, operatori, visibilità, istruzioni di controllo, array, overloading delle funzioni e funzioni inline, riferimenti, puntatori, tipi di dati definiti dall’utente, allocazione dinamica, namespaces, gestione delle eccezioni, classi e data hiding, polimorfismo, membri a livello di classe e accesso friend, costruzione e distruzione di un oggetto, oggetti allocati dinamicamente, membri puntatori, costruttori di copia, overloading degli operatori, eredità, polimorfismo, funzioni virtuali, costruttori e distruttori virtuali, classi astratte, template e funzioni template. La molecola ed il modello di valenza. Rappresentazione e manipolazione di strutture molecolari: modalità mono, bi e tridimensionali. Matrice di connettività e notazione lineare. Calcolo della geometria 3D delle molecole: metodi di meccanica molecolare e force fields. Metodi per la visualizzazione tridimensionale di strutture molecolari. Potenziali elettrostatici molecolari e campi d’interazione molecolare. Visualizzazione di superfici, volumi e delle proprietà molecolari. Algoritmo di Connoly. Banche dati per il chimico. Lo screening virtuale “in silico”. Grafi molecolari. Aspetti computazionali nella ricerca per struttura e sottostruttura. Isomorfismo fra grafi molecolari e la ricerca del massimo sottografo comune per la valutazione del grado di similitudine fra molecole. Analisi dell’algoritmo LeRP applicato a strutture 2D molecolari. Metodi di codifica delle strutture molecolari in stringhe di bit per ricerche veloci. Percorsi minimi superficiali e funzioni di forma per la descrizione molecolare. Il problema della numerazione canonica di una molecola: analisi di un algoritmo a due stadi. Esempi di codici sorgenti scritti in C e C++ per l’implementazione di alcuni degli algoritmi illustrati. Modalità di Esame Prova orale. 35 / 35 Testi consigliati Dispense fornite dal docente PROGRAMMAZIONE I (Docenti: Marco Baioletti) Obiettivi del corso Comprensione dei concetti di base relativi alla programmazione: strutture dati, meccanismi di controllo. Conoscenza del linguaggio C e parte del linguaggio C++. Capacità di progettazione ed implementazione di semplici algoritmi. Periodo didattico: I semestre Programma Introduzione. Algoritmi e loro proprietà. Cenni al processore ed al linguaggio macchina. Paradigmi e linguaggi di programmazione. Compilatori ed interpreti. I linguaggi C e C++. Tipi di dati elementari, variabili, costanti ed espressioni. Assegnamento ed operatori di base. Istruzioni elementari di I/O. Costrutti di sequenza, scelta ed iterazione. Definizione di tipi di dati e tipi di dati strutturati array, record, stringhe, union. Procedure, funzioni e passaggio dei parametri. Variabili e regole di visibilità. Record di attivazione e stack. Ricorsione. Puntatori e operazioni sui puntatori. Allocazione dinamica delle variabili e gestione della memoria. Cenni alla gestione delle eccezioni. I file. Algoritmi e strutture dati elementari. Operazioni elementari su array, algoritmi di ricerca (lineare e binaria) e di ordinamento (bubblesort, sort per selezione e per inserzione) di un array. Intersezione, unione e differenza di insiemi rappresentati con array. Liste lineari semplici e operazioni su di esse (inserimento e cancellazione di un nodo, ricerca, scansione, ordinamento). Liste lineari ordinate. Cenni alle liste bidirezionali. Pile e code implementate con liste. Alberi binari e operazioni su di essi (inserimento di un nodo, visite pre-order, in-order e post-order). Alberi binari di ricerca. Testi consigliati Cay Horstmann, Fondamenti di C++, McGraw-Hill 2003 Dispense fornite dal docente Modalità di Esame Prova scritto-pratica al calcolatore, colloquio orale. PROGRAMMAZIONE II (Docente: Stefano Marcugini) Obiettivi del corso Comprensione dei concetti riguardanti la programmazione orientata agli oggetti ed agli eventi. Capacità di realizzare semplici applicazioni. Periodo didattico: II semestre Programma PROGRAMMAZIONE AD OGGETTI Incapsulamento; Ereditarietà; Polimorfismo; INTRODUZIONE AL LINGUAGGIO JAVA Istruzioni strutturate; Array; Classi e metodi; Programmi stand-alone; Applet; Librerie Java; Eccezioni; Multithreading; Input ed Output; Istruzioni, espressioni, operazioni; Programmazione orientata agli eventi. ESEMPI DI ALGORITMI. 36 / 36 Modalità di Esame esame orale Testi consigliati: Appunti forniti dal docente Java "Dai fondamenti alla programmazione avanzata" di Karsten Samaschke edizioni Apogeo Testi di riferimento L.Lemay, C.L. Perkins, Java 1.2, Edizioni Sams net Cay S. Horstmann e Gary Cornell, Java 2 i fondamenti, Mc Graw Hill; Cay S. Horstmann e Gary Cornell, Java 2 tecniche avanzate, Mc Graw Hill; RETI DI CALCOLATORI: PROTOCOLLI (Docente: Bruno Checcucci) Obiettivi del corso Conoscenza dei primi tre livelli del sistema di architettura ISO-OSI. Conoscenza delle principali tipologie di reti telematiche e strutture dati ad esse correlate Periodo didattico: II semestre Programma INTRODUZIONE Il concetto di informazione e sua misura, il processo comunicativo, flussi trasmissivi, topologie di rete, il concetto di protocollo, il codice, la compressione, l'errore, metodi di rivelazione e di risoluzione, sistemi sincroni e asincroni. I PROTOCOLLI SECONDO IL MODELLO ISO-OSI Introduzione, organismi di standardizzazione, esame dei sette livelli, strutturazione dei dati, organizzazione di frame OSI, strati OSI e sommario funzioni. LA TRASMISSIONE DATI Segnali analogici e digitali, il segnale dati, rappresentazione nel dominio del tempo e delle frequenze, il concetto di modulazione, le modulazioni di ampiezza, frequenza e fase, la modulazione PCM, la multiplazione Time sharing (TDM) e FDM, sistemi interattivi e sistemi di tipo batch, schema di una trasmissione dati, le interfaccie DTE-DCE, varie categorie di modem. MEZZI TRASMISSIVI I mezzi di comunicazione, le bande di comunicazione, il doppino telefonico, il cavo coassiale, la fibra ottica, i sistemi softwire, reti Wimax e Mash, cenni sui sistemi satellitari. LE RETI PER LA TRASMISSIONE DATI Strutture per reti di tipo analogico/digitale, rete commutata e rete dedicata, sistemi point to point e multipoint, e la procedura di contesa con sincronizzazione, le reti wan, varie tipologie, in particolare wireless. IL SECONDO LIVELLO ISO-OSI Introduzione, i protocolli asincroni e sincroni, i protocolli orientati al carattere e al bit, il protocollo BSC, il protocollo HDLC il protocollo SDLC, cenni sul protocollo PPP. IL TERZO LIVELLO ISO-OSI Introduzione, le tecniche di commutazione ed instradamento, la commutazione di circuito, la commutazione di messaggio, la commutazione di pacchetto, le tecniche di routing, il routing statico,il routing adattativo, il routing misto, la rete X.25, i circuiti virtuali, il protocollo MPLS, architettura, situazione attuale e sviluppi, campi d’applicazione, esempi sull’introduzione dell’MPLS LE RETI NUMERICHE La rete CDN, la rete ISDN, i sistemi di rete xDSL:principali caratteristiche del canale trasmissivo e tipologie xDSLx, reti di accesso con sistemi ADSL, soluzioni di rete per ADSL,il sistema HDSL, VDSL e VDSL2. Modalità di Esame Consiste in una prova scritta. Testi di riferimento: B.Checcucci – Il protocollo MPLS e le reti xDSL - Ed. Margiacchi-Galeno; 37 / 37 Tanenbaum – Reti di Computer – Ed UTET; Testi Consigliati C.Tomlison – TLC un approccio per informatici - Ed. McGrawHill; U.Black - Data Network, concepts, theory and practice - Ed.Prentice Hall. SISTEMI APERTI E DISTRIBUITI (Docente: Sergio Tasso) Obiettivi del corso Comprensione delle principali tecnologie di progettazione e sviluppo in ambiente distribuito. Periodo didattico: I semestre Programma INTRODUZIONE AI SISTEMI DISTRIBUITI Definizione; Vantaggi e svantaggi; Tipologie; COMUNICAZIONI NEI SISTEMI DISTRIBUITI Protocolli a livelli; Modello Client/Server; Chiamata di procedura remota (RPC); Comunicazioni di gruppo; ELABORAZIONE NEI SISTEMI DISTRIBUITI Processi e thread; Package di thread; Thread e RPC; Modelli di sistema (workstation e pool di processori); Allocazione dei processori; Schedulazione nei s.d.; FILE SYSTEM DISTRIBUITI Progettazione; Implementazione; Struttura; Caching; Replicazione; NFS; AFS; CODA; STANDARD CORBA Definizioni; componenti (ORB, BOA, POA, IDL, SII, DII, DSI) e applicazioni; COM e DCOM Definizioni e applicazioni; JAVA RMI Definizioni e applicazioni; WIRELESS COMPUTING Tecnologie e configurazioni; Client/Server in ambienti mobili; SERVIZI WEB definizioni e stato dell’arte; IL PROTOCOLLO SOAP, SOAP-RPC fondamenti e applicazioni; IL LINGUAGGIO WSDL introduzione e struttura di documenti WSDL; IL PROGETTO UDDI introduzione ed utilizzo; J2EE E I SERVIZI WEB la metodologia SOAP-J2EE; Modalità di Esame Test a risposte chiuse e progetto di un'applicazione in ambiente distribuito Testi consigliati Andrew S.Tanenbaun, I moderni sistemi operativi, Prentice Hall International - Jackson Libri David A. Chappell, Tyler Jewell, Java Web Services, O’Reilly - HOPS James Snell, Doug Tidwell, Pavel Kulchenko, Programmare servizi Web con SOAP, O’Reilly JACKSON Libri 38 / 38 Pradeep K. Sinha, Distributed Operating Systems, IEEE Press Materiale multimediale fornito dal Docente SISTEMI MULTIMEDIALI (Docente: Simonetta Pallottelli) Obiettivi del corso Il corso intende far conoscere i modelli, le tecnologie e gli strumenti alla base del progetto di sistemi ipertestuali e multimediali. Sono illustrate le principali tecniche per la codifica, la memorizzazione e la diffusione di informazioni multimediali, analizzando soluzioni e software specifici. Inoltre è fornita: una panoramica e un confronto su tecnologie e strumenti web ed il trattamento dell’informazione attraverso i linguaggio di markup. Il corso prevede delle ore di laboratorio. Le conoscenze maturate consentiranno allo studente di affrontare correttamente ed esaurientemente l’analisi e la realizzazione di applicazioni multimediali. Periodo didattico: I semestre Programma 1. Introduzione ai sistemi multimediali. 1.1. Trattamento dell'informazione. Il paradigma ipertestuale. Struttura di un ipertesto. Tipi di collegamenti. Navigazione in un ipertesto. Strumenti per l'orientamento. Sistemi multimediali e ipermediali. 1.2. I modelli per la descrizione e per la progettazione di applicazioni ipermediali. I modelli di riferimento: Dexter Reference Model, Amsterdam Hypermedia Model. I modelli per la progettazione strutturata di presentazioni ipermediali. 1.3. Interfaccia uomo-macchina (IUM o IHM). Modelli orientati ad oggetti per la produzione di applicazioni multimediali e ipermediali (MOOMH). 2. Dai media naturali ai media digitali. 2.1. I formati dei media. Media e modelli dei dati. Classificazione dei media. Audio, immagini statiche, video. Media statici, media continui, media temporizzati. 2.2. La codifica e la compressione dei dati. Compressione reversibile e irreversibile. Algoritmi di compressione. Formati. 3. Linguaggi e tecniche per la progettazione multimediale in ambiente Web. 3.1. Il World Wide Web e la sua attuale struttura. Il Web 2.0. Principi architetturali fondamentali. Modelli di funzionamento. Trattamento dell'informazione. 3.2. Il linguaggio HTML. Sintassi ed editor. Tag di intestazione; codifica del colore, dei diacritici e caratteri speciali; tag di impaginazione; tag di stile, tag di interruzione; ancore e link; tag script; tag link e base, implementazione dei moduli; struttura e tag dei frame; struttura e tag per le tabelle. 3.3. Introduzione al PHP. La programmazione lato client e lato server. Sintassi. PHP e HTML. I tipi di dati. Le variabili. I commenti. Gli operatori. Istruzione Icondizionali. I cicli. Gli array. Supporto in php per la manipolazione delle form HTML. Supporto in php per la variabili di sessione. Principali funzioni per accedere ad un database MySql: esecuzione di query, inserimenti, aggiornamenti e cancellazioni di record. 3.4. I fogli di stile (CSS). Concetti di accessibilità ed usabilità. Validazione. Aspetti formali e pratici. I software di tipo CMS. 3.5. XHTML e DTD. 3.6. XML come mezzo di codifica dell'informazione. Strutturazione dell'informazione a vari livelli. Modeling dell'informazione in XML. Meta-livelli. Il passaggio dall'informazione ai media in XML. DTD: interno, esterno e misto; elementi; separatori e operatori; attributi; entità interne ed esterne. Namespaces. 3.7. I linguaggi XSL, XPath. 3.8. Semantic Web. Ontologie e ragionamento 4. Strumenti ed Applicativi. 39 / 39 4.1. Panoramica e confronti su tecnologie e strumenti web. 4.2. Software applicativo Flash. Ambiente di sviluppo: strumenti per il disegno e l’animazioni. Modalità di Esame Realizzazione di un progetto (animazione in Flash), prova scritta (linguaggi di markup e php), prova orale. Testi consigliati Introduzione alle tecnologie Web. Vito Roberto, Marco Frailis, Alessio Gullotta - Milano :McGraw-Hill Progettazione di dati e applicazioni per il web. Stefano Ceri ... [et al.] - Milano [etc.] : McGraw-Hill Audio e multimedia. Vincenzo Lombardo, Andrea Valle - Milano: Apogeo Architettura dell’informazione per il World Wide Web – L.Rosenfeld, P.Morville – Hopslibri Programmare XML – R.Allen Wyke, Sultan Rehman, Brad Leupen – Mondatori Basi di dati. Architetture e linee di evoluzione – Paolo Atzeni ... [et al.] - Milano [etc.] : McGraw-Hill Altro materiale didattico Copie delle trasparenze del corso, articoli tratti da riviste scientifiche, e documentazione che sarà resa disponibile su Internet. Saranno indicati durante il corso alcuni testi per un approfondimento di alcuni argomenti. SISTEMI OPERATIVI (Docente: Andrea Formisano) Obiettivi del corso Il corso si propone di fornire competenze relative ai concetti di base comuni ai sistemi operativi, alla loro architettura e loro principali funzionalità. Parimenti si vuole fornire nozioni e competenze relative alle tecnologie e tecniche HW e SW sviluppate per la soluzione delle principali problematiche insite nel processo di progetto, realizzazione ed utilizzo di un sistema operativo. Periodo didattico: I semestre Prerequisiti Architettura degli elaboratori. Programma Generalita' sui sistemi operativi. Processi e thread. Scheduling della CPU. Sincronizzazione dei processi. Blocco critico. Gestione della memoria centrale. Memoria virtuale. File system. Memoria secondaria. Nozioni base sul sistema di I/O. Modalità di Esame Prova scritta (eventuale prova orale a chiarimento delle lacune della prova scritta). Testi consigliati A.Silberschatz, P.Galvin, G.Gagne. Sistemi Operativi. Settima ed. Addison-Wesley, 2006. G.Glass e K.Ables. Unix for Programmers and Users. Terza edizione, Pearson-PrenticeHall, 2003. K.A.Robbins, S.Robbins. Unix system programming. Pearson-PrenticeHall, 2004. Eventuale materiale complementare fornito dal docente. (anche disponibile presso la portineria del dipartimento). 40 / 40 TECNICHE DI ACQUISIZIONE DATI I (Docente: Piero Giorgio Verdini) Obiettivi del corso Familiarizzare gli studenti con la programmazione in C di sistemi embedded, basati su microcontrollori della famiglia MCS-51. Realizzare durante il corso una implementazione software del protocollo I2C e di un rudimentale sistema operativo per detti microcontrollori. Sviluppare una o più applicazioni dimostrative basate sui prodotti software precedentemente sviluppati. Periodo didattico: I semestre Programma Il concetto di sistemi “real-time” ed “embedded”. Programmazione di microcontrollori della famiglia MCS-51 in linguaggio C. Uso dell’“Integrated Developement Environment” e simulatore RIDE. Sistemi “event-triggered” (attivati da un evento). Sistemi “time-triggered” (attivati a tempo). Scheduler per applicazioni embedded: Il “superciclo” come scheduler rudimentale; Scheduler “preemptive” (coercitivo); Scheduler “cooperativo”; Scheduler ibrido; Il concetto di puntatori a funzioni. Pensare cooperativamente: “loop timeout” (timeout di ciclo); “hardware timeout” (timeout hardware); Il concetto di “watchdog”. Il protocollo I2C e sua realizzazione in software. Organizzazione di un progetto software in C Elementi di programmazione C avanzata Modalità di Esame L’esame consiste in una relazione scritta sull’applicazione dimostrativa sviluppata durante l’anno, e su una verifica orale della materia di programma. Qualora uno studente non abbia partecipato alle esercitazioni durante il corso, è prevista una verifica pratica delle nozioni di programmazione nell’ambiente di sviluppo utilizzato per il corso (RIDE). Testi consigliati Moltissimi concetti sui sistemi “real-time” ed “embedded” si possono trovare in “Patterns for TimeTriggered Embedded Systems”, di Michael J. Pont, ISBN 0-201-33138-1, edito da Addison-Wesley (collana ACM Press) nel 2001. Per quanto riguarda il bus I2C, esso è stato definito e brevettato nel 1992 dalla Philips, che produce un gran numero di circuiti integrati che lo supportano, sia come Slave che come Master. Nel 1998 è stata pubblicata una nuova serie di specifiche (v. 2.0), che sono allegate e che sono disponibili sul sito Web della Philips, http://www.philips.com insieme alle specifiche e alle note applicative per i circuiti integrati I2C. Per quanto riguarda il linguaggio C come definito nello standard ANSI/ISO, l’opera di riferimento è “The C programming language, second edition”, di Brian W. Kernighan e Dennis M. Ritchie, ISBN 0-13-110362-8, edito da Prentice Hall nel 1988. Un’opera molto più didattica e di facile lettura, che copre anche brevemente la “Standard Library”, è “C programming: a modern approach” di K.N. King, ISBN 0-393-96945-2, edito da W. W. Norton & Company nel 1996. Un testo fondamentale per quanto riguarda lo studio formale e matematico degli algoritmi, seppur di difficile lettura, è la collana “The art of computer programming” di Donald E. Knuth, al momento in tre volumi, edito da Addison-Wesley nel 1973 (Data della seconda edizione. Attualmente esiste la terza). 41 / 41 Letture raccomandate a quanti abbiano intenzione di dedicarsi alla programmazione professionalmente, per il loro contenuto di insegnamenti pratici e stilistici, sono: “The practice of programming”, di Brian W. Kernighan e Rob Pike, ISBN 0-201-61586-X, edito da Adison-Wesley nel 1999; “Programming Pearls, second edition” di Jon Bentley, ISBN 0-201-65788-0, edito da AddisonWesley (collana ACM Press) nel 1999; “Code complete: a practical handbook of software construction” di Steve McConnell, ISBN 155615-484-4, edito da Microsoft Press nel 1993. TECNICHE DI ACQUISIZIONE DATI II (Docente: Giovanni Ambrosi) Obiettivi del corso Familiarizzare lo studente con il trattamento dei segnali in tempo reale ed in particolare con lo studio in frequenza, sia sotto il profilo teorico che sperimentale. Realizzare implementazioni software di semplici architetture di acquisizione dati. Periodo didattico: II semestre Prerequisiti Concetti di Analisi I e II, Fisica Programma del Corso Definizione di un segnale, tipi di segnali: Segnali a tempo continuo, segnali a tempo discreto, segnali ad ampiezza continua, segnali ad ampiezza discreta. Segnali a tempo continuo: Segnali periodici: Analisi armonica, sviluppo in serie di Fourier in forma polare ed in forma complessa; spettri di ampiezza e di fase; proprietà dello spettro di un segnale periodico. Segnali aperiodici: dalla serie all'integrale di Fourier; proprietà dell'integrale di fourier: simmetrie, linearità, dualità. Teorema del ritardo. Teorema della modulazione. Teorema del prodotto e della convoluzione. Trasformate di Fourier generalizzate: Delta di Dirac e funzione a gradino. Funzioni seno e coseno. Sistemi monodimensionali a tempo continuo: Concetto di trasformazione, amplificatore ideale, proprietà. Risposta impulsiva e risposta in frequenza. Definizione di Decibel Filtri: passa basso, passa alto, passa banda e band stop. Densità spettrale di energia e di potenza; funzione di autocorrelazione e teorema di WienerKhintchine. Densità spettrale di segnali periodici. Segnali a tempo discreto: Campionamento dei segnali a tempo continuo. Trasformata di Fourier dei segnali aperiodici a tempo discreto. Teoremi sulla trasformata di Fourier di una sequenza. Condizione di Nyquist e teorema del campionamento. Interpolazione: a mantenimento, interpolazione cardinale. Analisi di Fourier delle sequenze periodiche; trasformata discreta di Fourier. Fast Fourier Trasform (FFT): complessità di calcolo Sistemi monodimensionali a tempo discreto: Risposta impulsiva e risposta in frequenza. Filtri a tempo discreto: filtro a media mobile. Cenni di teoria delle code e affidabilità dei sistemi. L’ambiente di programmazione LabView con esercitazioni. 42 / 42 Modalità di Esame L’esame consiste nella preparazione e discussione delle relazioni scritte relative alle applicazioni sviluppate durante l’anno, e in una verifica orale degli argomenti indicati nel programma trattati a lezione. Nel caso uno studente non abbia partecipato regolarmente alle esercitazioni durante il corso, l’esame sarà preceduto da una verifica pratica delle nozioni di programmazione nell’ambiente di sviluppo Testi consigliati Marco Luise & Giorgio M. Vitetta, Teoria dei segnali, McGraw-Hill, ISBN 88-386-0809-1 43 / 43 RECAPITI DEI DOCENTI N. B.: Per contattare i docenti telefonicamente, è necessario far precedere il numero interno dal seguente numero: 075/585 DOCENTI DEGLI INSEGNAMENTI COMUNI A TUTTI I CURRICULA n. tel. Disciplina Docente e.mail interno Analisi Matematica I - II Architettura degli Elaboratori I - II Laboratorio di Architettura Programmazione I Programmazione II Laboratorio di Programmazione Matematica Discreta I Matematica Discreta II Lingua Inglese Primo anno di Corso (non attivato) 5034 Antonio Boccuto Ferruccio Barsi Alfredo Navarra Marco Baioletti Stefano Marcugini Stefano Marcugini Maria Cristina Vipera Massimo Giulietti Centro Linguistico Ateno – Hutchinson Nancy e Giles Hilary 5046 5008 5044 5049 5049 5012 5021 5741 [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] Secondo anno di Corso Algoritmi e Strutture Dati I - II Laboratorio di Algoritmi Sistemi Operativi Laboratorio di Sistemi Operativi Fisica Generale Ingegneria del software Calcolo Numerico Calcolo delle Probabilità e Statistica Matematica Linguaggi Formali e Compilatori Maria Cristina Pinotti Rosanna Bicocchi Andrea Formisano Pietro Tito Melacci Attilio Santocchia Alfredo Milani Ivan Gerace Giulianella Coletti 5055 5047 5011 5047 2708 5049 5050 5019 [email protected] Arturo Carpi 5014 [email protected] 5011 5050 [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] Terzo anno di Corso Basi di Dati e Sistemi Informativi I Basi di Dati e Sistemi Informativi II Andrea Formisano Valentina Poggioni DOCENTI DEGLI INSEGNAMENTI CURRICULARI Reti di Computer Disciplina Architettura delle Reti di Computer Sistemi aperti e distribuiti n. tel. interno e.mail Osvaldo Gervasi 5048 [email protected] Sergio Tasso 5048 [email protected] 5044 5531 [email protected] [email protected] [email protected] 5048 2741 [email protected] [email protected] Docente Sistemi multimediali Simonetta Pallottelli Applicazioni e Calcolo in Rete Francesco Tarantelli Loriano Storchi Laboratorio Reti di Computer Sergio Tasso Reti di Calcolatori: Protocolli Bruno Checcucci 44 / 44 Sistemi di Acquisizione Dati Disciplina n. tel. interno Docente e.mail Fisica dei dispositivi elettronici Laboratorio Reti di Computer Leonello Servoli Sergio Tasso 2706 5048 [email protected] Architettura delle Reti di Computer Tecniche di Acquisizione dati I Osvaldo Gervasi 5048 [email protected] Tecniche di Acquisizione dati II Reti di Calcolatori: Protocolli Giovanni Ambrosi 2708 Bruno Checcucci 2741 [email protected] [email protected] Piero Giorgio Verdini [email protected] [email protected] Realtà Virtuale Molecolare Disciplina Docente Elementi di Scienze Atomiche Francesco Tarantelli e Molecolari Sistemi Aperti e Distribuiti Sergio Tasso Applicazioni e Calcolo in Rete Francesco Tarantelli Loriano Storchi Modellistica Molecolare Massimo Baroni Linguaggi di realtà Virtuale Osvaldo Gervasi Laboratorio di Linguaggi di Osvaldo Gervasi realtà virtuale n. tel. interno e.mail 5531 [email protected] 5048 5531 [email protected] 5550 5048 5048 [email protected] [email protected] [email protected] [email protected] [email protected] Numeri utili Ruolo/Struttura n. tel. interno / fax e.mail 5019 [email protected] Segreteria Didattica di Informatica 5063 / fax 5024 [email protected] Segreteria della Presidenza (Facoltà di Scienze MM.FF.NN) 5633 / fax 5605 [email protected] 5915 - 5916 / fax 6642 [email protected] Presidente dei Corsi di Laurea in Informatica (Prof.ssa Giulianella Coletti) Segreterie Studenti (Facoltà di Scienze MM.FF.NN) 45 / 45 GUIDA AL TIROCINIO (STAGE) presso i Corsi di Laurea in Informatica della Facoltà di SS MM FF NN dell’Università degli Studi di Perugia A cura della Dott.ssa Ada Pompili - Rev. 01 del 05/03/09. Introduzione Il tirocinio, ai sensi della legge 196 del 24 Giugno 1997, art. 18 e del regolamento attuativo emanato con il D.M. n. 142 del 25 Marzo 1998, consente l’inserimento di uno studente nel mondo del lavoro, allo scopo di realizzare momenti in alternanza con lo studio e di agevolare le future scelte professionali. Tramite il tirocinio gli studenti possono sperimentare le conoscenze specialistiche acquisite, verificare le proprie competenze nonché la capacità di comunicare e di relazionarsi in ambito lavorativo. In ogni caso, Il tirocinio, così come previsto dall’art. 1 comma 2 del D.M. n. 142 / 98, non costituisce rapporto di lavoro. Presso i Corsi di laurea in Informatica della Fac. di SSMMFFNN dell’Università di Perugia, il tirocinio può essere svolto in due modalità: A. Tirocinio (stage) formativo esterno (in Azienda privata o Ente pubblico) B. Tirocinio (stage) formativo interno (presso l’Università degli studi di Perugia) Iter per l’avvio del tirocinio (stage) Pur non essendo previsto dai Regolamenti dei Corsi di Laurea un numero minimo di crediti propedeutici allo stage, si consiglia lo studente di svolgere il tirocinio quando abbia raggiunto un livello di preparazione piuttosto completo, quindi verso il termine del percorso formativo universitario. La durata del tirocinio, gli orari di accesso alla sede di stage ed il piano delle attività sono variabili e stabiliti di comune accordo tra studente, università ed azienda, tenendo conto che lo studente, per ottenere i CFU, dovrà realizzare un numero minimo di ore che varia a seconda che frequenti il Corso di Laurea in Informatica della classe 26 (triennale vecchio ordinamento) della classe L31 (triennale nuovo ordinamento) o della classe 23S (specialistica) . L’Ufficio competente che provvederà ad avviare le pratiche necessarie per l’espletamento del tirocinio è Ufficio Campus del Corso di Laurea in Informatica. Per la scelta del soggetto ospitante (azienda privata o ente pubblico – di seguito azienda, per brevità) presso cui svolgere il tirocinio, lo studente può agire in uno dei seguenti modi: Rivolgersi all’Ufficio Campus del Corso di Laurea in Informatica presso il quale potrà reperire informazioni circa le aziende interessate ad accogliere studenti in stage – Consultare il sito web www.informatica.unipg.it presso il quale vengono pubblicate le richieste eventualmente avanzate dalle aziende: Contattare autonomamente un’azienda; Rivolgersi ad un docente del corso di Laurea che abbia proposto delle attività di tirocinio. 46 / 46 L’iter per l’avvio del tirocinio, quindi, può essere schematizzato come segue: A. TIROCINIO (STAGE) ESTERNO Individuazione dell’azienda; predisposizione di un curriculum vitae da parte dello studente (nel caso l’azienda lo richieda); colloquio preventivo dello studente con un referente “aziendale”, finalizzato alla verifica della “reale fattibilità” del tirocinio; consegna in azienda dei moduli di convenzione di tirocinio (Mod. Conv) e di progetto formativo e di orientamento (Mod. PFO) nonché del modulo di dichiarazione sostitutiva di certificazione (Mod. DSC) riguardante il numero dei dipendenti assunti dall’azienda a tempo indeterminato; tali moduli dovranno essere compilati per quanto attiene ai dati di pertinenza aziendale e sottoscritti dal legale rappresentante; compilazione presso l’Università del modulo di richiesta di approvazione dello stage (Mod. RAS) a firma dello studente e del tutor universitario per presa visione, indirizzato al Consiglio di Intercorso delle Lauree in Informatica (CILL Informatica); riconsegna, da parte dello studente, dei moduli al Manager Didattico presso l’Ufficio Campus del Corso di Laurea; approvazione, da parte del CILL Informatica, dello stage proposto ed inoltro della pratica, alla Presidenza della Facoltà di SSMMFFNN (per l’acquisizione delle firme del Preside, per l’attivazione della copertura assicurativa, per la comunicazione di avvio del tirocinio agli enti interessati); ritiro, da parte dello studente, del registro delle presenze di stage presso l’Ufficio Campus, per la registrazione delle orario di tirocinio svolto; Ritirato il registro per la rilevazione delle presenze dello stage, lo studente inizia l’attività presso l’azienda. Il registro delle presenze dovrà essere correttamente compilato; in particolare il tirocinante apporrà la propria firma all’entrata e all’uscita indicando anche la data e l’ora, sia nella mattina che nel pomeriggio; a fianco il tutor aziendale appone un visto con propria firma e con timbro aziendale. Al termine del periodo di tirocinio, il registro dovrà essere riconsegnato tempestivamente all’ufficio campus il quale provvederà alla verifica dello stesso ed alla comunicazione dei crediti acquisiti alla segreteria studenti. La riconsegna del registro, quindi, è indispensabile ai fini del riconoscimento dei crediti. Si ricorda che lo studente dovrà realizzare: almeno 230 ore per ottenere 9 CFU se iscritto alla laurea triennale vecchio ordinamento (Classe 26 ante AA 08/09) almeno 150 ore per ottenere 6 CFU se iscritto alla laurea triennale nuovo ordinamento (classe L31 dall’ AA 08/09) almeno 150 ore per ottenere 6 CFU se iscritto alla laurea specialistica (classe 23S) B. TIROCINIO (STAGE) INTERNO L’iter di avvio del tirocinio interno corrisponde a quello previsto per lo stage esterno, con esclusione delle fasi di inerenza prettamente aziendale, pertanto non viene attivata la convenzione ed i modelli convenzione di tirocinio (Mod. Conv) e di dichiarazione sostitutiva di certificazione (Mod. DSC) non devono essere compilati. Anche in questo caso, si sottolinea che il tirocinante dovrà annotare le presenze sul registro con le stesse modalità previste per il tirocinio esterno. 47 / 47 Alcuni dettagli sul tirocinio e sui soggetti coinvolti L’esperienza di tirocinio vede coinvolti i seguenti soggetti: il soggetto promotore (nel nostro caso la Facoltà di SS.MM.FF.NN), il soggetto ospitante (azienda privata o ente pubblico), il tirocinante (studente iscritto al corso di laurea)3, il tutor aziendale e il tutor universitario. L’organizzazione del tirocinio formativo prevede degli adempimenti amministrativi a carico della apposita struttura del Corso di Laurea (Ufficio Campus) e della Presidenza della Facoltà. In primo luogo si richiede la stipula di una convenzione tra ente promotore, e soggetto ospitante. La convenzione di tirocinio tra Università e Azienda ha durata triennale e disciplina il rapporto che si instaura tra soggetto proponente e soggetto ospitante, definendo i ruoli del tutor universitario e del tutor aziendale nonché gli obblighi del tirocinante. Alla Convenzione segue il progetto formativo e di orientamento che indica i dati anagrafici dello studente, la sede del tirocinio, il periodo di permanenza e gli orari seguiti dal tirocinante, il progetto che sarà svolto dallo studente e gli obiettivi formativi connessi. Il soggetto promotore (Facoltà di SSMMFFNN) Cura la predisposizione della convenzione nonché del progetto formativo, concordando obiettivi e modalità di svolgimento del tirocinio con il soggetto ospitante. Nomina, quindi, un tutor (universitario) che valuti la validità degli obiettivi formativi del tirocinio, ne curi la programmazione e monitori lo svolgimento dello stage dal punto di vista didattico. Il soggetto promotore, inoltre, garantisce la copertura assicurativa del tirocinante contro gli infortuni sul lavoro presso l’INAIL e per la responsabilità civile presso assicurazioni operanti nel settore. Il soggetto ospitante (Azienda privata o Ente pubblico) L’impegno del soggetto ospitante consiste nella valutazione dell’oggettiva possibilità di inserimento dello studente, anche a seguito di colloquio e di eventuale analisi del curriculum vitae. Provvede alla nomina di un tutore (tutor aziendale) e garantisce che il tirocinio si svolga presso strutture che rispettino le vigenti disposizioni normative in materia di sicurezza nei luoghi di lavoro. Deve, inoltre, impegnarsi a rispettare determinati rapporti tra il numero di stagisti ospitati e il numero dei lavoratori dipendenti, così come previsto dal regolamento attuativo emanato con il D.M. n. 142 del 25 Marzo 19984. A tale fine il rappresentante legale deve rilasciare dichiarazione sostitutiva di certificazione nella quale dichiara il numero dei dipendenti a tempo indeterminato presenti in azienda. Il tirocinante (Studente dei corsi di Laurea e Laurea Specialistica in informatica o laureati da non olte 18 mesi) Ha l’obbligo di svolgere le attività oggetto del tirocinio previste dal progetto formativo e di orientamento, nonché di seguire le indicazioni dei tutori facendo riferimento ad essi per qualsiasi esigenza di tipo organizzativo od altro. 3 Si sottolinea che lo stage può essere attivato anche come percorso formativo post-laurea, per laureati da non più di 18 mesi. 4 In particolare l’art. 1 c. 3 del suddetto regolamento prevede: I datori di lavoro possono ospitare tirocinanti in relazione all’attività dell’azienda, nei limiti di seguito indicati: a. aziende con non più di cinque dipendenti a tempo indeterminato, un tirocinante; b. con un numero di dipendenti a tempo indeterminato compreso tra sei e diciannove, non più di due tirocinanti contemporaneamente; c. con più di venti dipendenti a tempo indeterminato, tirocinanti in misura non superiore al dieci per cento dei suddetti dipendenti contemporaneamente. 48 / 48 Deve rispettare gli orari, l’ambiente di lavoro e le regole di comportamento aziendali concordati. Deve compilare giornalmente il registro delle presenze rilasciato dall’Ufficio Campus del Corso di Laurea e riconsegnarlo presso il medesimo ufficio a fine stage. Deve rispettare le norme in materia di igiene, sicurezza e salute sui luoghi di lavoro, nonché mantenere la necessaria riservatezza per quanto attiene a dati, informazioni o conoscenze in merito a processi produttivi e prodotti acquisiti durante lo svolgimento del tirocinio. Deve segnalare tempestivamente ai tutori, nonché alle strutture universitarie quali Ufficio Campus e/o Presidenza della Facoltà, i fatti che eccezionalmente comportino richieste di sospensioni, interruzioni, o proroghe della durata del tirocinio. Il tutor aziendale Viene nominato dal soggetto ospitante. Spetta lui il compito di provvedere all’inserimento del tirocinante in azienda, nonché di garantire il rispetto del progetto di stage in tutti gli aspetti (obiettivi, contenuti, tempi e modalità di svolgimento); controlla inoltre le presenze dello studente in azienda, che saranno rilevate tramite l’ apposito registro rilasciato dall’ Ufficio Campus del Corso di laurea in Informatica. Il tutor universitario Viene individuato a livello di Corso di Laurea, anche su iniziativa dello studente. Egli è un docente che esprime un primo parere sul progetto che verrà svolto in azienda ed “accetta” il ruolo proposto firmando il modulo di richiesta di approvazione stage che poi verrà sottoposto al Consiglio del Corso di Laurea. Il tutor universitario tiene contatti periodici con il tirocinante e il tutor aziendale, per verificare il livello di inserimento e l'apprendimento. MODULISTICA: Tirocini – Stage Per richiedere e attivare il tirocinio, si devono compilare appositi moduli disponibili presso l’ufficio Campus del Corso di Laurea in Informatica. Tali moduli sono altresì reperibili anche sul sito web http://www.informatica.unipg.it nella sezione “modulistica”. Elenco dei moduli per la richiesta dello stage: Convenzione Tirocinio (Modello Conv) – in duplice copia con firma e timbro del legale rappresentate aziendale in originale su entrambe le copie Progetto formativo e di orientamento (Modello PFO) – in duplice copia con firma e timbro del legale rappresentate aziendale, nonché con firma del tirocinante per presa visione, in originale su entrambe le copie Dichiarazione sostitutiva di certificazione (Modello DSC) - con firma del legale rappresentate aziendale e allegato documento identità Richiesta di approvazione stage (Modello RAS) - con firma del tirocinante nonché del Tutor Universitario per presa visione Tutta la documentazione debitamente compilata deve essere riconsegnata all’Ufficio Campus, affinché il Manager Didattico possa sottoporla al Consiglio del Corso di Laurea in Informatica per l'approvazione. Nell'indicare l’inizio dello stage si dovrà tenere conto che, per l’approvazione del Consiglio e per la successiva elaborazione della pratica da parte della Presidenza della Facoltà, sono necessari circa 15 giorni dalla data di consegna all’Ufficio Campus dei moduli compilati. 49 / 49 Tenuto conto che la convenzione ha durata triennale, nel caso in cui si attivi un tirocinio presso azienda/ente pubblico già “convenzionato” il modello Conv e il modello DSC non devono essere compilati; allo stesso modo i moduli sopra menzionati non devono essere compilati in caso di tirocinio presso strutture afferenti all’Università di Perugia (tirocinio interno). 50 / 50