(Microsoft PowerPoint - PresentazioneLaboratorio09

Corso di Laurea in Informatica
Basi di Dati Relazionali
A.A. 2009-2010
Laboratorio 31B
Esercitatori : Ing. G. Laboccetta
Dott.ssa V. Policicchio
UNIVERSITA' DELLA CALABRIA
ASPETTI ORGANIZZATIVI DEL CORSO
Docente del corso:
Prof. P. Rullo (www.mat.unical.it/~rullo)
Esercitatori:
Ing. G. Laboccetta
Dott.ssa V. Policicchio ([email protected])
Corso di Basi di Dati Relazionali – Laboratorio
UNIVERSITA' DELLA CALABRIA
OBIETTIVI DELLE LEZIONI DI
LABORATORIO
Le lezioni di laboratorio del corso di Basi di Dati Relazionali prevedono la
progettazione e la realizzazione di un sistema informatico basato su un
DBMS relazionale open-source MySQL 5.0
Le lezioni seguiranno 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 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 (MySQL 5.0) interrogabile mediante SQL.
Corso di Basi di Dati Relazionali – Laboratorio
UNIVERSITA' DELLA CALABRIA
PROGETTO DIDATTICO
COMPOSIZIONE GRUPPI
•
Il progetto didattico deve essere svolto prevalentemente durante
le lezioni di laboratorio in gruppi di tre-quattro persone.
•
La composizione del proprio gruppo deve essere comunicata via email alla Dott.ssa Policicchio ([email protected])
−
Oggetto: “Basi di Dati Relazionali a.a. 09-10: Gruppi di Laboratorio”;
−
Testo: <Matricola, Cognome, Nome> per ogni componente.
Corso di Basi di Dati Relazionali – Laboratorio
UNIVERSITA' DELLA CALABRIA
LEZIONI DI
LABORATORIO
Si suddivise in due parti:
o
o
Esercitazioni guidate su:
Progettazione concettuale di una base di dati a partire da un
documento di analisi dei requisiti
Progettazione logica di una base di dati a partire da uno schema
concettuale
Sviluppo del progetto didattico:
Assegnazione del progetto a ogni gruppo di lavoro
Revisione e sviluppo del progetto didattico
Corso di Basi di Dati Relazionali – Laboratorio
UNIVERSITA' DELLA CALABRIA
PROGETTAZIONE DELLA BASE DI DATI
Corso di Basi di Dati Relazionali – Laboratorio
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 quali
dati rappresentare)
• Output:
– Schema concettuale (rappresentazione dei dati in un
modello di dati concettuale, eventualmente con vincoli
esterni)
• Qualità:
– correttezza e completezza della rappresentazione
Corso di Basi di Dati Relazionali – Laboratorio
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)
• Input:
1.
2.
3.
Schema concettuale (prodotto dalla progettazione concettuale)
DBMS scelto (per sapere quale modello logico di dati adottare)
Previsioni del carico applicativo (per ottimizzare la base di dati rispetto ad
esso)
• Output:
1.
Schema logico (rappresentazione dei dati in un modello di dati logico,
eventualmente con vincoli complessi)
• Qualità:
-Correttezza e completezza della rappresentazione
-Efficienza della manipolazione dei dati
Corso di Basi di Dati Relazionali – Laboratorio
UNIVERSITA' DELLA CALABRIA
PROGETTAZIONE FISICA
Obiettivo: Rappresentare i dati della realtà di interesse attraverso le
strutture dati di uno specifico DBMS
• Input:
– Schema logico (prodotto della progettazione logica)
– DBMS scelto (per sapere quali strutture dati fisiche utilizzare)
– Previsioni del carico applicativo (per ottimizzare la base di dati rispetto ad esso)
• Output:
Schema fisico (Tipicamente nei DBMS attuali consiste in uno schema logico +
alcune scelte relative all’effettiva implementazione su DBMS di detto schema)
• Qualità:
– Efficienza rispetto al carico applicativo
Corso di Basi di Dati Relazionali – Laboratorio
UNIVERSITA' DELLA CALABRIA
MODELLI DI DATI
I prodotti della varie fasi della progettazione sono schemi basati su specifici
modelli di dati:
dati
Schema concettuale modello concettuale
Schema logico modello logico
Schema fisico modello logico + parametri fisici
Corso di Basi di Dati Relazionali – Laboratorio
UNIVERSITA' DELLA CALABRIA
MODELLI DEI DATI ADOTTATI
– Schema concettuale:
• Modello Entità-Relazione (ER)
– Schema logico:
• Modello Relazionale
• DDL: SQL-standard
– Schema fisico:
• Modello relazionale + strutture fisiche
• DDL: SQL supportato dal DBMS scelto (MySQL 5.0.2)
Corso di Basi di Dati Relazionali – Laboratorio
UNIVERSITA' DELLA CALABRIA
FASI E STEP DEL PROGETTO
1.
Analisi e Ristrutturazione dei Requisiti
E’ una delle prime fasi nella progettazione di un sistema
informativo.
Ha come scopo generale quello di stabilire che cosa il
sistema in questione deve fare.
Più precisamente, l’obiettivo è raffinare le specifiche in
modo tale che siano precise e prive di ambiguità
Corso di Basi di Dati Relazionali – Laboratorio
UNIVERSITA' DELLA CALABRIA
FASI E STEP DEL PROGETTO
2. Fasi della Progettazione Concettuale
2.1 Progettazione dello schema Entità-Relazione (ER)
2.2 Specifica delle funzioni per operare sui dati
2.3 Stima del carico applicativo del sistema informatico
Corso di Basi di Dati Relazionali – Laboratorio
UNIVERSITA' DELLA CALABRIA
PROGETTAZIONE LOGICA
3. Progettazione Logica della base di dati
3.1. Ristrutturazione dello schema ER in uno schema ER semplificato
orientato al modello relazionale
3.2. Traduzione dello schema ER ristrutturato in uno
schema relazionale
Corso di Basi di Dati Relazionali – Laboratorio
UNIVERSITA' DELLA CALABRIA
FASI E STEP DEL PROGETTO
4. Progettazione Fisica ed implementazione della base di dati
4.1 Realizzazione della base di dati sul DBMS relazionale open-source
MySQL 5.0.
4.2 Popolamento delle tabelle
4.3 Realizzazione delle interrogazioni per operare sui dati
Corso di Basi di Dati Relazionali – Laboratorio
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
L’analisi e la ristrutturazione dei requisiti è fondamentale per
eliminare ambiguità e per filtrare inesattezze o informazioni
ridondanti
Documenti prodotti:
Descrizione sintetica della realtà di interesse
Glossario dei termini
Specifiche complete che descrivano in modo approfondito e non
ambiguo la realtà di interesse, facendo distinzioni fra:
i dati
le operazioni sui dati
Corso di Basi di Dati Relazionali – Laboratorio
UNIVERSITA' DELLA CALABRIA
PROGETTAZIONE SCHEMA CONCETTUALE
La progettazione concettuale della base di dati ha come scopo la
produzione di uno schema entità relazione (ER) che modelli la
realtà di interesse.
Questo tipicamente avviene attraverso la produzione di diversi
schemi ER corrispondenti ai vari livelli di raffinamento.
Documenti prodotti:
Discussione di scelte critiche nella produzione dello schema ER finale
Schema ER finale
Vincoli dello schema non esprimibili dal modello ER, espressi in linguaggio
naturale in modo preciso e puntuale
Dizionario dei dati (descrizione schematica di entità e delle relazioni dello
schema ER)
Corso di Basi di Dati Relazionali – Laboratorio
UNIVERSITA' DELLA CALABRIA
STIMA DEL CARICO APPLICATIVO
Dalle analisi dei requisiti si estrae una stima del carico
applicativo della base di dati.
Documenti prodotti:
Stima della popolazione delle entità e delle relazioni
Stima frequenza delle operazioni
Corso di Basi di Dati Relazionali – Laboratorio
UNIVERSITA' DELLA CALABRIA
SPECIFICA DELLE FUNZIONI
Accanto alle specifiche sui dati vanno raccolte le specifiche sulle
operazioni di manipolazione degli stessi
Tali operazioni possono essere di:
Lettura
Scrittura:
Aggiornamento
Inserimento
Cancellazione
Corso di Basi di Dati Relazionali – Laboratorio
UNIVERSITA' DELLA CALABRIA
LO SCHEMA ER FINALE
Lo schema ER finale deve essere prodotto in forma completa, cioè
indicando:
- gli attributi di ogni entità e di ogni relationship
- gli identificatori di ogni entità
- le cardinalità di ogni relationship
- i ruoli per le relationship (se necessari)
Corso di Basi di Dati Relazionali – Laboratorio
UNIVERSITA' DELLA CALABRIA
DIZIONARIO DEI DATI
o
o
Redatto in forma schematica
Deve contenere per ogni entità:
descrizione del suo significato
o descrizione e dominio di ogni attributo (quando necessario); se
l'attributo è derivato, la relativa regola di computazione
o identificatori dell'entità (con specifico riferimento alle relationship e
alle entità coinvolte in eventuali identificazioni esterne)
o
o
per ogni relationship:
descrizione del suo significato
o descrizione e dominio di ogni attributo
o ruolo della partecipazione di ogni entità coinvolta nelle relationship
mettendo in evidenza il significato del ruolo (motivando, se
necessario, la scelta delle cardinalità).
o
Corso di Basi di Dati Relazionali – Laboratorio