logo-polimi
Loading...
Risorse bibliografiche
Risorsa bibliografica obbligatoria
Risorsa bibliografica facoltativa
Scheda Riassuntiva
Anno Accademico 2019/2020
Scuola Scuola di Ingegneria Industriale e dell'Informazione
Insegnamento 085887 - BASI DI DATI 1
Docente Campi Alessandro
Cfu 5.00 Tipo insegnamento Monodisciplinare

Corso di Studi Codice Piano di Studio preventivamente approvato Da (compreso) A (escluso) Insegnamento
Ing Ind - Inf (1 liv.)(ord. 270) - CR (368) INGEGNERIA GESTIONALE*AZZZZ085887 - BASI DI DATI 1
Ing Ind - Inf (1 liv.)(ord. 270) - MI (358) INGEGNERIA INFORMATICAI1CAZZZZ085887 - BASI DI DATI 1
ICRAZZZZ085887 - BASI DI DATI 1
Ing Ind - Inf (Mag.)(ord. 270) - MI (263) MUSIC AND ACOUSTIC ENGINEERINGMCRAZZZZ085887 - BASI DI DATI 1

Obiettivi dell'insegnamento

Obiettivo della prima parte del corso è introdurre gli aspetti teorici delle basi di dati ed i linguaggi per la gestione e l’interrogazione dei dati in esse contenuti. La seconda parte del corso verte invece sui modelli concettuali, sulle metodologie e sulle tecniche per la progettazione di una base di dati a partire dai suoi requisiti. Superato il corso, lo studente sarà in grado di progettare e realizzare basi di dati di media complessità, e sviluppare applicazione che le utilizzino.


Risultati di apprendimento attesi

 

Descrittori di Dublino

Expected learning outcomes

Conoscenza e comprensione

   

  • Conoscere gli elementi basilari di un sistema per la gestione dei dati
  • Comprendere gli elementi sintattici e la semantica di un linguaggio di interrogazione
  • Conoscere i principali costrutti usati nel linguaggio SQL per definire e interrogare una base di sti relazionale
  • Comprendere i meccanismi di astrazione tipici della progettazione concettuale e logica dei dati

Capacità di applicare conoscenza e comprensione

  • Confrontare metodi formali di natura diversa e confrontare il loro potere espressivo
  • Comporre interrogazioni complesse a partire da interrogazioni semplici
  • Progettare gli schemi dei dati allo scopo di rappresentare efficacemente uno specifico problema

Autonomia di giudizio

  • Valutare la correttezza di una interrogazione relativamente ai fabbisogni informativi di un utente
  • Valutare le qualità di uno schema di dati
  • Confrontare i benefici e gli svantaggi di diversi progetti concettuali e logici

Capacità di apprendimento

  • Essere in grado di comprendere e apprendere nuovi paradigmi di accesso alle basi di dati
  • Essere in grado di confrontare e coniugare le conoscenze e competenze apprese nel contesto della progettazione dei dati con quelle dell’ingegneria del software

 


Argomenti trattati

Distribuzione indicativa dell’attività didattica

Ore di lezione: 30, ore di esercitazione: 20.

 

Programma delle lezioni e delle esercitazioni

 

1.    INTRODUZIONE AL CORSO

1.1    Il sistema informativo nell'azienda

1.2    Caratteristiche dei DBMS e concetto di transazione

1.3    Utenti, strumenti e moduli di un DBMS

 

2.    TEORIA RELAZIONALE

2.1    Il modello relazionale dei dati, sua definizione (informale e formale) e concetti fondamentali

2.2    Algebra relazionale: operazioni unarie e binarie

2.3    Interrogazioni in algebra relazionale e loro ottimizzazione

2.4    Calcolo relazionale: definizione, equivalenza fra algebra relazionale e calcolo relazionale

2.5    Datalog: definizione, interrogazioni ricorsive, specifica di vincoli di integrità,

2.6    Relazioni tra i poteri espressivi dei linguaggi formali presentati

 

3.    LINGUAGGI PER BASI DI DATI

3.1  Introduzione a SQL: standardizzazione di SQL, domini SQL, vincoli e semplice definizione di tabelle

3.2  SQL come DDL: integrità referenziale, definizione di schemi e loro modifica, cataloghi relazionali

3.3  Interrogazioni SQL semplici, interrogazioni con ordinamenti e raggruppamenti, Interrogazioni SQL complesse

3.4  Comandi di modifica e viste in SQL

3.5 Aspetti evoluti del DDL: indici e vincoli di integrità generici, controllo dell'accesso, viste e controllo dell'accesso, transazioni (cenni)

3.6  SQL per la programmazione: funzioni SQL, SQL Embedded, ODBC/ADO e JDBC, procedure

 

4.    PROGETTAZIONE DI BASI DI DATI

4.1    Fasi della progettazione

4.2    Le astrazioni nella progettazione dei dati

4.3  Il modello Entità-Relazioni: definizione, associazioni, identificatori e gerarchie, proprietà delle gerarchie

4.4    Il ciclo di progettazione: fasi di progettazione, strategie, qualità di un progetto concettuale

4.5  Progettazione logica: fasi del progetto logico, eliminazione delle gerarchie, gestione degli identificatori, gestione degli attributi, gestione delle associazioni, normalizzazione (cenni)

4.6    Progettazione fisica (cenni)

 

5. INTRODUZIONE ALLE BASI DI DATI NOSQL

5.1 Introduzione alle tecnologie NOSQL

5.2 Cenni ai linguaggi per basi dati NOSQL


Prerequisiti

Un prerequisito consigliato consiste nell’aver superato gli esami di informatica del primo anno.


Modalità di valutazione

L’esame di basi di dati consiste in un’unica prova scritta composta da esercizi in cui verrà chiesto di scrivere query nel linguaggi formali e in SQL e vincoli o comandi di update in SQL e in un esercizio di progettazione concettuale e logica. Lo studente può essere eventualmente convocato per un colloquio orale, a discrezione del docente.

Non sono previste prove in itinere.

 


Bibliografia
Risorsa bibliografica obbligatoriaPaolo Atzeni, Stefano Ceri, Stefano Paraboschi, Riccardo Torlone, Basi di dati: Modelli e Linguaggi di Interrogazione 3/ed, Editore: McGraw-Hill Libri Italia, Anno edizione: 2009, ISBN: 9788838666001 http://www.ateneonline.it/atzeni3e/homeA.asp
Note:

English edition: Database systems, McGraww-Hill

Risorsa bibliografica obbligatoriaDaniele Braga, Marco Brambilla, Alessandro Campi, Eserciziario di Basi di dati, Editore: Esculapio, Bologna, Anno edizione: 2009, ISBN: 978-88-7488-228-1 http://www.editrice-esculapio.it/shop/product/129/Braga-Brambilla-Campi-Eserciziario-di-basi-di-dati.asp
Risorsa bibliografica facoltativaRamez Elmasri, Shamkant Navathe, Fundamentals of Database Systems, 6/E, Editore: Pearson, Anno edizione: 2010, ISBN: 0136086209
Risorsa bibliografica facoltativaCarlo Batini, Stefano Ceri, Shamkant N. Navathe, Conceptual Database Design: An Entity-Relationship Approach, Editore: Addison Wesley, Anno edizione: 1991, ISBN: 0805302441

Software utilizzato
Nessun software richiesto

Forme didattiche
Tipo Forma Didattica Ore di attività svolte in aula
(hh:mm)
Ore di studio autonome
(hh:mm)
Lezione
30:00
45:00
Esercitazione
20:00
30:00
Laboratorio Informatico
0:00
0:00
Laboratorio Sperimentale
0:00
0:00
Laboratorio Di Progetto
0:00
0:00
Totale 50:00 75:00

Informazioni in lingua inglese a supporto dell'internazionalizzazione
Insegnamento erogato in lingua Italiano
Disponibilità di materiale didattico/slides in lingua inglese
Disponibilità di libri di testo/bibliografia in lingua inglese
Possibilità di sostenere l'esame in lingua inglese
Disponibilità di supporto didattico in lingua inglese
schedaincarico v. 1.6.9 / 1.6.9
Area Servizi ICT
04/12/2021