Salta al contenuto principale della pagina

BASI DI DATI

CODICE 25880
ANNO ACCADEMICO 2022/2023
CFU
  • 12 cfu al 2° anno di 8759 INFORMATICA (L-31) - GENOVA
  • 8 cfu al 2° anno di 8766 STATISTICA MATEM. E TRATTAM. INFORMATICO DEI DATI (L-35) - GENOVA
  • 8 cfu al 3° anno di 8760 MATEMATICA (L-35) - GENOVA
  • 6 cfu al 1° anno di 9011 MATEMATICA(LM-40) - GENOVA
  • SETTORE SCIENTIFICO DISCIPLINARE INF/01
    LINGUA Italiano
    SEDE
  • GENOVA
  • PERIODO 2° Semestre
    MATERIALE DIDATTICO AULAWEB

    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.

    MODALITA' 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

    Commissione d'esame

    GIOVANNA GUERRINI (Presidente)

    BARBARA CATANIA

    CHIARA ACCINELLI (Supplente)

    FEDERICO DASSERETO (Supplente)

    LEZIONI

    Orari delle lezioni

    L'orario di tutti gli insegnamenti è consultabile su EasyAcademy.

    ESAMI

    MODALITA' 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.

    MODALITA' 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.

    Calendario appelli

    Data Ora Luogo Tipologia Note