Corso di Laurea in Informatica Basi di Datirullo/teaching/basi_di... · Basi di Dati Corso di...

27
UNIVERSITA' DELLA CALABRIA Basi di Dati Corso di Laurea in Informatica a.a. 2010-2011 Laboratorio 31B 31B Laboratorio 31B 31B Esercitatori : Ing. G. Laboccetta – Dott.ssa V. Policicchio

Transcript of Corso di Laurea in Informatica Basi di Datirullo/teaching/basi_di... · Basi di Dati Corso di...

Page 1: Corso di Laurea in Informatica Basi di Datirullo/teaching/basi_di... · Basi di Dati Corso di Laurea in Informatica a.a. 2010-2011 ... per lo svolgimento di un progetto didattico

UNIVERSITA' DELLA CALABRIA

Basi di Dati

Corso di Laurea in Informatica

a.a. 2010-2011

Laboratorio 31B31BLaboratorio 31B31BEsercitatori : Ing. G. Laboccetta –

Dott.ssa V. Policicchio

Page 2: Corso di Laurea in Informatica Basi di Datirullo/teaching/basi_di... · Basi di Dati Corso di Laurea in Informatica a.a. 2010-2011 ... per lo svolgimento di un progetto didattico

UNIVERSITA' DELLA CALABRIA

Sommario

�Presentazione delle lezioni di laboratorio:

� finalità del corso

� modalità esame

� istruzioni per lo sviluppo e la consegna del progetto

didatticodidattico

� Divisione in gruppi di progetto

� Primi passi nella progettazione di una base di dati

Page 3: Corso di Laurea in Informatica Basi di Datirullo/teaching/basi_di... · Basi di Dati Corso di Laurea in Informatica a.a. 2010-2011 ... per lo svolgimento di un progetto didattico

UNIVERSITA' DELLA CALABRIA

Aspetti organizzativi del corso

�Docente del corso:Prof. P. Rullo (www.mat.unical.it/~rullo)

�Esercitatori:�Esercitatori:• Ing. G. Laboccetta • Dott.ssa V. Policicchio ([email protected])

Page 4: Corso di Laurea in Informatica Basi di Datirullo/teaching/basi_di... · Basi di Dati Corso di Laurea in Informatica a.a. 2010-2011 ... per lo svolgimento di un progetto didattico

UNIVERSITA' DELLA CALABRIA

Propedeuticità

Per sostenere l'esame di: E' necessario aver superato l’esame di:

Basi di Dati Fondamenti di Informatica

Sistemi Informativi per il Web

Basi di Dati

…ma le nozioni del corso di Basi di Dati sono utili anche per altri corsi:

� Intelligenza Artificiale (III anno)� DataWarehouse e Data Mining (I anno Spec.)�…

Web

Page 5: Corso di Laurea in Informatica Basi di Datirullo/teaching/basi_di... · Basi di Dati Corso di Laurea in Informatica a.a. 2010-2011 ... per lo svolgimento di un progetto didattico

UNIVERSITA' DELLA CALABRIA

�Lezioni teoriche (prof. Rullo)�martedì 11:30 - 13:30�giovedì 11:30 - 13:30 Aula MT5

�Lezioni di Laboratorio

Aspetti organizzativi del corso

�Lezioni di Laboratorio�venerdì 10:30 - 13:30laboratorio didattico del Dipartimento di Matematica (cubo 31B)

Page 6: Corso di Laurea in Informatica Basi di Datirullo/teaching/basi_di... · Basi di Dati Corso di Laurea in Informatica a.a. 2010-2011 ... per lo svolgimento di un progetto didattico

UNIVERSITA' DELLA CALABRIA

�Prof. P. Rullo (cubo 30B, 2°piano, Dip. di Matematica)

su appuntamento.

�Ing. G. Laboccetta su appuntamento.

Ricevimento

Ing. G. Laboccetta su appuntamento.

�Dott.ssa V. Policicchio – mercoledì (11:00-13:00)

�Tutor: durante le attività di tutoring presso il

laboratorio didattico del cubo 31B.

Page 7: Corso di Laurea in Informatica Basi di Datirullo/teaching/basi_di... · Basi di Dati Corso di Laurea in Informatica a.a. 2010-2011 ... per lo svolgimento di un progetto didattico

UNIVERSITA' DELLA CALABRIA

�Il corso prevede 2 CF dedicati alle attività di laboratorio

per lo svolgimento di un progetto didattico che

permetterà di familiarizzare con gli argomenti presentati

durante le lezioni teoriche

Obiettivi delle lezioni di Laboratorio

�Oggetto delle lezioni di laboratorio saranno la

progettazioneprogettazione e la realizzazionerealizzazione di un sistema informatico

basato su un DBMS relazionale open-source MySQL5.0.2

�E' obbligatorio consegnare il progetto didattico per poter

sostenere l'esame.

Page 8: Corso di Laurea in Informatica Basi di Datirullo/teaching/basi_di... · Basi di Dati Corso di Laurea in Informatica a.a. 2010-2011 ... per lo svolgimento di un progetto didattico

UNIVERSITA' DELLA CALABRIA

Lezioni di Laboratorio

�Durante le lezioni saranno realizzate tutte le fasi di

sviluppo del sistema informatico.

� Ogni fase è composta da diversi step, ciascuno dei quali porta alla produzione di più documenti.

� L'insieme di tali documenti costituisce la documentazione � L'insieme di tali documenti costituisce la documentazione del sistema informatico che gli studenti devono produrre durante le lezioni.

� Il sistema informatico deve essere costituito da una

base di dati realizzata su un DBMS relazionale (MySQL5.0.2) interrogabile mediante SQL.

Page 9: Corso di Laurea in Informatica Basi di Datirullo/teaching/basi_di... · Basi di Dati Corso di Laurea in Informatica a.a. 2010-2011 ... per lo svolgimento di un progetto didattico

UNIVERSITA' DELLA CALABRIA

�Il progetto didattico deve essere svolto prevalentemente

durante le lezioni di laboratorio in gruppi di due-tre

persone.

�Inviare una mail con oggetto “[Basi di Dati a.a. 10-11]

Gruppi di lavoro

�Inviare una mail con oggetto “[Basi di Dati a.a. 10-11]

Gruppi di Laboratorio" con la composizione del gruppo

(specificare <Matricola, Cognome, Nome> per ogni

componente) all’indirizzo policicchio_AT_mat.unical.it.

Page 10: Corso di Laurea in Informatica Basi di Datirullo/teaching/basi_di... · Basi di Dati Corso di Laurea in Informatica a.a. 2010-2011 ... per lo svolgimento di un progetto didattico

UNIVERSITA' DELLA CALABRIA

Modalità d’esamee di consegna del progetto

�L’esame consta di una prova scritta prova scritta e di una prova oraleprova orale.

�In seduta d’esame ogni studente è tenuto a

consegnare la documentazione completa del progetto consegnare la documentazione completa del progetto

didattico, che sarà oggetto di discussione durante la

prova orale.

�Il progetto didattico avrà validità fino al termine

dell’anno accademico in corso.

Page 11: Corso di Laurea in Informatica Basi di Datirullo/teaching/basi_di... · Basi di Dati Corso di Laurea in Informatica a.a. 2010-2011 ... per lo svolgimento di un progetto didattico

UNIVERSITA' DELLA CALABRIA

Progettazione della base di dati

Page 12: Corso di Laurea in Informatica Basi di Datirullo/teaching/basi_di... · Basi di Dati Corso di Laurea in Informatica a.a. 2010-2011 ... per lo svolgimento di un progetto didattico

UNIVERSITA' DELLA CALABRIA

Progettazione concettuale

Obiettivo: Rappresentare i dati della realtà d’interesse in termini di un modello (descrizione) formale, ad alto livello, indipendente dal DBMS

• Input:

– Descrizione della realtà d’interesse (per sapere qualiquali

datidati rappresentare)

• Output:• Output:

– Schema concettualeSchema concettuale (rappresentazione dei dati in un

modello di dati concettuale, eventualmente con vincoli

esterni)

• Qualità:

– correttezza e completezza della rappresentazione

Page 13: Corso di Laurea in Informatica Basi di Datirullo/teaching/basi_di... · Basi di Dati Corso di Laurea in Informatica a.a. 2010-2011 ... per lo svolgimento di un progetto didattico

UNIVERSITA' DELLA CALABRIA

Progettazione logica

Obiettivo: Rappresentare i dati della realtà d’interesse in termini dei costrutti

logici di una classe di DBMS (quelli basati su un determinato modello logico)

o Input:

- Schema concettuale (prodotto dalla progettazione concettuale)

- DBMS scelto (per sapere quale modello logico di dati adottare)

- Previsioni del carico applicativo (per l’ottimizzazione della base di dati)- Previsioni del carico applicativo (per l’ottimizzazione della base di dati)

o Output:

-- Schema logico Schema logico (rappresentazione dei dati in un modello di dati logico, eventualmente con vincoli complessi)

o Qualità:

- Correttezza e completezza della rappresentazione

- Efficienza della manipolazione dei dati

Page 14: Corso di Laurea in Informatica Basi di Datirullo/teaching/basi_di... · Basi di Dati Corso di Laurea in Informatica a.a. 2010-2011 ... per lo svolgimento di un progetto didattico

UNIVERSITA' DELLA CALABRIA

Progettazione Fisica

Obiettivo: Rappresentare i dati della realtà di interesse attraverso le strutture dati di uno specifico DBMS

o Input:

– Schema logico (prodotto della progettazione logica)

– DBMS scelto (per sapere quali strutture dati fisiche utilizzare)

– Previsioni del carico applicativo (per l’ottimizzazione della base di dati)dati)

o Output:

–– Schema fisico Schema fisico (Tipicamente nei DBMS attuali consiste in uno schema

logico + alcune scelte relative all’effettiva implementazione su DBMS di

detto schema)

o • Qualità:

– Efficienza rispetto al carico applicativo

Page 15: Corso di Laurea in Informatica Basi di Datirullo/teaching/basi_di... · Basi di Dati Corso di Laurea in Informatica a.a. 2010-2011 ... per lo svolgimento di un progetto didattico

UNIVERSITA' DELLA CALABRIA

Modelli di dati

I prodotti della varie fasi della progettazione sono schemi basati su specifici modelli di datimodelli di dati:

�Schema concettuale � modello concettuale

�Schema logico � modello logico�Schema logico � modello logico

�Schema fisico � modello logico + parametri fisici

Page 16: Corso di Laurea in Informatica Basi di Datirullo/teaching/basi_di... · Basi di Dati Corso di Laurea in Informatica a.a. 2010-2011 ... per lo svolgimento di un progetto didattico

UNIVERSITA' DELLA CALABRIA

Modelli dei dati adottati

– Schema concettuale:

• Modello Entità-Relazione (ER)

– Schema logico:

• Modello Relazionale • Modello Relazionale

• DDL: SQL-standard

– Schema fisico:

• Modello relazionale + strutture fisiche

• DDL: SQL supportato dal DBMS scelto (MySQL 5.0.2)

Page 17: Corso di Laurea in Informatica Basi di Datirullo/teaching/basi_di... · Basi di Dati Corso di Laurea in Informatica a.a. 2010-2011 ... per lo svolgimento di un progetto didattico

UNIVERSITA' DELLA CALABRIA

Fasi e Step del Progetto

1. Analisi dei Requisiti e Progettazione Concettuale:

I. Raccolta e Analisi dei RequisitiII. Progettazione dello schema Entità--Relazione (ER)III. Specifica delle funzioni per operare sui datiIV. Stima del carico applicativo del sistema IV. Stima del carico applicativo del sistema

informatico

2. Progettazione Logica della base di dati:

I. Ristrutturazione dello schema ER in uno schema ER semplificato orientato al modello relazionale

II. Traduzione dello schema ER ristrutturato in uno schema relazionale

Page 18: Corso di Laurea in Informatica Basi di Datirullo/teaching/basi_di... · Basi di Dati Corso di Laurea in Informatica a.a. 2010-2011 ... per lo svolgimento di un progetto didattico

UNIVERSITA' DELLA CALABRIA

Fasi e Step del Progetto

4. Progettazione Fisica ed implementazione della base di

dati:

I. Realizzazione della base di dati sul DBMS relazionale open-source MySQL 5.0.2. source MySQL 5.0.2.

II. Realizzazione dei controlli di congruenza della base di dati

III. Popolamento delle tabelle

IV. Realizzazione delle interrogazioni per operare sui dati

Page 19: Corso di Laurea in Informatica Basi di Datirullo/teaching/basi_di... · Basi di Dati Corso di Laurea in Informatica a.a. 2010-2011 ... per lo svolgimento di un progetto didattico

UNIVERSITA' DELLA CALABRIA

Analisi dei Requisiti e Progettazione Concettuale

�Comprende attività (interconnesse) di

1. Raccolta dei requisiti

2. Analisi dei requisiti

3. Costruzione dello schema concettuale

4. Costruzione del glossario

Page 20: Corso di Laurea in Informatica Basi di Datirullo/teaching/basi_di... · Basi di Dati Corso di Laurea in Informatica a.a. 2010-2011 ... per lo svolgimento di un progetto didattico

UNIVERSITA' DELLA CALABRIA

Raccolta e Analisi dei requisiti

�La raccolta dei requisiti consiste nella raccolta delle

specifiche della realtà di interesse espresse in linguaggio

naturale.

�Possibili fonti:�Possibili fonti:

� utenti, che forniscono interviste e documentazione

apposita

� documentazione esistente:• normative (leggi, regolamenti di settore)

• regolamenti interni, procedure aziendali

• realizzazioni preesistenti

Page 21: Corso di Laurea in Informatica Basi di Datirullo/teaching/basi_di... · Basi di Dati Corso di Laurea in Informatica a.a. 2010-2011 ... per lo svolgimento di un progetto didattico

UNIVERSITA' DELLA CALABRIA

Raccolta e Analisi dei requisiti

�L’analisi e la ristrutturazione dei requisiti è fondamentale

per (1) eliminare ambiguità, (2) filtrare inesattezze e (3)

individuare informazioni ridondanti

�L’analisi in genere inizia con i la raccolta dei primi requisiti �L’analisi in genere inizia con i la raccolta dei primi requisiti

e spesso procede per «raffinamenti successivi» delle

specifiche raccolte.

Page 22: Corso di Laurea in Informatica Basi di Datirullo/teaching/basi_di... · Basi di Dati Corso di Laurea in Informatica a.a. 2010-2011 ... per lo svolgimento di un progetto didattico

UNIVERSITA' DELLA CALABRIA

Raccolta e Analisi dei requisiti

�Spunti per l’interazione con il committente:

� Effettuare spesso verifiche di comprensione e coerenza

� Verificare anche per mezzo di esempi (generali e relativi

a casi limite)a casi limite)

� Richiedere definizioni e classificazioni

� Far evidenziare gli aspetti essenziali rispetto a quelli

marginali.

Page 23: Corso di Laurea in Informatica Basi di Datirullo/teaching/basi_di... · Basi di Dati Corso di Laurea in Informatica a.a. 2010-2011 ... per lo svolgimento di un progetto didattico

UNIVERSITA' DELLA CALABRIA

Requisiti: documentazione descrittiva

�Regole generali

� costruire un glossario dei termini

� individuare omonimi e sinonimi e unificare i termini

� rendere esplicito il riferimento fra termini

� riorganizzare le frasi per concetti

Page 24: Corso di Laurea in Informatica Basi di Datirullo/teaching/basi_di... · Basi di Dati Corso di Laurea in Informatica a.a. 2010-2011 ... per lo svolgimento di un progetto didattico

UNIVERSITA' DELLA CALABRIA

Requisiti: documentazione descrittiva (1/3)

�Documenti prodotti

� Descrizione sintetica della realtà di interesse

� Glossario dei termini

LINEA TERMINE NUOVO TERMINE MOTIVAZIONE CORREZIONE

5 Sinonimo

11 Omonimo

12 Termine troppo generico…

…. …. …… ……

Page 25: Corso di Laurea in Informatica Basi di Datirullo/teaching/basi_di... · Basi di Dati Corso di Laurea in Informatica a.a. 2010-2011 ... per lo svolgimento di un progetto didattico

UNIVERSITA' DELLA CALABRIA

Requisiti: documentazione descrittiva (2/3)

�Documenti prodotti

� Specifiche complete che descrivano in modo

approfondito e non ambiguo la realtà di interesse,

facendo distinzioni fra:

• i dati• i dati

• le operazioni sui dati1. Analisi Puntuali

2. Analisi Aggregate

SPECIFICHE RISTRUTTURATE 1 2 3 4

……………………….

Page 26: Corso di Laurea in Informatica Basi di Datirullo/teaching/basi_di... · Basi di Dati Corso di Laurea in Informatica a.a. 2010-2011 ... per lo svolgimento di un progetto didattico

UNIVERSITA' DELLA CALABRIA

Requisiti: documentazione descrittiva (3/3)

�Documenti prodotti

� Raffinamento delle specifiche e individuazione dei concetti di base

FRASI DI CARATTERE GENERALE ………………………. ……………………….

FRASI RELATIVE A… ……………………………..

Page 27: Corso di Laurea in Informatica Basi di Datirullo/teaching/basi_di... · Basi di Dati Corso di Laurea in Informatica a.a. 2010-2011 ... per lo svolgimento di un progetto didattico

UNIVERSITA' DELLA CALABRIA

Progetto didattico

Il progetto didattico consiste nella realizzazione di un

SSistema istema IInformativo nformativo

per la gestione di un Circuito Internazionale di per la gestione di un Circuito Internazionale di per la gestione di un Circuito Internazionale di per la gestione di un Circuito Internazionale di Rivenditori di CD MusicaliRivenditori di CD Musicali.