Obiettivi dell’insegnamento
Obiettivo della prima parte del corso è introdurre gli aspetti teorici delle basi di dati ed i linguaggi per la gestione e l’interrogazione dei dati in esse contenuti. La seconda parte del corso verte invece sui modelli concettuali, sulle metodologie e sulle tecniche per la progettazione di una base di dati a partire dai suoi requisiti. Superato il corso, lo studente sarà in grado di progettare e realizzare basi di dati di media complessità, e sviluppare applicazione che le utilizzino.
Risultati di apprendimento attesi
| Descrittori di Dublino | Expected learning outcomes |
|---|---|
| Conoscenza e comprensione | - Conoscere gli elementi basilari di un sistema per la gestione dei dati - Comprendere gli elementi sintattici e la semantica di un linguaggio di interrogazione - Conoscere i principali costrutti usati nel linguaggio SQL per definire e interrogare una base di sti relazionale - Comprendere i meccanismi di astrazione tipici della progettazione concettuale e logica dei dati |
| Capacità di applicare conoscenza e comprensione | - Confrontare metodi formali di natura diversa e confrontare il loro potere espressivo - Comporre interrogazioni complesse a partire da interrogazioni semplici - Progettare gli schemi dei dati allo scopo di rappresentare efficacemente uno specifico problema |
| Autonomia di giudizio | - Valutare la correttezza di una interrogazione relativamente ai fabbisogni informativi di un utente - Valutare le qualità di uno schema di dati - Confrontare i benefici e gli svantaggi di diversi progetti concettuali e logici |
| Capacità di apprendimento | - Essere in grado di comprendere e apprendere nuovi paradigmi di accesso alle basi di dati - Essere in grado di confrontare e coniugare le conoscenze e competenze apprese nel contesto della progettazione dei dati con quelle dell’ingegneria del software |
Argomenti trattati
- INTRODUZIONE AL CORSO
- Il sistema informativo nell’azienda
- Caratteristiche dei DBMS e concetto di transazione
- Utenti, strumenti e moduli di un DBMS
- TEORIA RELAZIONALE
- Il modello relazionale dei dati, sua definizione (informale e formale) e concetti fondamentali
- Algebra relazionale: operazioni unarie e binarie
- Interrogazioni in algebra relazionale e loro ottimizzazione
- Datalog: definizione, interrogazioni ricorsive, specifica di vincoli di integrità,
- LINGUAGGI PER BASI DI DATI
- Introduzione a SQL: standardizzazione di SQL, domini SQL, vincoli e semplice definizione di tabelle
- SQL come DDL: integrità referenziale, definizione di schemi e loro modifica, cataloghi relazionali
- Interrogazioni SQL semplici, interrogazioni con ordinamenti e raggruppamenti, Interrogazioni SQL complesse
- Comandi di modifica e viste in SQL
- Aspetti evoluti del DDL (cenni): indici, controllo dell’accesso, viste e controllo dell’accesso, trigger, procedure, transazioni
- PROGETTAZIONE DI BASI DI DATI
- Fasi della progettazione
- Le astrazioni nella progettazione dei dati
- Il modello Entità-Relazioni: definizione, associazioni, identificatori e gerarchie, proprietà delle gerarchie
- Il ciclo di progettazione: fasi di progettazione, strategie, qualità di un progetto concettuale
- Progettazione logica: fasi del progetto logico, eliminazione delle gerarchie, gestione degli identificatori, gestione degli attributi, gestione delle associazioni. Normalizzazione (cenni).
- Progettazione fisica (cenni)
Prerequisiti
Nessuno – si tratta del primo corso nell’ambito della gestione dei dati.
Modalità di valutazione
L’esame prevede una verifica scritta su tutti gli argomenti dell’insegnamento.
| Modalità di verifica | Descrizione | Risultato di apprendimento perseguito |
| Prova scritta | Esercizi di tipo progettuale: - Formulazione di interrogazioni usando i linguaggi formali - Formulazione di interrogazioni e vincoli di integrità usando SQL - Progettazione concettuale e logica di una base di dati usando il modello relazionale dei dati -Domande di carattere teorico sugli argomenti del corso | 1,2,3,5 |
Le modalità e gli appelli di esame saranno comunque in accordo con quanto previsto dalla Scuola di Ingegneria Industriale e dell’Informazione, e riportato sul relativo sito Web.