![Page 1: Basi di Dati e Sistemi Informativi Progettazione Concettuale: Strategie di Progettazione Home page del corso: difelice/dbsi](https://reader035.vdocuments.site/reader035/viewer/2022062404/5542eb67497959361e8d2f87/html5/thumbnails/1.jpg)
Basi di Dati e Sistemi
Informativi
Progettazione Concettuale:Strategie di Progettazione
Home page del corso:
http://www.cs.unibo.it/~difelice/dbsi/
![Page 2: Basi di Dati e Sistemi Informativi Progettazione Concettuale: Strategie di Progettazione Home page del corso: difelice/dbsi](https://reader035.vdocuments.site/reader035/viewer/2022062404/5542eb67497959361e8d2f87/html5/thumbnails/2.jpg)
Studio/analisi dei requisiti
Progettazione concettuale
Progettazione logica
Progettazione fisica
SCHEMACONCETTUALE
SCHEMALOGICO
SCHEMAFISICO
Fasi della progettazioneRisultati
Analisi dei requisiti e progettazione in dettaglio …
Progettazione concettuale
![Page 3: Basi di Dati e Sistemi Informativi Progettazione Concettuale: Strategie di Progettazione Home page del corso: difelice/dbsi](https://reader035.vdocuments.site/reader035/viewer/2022062404/5542eb67497959361e8d2f87/html5/thumbnails/3.jpg)
La costruzione di uno schema concettuale deve tenere conto di alcune proprieta’ generali che ne determinano la qualita’:
Correttezza utilizzo corretto (sintattico/semantico) dei costrutti del modello E-R.
Completezza rappresentazione di tutti i dati di interesse (e delle operazioni) descritti nel documento di specifica.
Progettazione concettuale
![Page 4: Basi di Dati e Sistemi Informativi Progettazione Concettuale: Strategie di Progettazione Home page del corso: difelice/dbsi](https://reader035.vdocuments.site/reader035/viewer/2022062404/5542eb67497959361e8d2f87/html5/thumbnails/4.jpg)
Come garantire tali proprieta’?
In generale dipendono dal progettista, ma esistono opportune metodologie di progettazione concettuale …
Strategie di progettazione
Pattern di progettazione
Analisi di prestazione
Progettazione concettuale
![Page 5: Basi di Dati e Sistemi Informativi Progettazione Concettuale: Strategie di Progettazione Home page del corso: difelice/dbsi](https://reader035.vdocuments.site/reader035/viewer/2022062404/5542eb67497959361e8d2f87/html5/thumbnails/5.jpg)
In generale, il documento di specifica potrebbe essere molto complesso e denso di contenuti … da dove partire per la costruzione del modello E-R?
Strategia top-down Strategia bottom-up Strategia inside-out Strategia mista
SPECIFICHE di PROGETTO DIAGRAMMA E-R
PROGETTAZIONECONCETTUALE
Progettazione concettuale
![Page 6: Basi di Dati e Sistemi Informativi Progettazione Concettuale: Strategie di Progettazione Home page del corso: difelice/dbsi](https://reader035.vdocuments.site/reader035/viewer/2022062404/5542eb67497959361e8d2f87/html5/thumbnails/6.jpg)
Nella progettazione top-down, lo schema concettuale viene ottenuto attraverso una serie di raffinamenti successivi a partire da uno schema iniziale molto astratto.
Schema Iniziale
Schema Intermedio
Schema Intermedio
Schema Finale
RAFFINAMENTO
RAFFINAMENTO
RAFFINAMENTO
Progettazione concettuale
![Page 7: Basi di Dati e Sistemi Informativi Progettazione Concettuale: Strategie di Progettazione Home page del corso: difelice/dbsi](https://reader035.vdocuments.site/reader035/viewer/2022062404/5542eb67497959361e8d2f87/html5/thumbnails/7.jpg)
Si vuole realizzare una base di dati di una Software House, di cui si vogliono rappresentare i dati dei dipendenti e dei progetti. Ogni dipendente e’ identificato da un nome, ed ha una stipendio e data di assunzione. I dipendenti possono far parte di progetti software. E’ consentito ad un dipendente di partecipare a piu’ di un progetto, allocando mesi-uomo su ciascun progetto. Inoltre, ogni progetto ha un direttore unico tra i dipendenti che vi partecipano. Ogni progetto ha un titolo univoco, un budget, e puo’ disporre di diverse release. Ad ogni release di un progetto e’ associato un numero progressivo ed una data. Tra i dipendenti, si vogliono gestire i dati dei tecnici e degli sviluppatori. Di ogni sviluppatore, si vuole tenere traccia delle skill specifiche. Gli sviluppatori sono ulteriormente suddivisi in Programmatori ed Analisti.
ANALISI REQUISITI ?
Progettazione concettuale
![Page 8: Basi di Dati e Sistemi Informativi Progettazione Concettuale: Strategie di Progettazione Home page del corso: difelice/dbsi](https://reader035.vdocuments.site/reader035/viewer/2022062404/5542eb67497959361e8d2f87/html5/thumbnails/8.jpg)
Dipendente
Tecnico Sviluppatore
Nome Anno Assunzione
Direzione
Partecipazione
Progetto
(0,1)
(0,N)
(1,N)
(1,1)
Mesi Uomo Versioni
ReleaseNumero
Data
(0,N)
(1,1)
Titolo
AnalistaProgrammatore
Skill
Budget
Progettazione concettuale
![Page 9: Basi di Dati e Sistemi Informativi Progettazione Concettuale: Strategie di Progettazione Home page del corso: difelice/dbsi](https://reader035.vdocuments.site/reader035/viewer/2022062404/5542eb67497959361e8d2f87/html5/thumbnails/9.jpg)
In generale, il documento di specifica potrebbe essere molto complesso e denso di contenuti … da dove partire per la costruzione del modello E-R?
Strategia top-down Strategia bottom-up Strategia inside-out Strategia mista
SPECIFICHE di PROGETTO DIAGRAMMA E-R
PROGETTAZIONECONCETTUALE
Progettazione concettuale
![Page 10: Basi di Dati e Sistemi Informativi Progettazione Concettuale: Strategie di Progettazione Home page del corso: difelice/dbsi](https://reader035.vdocuments.site/reader035/viewer/2022062404/5542eb67497959361e8d2f87/html5/thumbnails/10.jpg)
Nella progettazione bottom-up, le specifiche iniziali sonosuddivise in componenti via via piu’ piccole, ed in un secondo momento i vari schemi sono integrati tra loro.
Specifiche
COMPONENTE1 COMPONENTE2
COMPONENTEn
……….
SCHEMA1 SCHEMA2 SCHEMAn……….
Schema Finale
DECOMPOSIZIONE
INTEGRAZIONE
Progettazione concettuale
![Page 11: Basi di Dati e Sistemi Informativi Progettazione Concettuale: Strategie di Progettazione Home page del corso: difelice/dbsi](https://reader035.vdocuments.site/reader035/viewer/2022062404/5542eb67497959361e8d2f87/html5/thumbnails/11.jpg)
Dipendente
Tecnico Sviluppatore
Nome Anno Assunzione
Direzione
Partecipazione
Progetto
(0,1)
(0,N)
(1,N)
(1,1)
Mesi Uomo Versioni
ReleaseNumero
Data
(0,N)
(1,1)
Titolo
AnalistaProgrammatore
Skill
Budget
Progettazione concettuale
![Page 12: Basi di Dati e Sistemi Informativi Progettazione Concettuale: Strategie di Progettazione Home page del corso: difelice/dbsi](https://reader035.vdocuments.site/reader035/viewer/2022062404/5542eb67497959361e8d2f87/html5/thumbnails/12.jpg)
In generale, il documento di specifica potrebbe essere molto complesso e denso di contenuti … da dove partire per la costruzione del modello E-R?
Strategia top-down Strategia bottom-up Strategia inside-out Strategia mista
SPECIFICHE di PROGETTO DIAGRAMMA E-R
PROGETTAZIONECONCETTUALE
Progettazione concettuale
![Page 13: Basi di Dati e Sistemi Informativi Progettazione Concettuale: Strategie di Progettazione Home page del corso: difelice/dbsi](https://reader035.vdocuments.site/reader035/viewer/2022062404/5542eb67497959361e8d2f87/html5/thumbnails/13.jpg)
C
Nella progettazione inside-out, si individuano una serie di concetti importanti e poi si procede a partire da questi versoconcetti correlati, con un’estensione a macchia d’olio.
Concetto 1
Concetto 2
Concetto 3 SCHEMA FINALE
Strategiainside-out:caso particolaredella strategiabottom-up.
Progettazione concettuale
![Page 14: Basi di Dati e Sistemi Informativi Progettazione Concettuale: Strategie di Progettazione Home page del corso: difelice/dbsi](https://reader035.vdocuments.site/reader035/viewer/2022062404/5542eb67497959361e8d2f87/html5/thumbnails/14.jpg)
Dipendente
Tecnico Sviluppatore
Nome Anno Assunzione
Direzione
Partecipazione
Progetto
(0,1)
(0,N)
(1,N)
(1,1)
Mesi Uomo Versioni
ReleaseNumero
Data
(0,N)
(1,1)
Titolo
AnalistaProgrammatore
Skill
Budget
Progettazione concettuale
![Page 15: Basi di Dati e Sistemi Informativi Progettazione Concettuale: Strategie di Progettazione Home page del corso: difelice/dbsi](https://reader035.vdocuments.site/reader035/viewer/2022062404/5542eb67497959361e8d2f87/html5/thumbnails/15.jpg)
Progettazione di DB
In generale, il documento di specifica potrebbe essere molto complesso e denso di contenuti … da dove partire per la costruzione del modello E-R?
Strategia top-down Strategia bottom-up Strategia inside-out Strategia mista
SPECIFICHE di PROGETTO DIAGRAMMA E-R
PROGETTAZIONECONCETTUALE
![Page 16: Basi di Dati e Sistemi Informativi Progettazione Concettuale: Strategie di Progettazione Home page del corso: difelice/dbsi](https://reader035.vdocuments.site/reader035/viewer/2022062404/5542eb67497959361e8d2f87/html5/thumbnails/16.jpg)
In pratica si utilizza una combinazione delle strategie precendenti, detta anche strategia mista.
1. Si individuano i concetti principali o piu’ citati
2. Si realizza uno schema scheletro
3. Si decompone lo schema
4. Si raffina lo schema si espande, si integra
In molti casi pratici di una certa complessita’, la strategia mista rappresenta la scelta migliore …
Progettazione concettuale
![Page 17: Basi di Dati e Sistemi Informativi Progettazione Concettuale: Strategie di Progettazione Home page del corso: difelice/dbsi](https://reader035.vdocuments.site/reader035/viewer/2022062404/5542eb67497959361e8d2f87/html5/thumbnails/17.jpg)
Come garantire tali proprieta’?
In generale dipendono dal progettista, ma esistono opportune metodologie di progettazione concettuale …
Strategie di progettazione
Pattern di progettazione
Analisi di prestazione
Progettazione concettuale
![Page 18: Basi di Dati e Sistemi Informativi Progettazione Concettuale: Strategie di Progettazione Home page del corso: difelice/dbsi](https://reader035.vdocuments.site/reader035/viewer/2022062404/5542eb67497959361e8d2f87/html5/thumbnails/18.jpg)
Non esiste una rappresentazione univoca delle specifiche, nel dubbio e’ meglio attenersi alle Regole Concettuali (RC) del diagramma E-R.
RC1. Se un concetto ha proprietà significative e descrive oggetti con esistenza autonoma Usare Entita’
RC2. Se un concetto correla due o piu’ entita’ Usare Relazioni
RC3. Se un concetto e’ un caso particolare dell’altro Usare Generalizzazioni
Progettazione concettuale
![Page 19: Basi di Dati e Sistemi Informativi Progettazione Concettuale: Strategie di Progettazione Home page del corso: difelice/dbsi](https://reader035.vdocuments.site/reader035/viewer/2022062404/5542eb67497959361e8d2f87/html5/thumbnails/19.jpg)
Esistono molti pattern (= soluzione di problemi riccorrenti) usati nella progettazione concettuale.
IMPIEGATO
NomeCodice Azienda
IMPIEGATO
Codice
AZIENDAIMPIEGO
(1,N)(1,1)
Nome Nome
ATTENZIONE!Questi schemi non sonoequivalenti!!
Progettazione concettuale
![Page 20: Basi di Dati e Sistemi Informativi Progettazione Concettuale: Strategie di Progettazione Home page del corso: difelice/dbsi](https://reader035.vdocuments.site/reader035/viewer/2022062404/5542eb67497959361e8d2f87/html5/thumbnails/20.jpg)
PATTERN1. Concetti di tipo “parte-di” attraversol’utilizzo di relazioni uno-a-molti.
UNIVERSITA DIPARTIMENTOCOMPOSIZ.
Nome Nome
(1,1)(1,N)
SQUADRA ATLETICOMPOSIZ.
Nome Codice
(0,1)(1,N)
Le parti dipendono
dal tutto
Le partisono
entita’autonome
Progettazione concettuale
![Page 21: Basi di Dati e Sistemi Informativi Progettazione Concettuale: Strategie di Progettazione Home page del corso: difelice/dbsi](https://reader035.vdocuments.site/reader035/viewer/2022062404/5542eb67497959361e8d2f87/html5/thumbnails/21.jpg)
PATTERN2. Introduzione di nuove entita’ in relazioni uno-a-molti per la gestione dei duplicati.
STUDENTE CORSOESAME
Matricola Codice
(0,N)(0,N)
Data
STUDENTE CORSOE-C
Matricola Codice
(0,N)(0,N)
ESAME
Data
S-E(1,1) (1,1)
Voto
Voto
Gestione duplicati<studente, corso>
Progettazione concettuale
![Page 22: Basi di Dati e Sistemi Informativi Progettazione Concettuale: Strategie di Progettazione Home page del corso: difelice/dbsi](https://reader035.vdocuments.site/reader035/viewer/2022062404/5542eb67497959361e8d2f87/html5/thumbnails/22.jpg)
PATTERN3. Utilizzo di generalizzazioni per rappresentare casi particolari di un concetto.
(0,N)
PROGETTOPARTECIP.
(1,N)
IMPIEGATO
(1,1)
GESTIONE(1,N)
NomeCodice ScadenzaNome
MANAGER
Un Manager e’ anche Impiegato, puo’ partecipare a Progetti ed in piu’ puo’ gestirli.
Progettazione concettuale
![Page 23: Basi di Dati e Sistemi Informativi Progettazione Concettuale: Strategie di Progettazione Home page del corso: difelice/dbsi](https://reader035.vdocuments.site/reader035/viewer/2022062404/5542eb67497959361e8d2f87/html5/thumbnails/23.jpg)
PATTERN4. Utilizzo di generalizzazioni per tenere traccia della storia di un concetto (ossia, della suaistanza attuale e di quelle pregresse).
SOFTWARE
NomeNome
Data finevalidità
Dimensione
Datarilascio
S.O.
Requisiti
SOFTWAREOBSOLETO
SOFTWAREAGGIORNATO
La generalizzazione consente di evitare duplicati tra le entita’, inserendo solo gli attributi specifici del concetto aggiornato/storico.
Progettazione concettuale
![Page 24: Basi di Dati e Sistemi Informativi Progettazione Concettuale: Strategie di Progettazione Home page del corso: difelice/dbsi](https://reader035.vdocuments.site/reader035/viewer/2022062404/5542eb67497959361e8d2f87/html5/thumbnails/24.jpg)
PATTERN5. Utilizzo di generalizzazioni per tenere traccia dell’evoluzione nel tempo di un certo concetto (ossia creazione di nuove istanze diverse dal concetto originario).
PROGETTO
NomeCodice
RICERCATOREPARTECIP.
(1,1)(1,N)
Finanziamento
Data inizio
Obiettivo CVNome
PROGETTOACCETTATO
Un “Progetto” puo’ diventare (o meno) un “Progetto Accettato”nel tempo ..
Progettazione concettuale
![Page 25: Basi di Dati e Sistemi Informativi Progettazione Concettuale: Strategie di Progettazione Home page del corso: difelice/dbsi](https://reader035.vdocuments.site/reader035/viewer/2022062404/5542eb67497959361e8d2f87/html5/thumbnails/25.jpg)
Come garantire tali proprieta’?
In generale dipendono dal progettista, ma esistono opportune metodologie di progettazione concettuale …
Strategie di progettazione
Pattern di progettazione
Analisi di prestazione
Progettazione concettuale
![Page 26: Basi di Dati e Sistemi Informativi Progettazione Concettuale: Strategie di Progettazione Home page del corso: difelice/dbsi](https://reader035.vdocuments.site/reader035/viewer/2022062404/5542eb67497959361e8d2f87/html5/thumbnails/26.jpg)
Una volta realizzato il modello E-R, e’ importante analizzarne l’efficienza dal punto di vista prestazionale.
Indici di prestazione: Costo operazionale Numero di
entita’/associazioni mediamente visitate per implementare una certa operazione sui dati.
Occupazione di memoria Spazio di memoria necessario per memorizzare i dati.
Progettazione concettuale
![Page 27: Basi di Dati e Sistemi Informativi Progettazione Concettuale: Strategie di Progettazione Home page del corso: difelice/dbsi](https://reader035.vdocuments.site/reader035/viewer/2022062404/5542eb67497959361e8d2f87/html5/thumbnails/27.jpg)
Per poter stimare l’efficienza prestazionale di uno schema E-R, abbiamo necessita’ di informazioni aggiuntive … TAVOLA DEI
VOLUMITAVOLA DELLEOPERAZIONI
DIAGRAMMA E-R
Analisi del modello E-R
Indici di prestazione del modello E-R
Progettazione concettuale
![Page 28: Basi di Dati e Sistemi Informativi Progettazione Concettuale: Strategie di Progettazione Home page del corso: difelice/dbsi](https://reader035.vdocuments.site/reader035/viewer/2022062404/5542eb67497959361e8d2f87/html5/thumbnails/28.jpg)
Dipendente
Tecnico Sviluppatore
Nome Anno Assunzione
Direzione
Partecipazione
Progetto
(0,1)
(0,N)
(1,N)
(1,1)
Mesi Uomo Versioni
ReleaseNumero
Data
(0,N)
(1,1)
Titolo
AnalistaProgrammatore
Skill
Budget
Progettazione concettuale
![Page 29: Basi di Dati e Sistemi Informativi Progettazione Concettuale: Strategie di Progettazione Home page del corso: difelice/dbsi](https://reader035.vdocuments.site/reader035/viewer/2022062404/5542eb67497959361e8d2f87/html5/thumbnails/29.jpg)
La tavola dei volumi fornisce una stima del numero di occorrenze di entita’/ relazioni presenti nel modello E-R.
Concetto Tipo Volume
Progetto E 100
Release E 1000
Dipendente E 500
Tecnico E 200
Sviluppatore E 100
Programmatore
E 70
Analista E 30
Stimadel numeromedio dioccorrenzedi una entita’
Progettazione concettuale
![Page 30: Basi di Dati e Sistemi Informativi Progettazione Concettuale: Strategie di Progettazione Home page del corso: difelice/dbsi](https://reader035.vdocuments.site/reader035/viewer/2022062404/5542eb67497959361e8d2f87/html5/thumbnails/30.jpg)
La tabella dei volumi fornisce una stima del numero di occorrenze di entita’/ relazioni presenti nel modello E-R.
Concetto Tipo Volume
Direzione R 100
Partecipazione
R 2000
Versioni R 1000
Stimadel numeromedio dioccorrenzedi una relazione
Progettazione concettuale
Assunzione1: Ogni progetto ha in media 10 release.
Assunzione2: Ad ogni progetto lavorano in media 20 dipendenti.
![Page 31: Basi di Dati e Sistemi Informativi Progettazione Concettuale: Strategie di Progettazione Home page del corso: difelice/dbsi](https://reader035.vdocuments.site/reader035/viewer/2022062404/5542eb67497959361e8d2f87/html5/thumbnails/31.jpg)
La tavola delle operazioni definisce:
L’insieme delle operazioni che devono essere implementate sui dati.
La tipologia delle operazioni (interattive/batch).
La frequenza delle operazioni (es. 100 al
giorno).
Q. Chi fornisce le informazioni delle tavole?
A. Spesso la raccolta ed analisi dei requisiti …
Progettazione concettuale
![Page 32: Basi di Dati e Sistemi Informativi Progettazione Concettuale: Strategie di Progettazione Home page del corso: difelice/dbsi](https://reader035.vdocuments.site/reader035/viewer/2022062404/5542eb67497959361e8d2f87/html5/thumbnails/32.jpg)
Operazione1: assegnare un dipendente ad un progetto.
Operazione2: visualizzare tutti i dati di un un progetto, della release associate e del direttore.
Operazione3: per ciascun progetto, visualizzare tutti i dati dei dipendenti associati.
Operazione Tipo Frequenza
Operazione1 I 10 volte/giorno
Operazione2 I 100 volte/giorno
Operazione3 B 5 volte/giorno
Progettazione concettuale
![Page 33: Basi di Dati e Sistemi Informativi Progettazione Concettuale: Strategie di Progettazione Home page del corso: difelice/dbsi](https://reader035.vdocuments.site/reader035/viewer/2022062404/5542eb67497959361e8d2f87/html5/thumbnails/33.jpg)
Data un’operazione O di tipo T, definiamo il suo costo c(OT) come:
Numero di accessi in lettura a componenti (entita’/relazioni) dello schema
Numero di accessi in scrittura a componenti (entita’/relazioni) dello schema
Peso dell’operazione (interattiva/batch)
Coefficiente moltiplicativo delle operazioni in scrittura
Frequenza dell’operazione
Progettazione concettuale
![Page 34: Basi di Dati e Sistemi Informativi Progettazione Concettuale: Strategie di Progettazione Home page del corso: difelice/dbsi](https://reader035.vdocuments.site/reader035/viewer/2022062404/5542eb67497959361e8d2f87/html5/thumbnails/34.jpg)
Operazione1: assegnare un dipendente ad un progetto (frequenza: 10 volte al gg).
Concetto Costrutto
Accessi Tipo
Partecipazione
Relazione 1 W
DipendentePartecipazione
Progetto(0,N)
(1,N)
Mesi UomoTAVOLA DEGLI ACCESSI
Parametri:
Progettazione concettuale
![Page 35: Basi di Dati e Sistemi Informativi Progettazione Concettuale: Strategie di Progettazione Home page del corso: difelice/dbsi](https://reader035.vdocuments.site/reader035/viewer/2022062404/5542eb67497959361e8d2f87/html5/thumbnails/35.jpg)
Dipendente
Nome Anno Assunzione
Direzione
Progetto
(0,1)
(1,1)
Versioni
ReleaseNumero
Data
(0,N)
(1,1)
Titolo Budget
Operazione2: visualizzare tutti i dati di un un progetto, della release associate e del direttore.
Progettazione concettuale
![Page 36: Basi di Dati e Sistemi Informativi Progettazione Concettuale: Strategie di Progettazione Home page del corso: difelice/dbsi](https://reader035.vdocuments.site/reader035/viewer/2022062404/5542eb67497959361e8d2f87/html5/thumbnails/36.jpg)
Dipendente
Nome Anno Assunzione
Direzione
Progetto
(0,1)
(1,1)
Versioni
ReleaseNumero
Data
(0,N)
(1,1)
Titolo Budget
Concetto Costrutto
Accessi
Tipo
Progetto Entita’ 1 L
Versioni Relazione 10 L
Release Entita’ 10 L
Direzione Relazione 1 L
Dipendente Entita’ 1 L
TAVOLA DEGLI ACCESSI
Progettazione concettuale
![Page 37: Basi di Dati e Sistemi Informativi Progettazione Concettuale: Strategie di Progettazione Home page del corso: difelice/dbsi](https://reader035.vdocuments.site/reader035/viewer/2022062404/5542eb67497959361e8d2f87/html5/thumbnails/37.jpg)
Dipendente
Nome Anno Assunzione
Direzione
Progetto
(0,1)
(1,1)
Versioni
ReleaseNumero
Data
(0,N)
(1,1)
Titolo Budget
Parametri:
Operazione2: visualizzare tutti i dati di un un progetto, della release associate e del direttore.
Progettazione concettuale
![Page 38: Basi di Dati e Sistemi Informativi Progettazione Concettuale: Strategie di Progettazione Home page del corso: difelice/dbsi](https://reader035.vdocuments.site/reader035/viewer/2022062404/5542eb67497959361e8d2f87/html5/thumbnails/38.jpg)
Operazione3: per ciascun progetto, visualizzare tutti i dati dei dipendenti associati.
Concetto Costrutto
Accessi Tipo
Progetto Entita’ 100 R
Partecipazione
Relazione 2000 R
Dipendente Entita’ 2000 R
DipendentePartecipazione
Progetto(0,N)
(1,N)Mesi UomoTAVOLA DEGLI ACCESSI
Parametri:
Progettazione concettuale
![Page 39: Basi di Dati e Sistemi Informativi Progettazione Concettuale: Strategie di Progettazione Home page del corso: difelice/dbsi](https://reader035.vdocuments.site/reader035/viewer/2022062404/5542eb67497959361e8d2f87/html5/thumbnails/39.jpg)
Dato uno schema S, ed un’insieme di operazioni sui dati O1, O2, … On, con costi c(O1), c(O2), c(On), il costo dello schema e’ definito come:
c(Op1) 10c(Op2) 1150c(Op3) 10250 c(S) 11410
+
+
Nel nostro esempio:
Progettazione concettuale
![Page 40: Basi di Dati e Sistemi Informativi Progettazione Concettuale: Strategie di Progettazione Home page del corso: difelice/dbsi](https://reader035.vdocuments.site/reader035/viewer/2022062404/5542eb67497959361e8d2f87/html5/thumbnails/40.jpg)
Dato uno schema S, ed un’insieme di operazioni sui dati O1, O2, … On, con costi c(O1), c(O2), c(On), il costo dello schema e’ definito come:
Obiettivo del progettista e’ quello di determinare lo schema E-R di costo minimo …
Q1. Come determinare lo schema minimale?
Q2. Cosa dire dell’occupazione di memoria?
Progettazione concettuale
![Page 41: Basi di Dati e Sistemi Informativi Progettazione Concettuale: Strategie di Progettazione Home page del corso: difelice/dbsi](https://reader035.vdocuments.site/reader035/viewer/2022062404/5542eb67497959361e8d2f87/html5/thumbnails/41.jpg)
Conoscendo la tavola dei volumi, il tipo di ciascun attributo e la sua dimensione su disco, e’ possibilestimare l’occupazione di memoria dello schema …
V(e), size(e) Tabella dei volumi e dimensione in termini di occupazione di memoria dell’entita’ e.
V(r), size(r) Tabella dei volumi e dimensione in termini di occupazione di memoria della relazione r.
Progettazione concettuale
![Page 42: Basi di Dati e Sistemi Informativi Progettazione Concettuale: Strategie di Progettazione Home page del corso: difelice/dbsi](https://reader035.vdocuments.site/reader035/viewer/2022062404/5542eb67497959361e8d2f87/html5/thumbnails/42.jpg)
ESEMPIO: Come stimare l’occupazione di memoria dell’entita’ “Dipendente” …
Dipendente
Nome Anno Assunzione
Attributo Tipo Dimensione
Nome Stringa (max 8 caratteri)
1B*8=8B
AnnoAss. Numero 4B
Concetto Tipo Volume
Dipendente E 500
Memoria Occupata (Dipendente)=500*(8B+4B)=6000B
Progettazione concettuale
![Page 43: Basi di Dati e Sistemi Informativi Progettazione Concettuale: Strategie di Progettazione Home page del corso: difelice/dbsi](https://reader035.vdocuments.site/reader035/viewer/2022062404/5542eb67497959361e8d2f87/html5/thumbnails/43.jpg)
In pratica: si cerca di determinare il miglior trade-off tra occupazione di memoria e costo delle operazioni dello schema ...
Gli indici di prestazione di un diagramma E-R sono forniti come input alla fase di progettazione logica, e sono utilizzati per:
Traduzione del modello concettuale Analisi delle ridondanze.
Progettazione concettuale
![Page 44: Basi di Dati e Sistemi Informativi Progettazione Concettuale: Strategie di Progettazione Home page del corso: difelice/dbsi](https://reader035.vdocuments.site/reader035/viewer/2022062404/5542eb67497959361e8d2f87/html5/thumbnails/44.jpg)
Ricapitolando:
STEP 0: Analisi dei requisiti
STEP1: Progettazione Concettuale STEP 1.1: Diagramma E-R STEP 1.2: Dizionario delle entita’ STEP 1.2: Dizionario delle relazioni STEP 1.3: Tabella delle business rules STEP 1.4: Analisi indici di stima
Progettazione concettuale