Corsi di Laurea Corsi di Laurea Magistrale Corsi di Laurea Magistrale
a Ciclo Unico
Scuola di Scienze
INFORMATICA
Insegnamento
BASI DI DATI
SCP4065533, A.A. 2017/18

Informazioni valide per gli studenti immatricolati nell'A.A. 2016/17

Principali informazioni sull'insegnamento
Corso di studio Corso di laurea in
INFORMATICA
SC1167, ordinamento 2011/12, A.A. 2017/18
N0
porta questa
pagina con te
Crediti formativi 9.0
Tipo di valutazione Voto
Denominazione inglese DATABASE
Sito della struttura didattica http://informatica.scienze.unipd.it/2017/laurea
Dipartimento di riferimento Dipartimento di Matematica
Obbligo di frequenza No
Lingua di erogazione ITALIANO
Sede PADOVA
Corso singolo È possibile iscriversi all'insegnamento come corso singolo
Corso a libera scelta È possibile utilizzare l'insegnamento come corso a libera scelta

Docenti
Responsabile MAURO CONTI INF/01

Dettaglio crediti formativi
Tipologia Ambito Disciplinare Settore Scientifico-Disciplinare Crediti
CARATTERIZZANTE Discipline Informatiche INF/01 9.0

Modalità di erogazione
Periodo di erogazione Primo semestre
Anno di corso II Anno
Modalità di erogazione frontale

Organizzazione della didattica
Tipo ore Crediti Ore di
Corso
Ore Studio
Individuale
Turni
ESERCITAZIONE 1.0 8 17.0 Nessun turno
LABORATORIO 2.0 16 34.0 Nessun turno
LEZIONE 6.0 48 102.0 Nessun turno

Calendario
Inizio attività didattiche 02/10/2017
Fine attività didattiche 19/01/2018

Syllabus
Prerequisiti: È opportuno avere familiarità con gli elementi di base della programmazione, così come forniti nel corso di “Programmazione”
L'insegnamento non prevede propedeuticità.
Conoscenze e abilita' da acquisire: Obiettivo del corso è quello di permettere allo studente di acquisire alcune conoscenze di base riguardanti le funzionalità dei DBMS (Data Base Management Systems – sistemi per la gestione di basi di dati), la progettazione delle basi di dati mediante l'uso di modelli concettuali, il progetto logico mediante il modello relazionale dei dati e l'uso del linguaggio SQL per la definizione e la realizzazione di basi di dati. Sono previste esercitazioni in laboratorio che consentono allo studente di sperimentare le conoscenze acquisite mediante l'utilizzo di un DBMS concreto.

Infine è richiesto lo sviluppo di un progetto che consiste nella progettazione e realizzazione di una base di dati (analisi, progetto concettuale, progetto logico, implementazione, individuazione e implementazione di query di interesse). Oltre ad incrementare la capacità di applicare le conoscenze teoriche acquisite, le varie fasi del progetto espongono lo studente a scelte autonome e ragionate, che richiedono una rielaborazione personale delle conoscenze acquisite.
Modalita' di esame: Lo studente deve superare uno scritto e realizzare un progetto (nel quale mettere in pratica le nozioni acquisite nel corso). Il progetto è poi discusso in forma orale.
Criteri di valutazione: Lo scritto contiene alcune domande che consentono di valutare il livello di apprendimento delle nozioni impartite durante il corso. Sono poi presenti esercizi di progettazione, formulazione di query SQL e normalizzazione che richiedono allo studente un'elaborazione personale di concetti e tecniche viste nel corso.

La valutazione del progetto considera la capacità, da parte dello studente, di individuare un caso di studio adeguato, di svolgere in modo autonomo un'attività di progettazione qualitativamente appropriata e di realizzare una implementazione disciplinata.
Contenuti: La struttura e le tematiche del corso saranno le seguenti:

- Introduzione
Basi di dati e sistemi di gestione di basi di dati. Architettura di un sistema di gestione di basi di dati.

- La progettazione concettuale di una base di dati
Il modello concettuale a oggetti. Progettazione concettuale di basi di dati mediante il modello a oggetti.

- La progettazione logica di una base di dati
Il modello relazionale. L'algebra relazionale e il calcolo relazionale. Progettazione logica di basi di dati mediante traduzione di schemi a oggetti in schemi relazionali.

- La normalizzazione di schemi relazionali
Dipendenze funzionali. Scomposizione di relazioni, con preservazione di dati e/o dipendenze. Forme normali per gli schemi di relazione (1NF, 2NF, 3NF e BCNF) e decomposizioni in forma normale.

- Il linguaggio SQL
Il data definition language di SQL. Il data manipulation language di SQL (interrogazione e aggiornamento). Conoscenza procedurale: procedure e trigger. Transazioni. Controllo degli accessi (basato sui privilegi). Il DBMS MySQL.

- SQL per le applicazioni
SQL embedded. Call level interface (JDBC, ODBC).
Attivita' di apprendimento previste e metodologie di insegnamento: L'insegnamento prevede lezioni frontali, esercitazioni in laboratorio e la realizzazione di un progetto. Le esercitazioni in laboratorio consistono nell'implementazione di semplici database, relative interrogazioni SQL. Sono propedeutiche alla realizzazione del progetto, nel quale lo studente individua autonomamente un caso di studio, progetta ed implementa una base di dati.
Eventuali indicazioni sui materiali di studio: Verranno rese disponibili, come riferimento, le slide utilizzate a lezione.
Testi di riferimento:
  • Paolo Atzeni, Stefano Ceri, Stefano Paraboschi, Riccardo Torlone, Basi di Dati. --: McGraw Hill, --. Cerca nel catalogo
  • A. Albano, G. Ghelli, R. Orsini, Fondamenti di basi di dati. 2a Edizione.. --: Zanichelli, --. Cerca nel catalogo