BASI DI DATI E SISTEMI INFORMATIVI

ING-INF/05 - 9 CFU - 2° semestre

Docenti titolari dell'insegnamento

DANIELA GIORDANO
CONCETTO SPAMPINATO


Obiettivi formativi

Il corso tratta prima gli aspetti fondamentali dei sistemi di gestione e di progettazione delle moderne basi di dati nell'ambito dello sviluppo e dell'esercizio di sistemi informatici. In particolare esso fa riferimento alle basi di dati relazionali ed alle tecniche implementative fondate sul linguaggio SQL. Vengono inoltre introdotte le basi di dati NO-SQL, evidenziando le diverse tecniche di modellazione dei dati. Quindi il corso fornisce i primi strumenti metodologici per la progettazione dei sistemi informativi basati su web (Web Information Systems) che collegano le basi di dati ai processi elaborativi di tipo interattivo. A questo fine, vengono trattate le tecniche di progettazione e di implementazione basate sul pattern architetturale Model-View-Controller (MVC) e si forniscono, in un contesto laboratoriale, gli strumenti per lo sviluppo di un sistema che comprenda la parte di back-end (programmazione lato server) e di front-end (programmazione lato client), quest'ultima con particolare riferimento ad applicazioni web "responsive" e progettate secondo criteri di ottimizzazione della user-experience.

Gli obiettivi del corso sono:

a) Conoscere le tecnologie e le problematiche di gestione delle basi di dati.

b) Sapere progettare, partendo dai requisiti, una base di dati relazionale (e non), dal punto di vista concettuale, logico e fisico.

c) Sapere utilizzare il linguaggio SQL per gestire i dati ed effettuare interrogazioni efficienti.

d) Conoscere le principali tecnologie per sviluppare applicazioni web lato client e lato server

e) Sapere progettare e sviluppare applicazioni di alto livello che si interfacciano con basi di dati, utilizzando il pattern architetturale MVC

f) Conoscere e sapere applicare criteri di progettazione di un front-end per ottimizzare la user-experience


Prerequisiti richiesti

Conoscenze di base di programmazione.



Frequenza lezioni

Fortemente consigliata.



Contenuti del corso

Modelli e Linguaggi per Basi di Dati

Progettazione di Basi di Dati

Fondamenti di web programming e sviluppo lato server

Progettazione di Web Information System (WIS) e Sviluppo di applicazioni web lato client



Testi di riferimento

1. Basi di dati - 4/ed, Modelli e linguaggi di interrogazione. Di: Paolo Atzeni, Stefano Ceri, Piero Fraternali, Stefano Paraboschi e Riccardo Torlone, Casa editrice: Mc-Graw-HIll

2. High Performance MySQL: Optimization, Backups, and Replication (2011). Di Baron Schwartz e altri, Casa editrice: O'Reilly

3. Programmazione Web lato server (2011). Di: Della Mea, Di Gaspero, Scagnetto, Casa editrice: APOGEO

4. Learning PHP, MySQL & JavaScript: With jQuery, CSS & HTML5 (2014). Di: Robin Nixon, Casa editrice: O'Reilly

5. Dispense fornite dai docenti del corso


Altro materiale didattico

Tutto il materiale didattico utilizzato a lezione e in laboratorio verrà pubblicato su Studium



Verifica dell'apprendimento


MODALITÀ DI VERIFICA DELL'APPRENDIMENTO

L'esame consiste: in una prova (individuale) da svolgere in laboratorio riguardante il linguaggio SQL e conoscenza degli argomenti di teoria, e nello sviluppo di un elaborato progettuale (da svolgere individualmente o in team di max due persone) riguardante lo sviluppo di un Web Information System. L'elaborato (codice e relazione) viene discusso in sede di esame orale e va consegnato tre giorni prima della data concordata per l'esame orale.


PROVE IN ITINERE

Durante il corso verrà organizzata una prova in itinere che se superata sostituirà la prova di teoria e di laboratorio di SQL. Durante le attività di laboratorio verrà richiesta la consegna obbligatoria di alcuni homeworks intermedi che saranno parte integrante del progetto finale.




Apri in formato Pdf English version