il progetto concettuale -...
TRANSCRIPT
Basi di Dati (9023N)
Il progettoconcettualeIl progettoIl progetto
concettualeconcettuale
Sistemi Informativi e DB
Sistema informativo (SI): insieme di funzioni che regolano la condivisione, la distribuzione e la registrazione delle informazioni necessarie alla vita dell'azienda
Database: raccolta organizzata di dati, immagazzinata in un computer
Progetto di un sistema informativo: pianificazione, specifica e sviluppo di ogni componente del sistema
Basi di Dati (9023N)
Ciclo di vita di un sistema informativo
Studio di fattibilità: determinazione dei costi delle diverse soluzioni e delle priorità degli elementi costitutivi
Raccolta e analisi dei requisiti/delle specificheProgetto della base di dati e progetto delle applicazioniPrototipazione e analisi delle prestazioniRealizzazione, validazione e verifica del corretto
funzionamentoOperatività (normale funzionamento)
Ciclo di vita di un sistema informativoRaccolta e analisi dei requisiti
Si tratta di una attività di specifica competenza di stampo gestionale e richiede uno studio preliminare in azienda per comprendere quali saranno le unità organizzative interne che utilizzeranno il sistema, e come il sistema verrà utilizzato (tempi e costi). L’analisi dei requisiti richiede anche una precisa individuazione delle proprietà e delle funzionalità del sistema e la produzione di una descrizione informale e per quanto possibile completa (in linguaggio naturale e con schemi o altro) dei dati coinvolti e delle operazioni su di essi. Per ogni settore aziendale si analizza il sistema informativo esistente e si prepara una descrizione (dapprima in linguaggio naturale), della quale si dovrà poi verificare la completezza e la consistenza.
Basi di Dati (9023N)
Ciclo di vita di un sistema informativoProgettazione
Sia ex-novo sia come ampliamento dell’esistente. Nell’ambito della progettazione la progettazione dei dati, cioè l’individuazione dell’organizzazione e della struttura della base di dati, è un compito tipico di stampo informatico,mentre la progettazione delle applicazioni è un compito tipico di stampo informatico.
Ciclo di vita di un sistema informativoImplementazione
Intesa come definizione delle componenti hardware e software da acquisire sul mercato, come costruzione e popolamento della base di dati e infine come sviluppo dei programmi applicativi.
Basi di Dati (9023N)
Ciclo di vita di un sistema informativoValidazione e collaudo
Intesi come verifica del corretto funzionamento del sistema e come verifica e collaudo della sicurezza e della correttezza dei dati.
Ciclo di vita di un sistema informativoFunzionamento
Cioè controllo e ordinaria manutenzione del sistema ormai operativo.
Basi di Dati (9023N)
Ciclo di vita di un sistema informativo
Studio difattibilità
Raccolta dellespecifiche e
analisi
Progetto
Prototipazione Implementazione
Validazione etesting
Operatività
Progettazione della base di datiProgettazione guidata dai dati allo sviluppo di un sistema informativo. Il progetto della base di dati descrive la struttura dei dati:
progetto concettuale: genera lo schema concettuale, che descrive la base di dati ad alto livello (cioè traduzione del risultato dell’analisi in una descrizione formale rigorosa, facente riferimento ad un modello concettuale).
progetto logico: genera lo schema logico, che descrive la struttura della base di dati utilizzando il modello dei dati prescelto, relazionale, gerarchico, reticolare (utilizzando in questo caso il modello relazionale.
progetto fisico: genera lo schema fisico, che descrive la struttura fisica della base di dati nella memoria secondaria (in grado di tenere in considerazione anche le caratteristiche fisiche dei calcolatori utilizzati.)
Gli schemi logico e fisico vengono poi implementati con il DDL.
Basi di Dati (9023N)
Progettazione guidata dai dati
Specifichesui dati
Progetto concettuale
Schema concettuale
Progetto logico
Schema logico
Progetto fisico
Schema fisico
Progetto concettualeObiettivo: produrre lo schema concettualeSoluzione: per effettuare una tale modellizzazione si possono
utilizzare linguaggi formali eseguibili o non eseguibili, oppurerappresentazioni grafiche corredate da descrizioni.
Strumenti: meccanismi di astrazione forniti dal modello Entità-Relazione. Il modello Entità-Relazione (modello E-R, Entity-Relationship, P.P.Chen 1976) appartiene alla categoria delle rappresentazioni grafiche corredate da descrizioni, e si è ormaiaffermato nelle metodologie di progetto e nei sistemi software di ausilio alla progettazione. Le istanze di entità e di relazione rappresentano i costrutti fondamentali della conoscenza concreta.
Specifiche iniziali: descrizioni in linguaggio naturale, pagine video e stampe, formati record, etc...
Vantaggi: la scelta del DBMS può essere rimandata, facilita le modifiche del progetto, è parte integrante della documentazione finale del progetto
Basi di Dati (9023N)
Meccanismo di astrazione
Il processo di astrazione permette di isolare le caratteristiche essenziali della porzione di realtà che si vuole modellare.Primitive di astrazione:
classificazione: identifica classi di oggetti del mondo reale aventi proprietà comuni
aggregazione: definisce una nuova classe a partire dalle sue classi componenti
generalizzazione: definisce una relazione di sottoinsieme tra gli elementi di due o più classi
Esempio di astrazione
Il disegno della bicicletta è la rappresentazione del processo di astrazione.
Basi di Dati (9023N)
Esempio di classificazione
Mese
Gennaio Febbraio ..... Dicembre
Arco = is a member of
Rappresentazione dei mesi dell'anno.
Esempi di aggregazione
BICICLETTA
RUOTA PEDALE MANUBRIO
PERSONA
NOME SESSO POSIZIONE
Giorgio Maria Luca Maschio Femmina Manager Impiegato
Aggregazione
Classific.
Arco = is a part of
Basi di Dati (9023N)
Esempi di generalizzazioneVEICOLO
BICICLETTA AUTOMOBILE
Arco = is-aDefinisce una relazione di sottoinsieme tra gli elementi di due o più classi. Ad esempio la classe VEICOLO è una generalizzazione della classe BICICLETTA, della classe AUTOMOBILE, ecc. Si rappresenta con un albero ad un livello in cui tutti i nodi sonoclassi, la radice è una classe generale.In una generalizzazione tutte le astrazioni definite per la classe generale sono ereditate dalle classi sottoinsieme.
Corrispondenza tra classi
Le astrazioni di aggregazione e generalizzazione stabiliscono corrispondenze tra classi.
Aggregazione binaria: corrispondenza tra due classiAggregazione n-aria: corrispondenza tra tre o più classiGeneralizzazione: corrispondenza tra la classe generale
e le classi sottoinsieme
Basi di Dati (9023N)
Esempi di aggregazione binaria
p1
p2
p3
b1
b2
b3
b4
p1
p2
p3
b1
b2
b3
b4
(a) Aggregazione binaria USA (b) Aggregazione binaria POSSIEDE
PERSONE PERSONEEDIFICI EDIFICI
Cardinalità minimaminmin--cardcard(C1,A)(C1,A) indica la cardinalità minima della classe C1 nell'aggregazione A con la classe C2, cioè il numero minimo di corrispondenze per ciascun elemento c di C1.Esempi:min-card(PERSONA, USA)=1
ogni persona usa almeno una casamin-card (EDIFICIO,USA)=0
qualche edificio non è abitatomin-card(PERSONA,POSSIEDE)=0
qualche persona non possiede un edificiomin-card(EDIFICIO, POSSIEDE)=1
se ogni casa deve essere posseduta da una persona
Basi di Dati (9023N)
Cardinalità massimamaxmax--cardcard(C1,A)(C1,A) indica la cardinalità massima della classe C1 nell'aggregazione A con la classe C2, cioè il numero massimo di corrispondenze per ciascun elemento c1 di C1.Esempi:max-card(PERSONA, USA)=n
ogni persona usa più di una casamax-card (EDIFICIO,USA)= n
ogni edificio può avere molti abitantimax-card (EDIFICIO,POSSIEDE)= 1
ogni edificio può avere al più un proprietariocorrispondenze per ciascun elemento c1 di C.max-card (EDIFICIO,POSSIEDE)=1 and min-card (EDIFICIO,POSSIEDE)=1
se ogni casa deve essere posseduta esatt. da una sola persona.
Tipi di corrispondenza
(a) Uno-a-uno (b) Uno-a-molti
(c) Molti-a-uno (d) Molti-a-molti
C1 C2 C1 C2
C1 C2 C1 C2
Basi di Dati (9023N)
Esempio di aggregazione n-ariaLEZIONE
CORSO GIORNO AULA
Ogni lezione di un certo corso è tenuta in un determinato giorno in una specifica aula.Ogni corso è tenuto da una a tre volte alla settimana:
– min-card(CORSO,LEZIONE)=1– max-card(CORSO,LEZIONE)=3
Esempio di aggregazione n-aria
In ogni giorno della settimana può essere tenuto qualunque numero di lezioni:
min-card(GIORNO,LEZIONE)=0max-card(GIORNO,LEZIONE)=n
Ciascuna aula può essere impegnata al più quaranta ore (8 ore al giorno)
min-card(AULA,LEZIONE)=0max-card(AULA,LEZIONE)=40
Basi di Dati (9023N)
Generalizzazione
Proprietà di copertura della generalizzazione:copertura totale o parziale:
totale se ogni elemento di A corrisponde ad almeno un elemento delle sottoclassi
parziale se esiste almeno un elemento di A privo di corrispondenza
copertura esclusiva o sovrapposta:esclusiva se ogni elemento di A si mappa al più su
un elemento delle sottoclassisovrapposta se ogni elemento di A si mappa su
elementi di più sottoclassi
FEMMINA
PERSONA
MASCHIO
IMPIEGATO
MASCHIO
PERSONA
(a) Totale, esclusiva
(b) Totale, sovrapposta
FEMMINA
Esempi di copertura
Basi di Dati (9023N)
AUTO
(c) Parziale, esclusiva
CALCIA-TORE
TENNISTA
(d) Parziale, sovrapposta
VEICOLO
GIOCATORE
BICI
Esempi di copertura
Caratteristiche del modello concettuale
Espressività: la disponibilità di un’ampia varietà di concetti permette una rappresentazione più efficace del mondo esterno.
Semplicità: rende facilmente leggibile uno schema definito mediante il modello stesso.
Minimalità: ogni concetto rappresentato nel modello ha un significato distinto da tutti gli altri.
Formalismo: gli schemi prodotti mediante l’uso del modello rappresentano una specifica formale dei dati.
Basi di Dati (9023N)
Il modello E-RIl modello EIl modello E--RR
Modello Entità-Relazione
Elementi di base:ENTITA`: classe di oggetti del mondo reale
ed è rappresentata con un rettangoloRELAZIONE: rappresenta l'aggregazione di due o più
entità ed è rappresentata con un romboANELLO: relazione binaria recursiva (di un'entità con
se stessa); si usa una etichetta per distinguere i rami semanticamente diversi
Basi di Dati (9023N)
Modello Entità-Relazione: ENTITA’
E’ un oggetto o una persona che esiste di per sé, ad esempio nell’azienda in considerazione, della quale si vogliono registrare fatti specifici e che può essere chiaramente identificata in modo da poterla distinguere dalle altre. Esempi di istanze di entità sono il corso di Sistemi Informativi Aziendali, lo studente 45329, il volo MO-BO, la pratica VF836G.
Modello Entità-Relazione: RELAZIONE
E’ un fatto che descrive un’azione o una situazione e che stabilisce legami tra istanze di entità. Esempi di istanze di relazione (associazione) possono essere “la ditta Rossi ordina PC”, “Bianchi lavora al magazzino 4”, “il TIR 542 viaggia sulla tratta NA-MI”.Al posto del termine relazione si utilizza talvolta il termine ASSOCIAZIONE, al fine di evitare ambiguità e confusioni con le relazioni (cioè la tabelle) del modello relazionale.
Basi di Dati (9023N)
(a) Relazione VIVE_IN
Esempi
VIVE_IN
CITTA`PERSONA(1,1) (0,n)
(b) Relazione LEZIONE
LEZIONE AULACORSO(1,3) (0,40)
GIORNO
(0,n)
Esempi
(c) Relazione DIRIGE
DIRIGEIMPIEGATO
(0,n)
(0,1)
(d) Relazione SPEDIZIONE
SPEDIZIONEBOLLA_DI_CONSEGNAORDINE
(0,1) (1,1)
SUPERIORE_DI
SUBORDINATO_A
Basi di Dati (9023N)
Attributi
Le entità e le relazioni sono altresì dotate di Attributi(o Proprietà). Per esempio Cognome, Stipendio ed Età possono essere attributi dell’entità Impiegato, mentre Data e Voto sono possibili attributi di una ovvia relazione (si ricordi che qui relazione è sinonimo di associazione, e non di tabella) Esame esistente tra Studente e Corso.
Attributi
Rappresentano le proprietà elementari delle entità o relazioni
tutte le informazioni di tipo estensionale sono contenute negli attributi
ad ogni attributo corrisponde un dominio di definizione
Cardinalità è il numero di valori dell'attributo associati ad un'istanza dello schema:
min-card (A,E) = 0 attributo opzionalemin-card (A,E) = 1 attributo obbligatoriomax-card (A,E) = n attributo multivalore
Basi di Dati (9023N)
AttributiLa cardinalità degli attributi (o proprietà) nella maggior parte dei casi è (1,1), e viene omessa. Se la cardinalità minima è 0 si parla di attributo opzionale; se invece la cardinalità minima è 1 si parla di attributo obbligatorio. Infine si parla di attributo multivalore se la cardinalità massima è pari per esempio ad N. Gli attributi multivalorevanno utilizzati con cautela, in quanto sovente rappresentano situazioni modellizzabili con entità a sé. Per esempio un attributo multivaloreTitolo_di_Studio (dell’entità Persona), essendo un concetto condiviso da molte diverse persone, potrebbe essere utilizzato per una entità a parte legata all’entità Persona da una opportuna relazione.
Esempio
Basi di Dati (9023N)
Esempio
NATO_A
VIVE_IN
CITTA`PERSONA
SSN
NOME
PROFESSIONE
GRADODATA_DI_NASCITA
NOME
STATO
GIORNO_TRASFERIMENTO
(0,1) (0,n)
(0,n)
NUMERO_DI_ABITANTI
(0,n)
(0,1)
Attributo composto
Gruppo di attributi con affinità in termini di significato ed impiego. Sono definite cardinalità minima e massima.Esempio
PERSONA INDIRIZZO
VIACITTA`STATOPAESE
CAP (0,1)
(0,1)
Basi di Dati (9023N)
Attributo composto
Se un attributo ha una cardinalità che va da n ad m significa che possono essere specificati da n ad m valori per quell’attributo. Per esempio l’entità abbonato può avere da 1 a 2 numeri di telefono (numero è l’attributo), e l’entità cittadino può avere da 0 a 10 automobili.
Vincoli sugli attributi
Sugli attributi (cioè sulle proprietà) possono essere posti dei vincoli, necessari per evitare che i valori da loro assunti possano divenire inaccettabili. Tali vincoli non vengono rappresentati graficamente, ma su specifiche a parte, e servono a controllare i valori degli attributi nelle fasi di inserimento e modifica.I vincoli possono essere statici, per esempio il controllo dell’appartenenza di un valore ad un preciso dominio, oppure dinamici (per esempio stipendio precedente minore di stipendio successivo, o età precedente minore di età successiva). Un vincolo su di un attributo può anche essere dipendente dai valori degli altri attributi (per esempio se il livello è il 7 allora lo stipendio deve essere compreso tra 1.5 e 2.5 milioni).
Basi di Dati (9023N)
IdentificatoreL'identificatore di un'entità E è un insieme di attributi
(e/o di entità in relazione con E) che permette di definire in modo univoco tutte le istanze di E (chiaveo chiave candidata).
E’ un attributo sufficiente a individuare in modo univoco la singola istanza di entità (o di relazione). Il simbolo di un tale attributo, che deve essere totale, obbligatorio, unico ed esplicito, è quello di un attributo, ma il pallino è pieno.
I è un identificatore di un'entità E se valgono le seguenti proprietà:non possono esistere due istanze di E con lo stesso valore per
l'identificatore I (univocità)eliminando un attributo A (o un'entità) dall'identificatore la proprietà
precedente decade (minimalità)
Caratteristiche degli identificatori
Ogni entità può avere più di un identificatore / chiaveUn identificatore è:
semplice se è costituito da un solo elementocomposto se è costituito da più di un attributo interno se è definito solo da attributi di E (interno
indica appunto che l’entità E è descrivibile usando i soli attributi dell’entità)
esterno se è definito solo da altre entitàmisto se è costituito da elementi interni ed esterni
Basi di Dati (9023N)
La scelta degli identificatoriLa scelta del tipo della chiave può dipendere da criteri basati sul
tipo di entità (es. codice di inventario, targa), oppure dal fatto che la chiave sia già stata scelta da altre organizzazioni, oppure da un uso pregresso già invalso in azienda (per esempio vengono talvolta usati i cosiddetti “codici parlanti” dove al numero 21 07 42379 corrisponde per il 21 una facoltà, per lo 07 un corso di laurea, e il numero di matricola progressivo è solo il terzo blocco di cifre). I codici parlanti in particolare possonogenerare problemi nel caso di riclassificazioni.
Infine talvolta possono essere accettati (anche se solo temporaneamente) due valori di chiave per la stessa istanza di entità. Si pensi al caso dell’accettazione di un pronto soccorsoin un ospedale, che deve classificare i pazienti con un codice progressivo in attesa di avere a disposizione dati più precisi (ad esempio il codice del sistema sanitario nazionale).
Esempi di identificatori/chiavi
PERSONACODICE_FISCALE
(a) Identificatore interno semplice
PERSONA
NOMEDATA_DI_NASCITANOME_PADRERESIDENZA
IDENTIFICATORE_PERSONALE
(b) Identificatore interno composto
Basi di Dati (9023N)
Esempi di identificatori
LAVORA_IN
IMPIEGATO
NUMERO_IMPIEGATO_NEL_DIPARTIMENTO
(c) Identificatore esterno, composto, misto
DIPARTIMENTO
(1,1)
(1,n)
Esempi di Identificatori
DI
PRODOTTO
NUMERO_LINEA
(d) Identificatori per l’entità DETTAGLIO_ORDINE
INTESTA-ZIONE_ORDINE
PER
DETTAGLIO_ORDINE
A
B
Basi di Dati (9023N)
Identificatori esterni
In alcuni casi gli attributi di una entità non sono sufficienti ad identificare univocamente le sue occorrenze. Tali entità sono deboli. Le entità deboli sono dunque quelle entità che contengono istanze la cui presenza nel sistema è accettata solo se sono presenti determinate istanze di altre entità da cui esse dipendono.
Ad esempio l'entità Studente nella figura è debole, in quanto dipende dall'entità Università. La dipendenza è sottolineata dall'identificazione esterna, ottenuta tramite il formalismo riportato.
Identificatori esterni
IscrizioneUniversitàStudente Nome
CittàIndirizzo
Cognome
Matricola
(1,1)
(1,n)
Basi di Dati (9023N)
Identificatori esterniPuò infatti sembrare a prima vista che l'attributo Matricola possa
essere chiave per l'entità Studente; invece lo schema descrive studenti iscritti a varie università, e due studenti iscritti a università diverse possono avere lo stesso numero di matricola.Dunque per identificare univocamente uno Studente nell'ambito di una università occorre, oltre al numero di matricola, anche il Nome (chiave primaria dell'entità Università) dell'università.Le identificazioni esterne avvengono sempre con associazioni binarie (non sono utilizzabili le ternarie). La cardinalità dal lato Studente DEVE essere (1,1).
Le entità con identificatore esterno sono deboli perché in caso di eliminazione dell'istanza di riferimento (qui Università) le istanze deboli collegate devono essere eliminate.
Relazioni (Associazioni)
Basi di Dati (9023N)
Cardinalità delle relazioniI numeri tra parentesi indicano il numero minimo e
massimo di occorrenze di relazione cui una occorrenza di entità può partecipare; dicono quindi quante volte, in una relazione tra entità, un’occorrenza di una di queste entità può essere legata a occorrenze delle altre entità coinvolte (che sono due nel caso di relazione ternaria).
Si ha cioè che un impiegato svolge da 1 a 5 incarichi, mentre un incarico viene svolto da un minimo di zero impiegati fino ad un massimo di 40 impiegati.
Osservando le cardinalità massime (qui 5 e 40), si parla di relazione uno a uno se sono entrambe pari a 1; si parla di relazione uno a molti se una cardinalità massima è 1 e l’altra è N. Infine se le cardinalità massime sono ambedue N si parla di relazione molti a molti.
Gerarchie di Generalizzazione
Nel modello ER è possibile realizzare gerarchie di generalizzazione tra entità. Una entità E è una generalizzazione di un gruppo di entità E1, E2, ..., En, se ogni oggetto delle classi E1, E2, ..., En è anche un oggetto della classe E.
L'opposto della generalizzazione è la specializzazione. L'aspetto importante della generalizzazione è il tipo di copertura:
totale o parziale e esclusiva o sovrapposta
Basi di Dati (9023N)
Gerarchie di generalizzazioneL'entità E è una generalizzazione di E1, ..., En se ogni
istanza di E1, ..., En è anche un'istanza di EAttributi, relazioni e generalizzazioni definiti per E
sono automaticamente ereditati da tutte le sottoclassi di E.
E
E1 E2 En......
Esempi di gerarchie
PERSONA
MASCHIO FEMMINA MANAGER SEGRETARIO IMPIEGATO
DIRETTORE_AMMINISTRATIVO
PROGRAM-MATORE VENDITORE PUBBLICI-
TARIODIRETTORE_
TECNICO
(t,e) (p,e)
(p,o) (p,o)
Basi di Dati (9023N)
Gerarchie di Generalizzazione
Spesso nell'analisi di un settore aziendale può risultare che più entità siano simili o casi particolari l'una dell'altra, derivanti da viste diverse da parte dell'utenza. Emerge quindi la necessità di evidenziare sottoclassi di alcune classi.Si definisce pertanto gerarchia di specializzazione il legame logico che esiste tra classi e sottoclassi. Tali gerarchie sono dette anche gerarchie ISA (dove ISA è per "is a", vale a dire "è un" in inglese). personale
La gerarchia concettuale è il legame logico tra un'entità padre E ed alcune entità figlie E1, E2, ..En. La simbologia utilizzata per rappresentare le gerarchie è ricavabile dall'esempio seguente.
Gerarchie di Generalizzazione
personale
dipendente esterno
t,e
Basi di Dati (9023N)
Gerarchie di Generalizzazione
Le due lettere t ed e servono a specificare il tipo di gerarchia. I tipi disponibili sono:t : totale; significa che ogni istanza dell'entità padre deve far parte di una delle entità figlie. In questo caso significa che il personale deve essere o dipendente o esterno, ma non ci può essere una terza possibilità;nt : un esempio di gerarchia non totale sarebbe mammiferi con cani e gatti come entità figlie; ci sono infatti mammiferi che non sono né cani né gatti;e : esclusiva; significa che ogni istanza dell'entità padre deve fare parte di una sola delle entità figlie. In questo caso o si è esterni o si è dipendenti; non è cioè ammesso essere dipendenti e contemporaneamente collaboratori esterni;ne : un esempio di gerarchia non esclusiva sarebbe ingegneri coningegneri elettronici e meccanici come entità figlie. La gerarchia non è esclusiva perché nulla vieta che una persona prenda entrambe le lauree.
Gerarchie di Generalizzazione
Le gerarchie richiedono attenzione durante la fase di traduzione dei modelli E/R in modelli logico relazionali. Poiché infatti ilmodello relazionale non permette di rappresentare direttamente una generalizzazione, è necessario ridurre le generalizzazioni in entità e relazioni; per farlo ci sono tre vie possibili, che vedremo più avanti, ma la loro adozione è fortemente influenzata dalla tipologia di generalizzazione (t, e, nt, ne).
Basi di Dati (9023N)
Ereditarietà
PERSONA
MASCHIO FEMMINASTATO_CIVILE
COGNOME_DA_NUBILE
NOMEINDIRIZZO
Ereditarietà
MASCHIO FEMMINANOME
INDIRIZZOSTATO_CIVILE
NOMEINDIRIZZOCOGNOME_DA_NUBILE
PERSONA NOMEINDIRIZZO
Rappresentazione scorretta
Basi di Dati (9023N)
Ereditarietà
PERSONA
MASCHIO FEMMINANOME NOME
INDIRIZZO
Rappresentazione scorretta
STATO_CIVILE (0,1)COGNOME_DA_NUBILE (0,1)
Simboli grafici usati nel modello ER
Concetto Rappresentazione grafica
Entità
Relazione
Attributo
Attributocomposto
Basi di Dati (9023N)
Simboli grafici usati nel modello ER
Concetto Rappresentazione grafica
Gerarchia digeneralizza-
zione
Subset
Identificatore
Identificatoreesterno misto
B A
Esempio di schema concettuale
Basi di Dati (9023N)
Esempio di schema concettuale
RAPPORTO_SURICERCA NUMERO
TITOLO
AUTORI (1,n)
RIGUARDA
PRODUCE
ARGOMENTO_RICERCA SU PROGETTO_DI
RICERCA
RICERCATORE_PRINCIPALE
LAVORA_SU
IMPIEGATO
NOMEC_FISC
TELEFONOUFFICIO
TITOLO
SUPER-VISTO
FINANZIATA_DA
AZIENDA INDIRIZZONOME
IMPIEGATO_TRAMITE
CIFRADATA
NUM_FINANZIAMENTO
NOMENOME CODICE
(1,n)
(1,n)
(1,n) (1,n)
(1,n)
(1,1)
(1,n)(0,n)
(0,n)
(1,1)
(0,n)(1,1)
(1,1)
(1,n)
Esempio di schema concettualePERSONA ETA`
NOME
TIFOSO ALLENATORE GIOCATORE PRESIDENTE
SOSTIENE DIRIGE GIOCA_PER PRESIEDE
SQUADRA
INCONTRA_IN
SI_ALLENA
PARTITA
ASSISTE
GIOCATA_A STADIO
CITTA`CAPIENZA
NOMENUMERO
DATA
ORARIO ARBITRO (0,1)
RISULTATO (0,1)
DATANOME
(1,n)
(1,n)
(1,1)
(1,1)
(1,1) (1,1) (1,1)
(1,n)(1,n)
(1,n)
(1,1)
(1,n)(1,n)
(1,n)
(1,1) (0,n)
(1,1)