Corso di Laurea in Informatica Basi di Dati a.a

Documenti analoghi
Corso di Laurea in Informatica Basi di Dati a.a

LA PROGETTAZIONE LOGICA. Prima parte

Atzeni, Ceri, Paraboschi, Torlone Basi di dati McGraw -Hill, Progettazione logica. Dati di ingresso e uscita

La progettazione logica

Atzeni, Ceri, Paraboschi, Torlone Basi di dati

Atzeni, Ceri, Paraboschi, Torlone Basi di dati McGraw-Hill, Progettazione logica. Dati di ingresso e uscita

Progettazione logica. Requisiti della base di dati. Schema concettuale. Schema logico. Schema fisico. Obiettivo della progettazione logica

LA PROGETTAZIONE CONCETTUALE

La Progettazione Logica

E. Giunchiglia Basi di dati 1 (trasparenze basate su Atzeni,, Ceri, Paraboschi, Torlone: : Basi di dati, Capitolo 8) Progettazione logica

Atzeni, Ceri, Paraboschi, Torlone Basi di dati McGraw-Hill, Obiettivo della progettazione logica. Dati di ingresso e uscita

Requisiti della base di dati. Schema concettuale

LA PROGETTAZIONE CONCETTUALE. Prima parte

Basi di dati. Progettazione logica

Progettazione concettuale. Facoltà di Scienze Matematiche, Fisiche e Naturali. Progettazione concettuale. Acquisizione e analisi dei requisiti

Informatica Industriale

Cardinalità degli attributi

REGIONE BASILICATA UFFICIO S. I. R. S.

Atzeni, Ceri, Paraboschi, Torlone Basi di dati McGraw-Hill, Progettazione concettuale

Atzeni, Ceri, Paraboschi, Torlone Basi di dati McGraw -Hill, Progettazione concettuale

Esercitazione 3. Vincoli di integrità. Approccio Procedurale

Progettazione logica relazionale. Basi di dati. Elena Baralis 2007 Politecnico di Torino D B M G D B M G3 D B M G6 D B M G5

Progettazione logica relazionale (1/2) Progettazione logica. Progettazione logica relazionale (2/2) Introduzione. Progettazione logica

I prodotti della varie fasi sono schemi di alcuni modelli di dati:

Progettazione logica D O C E N T E P R O F. A L B E R T O B E L U S S I. Anno accademico 2012/2013

Basi di Dati. Corso di Laurea in Informatica Corso B A.A. 2015/16. Dr. Claudia d'amato. Dipartimento di Informatica, Università degli Studi Bari

Corso di Basi di Dati

INTRODUZIONE ALLA PROGETTAZIONE. Patrizio Dazzi a.a

Laboratorio di Basi di Dati

Progettazione di basi di dati D B M G

Metodologie e modelli di progetto

Progettazione logica relazionale (1/2)

Progettazione logica

Unità 3. Modello Relazionale

Informatica e Tecnologie per la Produzione del Software Crediti formativi 9

Metodologie e Modelli di Progetto

Università degli Studi di Enna Kore Facoltà di Ingegneria ed Architettura

Progettazione Concettuale. Prof. Francesco Accarino IIS Altiero Spinelli Sesto San Giovanni

DOCENTE PROF. ALBERTO BELUSSI. Anno accademico 2010/11

Traduzione dal modello E/R al modello relazionale

Atzeni, Ceri, Paraboschi, Torlone Basi di dati. Progettazione logica. Attenzione

Prefazione. Parte Prima Basi di dati relazionali: modello e linguaggi 15

La progettazione logica Traduzione dal modello Entità-Associazione al modello relazionale Anno accademico 2008/2009

Sistemi informativi D B M G

Cerca di unire i vantaggi delle strategie top-down e bottomup.

Progettazione concettuale

Progettazione logica: criteri di ottimizzazione

Il modello Entità-Relazioni (entity-relationship)

Modello Entità - Relazione. Basi di dati. Elena Baralis 2007 Politecnico di Torino D B M G D B M G2 D B M G4 D B M G6. Progettazione di basi di dati

2 - Metodologie e modelli per la progettazione di BD. Informatica II Basi di Dati (08/09) Parte 1. Introduzione alla progettazione

Ristrutturazione di schemi E-R. Ridondanze. Analisi delle ridondanze. Vantaggi semplificazione delle interrogazioni

Le basi di dati. Lez. 2: Progettazione di un DB. Laboratorio di informatica gestionale

Atzeni, Ceri, Paraboschi, Torlone Basi di dati McGraw-Hill, Progettazione concettuale

Progettazione di basi di dati

D B M G D B M G 2. Sistemi informativi. Progettazione di basi di dati

Modello Entità-Relazione (E-R)

REGISTRO DELLE LEZIONI

Progettazione Logica. ISProgLog 1

adattato da Atzeni et al., Basi di dati, McGrawHill

Basi di dati Modelli e linguaggi di interrogazione

Informatica Industriale Modello funzionale: Informazione Modello Entità-Relazione

Le basi di dati. Definizione 1. Lezione 2. Bisogna garantire. Definizione 2 DBMS. Differenza

Corso di Basi di Dati

Generalizzazione. Docente : Alfredo Cuzzocrea Tel. : Informatica

D B M G D B M G 2. Basi di dati. Progettazione di basi di dati. Elena Baralis 2007 Politecnico di Torino 1. Modello Entità-Relazione

Progettazione di basi di dati

Ciclo di vita di un sistema informativo

Parte V Progettazione concettuale

Corso di Basi di Dati

Ma: progettazione dei dati. progettazione delle applicazioni. Progettazione di basi di dati

UNIVERSITÀ DEGLI STUDI DI VERONA LAUREA IN SCIENZE DELLA COMUNICAZIONE

Università degli Studi di Enna Kore Facoltà di Ingegneria ed Architettura

IL MODELLO ENTITA - RELAZIONE

Strategie top-down. Primitive di trasformazione top-down. Primitive di trasformazione top-down

Unità A2. Progettazione concettuale. Obiettivi. Astrazione. Astrazione per aggregazione

Progettazione e pianificazione

PROGRAMMAZIONE ANNO SCOLASTICO 2018/2019

Progettazione concettuale usando il modello Entità-Relazione (ER)

Università degli Studi di Enna Kore Facoltà di Ingegneria ed Architettura

analisi dei requisiti

LA PROGETTAZIONE DELLA BASE DI DATI. la progettazione della base di dati 1

MODULO Il sistema azienda. Sistema Informativo e Informatico Requisiti dei dati

Laboratorio di Basi di Dati

Progettazione logica: criteri di ottimizzazione

Progettazione di basi di dati. Progettazione di basi di dati

D. Gubiani Progettazione 3

Progettazione di Basi di Dati

REGISTRO DELLE LEZIONI

Entità. Relazioni. Cardinalità delle relazioni. Ogni entità ha un nome che la identifica

Progettazione di basi di dati

Gestione delle informazioni. Tot. h 10. Base di Dati. Tot. h 56. Grafica in C# - Laboratorio- Tot. h 40. Dipartimento Informatica Materia Informatica

Progettazione di basi di dati. Progettazione di basi di dati: Progettazione Concettuale e Progettazione Logica. Fasi (tecniche) del ciclo di vita

Progettazione di basi di dati. Progettazione di basi di dati: Progettazione Concettuale e Progettazione Logica. Fasi (tecniche) del ciclo di vita

Analisi dei requisiti

Syllabus A042 Insegnamenti disciplinari

Principi di Progettazione del Software a.a

Transcript:

Corso di Laurea in Informatica Basi di Dati a.a. 2012-2013 Laboratorio 31B Esercitatori : Ing. G. Laboccetta Dott.ssa V. Policicchio

Progetto Didattico 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 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) interrogabile mediante SQL.

Progetto didattico Il progetto didattico consiste nella realizzazione di un Sistema Informativo per la gestione delle attività di una videoteca

Gruppi di lavoro 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.12-13] Gruppi di Laboratorio" con la composizione del gruppo (specificare <Matricola, Cognome, Nome, email> per ogni componente) all indirizzo policicchio@mat.unical.it.

Progettazione della base di dati

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 Output: dati rappresentare) Schema concettuale (rappresentazione dei dati in un modello di dati concettuale, eventualmente con vincoli esterni) Qualità: correttezza e completezza della rappresentazione

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) o Output: - 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

Progettazione Fisica Obiettivo: Rappresentare i dati della realtà di interesse attraverso le strutture dati di uno specifico DBMS o 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) Output: 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

Modelli di dati I prodotti della varie fasi della progettazione sono schemi basati su specifici modelli di dati: Schema concettuale modello concettuale Schema logico modello logico Schema fisico modello logico + parametri fisici

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)

Fasi e Step del Progetto 1. Analisi dei Requisiti e Progettazione Concettuale: I. Raccolta e Analisi dei Requisiti II. Progettazione dello schema Entità-Relazione (ER) III. Specifica delle funzioni per operare sui dati 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

Fasi e Step del Progetto 4. Progettazione Fisica ed implementazione della base di dati: I. Realizzazione della base di dati sul DBMS relazionale opensource MySQL 5. II. III. IV. Realizzazione dei controlli di congruenza della base di dati Popolamento delle tabelle Realizzazione delle interrogazioni per operare sui dati

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

Raccolta e Analisi dei requisiti La raccolta dei requisiti consiste nella raccolta delle specifiche della realtà di interesse espresse in linguaggio naturale. Possibili fonti: utenti, che forniscono interviste e documentazione apposita documentazione esistente: normative (leggi, regolamenti di settore) regolamenti interni, procedure aziendali realizzazioni preesistenti

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 e spesso procede per «raffinamenti successivi» delle specifiche raccolte.

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) Richiedere definizioni e classificazioni Far evidenziare gli aspetti essenziali rispetto a quelli marginali.

Regole generali Requisiti: documentazione descrittiva costruire un glossario dei termini individuare omonimi e sinonimi e unificare i termini rendere esplicito il riferimento fra termini riorganizzare le frasi per concetti

Documenti prodotti Requisiti: documentazione descrittiva (1/3) Descrizione sintetica della realtà di interesse Glossario dei termini LINEA TERMINE NUOVO TERMINE MOTIVAZIONE CORREZIONE 5 Sinonimo 11 Omonimo 12 Termine troppo generico..

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 1 2 3 4. SPECIFICHE RISTRUTTURATE le operazioni sui dati 1. Analisi Puntuali 2. Analisi Aggregate

Requisiti: documentazione descrittiva (3/3) Documenti prodotti Raffinamento delle specifiche e individuazione dei concetti di base. FRASI DI CARATTERE GENERALE.. FRASI RELATIVE A

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)

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

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)

Dizionario dei dati Il dizionario dei dati espressi nello schema concettuale deve essere redatto in forma schematica e deve contenere per ogni entità: 1. descrizione del suo significato 2. descrizione e dominio di ogni attributo (quando necessario); se l'attributo è derivato, la relativa regola di computazione 3. identificatori dell'entità (con specifico riferimento alle relationship e alle entità coinvolte in eventuali identificazioni esterne) per ogni relationship: 1. descrizione del suo significato 2. descrizione e dominio di ogni attributo 3. ruolo della partecipazione di ogni entità coinvolta nelle relationship mettendo in evidenza il significato del ruolo (motivando, se necessario, la scelta delle cardinalità).

PROGETTAZIONE LOGICA OBIETTIVO: Tradurre" lo schema concettuale in uno schema logico che rappresenti gli stessi dati in maniera corretta ed efficiente

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: Schema concettuale (output della progettazione concettuale) Modello logico DBMS scelto (conforme al modello logico scelto) Previsioni del carico applicativo (per ottimizzare la base di dati rispetto ad esso) Output: Schema logico + documentazione associata Qualità: Correttezza e completezza della rappresentazione Efficienza della manipolazione dei dati

Progettazione logica Carico applicativo Schema E-R Ristrutturazione dello schema E-R Modello logico Schema E-R ristrutturato Traduzione nel modello logico Schema logico

Ristrutturazione schema E-R Motivazioni: semplificare la traduzione "ottimizzare" le prestazioni Osservazione: uno schema E-R ristrutturato non è (più) uno schema concettuale nel senso stretto del termine

Attività della ristrutturazione Analisi delle ridondanze Eliminazione delle generalizzazioni Partizionamento/accorpamento di entità e relazioni Scelta degli identificatori primari

Attività di Ristrutturazione - Dettagli Analisi delle ridondanze (si tiene conto dell efficienza) Eliminazione degli attributi multivalore Eliminazione degli attributi composti (eventuale vincolo (0,1) diventa vincolo esterno) Eliminazione delle ISA e delle generalizzazioni vincoli per entità figlie della stessa entità padre con uno stesso attributo vincoli di generalizzazione (disgiuntezza e completezza) si noti che tutte le entità diventano disgiunte

Attività di Ristrutturazione - Dettagli Scelta degli identificatori principali tutte le entità devono avere un identificatore altrimenti introdurre codice eliminazione di cicli di identificatori principali esterni 6. Specifica degli ulteriori vincoli esterni vincoli derivanti dalla ristrutturazione riformulazione dei vincoli esterni dello schema originario 7. Riformulazione delle operazioni e delle specifiche sul carico applicativo in termini dello schema ristrutturato

Progettazione Logica - Documentazione Documenti prodotti: Schema ER ristrutturato Discussione di scelte critiche nella ristrutturazione dello schema ER Dizionario dei dati (descrizione schematica di entità e delle relazioni dello schema ER ristrutturato) Vincoli dello schema non esprimibili dal modello ER, espressi in linguaggio naturale in modo preciso e puntuale Traduzione dello schema ER ristrutturato nel modello logico

Documentazione - Dizionario dei dati Il dizionario dei dati espressi nello schema logico deve essere redatto in forma schematica e deve contenere per ogni entità: 1. descrizione del suo significato 2. descrizione e tipo* di ogni attributo; se l'attributo è derivato, la relativa regola di computazione 3. identificatori dell'entità (con specifico riferimento alle relationship e alle entità coinvolte in eventuali identificazioni esterne) per ogni relationship: 1. descrizione del suo significato 2. descrizione e tipo* di ogni attributo 3. ruolo della partecipazione di ogni entità coinvolta nelle relationship mettendo in evidenza il significato del ruolo (motivando, se necessario, la scelta delle cardinalità). * Il tipo è quello scelto nel particolare DBMS per rappresentare il dominio dell attributo