#acl SUAGroup:read,write,admin,delete,revert All:read
== Basi di Dati ==
'''Numero di crediti ECTS''': 10 (96 ore frontali)
'''SSD di riferimento''': INF/01
'''Docente''': P. Rullo
'''Prerequisiti'''
<
>
Concetti di matematica discreta (teoria degli insiemi, logica proposizionale), [[FondamentiDIInformaticaSUA|Fondamenti di informatica]].
##fondamenti di programmazione
'''Obiettivi'''
Fornire agli studenti familiarità con i concetti chiave dei sistemi di basi di dati, nonché capacità di progettare, sviluppare ed utilizzare basi di dati in contesti applicativi reali.
'''Programma'''
Il corso introduce i concetti fondamentali riguardanti i sistemi di basi di dati, con particolare riferimento ai sistemi relazionali. A grandi linee, le tematiche trattate riguardano: progettazione concettuale, logica e fisica di una base di dati, interrogazione tramite linguaggi procedurali (algebra reazionale) e linguaggi dichiarativi (SQL), gestione delle transazioni (meccanismi di recovery e gestione della concorrenza). Il corso prevede attività di laboratorio volte a fornire comprensione delle problematiche tecnologiche e metodologiche, capacità progettuali e di utilizzo dei DBMS.
'''Bibliografia'''
<
>
Atzeni, Ceri, Paraboschi, Torlone: “Basi di Dati – Modelli e linguaggi di interrogazione – Seconda edizione”, Mc``Graw-Hill, 2006.
'''Tipologia di attività didattiche'''
Lezioni frontali e laboratorio.
'''Metodi di valutazione'''
Sono previsti due momenti di valutazione: una prova intermedia, che si tiene a metà corso e consiste in una prova scritta, e l’esame finale. Lo studente che supera la prima prova dovrà affrontare, nella prova finale, solo gli argomenti della seconda parte del corso. L’esame finale prevede una prova scritta, una orale e la discussione del progetto sviluppato nelle ore di laboratorio.