Progettazione di basi di dati

Похожие документы
Il modello Entità/Relazioni (ER)

Database. Cos è un database? Intro Tipi di entità Mapping ER/EER à Relazionale

Modello Entità-Relazione (E-R)

Informatica Industriale Modello funzionale: Informazione Modello Entità-Relazione

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

Ciclo di vita di un sistema informativo

Lezione 3. Modellazione dei Dati mediante il Modello Entità Associazione (ER)

SISTEMI INFORMATIVI TERRITORIALI DATABASES -LEZIONE 3

Basi di dati. Progettazione di basi di dati: Metodologie e modelli

Il Modello Concettuale Enità-Relazione (ER)

Basi di Dati e Sistemi Informativi. Progettazione Concettuale: Il modello Entità-Relazioni

Corso di Informatica

Progettazione di basi di dati

Generalizzazione. Docente : Alfredo Cuzzocrea Tel. : Informatica

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

Modello Entità-Relazione (E-R)

Unità 3. Modello Relazionale

Progettazione di Basi di Dati. Dr. C. d'amat

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

Modello Entità-Relazione

Modello Entità-Relazione

SQL e linguaggi di programmazione. Cursori. Cursori. L interazione con l ambiente SQL può avvenire in 3 modi:

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

Basi di Dati. Il Modello Entità-Relazione. Il Modello Entità-Relazione

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

Progettare una base di dati. Progettare una base di dati

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

Le Basi di dati: progettazione concettuale

Metodologie e modelli di progetto

Atzeni, Ceri, Paraboschi, Torlone Basi di dati

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

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

Conversione Modello ER in Modello Relazionale. A.Bardine - Conversione Modello ER in Modello Relazionale

Unità Due. Modello E/R

Транскрипт:

IL MODELLO E-R Modellazione concettuale e progettazione della Base di Dati 2 Progettazione di basi di dati È una delle attività del processo di sviluppo dei sistemi informativi va quindi inquadrata in un contesto più generale: il ciclo di vita dei sistemi informativi: Insieme e sequenzializzazione delle attività svolte da analisti, progettisti, utenti, nello sviluppo e nell uso dei sistemi informativi attività iterativa, quindi ciclo

3 Studio di fattibilità Raccolta e analisi dei requisiti Progettazione Realizzazione Validazione e collaudo Funzionamento 4 Fasi (tecniche) del ciclo di vita Studio di fattibilità: definizione costi e priorità Raccolta e analisi dei requisiti: studio delle proprietà del sistema Progettazione: di dati e funzioni Realizzazione Validazione e collaudo: sperimentazione Funzionamento: il sistema diventa operativo

5 La progettazione di un sistema informativo riguarda due aspetti:! progettazione dei dati progettazione delle applicazioni Ma:! i dati hanno un ruolo centrale! i dati sono più stabili 6 Studio di fattibilità Raccolta e analisi dei requisiti Progettazione Realizzazione Validazione e collaudo Funzionamento

7 Cosa serve? Per garantire prodotti di buona qualità è opportuno seguire una metodologia di progetto, con: una decomposizione dell intera attività di progetto in passi successivi indipendenti tra loro; una serie di strategie da seguire nei vari passi; alcuni criteri di scelta in caso di alternative; alcuni modelli di riferimento per descrivere i dati di ingresso e uscita nelle varie fasi. 8 Le proprietà Una metodologia deve garantire alcune proprietà: la generalità rispetto alle applicazioni e ai sistemi in gioco la qualità del prodotto in termini di correttezza, completezza ed efficienza rispetto alle risorse impiegate la facilità d uso delle strategie e dei modelli di riferimento

9 Studio di fattibilità Raccolta e analisi dei requisiti Progettazione Realizzazione Validazione e collaudo Funzionamento Requisiti della base di dati 10 Progettazione concettuale Schema concettuale Progettazione logica Schema logico CHE COSA : analisi COME : progettazione Progettazione fisica Schema fisico

11 I prodotti della varie fasi sono schemi di alcuni modelli di dati: Schema concettuale Schema logico Schema fisico Progettazione concettuale 12 Progettazione logica Progettazione fisica

Fasi principali della progettazione di una base di dati 13 Fasi principali della progettazione di una base di dati 14

15 1) Raccolta e analisi dei requisiti Interviste ai futuri utenti della base di dati per capire e documentare i requisiti sui dati Il risultato è un documento che contiene un insieme di requisiti (specificati in modo completo e dettagliato) Inoltre è utile specificare un documento con requisiti funzionali (si usano diagrammi di flusso, di sequenza, scenari ) 16 2) Progettazione concettuale Consiste nel creare uno schema concettuale Lo schema concettuale contiene descrizioni dettagliate dei tipi di entità, delle associazioni e dei vincoli, espressi utilizzando i concetti forniti dal modello dei dati. Non contiene dettagli implementativi quindi possono essere usti per comunicare con utenti non tecnici. In questa fase le operazioni di base del modello dei dati posso essere usate per specificare le operazioni dell utente di alto livello Qui entra in gioco il MODELLO E-R

17 3) Progettazione logica Consiste nell implementazione effettiva della base di dati usando un DBMS commerciale La maggior parte dei DBMS usa un modello dei dati implementabile (modello relazionale) Il risultato è uno schema della base di dati secondo il modello relazionale 18 3) Progettazione fisica Vengono specificate le strutture di memorizzazione interna, i cammini di accesso e le organizzazioni dei file Inoltre vengono progettati e implementati i programmi applicativi

19 Modellazione E-R Il modello Entità-Associazione (ER, Entity Relationship) è un popolare modello dei dati concettuale di alto livello. Il modello (e sue variazioni) è spesso usato nella progettazione concettuale di applicazioni di basi di dati. La sua rappresentazione grafica è chiamata diagramma ER. 20 Esempio: la base di dati AZIENDA

21 Requisiti sui dati La base di dati AZIENDA tiene traccia degli impiegati, dei dipartimenti e dei progetti di un azienda. Descrizione del mini-mondo: 22 Descrizione (1) L azienda è organizzata in dipartimenti, ciascuno dei quali ha un nome e un numero univoci, più sedi e un particolare impiegato che lo gestisce. Si registrerà la data in cui quell impiegato ha cominciato a gestire il dipartimento.

23 Descrizione (2) Un dipartimento controlla un certo numero di progetti, ciascuno dei quali ha un nome e un numero univoci e una singola sede. 24 Descrizione (3) Per ciascun impiegato verrà memorizzato il nome, il numero di previdenza sociale, l indirizzo, lo stipendio, il sesso e la data di nascita. Un impiegato è assegnato a un solo dipartimento ma può lavorare su molti progetti, non necessariamente controllati dallo stesso dipartimento. Si terrà traccia del numero di ore settimanali lavorate da un impiegato su ciascun progetto e del diretto supervisore di ciascun impiegato.

25 Descrizione (4) Si registreranno a scopi assicurativi anche le persone a carico di ciascun impiegato e per ciascuna di loro verranno memorizzati il nome di battesimo, il sesso, la data di nascita e il rapporto di parentela con l impiegato. 26 Entità e loro Attributi L oggetto base rappresentato dal modello E-R è l entità E una cosa del mondo reale con un esistenza indipendente Attributi: le proprietà particolari che descrivono un entità Esempio: un entità impiegato può essere descritta da nome, età, indirizzo, stipendio e lavoro dell impiegato.

27 Esempio di Entità e Attributi 28 Tipi di Attributi Semplice VS Composto A valore singolo VS Multivalore Memorizzato VS Derivato

29 Attributi Semplici e Composti Attributi composti: possono essere divisi in parti più piccole, che rappresentano più attributi di base con significati indipendenti. Attributi semplici/atomici: non sono divisibili. Attributi composti possono formare una gerarchia sono utili per modellare situazioni in cui qualche volta si fa riferimento all attributo composto (come a un tutt uno) ma altre volte fa riferimento specificatamente ai suoi componenti 30 Attributi a valore singolo e multivalore Attributi a valore singolo: hanno un solo valore che li caratterizza. Età è un attributo a valore singolo di persona. Attributi multivalore: hanno un insieme di valori. Lauree per una persona. Una persona può: Non avere una laurea Avere una laurea Averne due o più Persone diverse possono avere numeri diversi di valori per l attributo Lauree. Possono avere limiti inferiori e superiori per il numero di valori consentiti per ciascuna singola entità.

31 Attributi memorizzati e derivati Attributo derivato: calcolato a partire da altri attributi Attributo memorizzato. Per una persona, il valore Età può essere determinato a partire dalla data corrente e dal valore di Data_nascita. 32 Valori nulli In certi casi un entità può non avere un valore per un attributo. L attributo Numero_appartamento di un indirizzo ha senso solo per quegli indirizzi che sono relativi a edifici con appartamenti e non ad altri tipi di abitazioni. L attributo Lauree ha senso solo per persone che effettivamente hanno una laurea. Si usa un valore speciale detto NULL

33 Attributi complessi Attributi composti e multivalore possono essere annidati in modo arbitrario. Attributi composti tra () Attributi multivalore tra {} 34 Tipi e insiemi di Entità Un tipo di entità definisce una collezione (o insieme) di entità (entity set) che possiedono gli stessi attributi Un tipo di entità è descritto dal suo NOME e dai suoi ATTRIBUTI In un qualsiasi istante di tempo, la collezione di tutte le entità di un particolare tipo di entità è detta insieme di entità; di solito ci si riferisce all insieme di entità usando lo stesso nome del tipo di entità. Ad esempio IMPIEGATO si riferisce sia ad un tipo di entità sia al corrente insieme di tutte le entità impiegato nella base di dati.

35 Tipi e insiemi di Entità 36 Rappresentazione grafica Un tipo di entità è rappresentato come un rettangolo con all interno il nome del tipo di entità I nomi degli attributi sono posti all interno di ovali e sono uniti ai loro tipi di entità tramite linee rette Gli attributi composti sono uniti agli attributi componenti tramite linee rette Gli attributi multivalore sono rappresentati con ovali doppi

37 Rappresentazione grafica 38 Attributi chiave di un tipo di entità (1) Un tipo di entità di solito ha un attributo i cui valori sono distinti per ciascuna singola entità nell insieme delle entità. Questo è l attributo chiave: i suoi valori possono essere usati per identificare univocamente ciascuna entità. Ciascun attributo chiave ha il suo nome sottolineato dentro l ovale. Specificare che un attributo è chiave significa che la proprietà di unicità deve valere per ogni insieme di entità di quel tipo di entità. E il vincolo che proibisce a qualsiasi coppia di entità di avere contemporaneamente lo stesso valore per l attributo chiave.

39 Attributi chiave di un tipo di entità (2) Molti attributi insieme possono formare una chiave, nel senso che la combinazione dei valori degli attributi è distinta per ciascuna entità. Se un insieme di attributi possiede questa proprietà, è possibile definire un attributo composto che diventa un attributo chiave di quel tipo di entità Alcuni tipi di entità hanno più di un attributo chiave Un tipo di entità senza chiave è chiamato tipo di entità debole 40 Esempio: la base di dati AZIENDA Definiamo 4 tipi di entità

41 Progettazione concettuale (primi passi ) Un tipo di entità DIPARTIMENTO con attributi Nome, Numero, Sedi, Direttore e Data_inizio_direttore. Sedi è l unico attributo multivalore Si può specificare che sia Nome sia Numero sono attributi chiave (separati), perché si è stabilito che ciascuno dei due deve essere univoco 42 Progettazione concettuale (primi passi ) Un tipo di entità PROGETTO con attributi Nome, Numero, Sede e Dipartimento_controllante. Sia Nome, sia Numero sono attributi chiave (separati).

43 Progettazione concettuale (primi passi ) Un tipo di entità IMPIEGATO con attributi Nome, SSN, Sesso, Indirizzo, Stipendio, Data_nascita, Dipartimento e Supervisore. Sia Nome sia Indirizzo possono essere attributi composti; tuttavia ciò non è specificato nei requisiti. Occorre tornare dagli utenti per capire se qualcuno farà riferimento ai singoli componenti di Nome o di Indirizzo. 44 Progettazione concettuale (primi passi ) Un tipo di entità PERSONA_A_CARICO con attributi Impiegato, Nome_persona_a_carico, Sesso, Data_nascita e Parentela.

45 Progettazione concettuale (primi passi ) Per rappresentare il fatto che un impiegato può lavorare su più progetti e il numero di ore di lavoro, aggiungiamo un attributo composto multivalore, Lavora_su con componenti semplici (Progetto, Ore). Progettazione concettuale (primi passi ) 46

47 Le associazioni Ogni volta che un attributo di un tipo di entità si riferisce ad un altro tipo di entità sussiste una qualche associazione. Esempio: l attributo Direttore di DIPARTIMENTO fa riferimento a un impiegato che dirige il dipartimento l attributo Dipartimento_controllante di PROGETTO fa riferimento al dipartimento che controlla il progetto l attributo Supervisore di IMPIEGATO fa riferimento ad un altro impiegato l attributo Dipartimento di IMPIEGATO si riferisce al dipartimento per cui l impiegato lavora 48 Le associazioni Un tipo di associazione R tra n tipi di entità E 1, E 2, E n definisce un insieme di legami (o di associazioni) tra le entità di questi tipi. Matematicamente: R è un insieme di istanze di associazione r i, dove ciascun r i lega n entità individuali (e 1, e 2, e 3, e n ), e ciascuna entità e j in r i è un membro di un tipo di entità E j, 1<= j <= n Un tipo di associazione può essere definito come un sottoinsieme del prodotto cartesiano E 1 x E 2 x x E n.

49 Le associazioni 50 Le associazioni Informalmente: Ciascuna istanza di associazione r i in R è un legame tra entità, dove il legame include esattamente un entità per ciascun tipo di entità partecipante. Ciascuna istanza di associazione r i rappresenta il fatto che le entità partecipanti a r i sono correlate in un qualche modo nella corrispondente situazione del minimondo.

51 Gradi di un associazione Il grado di un tipo di associazione è il numero dei tipi di entità che vi partecipano. 52 Nomi di ruolo e associazioni ricorsive Ogni tipo di entità che partecipa a un tipo di associazione recita in essa un ruolo particolare. I nomi di ruolo non sono tecnicamente necessari nei tipi di associazione dove i tipi di entità sono distinti. In casi di associazioni tra lo stesso tipo di entità (associazioni ricorsive) è importante specificare il ruolo occupato dalle entità.

53 Nomi di ruolo e associazioni ricorsive 54 Vincoli sui tipi di associazione Rapporto di cardinalità Partecipazione Sono chiamati vincoli strutturali di un tipo di associazione (quando considerati nell insieme)

55 Rapporto di cardinalità Per un associazione binaria, specifica il numero massimo di istanze di associazione a cui può partecipare un entità. Tipi di rapporto: 1:1 1:N N:1 M:N Nei diagrammi ER, sono rappresentati ponendo 1, M e N sui rombi. Esempio: In LAVORA_PER, DIPARTIMENTO:IMPIEGATO ha rapporto di cardinalità 1:N 56 Rapporto di cardinalità

57 Rapporto di cardinalità 58 Vincolo di partecipazione Specifica se l esistenza di un entità dipende dal suo essere correlata a un altra entità attraverso un tipo di associazione. Due tipi di vincoli: Totale Parziale

59 Vincolo di partecipazione totale E detta anche dipendenza di esistenza Doppia linea nel diagramma ER Esempio: la partecipazione di IMPIEGATO a LAVORA_PER è detta partecipazione totale, perché nell insieme totale, ogni impiegato deve essere correlato a un dipartimento attraverso LAVORA_PER. Ogni entità dell insieme totale di entità impiegato deve essere correlata a un entità dipartimento attraverso LAVORA _PER. 60 Vincolo di partecipazione totale

61 Vincolo di partecipazione parziale Singola linea nel diagramma ER Esempio: la partecipazione di IMPIEGATO a DIRIGE è parziale nel senso che alcune entità impiegata sono correlate ad un entità dipartimento attraverso DIRIGE, ma ciò non vale necessariamente per tutte. 62 Attributi di tipi di associazione Anche i tipi di associazione possono avere attributi analoghi a quelli delle entità Gli attributi di tipi di associazione 1:1 o 1:N possono essere trasferiti a uno dei tipi di entità partecipanti Caso 1:N, l attributo può essere trasferito solo al tipo di entità lato N dell associazione Esempio: Attributo Data_inizio dell associazione DIRIGE può essere un attributo sia di IMPIEGATO sia di DIPARTIMENTO per quanto concettualmente appartenga a DIRIGE (questo perché associazione 1:1) Ipotesi attributo Data_inizio in LAVORA_PER, questo può essere inserito come attributo di IMPIEGATO La scelta è del progettista

63 Tipi di entità debole Non hanno propri attributi chiave Vengono identificate tramite il loro collegamento con specifiche entità di un altro tipo (entità proprietario) Un tipo di entità debole ha sempre un vincolo di partecipazione totale relativo alla sua associazione identificante, perché essa non può essere identificata senza un entità proprietaria. Però non è che ogni dipendenza di esistenza (vincolo di partecipazione totale) ha come risultato un tipo di entità debole. 64 Tipo di entità debole

65 Tipi di entità debole Esiste una chiave parziale che è l insieme di attributi che possono identificare univocamente le entità deboli collegate alla stessa entità proprietaria (sottolineatura tratteggiata) Nei diagrammi ER sia il tipo di entità che la sua associazione hanno linee doppie 66 Esempio AZIENDA: raffinamento Conversione da attributi (che rappresentano associazioni) con tipi di associazioni: DIRIGE, tipo di associazione 1:1 tra IMPIEGATO e DIPARTIMENTO LAVORA_PER, tipo di associazione 1:N tra DIPARTIMENTO e IMPIEGATO CONTROLLA, tipo 1:N tra DIPARTIMENTO e PROGETTO SUPERVISIONE, tipo 1:N tra IMPIEGATO (nel ruolo di supervisore) e IMPIEGATO (nel ruolo di chi è sorvegliato) LAVORA_SU, tipo di associazione M:N, tra IMPIEGATO e PROGETTO PERSONE_A_CARICO_DI, tipo 1:N tra IMPIEGATO e PERSONA A CARICO

67 Notazioni per i diagrammi ER 68

69 Convenzioni e denominazione Nomi al singolare per i tipi di entità Tutto maiuscolo per i nomi di entità e per le associazioni Con iniziale maiuscola i nomi di ruolo e gli attributi In genere, a partire dalla descrizione narrativa : i nomi danno origine a nomi di tipi di entità I verbi tendono a indicare tipi di associazioni Diagramma ER leggibile da sinistra a destra e dall alto in basso. 70 Criteri generali per la rappresentazione Se un concetto ha proprietà significative e/o descrive classi di oggetti con esistenza autonoma, è opportuno rappresentarlo come una entità Se un concetto ha una struttura semplice e non possiede proprietà rilevanti associate, è opportuno rappresentarlo con un attributo di un altro concetto a cui si riferisce Se sono state individuate due (o più) entità e nei requisiti compare un concetto che le associa, questo concetto può essere rappresentato da una relazione [Se uno o più concetti risultano essere casi particolari di un altro, è opportuno rappresentarli facendo uso di una generalizzazione]

71 Scelte per la progettazione concettuale ER Un concetto può essere inizialmente modellato come un attributo e poi raffinato in un associazione perché si è stabilito che è un riferimento a un altro tipo di entità Un attributo che esiste in molti tipi di entità può essere raffinato in un suo tipo di entità indipendente Se esiste un tipo di entità correlato solo a un altro tipo di entità allora (forse ) l entità può essere ridotta a attributo 72 Un altra notazione (1)

73 Un altra notazione (1) Per specificare i vincoli strutturali sulle associazioni viene utilizzata una coppia di numeri interi (min, max) a ciascuna partecipazione di un tipo di entità E un tipo di associazione R, dove 0 <= min <= max e max >= 1. I numeri indicano che, per ogni entità e in E, e deve partecipare ad almeno min e al più max istanze di associazione in R, qualsiasi sia l istante di tempo considerato. min = 0 indica partecipazione parziale min > 0 indica partecipazione totale 74 Un altra notazione (2)

Tipi di associazione di grado maggiore di due 75 Il tipo di associazione ternaria FORNITURA. Tipi di associazione di grado maggiore di due 76 Tre tipi di associazione binaria non equivalenti al tipo di associazione ternaria FORNITURA.

77 Tipi di associazione di grado maggiore di due FORNITURA rappresentata come un tipo di entità debole. 78 Design Pattern Soluzioni progettuali a problemi comuni Largamente usati nell ingegneria del software Vediamo alcuni pattern comuni nella progettazione concettuale di basi di dati P. Atzeni, S. Ceri, P. Fraternali, S. Paraboschi, R. Torlone Basi di dati, 4e 2014 McGraw-Hill Education (Italy) S.r.l.

79 Un altra notazione P. Atzeni, S. Ceri, P. Fraternali, S. Paraboschi, R. Torlone Basi di dati, 4e 2014 McGraw-Hill Education (Italy) S.r.l. 80 Un entità Codice Nome Azienda IMPIEGATO P. Atzeni, S. Ceri, P. Fraternali, S. Paraboschi, R. Torlone Basi di dati, 4e 2014 McGraw-Hill Education (Italy) S.r.l.

81 Reificazione dell attributo Codice Nome Nome IMPIEGATO (1,1) IMPIEGO (1,N) AZIENDA P. Atzeni, S. Ceri, P. Fraternali, S. Paraboschi, R. Torlone Basi di dati, 4e 2014 McGraw-Hill Education (Italy) S.r.l. 82 Relazioni di tipo parte di Nome Numero CINEMA (1,N) COMPOSIZ. (1,1) SALA Nome Codice TEAM (1,N) COMPOSIZ. (0,1) TECNICO P. Atzeni, S. Ceri, P. Fraternali, S. Paraboschi, R. Torlone Basi di dati, 4e 2014 McGraw-Hill Education (Italy) S.r.l.

83 Relazione di tipo istanza-di Codice Orario Data Origine Destinazione VOLO (1,N) OCCORRENZ. (1,1) VOLO REALE Nome Anno TORNEO (1,N) OCCORRENZ. (1,1) EDIZIONE TORNEO P. Atzeni, S. Ceri, P. Fraternali, S. Paraboschi, R. Torlone Basi di dati, 4e 2014 McGraw-Hill Education (Italy) S.r.l. 84 Relazione tra entità (caso 1, 2) Matricola Data Codice (0,N) (0,N) STUDENTE ESAME CORSO Voto Matricola Data Codice STUDENTE (0,N) S-E (1,1) (1,1) ESAME E-C (0,N) CORSO Voto P. Atzeni, S. Ceri, P. Fraternali, S. Paraboschi, R. Torlone Basi di dati, 4e 2014 McGraw-Hill Education (Italy) S.r.l.

85 Relazione tra entità (caso 3) Matricola Codice Data Codice STUDENTE (0,N) S-E (1,1) (1,1) ESAME E-C (0,N) CORSO Voto P. Atzeni, S. Ceri, P. Fraternali, S. Paraboschi, R. Torlone Basi di dati, 4e 2014 McGraw-Hill Education (Italy) S.r.l. 86 Reificazione di relazione ricorsiva (1,1) (1,N) Data CASA Nome PARTITA SQUADRA Risultato (1,1) (1,N) Città OSPITE P. Atzeni, S. Ceri, P. Fraternali, S. Paraboschi, R. Torlone Basi di dati, 4e 2014 McGraw-Hill Education (Italy) S.r.l.

87 Relazione molti a molti con attributo Codice Nome Strumento Nome Tipologia MUSICISTA (1,N) PARTECIPAZ. (1,N) ORCHESTRA Codice Nome Nome Tipologia MUSICISTA (1,N) M-P (1,1) PARTECIPAZ. (1,1) P-O (1,N) ORCHESTRA (1,1) P-S (1,N) STRUMENTO P. Atzeni, S. Ceri, P. Fraternali, S. Paraboschi, R. Torlone Basi di dati, 4e Sigla Descrizione 2014 McGraw-Hill Education (Italy) S.r.l. 88 Relazione ternaria (caso 1) Codice Nome Durata Nome Indirizzo OPERATORE (1,N) (1,N) INTERVENTO (1,N) SEDE ATTIVITA Sigla Descrizione P. Atzeni, S. Ceri, P. Fraternali, S. Paraboschi, R. Torlone Basi di dati, 4e 2014 McGraw-Hill Education (Italy) S.r.l.

89 Relazione ternaria (caso 2) Codice Nome Durata Nome Indirizzo (1,N) (1,1) (1,1) (1,N) OPERATORE O-I INTERVENTO I-S SEDE (1,1) I-A (1,N) ATTIVITA Sigla Descrizione P. Atzeni, S. Ceri, P. Fraternali, S. Paraboschi, R. Torlone Basi di dati, 4e 2014 McGraw-Hill Education (Italy) S.r.l. 90 Relazione ternaria (caso 3) Codice Nome Sigla Descrizione Durata Nome Indirizzo (1,N) (1,1) (1,1) (1,N) OPERATORE O-S ATTIVITA S-I SEDE P. Atzeni, S. Ceri, P. Fraternali, S. Paraboschi, R. Torlone Basi di dati, 4e 2014 McGraw-Hill Education (Italy) S.r.l.