10906 - BASI DI DATI

Anno Accademico 2018/2019

  • Docente: Dario Maio
  • Crediti formativi: 12
  • SSD: ING-INF/05
  • Lingua di insegnamento: Italiano
  • Moduli: Dario Maio (Modulo 1) Annalisa Franco (Modulo 2)
  • Modalità didattica: Convenzionale - Lezioni in presenza (Modulo 1) Convenzionale - Lezioni in presenza (Modulo 2)
  • Campus: Cesena
  • Corso: Laurea in Ingegneria e scienze informatiche (cod. 8615)

Conoscenze e abilità da conseguire

Al termine del corso, lo studente possiede le nozioni fondamentali della tecnologia delle basi di dati relazionali e gli strumenti metodologici necessari per il suo impiego nella progettazione di un sistema informativo.

Contenuti

  • Modelli logici dei dati : Cenni sul modello gerarchico e sul modello reticolare. Il modello relazionale; algebra relazionale: operatori di base e derivati, realizzazione degli operatori. Forme normali.
  • Il linguaggio SQL : i principali costrutti
  • Richiami sulle caratteristiche costruttive, sui parametri e sull'affidabilità dei dispositivi di memoria di massa .
  • Organizzazioni dei dati e relativi metodi di gestione: organizzazioni sequenziale ead accesso diretto, algoritmi di fusione e ordinamento di archivi, ISAM, VSAM, Hash file, Indici B-tree, B*- tree e B+-tree, cenni su indici e strutture multi-dimensionali.
  • Descrizione ad alto livello dei principali componenti di un RDBMS: Query Optimizer, Transaction Manager, Scheduler, Recovery Manager, Cache Manager, Storage Manager, Access Methods Manager.
  • Descrizione sintetica delle principali architetture client-server. Cenni su DDBMS e sulle evoluzione delle architetture.
  • Cenni sulla realizzazione degli operatori relazionali. Presentazione e valutazione dei principali metodi di join. Un semplice modello per la valutazione dei costi di esecuzione di query.
  • Progettazione di DB relazionali: cenni sull'analisi dei requisiti; il modello concettuale Entity-Relationship (E/R); progettazione concettuale dei dati con schemi E/R; progettazione logica; tecniche di normalizzazione;cenni sulla progettazione fisica.
  • Sviluppo di applicazioni database : panoramica delle diverse modalità di accesso ai dati. Ambiente .NET C# e fondamenti del linguaggio LINQ, JDBC per l'accesso ai dati in Java.
  • Trend di evoluzione delle tecnologie delle basi di dati. Cenni sui sistemi NoSQL
  • Testi/Bibliografia

    dispense a cura del docente disponibili presso il sito http://bias.csr.unibo.it/maio/

    D. Maio, S. Rizzi, A. Franco. Esercizi di Progettazione di Basi di Dati. Esculapio, 2005.

    Testi per approfondimenti

    P. Atzeni, S. Ceri, P. Fraternali, S. Paraboschi, R. Torlone. Basi di Dati, McGraw-Hill Italia, 2018.

    P. Atzeni, S. Ceri, P. Fraternali, S. Paraboschi, R. Torlone. Basi di Dati: modelli e linguaggi di interrogazione, McGraw-Hill Italia, 2013.

    P. Atzeni, S. Ceri, P. Fraternali, S. Paraboschi, R. Torlone. Basi di Dati. Architetture e linee di evoluzione; McGraw-Hill Italia, 2007.

    P. Ciaccia, D. Maio. Lezioni di Basi di Dati. Esculapio, 2002.

    Metodi didattici

    Durante le lezioni sono illustrate e discusse in modo approfondito le diverse problematiche connesse con la progettazione e lo sviluppo di sistemi per la gestione di dati. Il corso è affiancato da esercitazioni guidate in aula e in laboratorio. Queste attività sono programmate in modo che all'interno di ogni esercitazione lo studente possa realizzare praticamente le soluzioni dei problemi delineati in forma teorica durante le lezioni.

    Modalità di verifica e valutazione dell'apprendimento

    L'esame è composto di tre parti:

    1)       un elaborato di progetto che consiste nella progettazione e realizzazione di un'applicazione database; l'ammissione alla prova scritta è subordinata alla consegna di un elaborato giudicato idoneo dal responsabile dell'insegnamento;

    2)       una prova scritta costituita da un insieme di esercizi e/o domande su vari argomenti trattati nel corso; durante lo svolgimento della prova scritta non è ammessa la consultazione di alcun tipo di materiale;

    3)       una prova orale facoltativa che può essere sostenuta solo nel caso di superamento della prova scritta e che consiste in domande di approfondimento sui vari argomenti del corso.

     

    N.B. Il periodo di conservazione agli atti dell’elaborato di progetto e della prova scritta è di 6 mesi a decorrere dalla verbalizzazione dell’esito dell’esame sostenuto.

    Strumenti a supporto della didattica

    Nel laboratorio sono disponibili diversi DBMS (SQL Server, Access, Oracle, ...); per le esercitazioni è utilizzato SQL Server. Si fa inoltre ricorso ad alcuni strumenti di ausilio alla progettazione di DB. Per lo sviluppo di applicazioni è previsto l'uso dell'ambiente Microsoft Visual Studio e del linguaggio C#.

    Link ad altre eventuali informazioni

    http://bias.csr.unibo.it/maio/

    Orario di ricevimento

    Consulta il sito web di Dario Maio

    Consulta il sito web di Annalisa Franco