il progetto concettuale -...

34
Il progetto concettuale Il progetto Il progetto concettuale concettuale 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

Upload: letram

Post on 20-Feb-2019

218 views

Category:

Documents


0 download

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)