Nuova ricerca

Domenico BENEVENTANO

Professore Associato
Dipartimento di Ingegneria "Enzo Ferrari"

Insegnamento: Basi di Dati e Lab.

Ingegneria Informatica (MO) (Offerta formativa 2021)

Obiettivi formativi

Fornire i concetti fondamentali di modelli concettuali e modelli logici per basi di dati relazionali; acquisire la capacità di progettare, creare, modificare e interrogare un database.

Prerequisiti

Propedeuticità obbligatorie: Fondamenti di Informatica I e Lab, Fondamenti di Informatica II e Lab.
Propedeuticità consigliate: Analisi Matematica II, Calcolatori Elettronici
Per studenti provenienti da altre sedi universitarie e/o altri corsi di studio l'acquisizione di contenuti analoghi ai corsi soprannominati.

Programma del corso

1 Progettazione di basi di dati
1.1 Progettazione concettuale: modello Entità-Associazione
1.2 Progettazione logica: modello relazionale
Teoria e linguaggi relazionali
1.3 Algebra relazionale.
1.4 Il linguaggio di interrogazione non procedurale SQL92
1.5 Introduzione alla teoria delle dipendenze funzionali e della normalizzazione
1.6 Generalità sui Sistemi di Gestione per Basi di Dati (DBMS). Architettura a tre livelli di un DBMS (ANSI/X3/Sparc); architettura di un DBMS relazionale

2 Esercitazioni pratiche in laboratorio
2.1 Introduzione all'ambiente SQL Server 2008. Nozioni sull’importazione ed esportazione di dati. Uso del SQL Book On Line. Strumenti grafici per la creazione di database: introduzione all’ambiente MysQL Workbench.
2.2 Elementi fondamentali di una base di dati. Creazione, modifica ed eliminazione di un database e delle relative tabelle. Definizione e modifica di vincoli. Operazioni di manipolazione dati: INSERT, UPDATE, e DELETE.
2.3 Interrogazioni di una base di dati. Query complesse: JOIN e subquery, tabelle derivate. Trattamento dei valori NULL.
2.4 Elementi di struttura complessi: Viste, Indici.
Funzioni. Elementi di sviluppo di applicazioni basate su DB.

Metodi didattici

Lezioni frontali, esercitazioni pratiche, attività pratiche di laboratorio.

Testi di riferimento

D. Beneventano, S. Bergamaschi, M. Vincini, F. Guerra: Progetto di Basi di Dati Relazionali: lezioni ed esercitazioni, Pitagora editrice - Bologna (edizione 2007).

Verifica dell'apprendimento

Modalità d'Esame:
l'esame di Basi di Dati e Lab consiste nello svolgimento di una prova scritta (eventualmente sostituibile da due prove intermedie) e di una prova in laboratorio, più un'eventuale prova orale.

La prova scritta dura due ore ed è volta a verificare:

- la capacità di risolvere i problemi di modellazione concettuale di una base di dati (40% della prova)

- la capacità di risolvere i problemi di modellazione logica di una base di dati (20% della prova)

- la conoscenza e l'utilizzo del linguaggio SQL e dell'algebra relazionale (40% della prova)

Gli esercizi sono di tipo domanda aperta.


La prova di laboratorio dura 40 minuti ed è rivolta alla verifica delle competenze acquisite dall’esaminando su:

- implementazione su DBMS di una base di dati relazionale, la sua modifica e interrogazione, utilizzando il linguaggio SQL. L’implementazione è relativa a tutti gli aspetti: dalla creazione e modifica dello schema dei dati, comprensivo di vincoli di integrità e delle business rules, al fine di garantire la qualità della base di dati (70% della prova).

- realizzazione di interrogazioni/viste in linguaggio SQL (30% della prova).

La Prova orale (opzionale) dura 20 minuti e consiste di :

- due domande aperte che possono spaziare su tutto il programma dell'insegnamento.

Valutazione

Ciascuna prova (prova scritta completa, prova scritta intermedia, prova di laboratorio) è valutata positivamente se ha raggiunto un voto pari almeno a 16/30.

La valutazione verrà calcolata con una media pesata dei voti (arrotondata per difetto); in tale media il voto della prova scritta vale 2/3 (oppure 1/3 per ciascuna delle due prove intermedie) e il voto della prova di laboratorio vale 1/3. Tale valutazione può essere incrementata fino a un massimo di 2 punti sostenendo la prova orale.

In caso di valutazione finale della prova scritta e di laboratorio inferiore a 18/30 è indispensabile sostenere una prova orale.

La prova orale può essere sostenuta solo dopo avere  superato sia la prova scritta che la prova di laboratorio. La prova orale è relativa a tutti gli argomenti trattati durante l'insegnamento.

TEMPI

A metà del corso e durante l'ultima settimana del corso sono previste le due prove intermedie che possono sostituire la prova scritta totale, se superate con voto >= 16/30 entrambe (in caso di voto <18 la prova orale è obbligatoria).

Gli appelli di esame scritto e di laboratorio (come l'orale facoltativo) saranno fissati per i mesi di: Giugno 2022, Luglio 2022, Settembre 2022, Gennaio e Febb 2023.

Le iscrizioni alle prove di esame saranno gestite esclusivamente tramite Esse3, il quale sarà utilizzato per la comunicazione degli esiti entro 15 giorni dalla data dell'esame.

NOTE

Le prove potrebbero essere svolte in presenza o a distanza a seconda dell'evoluzione della situazione COVID19.

Risultati attesi

Conoscenza e capacità di comprensione: Tramite lezioni in aula, lo studente avrà solide conoscenze e capacità di comprensione nell'ambito della teoria delle basi di dati relazionali, della raccolta ed analisi dei requisiti, delle metodologie di progettazione concettuale e logica, delle tecniche di interrogazione.

Capacità di applicare conoscenza e comprensione: Tramite esercitazioni in aula ed esercitazioni pratiche al computer, lo studente sarà in grado di applicare le conoscenze acquisite nella progettazione ed implementazione di un database.

Autonomia di giudizio: Grazie alla risoluzione di esercizi individuali ed esercizi pratici in laboratorio, lo studente sarà in grado di valutare criticamente le scelte progettuali e implementative adottate e i risultati ottenuti.

Abilità comunicative: Le domande aperte dell'esame scritto, nonché l’eventuale prova orale, daranno modo allo studente di organizzare e presentare con chiarezza mediante il linguaggio tecnico appropriato, i risultati del proprio lavoro.

Capacità di apprendimento: Le attività descritte consentiranno allo studente di acquisire gli strumenti metodologici per proseguire gli studi e per potere provvedere autonomamente al proprio aggiornamento, particolarmente cruciale in un ambito di gestione dell'informazione, dove le tecnologie sono in continua evoluzione.