Salta al contenuto principale
CODICE 25880
ANNO ACCADEMICO 2019/2020
CFU
SETTORE SCIENTIFICO DISCIPLINARE INF/01
LINGUA Italiano
SEDE
  • GENOVA
PERIODO 2° Semestre
MATERIALE DIDATTICO AULAWEB

OBIETTIVI E CONTENUTI

OBIETTIVI FORMATIVI

Obiettivo del corso è la formazione di utenti professionali di sistemi di gestione dati, in particolare quelli relazionali. Tali utenti devono essere in grado di progettare e sviluppare delle semplici basi di dati a supporto di applicazioni, nonché di adattare basi dati già esistenti alle esigenze di nuovi applicativi che debbano interagire con esse, arricchendole o esprimendo nuove interrogazioni. Lo studente deve acquisire capacità relative alla progettazione e sviluppo di una base di dati partendo da un documento di specifica dei requisiti. In particolare deve apprendere come : - esprimere interrogazioni nei linguaggi relazionali e nel linguaggio SQL; - esprimere operazioni di manipolazione nel linguaggio SQL; - stabilire vincoli di integrità sui dati; - esprimere operazioni complesse tramite funzioni e procedure in SQL; - verificare la qualità degli schemi proposti ed eventualmente migliorarli eliminando ridondanze e anomalie.

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

FEDERICO DASSERETO

LEZIONI

Orari delle lezioni

L'orario di questo insegnamento è consultabile all'indirizzo: Portale 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) discussione delle soluzioni elaborate dallo studente per le esercitazioni proposte durante l'erogazione dell'insegnamento (iii)  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 appello Orario Luogo Tipologia Note
27/01/2020 09:00 GENOVA Scritto
27/01/2020 09:00 GENOVA Scritto
15/06/2020 09:00 GENOVA Scritto
15/06/2020 09:00 GENOVA Scritto
03/07/2020 09:00 GENOVA Scritto
03/07/2020 09:00 GENOVA Scritto
21/07/2020 09:00 GENOVA Scritto
21/07/2020 09:00 GENOVA Scritto
16/09/2020 09:00 GENOVA Scritto
16/09/2020 09:00 GENOVA Scritto
25/01/2021 09:00 GENOVA Scritto