Corsi di Laurea Corsi di Laurea Magistrale Corsi di Laurea Magistrale
a Ciclo Unico
Scuola di Ingegneria
INGEGNERIA INFORMATICA
Insegnamento
DATABASE MANAGEMENT SYSTEMS
INP9087841, A.A. 2019/20

Informazioni valide per gli studenti immatricolati nell'A.A. 2019/20

Principali informazioni sull'insegnamento
Corso di studio Corso di laurea magistrale in
INGEGNERIA INFORMATICA
IN0521, ordinamento 2009/10, A.A. 2019/20
N0
porta questa
pagina con te
Crediti formativi 9.0
Tipo di valutazione Voto
Denominazione inglese DATABASE MANAGEMENT SYSTEMS
Dipartimento di riferimento Dipartimento di Ingegneria dell'Informazione (DEI)
Obbligo di frequenza No
Lingua di erogazione INGLESE
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 NICOLA FERRO ING-INF/05

Mutuazioni
Codice Insegnamento Responsabile Corso di studio
INP9086758 DATABASES NICOLA FERRO IN2371
INP9086758 DATABASES NICOLA FERRO IN2371
INP9086758 DATABASES NICOLA FERRO IN2371

Dettaglio crediti formativi
Tipologia Ambito Disciplinare Settore Scientifico-Disciplinare Crediti
CARATTERIZZANTE Ingegneria informatica ING-INF/05 9.0

Organizzazione dell'insegnamento
Periodo di erogazione Secondo semestre
Anno di corso I Anno
Modalità di erogazione frontale

Tipo ore Crediti Ore di
didattica
assistita
Ore Studio
Individuale
LEZIONE 9.0 72 153.0

Calendario
Inizio attività didattiche 02/03/2020
Fine attività didattiche 12/06/2020
Visualizza il calendario delle lezioni Lezioni 2019/20 Ord.2009

Syllabus
Prerequisiti: + Buona conoscenza della programmazione in Java
+ Conoscenza delle reti di calcolatori
Conoscenze e abilita' da acquisire: L'obbiettivo dell'insegnamento è imparare a progettare e realizzare un’applicazione distribuita per la gestione e la permanenza di dati strutturati nel tempo.

Il conseguimento di questo obbiettivo prevede:
- acquisizione di una solida competenza informatica di base riguardante il settore della gestione delle basi di dati, i modelli di dati, loro proprietà, i linguaggi formali per interrogare una base di dati, e opportune metodologie di analisi e progettazione;
- acquisizione della capacità di sviluppare un progetto reale di basi di dati utilizzando un sistema di gestione di basi di dati relazionale (RDBMS);
Modalita' di esame: + Prova scritta (individuale)
--- domande sugli argomenti svolti a lezione
--- esercizio di progettazione e interrogazione di una base di dati

+ Sviluppo di un progetto di gruppo per la realizzazione di una effettiva applicazione di basi di dati, svolto tramite homework durante l'insegnamento

+ Presentazione orale tramite slides e demo del progetto svolto
Criteri di valutazione: La valutazione dello studente si baserà sulla comprensione e conoscenza dei concetti e metodologie proposte, sulla capacità di affrontare le diverse fasi della progettazione di una base di dati, sulla comprensione dei modelli e linguaggi per interrogare una base di dati, sulla realizzazione in gruppo di un progetto di applicazione di basi di dati.
Contenuti: + Concetti sui sistemi di gestione di basi di dati

+ Raccolta, analisi e progettazione dei requisiti

+ Il modello entità-associazione
--- progettazione concettuale

+ Il modello relazionale (e basi di dati relazionali)
--- progettazione logica
--- dipendenze funzionali e normalizzazione
--- algebra relazionale
--- mappatura da concettuale a relazionale

+ Il linguaggio SQL
--- linguaggio di definizione dei dati
--- linguaggio di manipolazione dei dati
--- argomenti avanzati (indici, viste, stored procedures, foreign data wrappers)

+ Accesso alle basi di dati da programma
--- le interfacce JDBC per il linguaggio Java
Attivita' di apprendimento previste e metodologie di insegnamento: + Lezioni frontali in aula

+ Laboratorio:
--- utilizzo di un sistema di gestione di basi di dati open source (PostgreSQL);
--- accesso da programma ad una base di dati (JDBC);
--- utilizzo degli indici in PostgreSQL

+ Seminari, effettuali da colleghi in visita, su tematiche di ricerca e/o incontri con aziende sull'uso e prospettive per prodotti innovativi basati su basi di dati, ruolo dell'ingegnere in azienda, opportunità di stage, simulazione colloqui di lavoro.

+ Homework: sono previsti 4 homework (raccolta e analisi dei requisiti; progettazione concettuale; progettazione logica; progettazione fisica e implementazione) riguardanti lo sviluppo di un'applicazione "reale" di basi di dati da svolgere a gruppi. Le scadenze degli homework sono allineate con i contenuti del corso in modo tale che gli studenti possano immediatamente applicare i contenuti appresi ad un caso i studio di loro interesse

+ Presentazione orale con slide e demo del progetto realizzato tramite homework

+ Lezioni interattive ed esercizi in classe: gli studenti vengono suddivisi in gruppi (diversi da quelli dell'homework) e provano ad applicare i diversi concetti appresi (raccolta e analisi dei requisiti; progettazione concettuale; progettazione logica; progettazione fisica e implementazione) ad un caso di studio proposto dal docente. Ciascun gruppo poi presenta il proprio lavoro in classe e lo discute con il docente e gli altri studenti.
Eventuali indicazioni sui materiali di studio: Il materiale di studio consiste di:
+ testo di riferimento
+ lucidi del corso messi a disposizione degli studenti
+ letture consigliate e di approfondimento
+ esempi di homework svolti
+ materiale prodotto durante gli esercizi interattivi in classe dai gruppi di studenti

Tutto il materiale di studio è disponibile sulla piattaforma Moodle (elearning.dei.unipd.it).

Letture consigliate:
+ Batini, C., Ceri, S., and Navathe, S. B. (1992). Conceptual Database Design. An Entity-Relationship Approach. The Benjamin/Cummings Publishing Company, Inc., Redwood City (CA), USA.
+ Celko, J. (2011). Joe Celko's SQL for Smarties: Advanced SQL Programming. Morgan Kaufmann Publishers, San Francisco (CA), USA.
Testi di riferimento:
  • Ramez Elmasri, Shamkant B. Navathe, Fundamentals of Database Systems, 7th Edition. --: Pearson, 2016. Cerca nel catalogo

Didattica innovativa: Strategie di insegnamento e apprendimento previste
  • Lecturing
  • Laboratory
  • Case study
  • Working in group
  • Files e pagine caricati online (pagine web, Moodle, ...)

Didattica innovativa: Software o applicazioni utilizzati
  • Moodle (files, quiz, workshop, ...)

Obiettivi Agenda 2030 per lo sviluppo sostenibile
Istruzione di qualita' Industria, innovazione e infrastrutture