Anno Accademico 2017/2018
- 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 e ad 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.
- Architettura funzionaIe di un RDBMS. 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.
- 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 (esempi in . Net C# e 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, 2014.
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. Sono disponibili i testi di alcuni compiti di esame; 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. Sono inoltre disponibili alcuni strumenti di ausilio alla progettazione di DB, le esercitazioni in laboratorio sono svolte facendo ricorso al tool DB-MAIN. 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