SISTEMI INFORMATIVI

Anno accademico e docente
Non hai trovato la Scheda dell'insegnamento riferita all’anno accademico di tuo interesse? Ecco come fare >>
English course description
Anno accademico
2015/2016
Docente
FABRIZIO RIGUZZI
Crediti formativi
6
Periodo didattico
Primo Semestre
SSD
ING-INF/05

Obiettivi formativi

L'obiettivo principale del corso consiste nel rendere gli studenti in grado di realizzare la progettazione fisica di database relazionali e sviluppare applicazioni complesse che si interfacciano ad un database. Inoltre, il corso illustrerà le conoscenze di base su big data.

Le principali conoscenze acquisite sono relative a:

tecnologie dei Data Base Management Systems (DBMS),
elaborazione delle interrogazioni,
gestione delle transazioni,
organizzazione fisica dei DBMS SQL Server, Oracle e DB2,
tecnologie per le datawarehouses.
Le principali abilità (ossia la capacità di applicare le conoscenze acquisite) sono:

progettazione fisica di un database,
sviluppo di applicazioni complesse che si interfacciano ad un database,
progettazione logica di una datawarehouse.

Prerequisiti

E’ necessario avere acquisito e assimilato le seguenti conoscenze fornite dal corsi "Basi di Dati" e "Fondamenti di Informatica":

modello relazionale dei dati,
linguaggio SQL di manipolazione e interrogazione dei dati,
linguaggi di programmazione procedurale (Java, C).

Contenuti del corso

Il corso prevede 48 ore di didattica frontale parte in aula e parte in laboratorio.

Introduzione ai principali DBMS (4 ore): SQL Server, Oracle, DB2.

SQL nei linguaggi di programmazione (16 ore): Persistent Stored Modules, JDBC, Object-relational mappings, ADO.NET, vincoli e trigger.

Tecnologie dei DBMS (12 ore): hardware, record nei blocchi, storage manager, indici, hashing, organizzazione fisica in SQL Server, sort esterno, elaborazione delle query, ottimizzazione delle query.

Progetto fisico (4 ore): progetto fisico in SQL Server, Oracle, DB2.

Gestione delle transazioni (6 ore).

Datawarehouse e OLAP (6 ore).

Metodi didattici

Il corso è diviso in 48 ore di lezione parte in aula e parte nel laboratorio di informatica.

Le lezioni riguardano gli argomenti del corso e includono esercitazioni guidate al calcolatore riguardo a SQL nei linguaggi di programmazione.

Modalità di verifica dell'apprendimento

L'obiettivo della prova d'esame consiste nel verificare il livello di raggiungimento degli obiettivi formativi precedentemente indicati.

L'esame consiste di una prova scritta, di una prova teorica e di un elaborato.

La prova scritta contiene quattro esercizi: uno sulla recovery, uno sullo scheduling delle transazioni, uno sugli indici e uno sul calcolo del costo di una query. La prova dura due ore. Vale fino a 16 punti. Non è consentito utilizzare PC personali o smart phone. E' consentito usare materiale didattico.

La prova teorica consiste di tre domande sugli argomenti teorici del corso. Vale fino a 9 punti. Non è consentito utilizzare né PC personali o smart phone né materiale didattico.

L'elaborato consiste nello sviluppare in un linguaggio di programmazione a scelta dello studente una applicazione che si interfacci ad un database. Il database deve contenere almeno 5 tabelle. Il DBMS usato deve essere SQL Server, Oracle o DB2. Vale fino a 7 punti.

Il voto finale è data dalla somma dei voti nelle tre parti. Per superare l'esame il voto della prova scritta deve essere almeno 9 e la somma dei voti dell'elaborato e della prova teorica deve essere almeno 9.

Si possono sostenere le tre prove in appelli diversi.

Testi di riferimento

Dispense del docente.

Fabrizio Riguzzi, Arianna Fabbri, and Elena Zuffi. Sistemi informativi. Collana Progetto Leonardo. Esculapio, Bologna, Italia, novembre 2011, isbn 978-88-7488-472-8.