BASI DI DATI
cod. 09178

Anno accademico 2020/21
2° anno di corso - Primo semestre
Docente
Enea ZAFFANELLA
Settore scientifico disciplinare
Informatica (INF/01)
Ambito
Discipline informatiche
Tipologia attività formativa
Caratterizzante
72 ore
di attività frontali
9 crediti
sede:
insegnamento
in ITALIANO

Obiettivi formativi

Con riferimento agli indicatori di Dublino:

Conoscenza e capacità di comprensione
Il corso è suddiviso in due parti. La prima parte del corso si pone come obiettivi l'acquisizione delle nozioni di base sui sistemi di gestione di basi di dati, con particolare riferimento ai sistemi che utilizzano il modello relazionale, e dei vari modi per poter interagire con essi. La seconda parte del corso si propone di mostrare le metodologie e tecniche di progettazione di una base di dati relazionale.

Capacità di applicare conoscenza e comprensione
Le conoscenze teoriche presentate sono concretamente utilizzate per la progettazione ed utilizzo di basi di dati relazionali nel contesto di uno specifico DBMS (PostgreSQL). Le esercitazioni sull'uso del linguaggio SQL si focalizzano in primo luogo sulla correttezza, leggibilità e portabilità delle interrogazioni. Le esercitazioni sulla progettazione di basi di dati sono incentrate a comprendere l'adeguatezza dello schema progettato per modellare la realtà di interesse, nonché a valutarne flessibilità e robustezza.

Autonomia di giudizio
Nella parte del corso dedicata alla progettazione delle basi di dati si evidenzia come lo stesso problema possa essere affrontato e risolto in vari modi: lo studente è incentivato a confrontare le varie alternative con spirito critico, evidenziandone pregi e difetti.

Abilità comunicative
Gli esercizi di progettazione delle basi di dati richiedono di comprendere e sapere esporre efficacemente le caratteristiche principali della realtà di interesse a vari livelli di astrazione. Le fasi iniziali della progettazione, avendo come presupposto la raccolta ed analisi dei requisiti, forniscono un'occasione per esercitare le proprie capacità di comunicazione in contesti non specializzati. Nelle fasi successive, più vicine all'implementazione, si richiede invece la capacità di comunicare efficacemente e senza ambiguità gli aspetti più prettamente tecnologici.

Capacità di apprendimento
Lo studio teorico e l'applicazione pratica delle nozioni di base sui sistemi di gestione di basi di dati relazionali, oltre a fornire strumenti indispensabili nel bagaglio di conoscenze del laureato in Informatica,
sono un prerequisito essenziale per ogni successivo approfondimento specialistico nel campo delle basi di dati, anche al fine di saperne interpretare in autonomia le evoluzioni dettate dagli avanzamenti della tecnologia o dai cambiamenti di contesto.

Prerequisiti

Si richiede la conoscenza delle nozioni di base di programmazione. La
conoscenza di alcuni concetti alla base dello studio dei sistemi operativi e
delle reti di comunicazione dati è opportuna (anche se non
fondamentale)

Contenuti dell'insegnamento

Introduzione ai sistemi di gestione di basi di dati.
Il modello relazionale dei dati.
Algebra e calcolo relazionale.
Il linguaggio SQL.
Utilizzo di SQL nei linguaggi di programmazione.
Gestione delle transazioni.
Sicurezza e gestione dei diritti di accesso.
Basi di dati attive.
Metodologie per il progetto di basi di dati: progettazione concettuale,
logica e fisica.
Il modello Entità-Relazione.
Normalizzazione di schemi di basi di dati.

Il corso prevede l'introduzione ad uno specifico sistema di gestione di
basi di dati (PostgreSQL), utilizzando il quale verranno riproposti, in
termini di esercitazioni pratiche, gli argomenti elencati sopra.

Programma esteso

Bibliografia

P. Atzeni, S. Ceri, P. Fraternali, S. Paraboschi, R. Torlone.
Basi di dati,
McGraw-Hill, 2018 (quinta edizione).

PostgreSQL 13.1
Documentation
The PostgreSQL Global Development Group

Metodi didattici

Lezioni frontali, esercitazioni guidate.

Modalità verifica apprendimento

Nota: le modalità di esame potranno essere modificate in dipendenza dell'evolvere della emergenza sanitaria.
L'esame consiste in una prova scritta e un eventuale colloquio orale.
La prova scritta si compone di esercizi e domande aperte sul programma del corso; il colloquio orale comprende ulteriori domande sul programma del corso e/o la discussione della prova scritta. Il colloquio orale, quando previsto, deve essere sostenuto nello stesso appello della prova scritta.

Agli studenti con voto compreso tra 18 e 25 nella prova scritta verrà proposta la verbalizzazione (senza colloquio orale); al colloquio orale si accede in caso di prova scritta con voto maggiore di 25 oppure compreso tra 16 e 17.
E' prevista una prova intermedia con esercizi sugli argomenti svolti nella prima parte del corso: se superata, la prova intermedia consente l'esonero di una parte della prova scritta e il suo voto concorre a determinare il voto complessivo della prova scritta. La prova intermedia mantiene la sua validità per tutti gli appelli dell'anno accademico di riferimento.

Altre informazioni