BASI DI DATI

BASI DI DATI

_
iten
Codice
25880
ANNO ACCADEMICO
2020/2021
CFU
12 cfu al 2° anno di 8759 INFORMATICA (L-31) GENOVA

8 CFU al 3° anno di 8760 MATEMATICA (L-35) GENOVA

8 CFU al 2° anno di 8766 STATISTICA MATEM. E TRATTAM. INFORMATICO DEI DATI (L-35) GENOVA

8 CFU al 1° anno di 9011 MATEMATICA (LM-40) GENOVA

8 CFU al 2° anno di 9011 MATEMATICA (LM-40) GENOVA

SETTORE SCIENTIFICO DISCIPLINARE
INF/01
LINGUA
Italiano
SEDE
GENOVA (INFORMATICA )
periodo
2° Semestre
materiale didattico

OBIETTIVI E CONTENUTI

OBIETTIVI FORMATIVI

Apprendere come progettare basi di dati, in particolare relazionali, a supporto di applicazioni o adattare basi dati già esistenti alle esigenze di nuovi applicativi che debbano interagire con esse, come esprimere interrogazioni e modifiche su basi di dati relazionali e acquisire i principi base relativi all’organizzazione interna e all'amministrazione di sistemi di gestione dati, con specifico riferimento alla progettazione di schema fisico, al monitoraggio delle prestazioni, all’esecuzione concorrente di transazioni e al controllo dell’accesso.

OBIETTIVI FORMATIVI (DETTAGLIO) E RISULTATI DI APPRENDIMENTO

8 e 12 CFU:

DESCRIVERE le diverse fasi nella progettazione di basi di dati relazionali, i modelli dei dati utilizzati a livello concettuale e logico, le tecniche di progettazione utilizzate nelle varie fasi.
COMPRENDERE come verificare la qualità degli schemi proposti, come eventualmente migliorarli eliminando ridondanze e anomalie.
UTILIZZARE le tecniche proposte per la progettazione di una base di dati relazionale a supporto di un’applicazione, a partire dai requisiti utente.
COMPRENDERE come esprimere interrogazioni e modifiche su basi di dati relazionali.  
DESCRIVERE i costrutti dei linguaggi relazionali (algebra relazionale e SQL) e le loro proprietà
UTILIZZARE i linguaggi relazionali (algebra e SQL) per interrogare una base di dati, il linguaggio SQL per esprimere operazioni di manipolazione sui dati e stabilire vincoli di integrità sui dati

SOLO 12 CFU:
UTILIZZARE il linguaggio SQL per esprimere operazioni complesse tramite funzioni e procedure, per esprimere vincoli di integrità complessi e regole operative tramite trigger 
COMPRENDERE i principi base relativi all’organizzazione interna e all'amministrazione di sistemi di gestione dati, con specifico riferimento alla progettazione di schema fisico, al monitoraggio delle prestazioni, all’esecuzione concorrente di transazioni e al controllo dell’accesso.
RISPONDERE a domande sui principi base relativi all’organizzazione interna e all'amministrazione di sistemi di gestione dati.

PREREQUISITI

Nozioni di base di: logica del prim'ordine, teoria degli insiemi, sintassi e semantica di un linguaggio, programmazione, architettura di un'elaboratore e sistemi operativi.

Modalità didattiche

Mista: Il corso prevede lezioni frontali, sugli argomenti trattati, esercitazioni in laboratorio, utilizzando un sistema di gestione dati relazionale ed attività integrative mediante l'uso di AulaWeb.

PROGRAMMA/CONTENUTO

Per tutti:

  • Aspetti introduttivi: rilevanza della gestione dati per le applicazioni reali; panoramica sui concetti relativi ai DBMS.
  • Modelli tradizionali dei dati: il modello relazionale e i suoi linguaggi.
  • Il linguaggio SQL: definizione, interrogazione e manipolazione di dati relazionali.
  • Progettazione concettuale: il modello Entity-Relationship, metodologie di progettazione concettuale.
  • Progettazione logica di una base di dati relazionale.
  • Verifica di qualità: teoria della normalizzazione
  • Laboratorio: uso di un DBMS per esercitazioni relative agli aspetti trattati dal corso.

Per 12 CFU:

  • Gestione dati da programma: stored procedure; uso di SQL da linguaggio di programmazione; trigger.
  • Componenti e funzionalità di un DBMS: indici  e elaborazione delle interrogazioni; transazioni; controllo degli accessi.
  • Cenni a progettazione fisica di una base di dati relazionale.
  • Laboratorio: uso di un DBMS per esercitazioni relative agli aspetti trattati dal corso.

TESTI/BIBLIOGRAFIA

Barbara Catania, Giovanna Guerrini, Elena Ferrari. Sistemi di Gestione Dati - Concetti e Architetture. CittaStudi Edizioni, Utet Libreria, De Agostini Scuola, 2006.

Barbara Carminati, Anna Maddalena, Marco Mesiti. Sistemi di Gestione Dati - Esercizi. CittaStudi Edizioni, Utet Libreria, De Agostini Scuola, 2008.

DOCENTI E COMMISSIONI

Ricevimento: Su appuntamento, via email o Microsoft Teams Stanza: Valle Puggia – 327

Commissione d'esame

GIOVANNA GUERRINI (Presidente)

BARBARA CATANIA (Presidente)

LEZIONI

Modalità didattiche

Mista: Il corso prevede lezioni frontali, sugli argomenti trattati, esercitazioni in laboratorio, utilizzando un sistema di gestione dati relazionale ed attività integrative mediante l'uso di AulaWeb.

ESAMI

Modalità d'esame

L’esame consiste delle seguenti prove: (i) Una prova scritta, contenente esercizi relativi agli argomenti affrontati nel corso. (ii) Un progetto, che richiede la progettazione e la realizzazione di una base di dati relazionale. (iii) Una prova orale centrata sulla correzione del progetto e delle esercitazioni di laboratorio nonché sugli argomenti affrontati nel corso.

Modalità di accertamento

I dettagli sulle modalità di preparazione per l’esame e sul grado di approfondimento di ogni argomento verranno dati nel corso delle lezioni. 

L’esame scritto consiste in

  • un insieme di domande a risposta chiusa su argomenti di base del corso. L'obiettivo di queste domande è quello di accertare la comprensione delle problematiche principali affrontate durante le lezioni.
  • un esercizio di progettazione. L'obiettivo di questo esercizio è verificare che lo studente sappia utilizzare i modelli dei dati e la metodologia di progettazione affrontata durante il corso.
  • esercizi di specifica di interrogazioni.  L'obiettivo di questi esercizi è verificare che lo studente sappia formulare interrogazioni nei linguaggi (algebra relazionale e SQL) affrontai durante il corso.

La prova orale consisterà in: (i) discussione approfondita delle soluzioni elaborate dallo studente per il progetto (ii)  eventuali domande teoriche e/o pratiche su argomenti svolti nell'ambito dell'insegnamento, con particolare riferimento agli argomenti sui quali sono state evidenziate carenze nella prova scritta o nello svolgimento del progetto. In generale, la prova orale è volta a valutare non soltanto se lo studente ha raggiunto un livello adeguato di conoscenze, ma anche se ha acquisito la capacità di analizzare criticamente le problematiche di progettazione e interrogazione di una base di dati, nonché di utilizzo di un DBMS, affrontati a lezione.