BASI DI DATI

Matteo GAETA BASI DI DATI

0612700007
DIPARTIMENTO DI INGEGNERIA DELL'INFORMAZIONE ED ELETTRICA E MATEMATICA APPLICATA
CORSO DI LAUREA
INGEGNERIA INFORMATICA
2024/2025



OBBLIGATORIO
ANNO CORSO 3
ANNO ORDINAMENTO 2022
SECONDO SEMESTRE
CFUOREATTIVITÀ
1BASI DI DATI
648LEZIONE
2PROGETTO DI BASI DI DATI
216ESERCITAZIONE
18LABORATORIO


Obiettivi
L'INSEGNAMENTO PRESENTA LE PRINCIPALI ARCHITETTURE E MODELLI DI BASI DI DATI, LE METODOLOGIE PER LA PROGETTAZIONE DELLE BASI DI DATI, L'ARCHITETTURA E LE CARATTERISTICHE DEI SISTEMI TRANSAZIONALI, E I LINGUAGGI PER L'IMPLEMENTAZIONE E L'INTERROGAZIONE DELLE BASI DI DATI RELAZIONALI E PER LA GESTIONE DELLE TRANSAZIONI SU UN DBMS.
CONOSCENZE E CAPACITA' DI COMPRENSIONE: IL MODELLO RELAZIONALE. PROGETTAZIONE CONCETTUALE, LOGICA E FISICA DI UNA BASE DI DATI. IL LINGUAGGIO SQL PER LA DEFINIZIONE DEI DATI. IL LINGUAGGIO SQL PER MANIPOLARE ED ESTRARRE DATI. LA NORMALIZZAZIONE. I DATABASE ATTIVI. LA LIBRERIA JAVA DATABASE CONNECTIVITY (JDBC). LE TRANSAZIONI ACID.
CONOSCENZE E CAPACITA' DI COMPRENSIONE APPLICATE: PROGETTARE, IMPLEMENTARE E USARE UNA BASE DI DATI RELAZIONALE PER UN DATO SCENARIO, UTILIZZANDO L'AMBIENTE DI SVILUPPO E GESTIONE DI DBMS POSTGRESQL.
Prerequisiti
PER IL PROFICUO RAGGIUNGIMENTO DEGLI OBIETTIVI PREFISSATI SONO UTILI CONOSCENZE DI BASE DEI SISTEMI OPERATIVI E DELLA PROGRAMMAZIONE AD OGGETTI. E' RICHIESTA LA PROPEDEUTICITÀ DELL'INSEGNAMENTO DI ALGORITMI E STRUTTURE DATI.
Contenuti
L'INSEGNAMENTO È ARTICOLATO IN 2 MODULI: 1) MODULO DI BASI DI DATI; 2) MODULO PROGETTO BASI DI DATI PER UN TOTALE ORE LEZIONE - ESERCITAZIONE - LABORATORIO 48; 14; 10
1) MODULO BASI DI DATI (LEZIONE-ESERCITAZIONE-LABORATORIO 44; 3; 1).
UNITÀ DIDATTICA 1: SISTEMI INFORMATIVI, DBMS E MODELLO RELAZIONALE.
(LEZIONE-ESERCITAZIONE-LABORATORIO 7; 0; 1).
- 1 (3 ORE LEZIONE): SISTEMI INFORMATIVI E SISTEMI INFORMATICI; ARCHITETTURE; CONCETTO DI TRANSAZIONE.
- 2 (1 ORE LEZIONE E 1 ORA LABORATORIO): DBMS E ARCHITETTURE DI RDBMS; INSTALLAZIONE RDBMS (POSTGRES).
- 3 (3 ORE LEZIONE): MODELLO RELAZIONALE.
CONOSCENZE E CAPACITÀ DI COMPRENSIONE: COMPRENSIONE DEL CONCETTO DI SISTEMA INFORMATIVO, DELL’IMPORTANZA DEI DBMS E DEI RDBMS; CONOSCENZE DEL MODELLO RELAZIONALE.
CONOSCENZE E CAPACITÀ DI COMPRENSIONE APPLICATE: SAPER RAPPRESENTARE GLI ARCHIVI DI INTERESSE DI UNA APPLICAZIONE UTILIZZANDO IL MODELLO RELAZIONALE.
UNITÀ DIDATTICA 2: CONCETTI BASE DEL LINGUAGGIO SQL.
(LEZIONE-ESERCITAZIONE-LABORATORIO 13; 1; 0).
- 4 (3 ORE LEZIONE): CENNI DI ALGEBRA RELAZIONALE.
- 5 (3 ORE LEZIONE): DICHIARATIVITÀ DI SQL; DDL; CONCETTI PRELIMINARI DDL; DOMINI; SCHEMI E TABELLE.
- 6 (2 ORE LEZIONE): VINCOLI INTRARELAZIONALI E INTERRELAZIONALI; POLICY DI REAZIONE; MODIFICA E CANCELLAZIONE DI SCHEMI; ESEMPI IN POSTGRESQL.
- 7 (3 ORE LEZIONE): DML; CONCETTI PRELIMINARI DML; INTRODUZIONE ALLE QUERY; INSERIMENTO, CANCELLAZIONE E MODIFICA DEI DATI; QUERY SEMPLICI; JOIN INTERNI ED ESTERNI;
- 8 (2 ORE LEZIONE E 1 ESERCITAZIONE): DML - ORDINAMENTO, OPERATORI AGGREGATI; QUERY CON RAGGRUPPAMENTO; ESERCIZI IN POSTGRESQL.
CONOSCENZE E CAPACITÀ DI COMPRENSIONE: CONOSCENZE DEI CONCETTI BASE, DEI PRINCIPALI COSTRUTTI E COMANDI DI SQL.
CONOSCENZE E CAPACITÀ DI COMPRENSIONE APPLICATE: SAPER CREARE MODIFICARE E CANCELLARE DOMINI, TABELLE, ECC. E SAPER REALIZZARE UNA QUERY SEMPLICE E USARE IL JOIN.
UNITÀ DIDATTICA 3: METODOLOGIE E MODELLI PER IL PROGETTO.
(LEZIONE-ESERCITAZIONE-LABORATORIO 13; 0; 0).
- 9 (3 ORE LEZIONE): IL MODELLO E-R; COSTRUTTI DEL MODELLO E-R.
- 10 (2 ORE LEZIONE): LA DOCUMENTAZIONE NEL MODELLO E-R; CENNI DI MODELLAZIONE DEI DATI IN UML E USO DI STRUMENTI CASE; FASI DELLA PROGETTAZIONE LOGICA; ANALISI DELLE PRESTAZIONI SU SCHEMI E-R;
- 11 (3 ORE LEZIONE): RISTRUTTURAZIONE DI SCHEMI E-R;
- 12 (2 ORE LEZIONE): TRADUZIONE VERSO IL MODELLO RELAZIONALE; CENNI SULL'ORGANIZZAZIONE FISICA.
- 13 (3 ORE LEZIONE): LA NORMALIZZAZIONE; RIDONDANZE, ANOMALIE E DIPENDENZE FUNZIONALI; LE PRIME TRE FORME NORMALI E LA BCNF; PROGETTAZIONE DI BASI DI DATI E NORMALIZZAZIONE; ESEMPI SULLA VALUTAZIONE DELLA QUALITA' DELLO SCHEMA E LA NORMALIZZAZIONE.
CONOSCENZE E CAPACITÀ DI COMPRENSIONE: COMPRENSIONE DEL MODELLO CONCETTUALE E-R; COMPRENSIONE DEI PRINCIPI DI PROGETTAZIONE LOGICA; ACQUISIRE IL CONCETTO DI PATTERN DI PROGETTAZIONE LOGICA; COMPRENDERE IL CONCETTO DI INDICE; COMPRENDERE I CONCETTI E PRINCIPI DELLE FORME NORMALI.
CONOSCENZE E CAPACITÀ DI COMPRENSIONE APPLICATE: SAPER REALIZZARE UNO SCEHMA E-R; SAPER RISTRUTTURARE UNO SCHEMA RELAZIONALE; SAPER TRADURRE UNO SCHEMA RELAZIONALE RISTRUTTURATO APPLICANDO I PATTERN DI PROGETTAZIONE LOGICA; SAPER NORMALIZZARE ALMENO ALLA TERZA FORMA NORMALE UNO SCHEMA RELAZIONALE.
UNITÀ DIDATTICA 4: CARATTERISTICHE COMPLESSE ED EVOLUTE DI SQL
(LEZIONE-ESERCITAZIONE-LABORATORIO 8; 2; 0).
- 14 (3 ORE LEZIONE): QUERY INSIEMISTICHE E NIDIFICATE (INTERPRETAZIONE SEMPLICE E COMPLESSA); QUERY NIDIFICATE IN SELECT E FROM.
- 15 (1 ORA LEZIONE E 1 ORA ESERCITAZIONE): ESERCIZI SU QUERY INSIEMISTICHE E NIDIFICATE; CONTROLLO DELL'ACCESSO SQL; RISORSE E PRIVILEGI; COMANDI PER CONCEDERE E REVOCARE PRIVILEGI; RUOLI.
- 16 (3 ORE LEZIONE): CARATTERISTICHE EVOLUTE DI SQL; VINCOLI DI INTEGRITÀ GENERICI E ASSERZIONI; VISTE; STORED PROCEDURES E TRIGGER;
- 17 (1 ORA LEZIONE E 1 ORA ESERCITAZIONE) ESERCIZI SU TRIGGER; SPECIFICHE DELLE TRANSAZIONI (COMMIT AND ROLLBACK) E PROPRIETÀ ACID.
CONOSCENZE E CAPACITÀ DI COMPRENSIONE: COMPRENDERE COME IMPOSTARE QUERY INSIEMISTICHE E NIDIFICATE; COMPRENDERE I CONCETTI DI VISTA, TRIGGER E TRANSAZIONE.
CONOSCENZE E CAPACITÀ DI COMPRENSIONE APPLICATE: SAPER REALIZZARE QUERY INSIEMISTICHE, NIDIFICATE; SAPER REALIZZARE UNA VISTA; SAPER IMPLEMENTARE UN TRIGGER E UNA TRANSAZIONE.
UNITÀ DIDATTICA 5: SVILUPPO DI APPLICAZIONI PER BD
(LEZIONE-ESERCITAZIONE-LABORATORIO 3; 0; 0).
- 18 (3 ORE LEZIONE): SVILUPPO DI APPLICAZIONI PER BD; CENNI SQL EMBEDDED; ODBC E JDBC; PATTERN PROGETTAZIONE E SVILUPPO DI APPLICAZIONI CON JDBC; ESEMPI.
CONOSCENZE E CAPACITÀ DI COMPRENSIONE: COMPRENDERE I CONCETTI DI ODBC E JDBC; COMPRENDERE PATTERN PROGETTAZIONE E SVILUPPO DI APPLICAZIONI CON JDBC.
CONOSCENZE E CAPACITÀ DI COMPRENSIONE APPLICATE: SAPER IMPLEMENTARE UNA APPLICAZIONE JAVA CON USO DI JDBC.
2) MODULO PROGETTO BASI DI DATI, 24 ORE (LEZIONE-ESERCITAZIONE-LABORATORIO 4; 11; 9)
UNITÀ DIDATTICA 1: LA PROGETTAZIONE DI UNA BASE DI DATI RELAZIONALE - ORIENTAMENTO AL PROJECT WORK.
(LEZIONE-ESERCITAZIONE-LABORATORIO 4; 11; 0).
- 1 (2 ORE LEZIONE): CICLO DI VITA DEL SOFTWARE - ORIENTAMENTO AL PROJECT WORK; ANALISI DEI DATI E SPECIFICA REQUISITI.
- 2 (2 ORE LEZIONE E 1 ORA ESERCITAZIONE): LA PROGETTAZIONE CONCETTUALE - ORIENTAMENTO AL PROJECT WORK; RACCOLTA E ANALISI DEI REQUISITI; RAPPRESENTAZIONE CONCETTUALE - CRITERI E PATTERN DI PROGETTAZIONE CONCETTUALE; STRATEGIE DI PROGETTO; QUALITÀ DI UNO SCHEMA; METODOLOGIA GENERALE; ESEMPI E ESERCIZI PATTERN DI PROGETTO.
- 3 (3 ORE ESERCITAZIONE): CASO DI STUDIO: ANALISI DEI REQUISITI E DIAGRAMMA E-R.
- 4 (2 ORE ESERCITAZIONE): LA PROGETTAZIONE LOGICA - ORIENTAMENTO AL PROJECT WORK; FASI DELLA PROGETTAZIONE LOGICA.
- 5 (3 ORE ESERCITAZIONE): ANALISI DELLE PRESTAZIONI E RISTRUTTURAZIONE DI SCHEMI E.R.
- 6 (2 ORE ESERCITAZIONE): TRADUZIONE VERSO IL MODELLO RELAZIONALE; PATTERN DI PROGETTAZIONE LOGICA E NORMALIZZAZIONE.
CONOSCENZE E CAPACITÀ DI COMPRENSIONE: COMPRENSIONE DEI PATTERN DI PROGETTAZIONE CONCETTUALE E LOGICA; COMPRENDERE I CONCETTI E PRINCIPI DELLE FORME NORMALI PER LA VERIFICA DEGLI SCHEMI. APPLICARE LE CONOSCENZE ACQUISITE AD UN PROGETTO.
CONOSCENZE E CAPACITÀ DI COMPRENSIONE APPLICATE: SAPER APPLICARE I PATTERN DI PROGETTAZIONE CONCETTUALE E SAPER REALIZZARE UNO SCEHMA E-R; SAPER RISTRUTTURARE UNO SCHEMA RELAZIONALE; SAPER TRADURRE UNO SCHEMA RELAZIONALE RISTRUTTURATO APPLICANDO I PATTERN DI PROGETTAZIONE LOGICA; SAPER NORMALIZZARE ALMENO ALLA TERZA FORMA NORMALE UNO SCHEMA RELAZIONALE. APPLICARE LE CONOSCENZE ACQUISITE AD UN PROGETTO.
UNITÀ DIDATTICA 2: CARATTERISTICHE COMPLESSE ED EVOLUTE DI SQL - ORIENTAMENTO AL PROJECT WORK.
(LEZIONE-ESERCITAZIONE-LABORATORIO 0; 0; 6).
- 7 (3 ORE LABORATORIO): ESERCIZI SU QUERY INSIEMISTICHE E NIDIFICATE.
- 8 (3 ORE LABORATORIO): ESERCIZI SU VISTE, TRIGGER E TRANSAZIONI.
CONOSCENZE E CAPACITÀ DI COMPRENSIONE: COMPRENDERE COME IMPOSTARE QUERY INSIEMISTICHE E NIDIFICATE AD UN PROGETTO; COMPRENDERE COME UTILIZZARE I CONCETTI DI VISTA, TRIGGER E TRANSAZIONE AD UN PROGETTO.
CONOSCENZE E CAPACITÀ DI COMPRENSIONE APPLICATE: SAPER REALIZZARE QUERY INSIEMISTICHE, NIDIFICATE PER IL PROGETTO; SAPER REALIZZARE UNA VISTA; SAPER IMPLEMENTARE UN TRIGGER E UNA TRANSAZIONE PER UN PROGETTO.
UNITÀ DIDATTICA 3: SVILUPPO DI APPLICAZIONI PER DB - ORIENTAMENTO AL PROJECT WORK.
(LEZIONE-ESERCITAZIONE-LABORATORIO 0; 0; 3).
- 9 (3 ORE LABORATORIO): ESERCIZI SU PROGETTAZIONE E SVILUPPO DI APPLICAZIONI JAVA E JDBC.
CONOSCENZE E CAPACITÀ DI COMPRENSIONE: COMPRENDERE I CONCETTI DI ODBC E JDBC; COMPRENDERE PATTERN PROGETTAZIONE PER LO SVILUPPO DI UNA APPLICAZIONE SEMPLICE CON JDBC.
CONOSCENZE E CAPACITÀ DI COMPRENSIONE APPLICATE: SAPER IMPLEMENTARE UNA APPLICAZIONE JAVA SEMPLICE CON USO DI JDBC PER UN PROGETTO.
TOTALE ORE LEZIONE - ESERCITAZIONE - LABORATORIO 48; 14; 10
Metodi Didattici
L'INSEGNAMENTO PREVEDE LEZIONI TEORICHE ED ESERCITAZIONI. SONO ALTRESI' PREVISTE ATTIVITA' DI LAVORO DI GRUPPO. DURANTE LE ESERCITAZIONI, AGLI STUDENTI È RICHIESTO DI PROGETTARE I DATABASE PER SCENARI DI ESEMPIO, DI RISOLVERE INTERROGAZIONI, DI NORMALIZZARE RELAZIONI E DI IMPLEMENTARE SEMPLICI PROGRAMMI CHE INTERAGISCONO CON UN RBDMS. PER POTER SOSTENERE LA VERIFICA FINALE DEL PROFITTO E CONSEGUIRE I CFU RELATIVI ALL'ATTIVITÀ FORMATIVA, LO STUDENTE DOVRÀ AVERE FREQUENTATO ALMENO IL 70% DELLE ORE PREVISTE DI ATTIVITÀ DIDATTICA ASSISTITA.
Verifica dell'apprendimento
IL LIVELLO DI RAGGIUNGIMENTO DEGLI OBIETTIVI DELL'INSEGNAMENTO E' CERTIFICATO MEDIANTE IL SUPERAMENTO DI UN ESAME CON VALUTAZIONE IN TRENTESIMI. L'ESAME PREVEDE UNA PROVA SCRITTA E UN COLLOQUIO ORALE. NELLA PROVA SCRITTA, LO STUDENTE, A PARTIRE DALLA SPECIFICA DI UN PROBLEMA, DEVE REALIZZARE UN ELABORATO PROGETTUALE, AFFRONTANDO TUTTE LE FASI DI PROGETTAZIONE E DI DEFINIZIONE DI UNA BASE DI DATI: 1) ANALISI E SPECIFICA DEI REQUISITI; 2) PROGETTAZIONE CONCETTUALE; 3) PROGETTAZIONE LOGICA; 4) DEFINIZIONE E GESTIONE DELLA BASE DI DATI UTILIZZANDO IL LINGUAGGIO SQL IN AMBIENTE POSTGRESQL; 5) REALIZZAZIONE DI FUNZIONALITA' APPLICATIVE IN JAVA (FACOLTATIVA).
IL SUPERAMENTO DELLA PROVA SCRITTA È CONDIZIONE PER ACCEDERE ALLA PROVA ORALE.
NELLA PROVA ORALE LO STUDENTE DISCUTE L'ELABORATO PRODOTTO NELLA PROVA SCRITTA E TUTTI GLI ALTRI ARGOMENTI DEL CORSO. SI SEGNALA CHE LA PROVA ORALE PUO' RIGUARDARE ANCHE LO SVOLGIMENTO DI ALCUNI ESERCIZI IN AMBIENTE POSTGRESQL.
IL VOTO FINALE, ESPRESSO IN TRENTESIMI, E' OTTENUTO TENENDO CONTO DELL'ESITO DEL COLLOQUIO ORALE E DEL VOTO ATTRIBUITO ALLA PROVA SCRITTA CHE HA UN PESO DEL 60%. LA LODE POTRA' ESSERE ATTRIBUITA AGLI STUDENTI CHE DIMOSTRINO DI POSSEDERE UN ECCELLENTE PADRONANZA DEI CONTENUTI DEL CORSO UNITAMENTE ALLA CAPACITA' DI APPLICARE NELL'AMBITO DEL PROGETTO LE CONOSCENZE ACQUISITE PER LA RISOLUZIONE DEI PROBLEMI NON AFFRONTATI DURANTE IL CORSO.
Testi
TESTI: P. ATZENI, S. CERI, P. FRATERNALI, S. PARABOSCHI, R. TORLONE; BASI DI DATI - SESTA EDIZIONE, MCGRAW-HILL ITALIA ISBN: 9788838668005.
TESTI DI CONSULTAZIONE: A. CHIANESE, V. MOSCATO, A. PICARIELLO, L. SANSONE, BASI DI DATI PER LA GESTIONE DELL'INFORMAZIONE - SECONDA EDIZIONE; MCGRAW-HILL ITALIA, ISBN: 9788838672217.
MATERIALE DIDATTICO INTEGRATIVO SARÀ DISPONIBILE NELLA SEZIONE DEDICATA DELL'INSEGNAMENTO ALL'INTERNO DELLA PIATTAFORMA E-LEARNING DI ATENEO (HTTP://ELEARNING.UNISA.IT) ACCESSIBILE AGLI STUDENTI DEL CORSO TRAMITE LE CREDENZIALI UNICHE DI ATENEO.
Altre Informazioni
L'INSEGNAMENTO È EROGATO IN ITALIANO.
  BETA VERSION Fonte dati ESSE3 [Ultima Sincronizzazione: 2024-11-18]