ID:
502479
Durata (ore):
60
CFU:
6
SSD:
SISTEMI DI ELABORAZIONE DELLE INFORMAZIONI
Anno:
2024
Dati Generali
Periodo di attività
Primo Semestre (26/09/2024 - 15/01/2025)
Syllabus
Obiettivi Formativi
Il corso di Basi di Dati è un'introduzione alla gestione di grandi quantità di informazioni mediante l'uso della tecnologia corrente dei DBMS. Lo studente acquisirà le capacità necessarie ad utilizzare basi di dati preesistenti mediante il linguaggio standard SQL e a progettare schemi di basi di dati a partire da specifiche funzionali di alto livello. Su gli schemi logici derivati dalla metodologia di progettazione concettuale Entità Relazione Attributo, lo studente sarà in grado di eseguire verifiche di correttezza formale utilizzando lo strumento delle dipendenze funzionali. Il riferimento principale di tutto il corso è il modello relazionale. Al termine del corso, lo studente sarà in grado di intraprendere l'analisi di sistemi basati su DBMS, indipendentemente dalla tecnologia e dall'infrastruttura che li ospita; in questo senso, l'ambiente operativo (rete locale, rete geografica o Web) non sarà un elemento discriminante delle capacità acquisite. L'attivazione in ambiente cloud di un'istanza di DBMS in modalità SaaS completa le competenze acquisite con il corso.
Prerequisiti
Nozioni base introdotte nei corsi di Analisi Matematica, Fondamenti di Informatica e Calcolatori elettronici: insiemi, operazioni insiemistiche, connettivi logici, algebra di Boole, quantificatori, capacità di formulare algoritmi.
Metodi didattici
Lezioni (ore/anno in aula): 32
Esercitazioni (ore/anno in aula): 12
Attività pratiche (ore/anno in aula): 18
Le lezioni si svolgono con l'ausilio di presentazioni, che sono fortemente correlate con il
contenuto del testo di riferimento; alcune parti sono svolte alla lavagna.
Le esercitazioni consistono nella risoluzione di esercizi sui vari argomenti, di complessità
crescente, fino alla soluzione di temi d'esame. Anche SQL è trattato con esempi e con
l'utilizzo di ambienti DBMS: verrà introdotto con attività di laboratorio. Inoltre agli studenti vengono fornite
istruzioni per installarsi su un PC lo stesso ambiente del test di esame, con lo stesso database
utilizzato per le esercitazioni. E' inoltre previsto l'utilizzo di una piattaforma cloud per creare
istanze di DBMS in modalità SaaS. Le credenziali per l'utilizzo della piattaforma cloud saranno
distribuite all'inizio del corso e dovranno essere attivate antro due mesi; saranno poi valide per
12 mesi.
Verifica Apprendimento
La verifica avviene mediante una prova scritta su tutti gli argomenti del corso, una prova pratica di SQL e un progettino opzionale. Per accedere alla prova pratica di SQL gli studenti devono dimostrare di aver istanziato con successo MySQL nell'ambiente cloud per i quale sono state loro fornite credenziali gratuite. La prova pratica di SQL svolta in laboratorio consiste nella codifica di due query sul db utilizzato durante le esercitazioni. Il progettino opzionale consiste in un'attività di download da una fonte dati di uno o più archivi e nella loro trasformazione in uno schema relazionale, con conseguente caricamento su un'istanza di SQL in modalità SaaS su piattaforma web. La prova scritta vale 27/30, la prova SQL 2,5/30, il progettino 2/30. Il progettino è obbligatorio per confermare votazioni superiori a 27/30, è opzionali per le altre votazioni. La verifica scritta e la prova pratica di SQL possono essere sostenute in appelli disgiunti.
Testi
P. Atzeni, S. Ceri, S. Paraboschi, R. Torlone. Basi di dati: Modelli e linguaggi di interrogazione. Mc Graw Hill, 6ta edizione. Testo di base..
MySQL. Tutorial disponibile sul sito di MySQL: http://dev.mysql.com/doc/index.html. Utile per chi installa MySQL.
Verranno date indicazioni pratiche sui DBMS (disponibili con licenza gratuita per gli studenti) che possono essere usati per esercitazioni personali. Il corso utilizza un laboratorio, presso la quale è utilizzabile il server MySQL e il client MySQL Workbench; sull'istanza di MySQL è caricato il database per le esercitazioni guidate e per le prove di esame. Sul sito del corso sono disponibile le istruzioni per generale su un PC personale lo stesso database presente sul server.
I testi su SQL sono indicativi e non vincolanti.
Contenuti
Parte I. Introduzione ai DBMS
Architettura di un DBMS. La struttura a livelli della rappresentazione dell'informazione. Il concetto di schema e i metadati. Modelli dei dati: strutture di rappresentazioni, operatori e vincoli. Linguaggi per la descrizione (DDL) e la manipolazione dei dati (DML). Proprietà ACID delle transazioni (cenni).
Parte II. Il modello relazionale
Dalle tabelle alle relazioni: fondamento algebrico del modello. Domini e relazioni. Il concetto di superchiave e di chiave primaria. I vincoli di integrità. Algebra relazionale. Operatori insiemistici. Restrizione, proiezione e giunzione. Costruzione di espressioni che traducano query formulate in linguaggio naturale.
Parte III. SQL
SQL come standard. Rapporti con l'algebra relazionale. Sintassi completa di SELECT FROM. Operatori insiemistici. Query semplici, nidificate e correlate. Raggruppamento. SQL come DDL. Il CATALOG. SQL ospitato: il concetto di cursore. SQLCA. Esercitazioni in aula e in ambiente cloud. Il modello client server e ODBC. Connettività Web.
Parte IV. La progettazione di una base di dati
Dai requisiti allo schema logico: progettazione concettuale e logica. Progettazione concettuale mediante il modello Entità, Relazione e Attributi (ERA). Dati di carico delle transazioni e ristrutturazione dello schema ERA. Traduzione nel modello logico secondo lo schema relazionale. Il concetto di dipendenza funzionale come strumento di verifica della struttura delle relazioni. Forma normale di Boyce Codd.
Lingua Insegnamento
Italiano
Corsi
Corsi
MATEMATICA
Laurea Magistrale
2 anni
No Results Found