1 / 194

Modello entità-relazione

Modello entità-relazione. Fabio Massimo Zanzotto. Percorso di studio. Richiami: cosa sono le macchine? Principi di funzionamento Primo Tentativo Analisi Umano (da psicologia): Comportamentismo Modello proposto: Macchine Chiacchierone Secondo Tentativo

amalie
Download Presentation

Modello entità-relazione

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Modello entità-relazione Fabio Massimo Zanzotto

  2. Percorso di studio • Richiami: cosa sono le macchine? • Principi di funzionamento • Primo Tentativo • Analisi Umano (da psicologia): Comportamentismo • Modello proposto: Macchine Chiacchierone • Secondo Tentativo • Analisi Umano (da psicologia): Psicologia Cognitiva • Modelli proposti: • Modello entità relazione • Modello relazionale • Logica

  3. Strumenti acquisiti (Psicologia Cognitiva) • Cosa abbiamo appreso: • Possiamo trovare un linguaggio che espliciti la struttura • Il significato può essere trovato per composizione • Abbiamo tre livelli possibili: • Oggetti • Relazioni • Scripts • Possiamo trovare facilmente aggregazioni di relazioni e oggetti in ambiti specifici

  4. Domanda • Possiamo facilmente costruire un modello di rappresentazione della conoscenza utilizzando la relazione? Esempio • Pensiamo a persone hanno superato un esame tenuto da un professore Esame(Nome,Cognome,Voto,NomeProf,CognomeProf,Titolo,Data) • Vedete qualche problema?

  5. Quindi… • Lotteremo per: • Mantenere il numero di relazioni basso • Ridurre la ridondanza dei dati

  6. Strumenti acquisiti (Psicologia Cognitiva)Sistemiamo la situazione … • Nozione di concetto • Nozione di relazione • Frame Semantics (Fillmore) • Nozione di script • Uno script come collezione di relazioni e di concetti che spiegano una situazione o dominio conoscitivo • Concetti e gerarchie Subordinate Basic Superordinate

  7. Obiettivo • Trovare un linguaggio per esprimere la conoscenza di un dominio conoscitivo tale che: • Sia non ambiguo • Permetta di evitare la ridondanza • Permetta di organizzare i dati • Accogliere i dati in una struttura pre-esistente • Dare dei vincoli di riempimento Lo otterremo restringendo il linguaggio naturale

  8. Parliamo di università … un dominio conoscitivo Gli studenti hanno una matricola Zanzotto è un professore Mario è uno studente Salotto è un professore I corsi sono tenuti dai professori Il professore è una persona Gli studenti seguono i corsi nell’anno accademico Zanzotto tiene il corso di Abbbilità Informatiche Lo studente è una persona Esistono i professori I professori hanno un nome e un cognome Esistono i corsi Salotto tiene il corso di Informatica Personale Giada ha la matricola 227722 Giada è uno studente Esistono gli studenti

  9. Parliamo di università … un dominio conoscitivo Gli studenti hanno una matricola Subordinate Basic Superordinate Zanzotto è un professore Salotto è un professore Mario è uno studente I corsi sono tenuti dai professori Il professore è una persona Gli studenti seguono i corsi nell’anno accademico Zanzotto tiene il corso di Abbbilità Informatiche Lo studente è una persona Esistono i professori I professori hanno un nome e un cognome Esistono i corsi Salotto tiene il corso di Informatica Personale Giada ha la matricola 227722 Giada è uno studente Esistono gli studenti

  10. Organizziamoci Esistono i professori Esistono gli studenti Zanzotto è un professore Mario è uno studente Giada è uno studente Salotto è un professore

  11. Organizziamoci Gli studenti hanno una matricola I professori hanno un nome Zanzotto si chiama Fabio Giada ha la matricola 227722 Salotto si chiama Sabio Mario ha la matricola 337733

  12. Organizziamoci I corsi sono tenuti dai professori Zanzotto tiene il corso di Abbbilità Informatiche Salotto tiene il corso di Informatica Personale

  13. Terminologia propria delle basi di datiRipercorriamo il percorso Schema I corsi sono tenuti dai professori Zanzotto tiene il corso di Abbbilità Informatiche Istanza Salotto tiene il corso di Informatica Personale

  14. Terminologia propria delle basi di datiRipercorriamo il percorso Entità professore Esiste il Esistono gli studenti Zanzotto è un professore Mario è uno studente Giada è uno studente Salotto è un professore

  15. Terminologia propria delle basi di datiRipercorriamo il percorso Relazioni professore corso I corsi sono tenuti dai professori Zanzotto tiene il corso di Abbbilità Informatiche Salotto tiene il corso di Informatica Personale Zanzotto Abbbilità Informatiche Salotto Informatica Personale

  16. Dopo l’idea intuitiva…formalizziamo • Richiami su teoria degli insiemi con formalismi usati • Definizioni intenzionali ed estenzionali • Definizione del modello entità relazione • Entità • Attributi • Relazioni • Gerarchie • Vincoli ulteriori • Cardinalità delle relazioni

  17. Richiami Insiemi Fabio Massimo Zanzotto

  18. Rapidamente! • Insieme: collezione di elementi • A = {a,b,c} • Appartenenza ad un insieme: aA • Operazioni su insiemi • Uguaglianza: A = B • Inclusione: AB • Intersezione: C=AB • Unione: C=AB • Prodotto cartesiano: C=AB

  19. A e B • A  B = {(a,b) | a  A e b  B} • A ={mario,dario} • B ={gianna,giovanna} • A  B = {(mario,gianna), (dario,gianna), (mario,giovanna), (dario,giovanna)}

  20. Paradosso di Russell In un villaggio c'è un unico barbiere. Il barbiere rade tutti (e soli) gli uomini che non si radono da soli. Il barbiere rade sé stesso? L'insieme di tutti gli insiemi che non sono elementi di sé stessi? Esso è o no elemento di sé stesso?

  21. I = insieme degli insiemi che non contengono loro stessi • a  I  a  a • a  I  a  a • I  I  I  I • I  I  I  I

  22. Definizioni: intesionali ed estensionali Fabio Massimo Zanzotto

  23. Definizioni: intensionali ed estensionali • Definizione intensionale di un concetto o insieme • Descrizione delle proprietà per cui un elemento può appartenere all’insieme o al concetto ad es. • N è l’insieme dei numeri naturali • Impiegato è l’insieme delle persone impiegate • Definizione estensionale di un concetto o insieme • Enumerazione delle instanze del concetto ad es. • N ={1,2,3,…} • M ={2,4,6,…}

  24. Definizione del modello entità relazione Fabio Massimo Zanzotto

  25. Dove siamo.. • Richiami su teoria degli insiemi con formalismi usati • Definizioni intenzionali ed estenzionali • Definizione del modello entità relazione • Entità • Attributi • Relazioni • Gerarchie • Vincoli ulteriori • Cardinalità delle relazioni

  26. Abbiamo detto Dato un dominio conoscitivo vogliamo scrivere Modello dei dati Ovvero Uno schema Che possa controllare tutte le possibili istanze Vogliamo introdurre il linguaggio che ci permette di definire gli schemi Subordinate Basic Superordinate

  27. Programma Per ogni costrutto (ovvero elemento ammissibile del linguaggio) • Versione in linguaggio naturale • Versione in linguaggio naturale + elemento grafico Faremo degli esempi • di possibili schemi • di possibili istanze dei possibili schemi Stiamo restringendo il linguaggio naturale

  28. Entità

  29. Costrutto: entità entitàè un insieme di oggetti (fatti, persone, cose) con vita autonoma e distinguibili Si inseriscono nella descrizione del dominio conoscitivo se sono rilevanti Esempi: • impiegato • dipartimento • città Punto di vista Restrizione NL Sono i nomi importanti del dominio

  30. Costrutto: entità Rappresentazione grafica Ogni entità ha • un nome univoco • è rappresentata da un rettangolo Esempi: Impiegato Dipartimento Città Vendita

  31. Costrutto: entità Semantica / Estensione • A livello estensionale un’entità è costituita da un insieme di oggetti, che sono chiamati le sue istanze istanze(E) = {e1, e2, e3,…} che viene detto anche l’estensione di E nella istanza I di S Una istanza di entità non è un valore che identifica un oggetto, ma è l’oggetto stesso

  32. Costrutto: Entità professore professore Salotto e1 Zanzotto e2 Instanza(Professore)={e1,e2}

  33. Domanda • Qual è la definizione intesionale? • Qual è la definizione estensionale? Instanza(Professore)={e1,e2}

  34. Attributi di Entità

  35. Costrutto: attributo di entità • Un attributo di entitàèuna proprietà locale di un’entità • Un attributo e’ una funzione che associa ad ogni istanza di entità un valore appartenente ad un insieme detto dominio dell’attributo (tipicamente, interi, caratteri, stringhe, ecc.) • A : istanze(E)  D • dove A è l’attributo, E è l’entità, D è ildominio • Si definisce un attributo per l’entità E quando si vuole rappresentare una proprietà locale delle istanze dell’entità E. Impegato(cognome,età,stipendio)

  36. Costrutto: attributo di entità Rappresentazione Grafica Ogni attributo di entità • ha nome univoco nell’ambito della entità, • è rappresentato da una paletta collegata alla entità Esempi: Cognome Età Stipendio Impiegato

  37. Costrutto: attributo di entità Il dominio associato ad un attributo viene generalmente tralasciato nella rappresentazione grafica Se si indica nel diagramma, la notazione è: Cognome/stringa Stipendio/intero Impiegato

  38. Esercizio 1: attributi di entità Età/intero Impiegato Dato lo schema: La seguente è una sua istanza ? 41 S1 37 S2 29 S3 S4 34 intero Impiegato Età

  39. Esercizio 1: soluzione Età/intero Impiegato Dato lo schema: La seguente è una sua istanza ? SI’! 41 S1 37 S2 29 S3 S4 34 intero Impiegato Età da Maurizio Lenzerini

  40. Esercizio 2: attributi di entità Età/intero Impiegato Dato lo schema: La seguente è una sua istanza ? 41 S1 37 S2 29 S3 S4 34 intero Impiegato Età da Maurizio Lenzerini

  41. Basi di Dati Esercizio 2: soluzione Età/intero Impiegato Dato lo schema: La seguente è una sua istanza ? No, l’attributo Età associa due valori a S3! Ricordarsi che un attributo è una funzione. 41 S1 37 S2 29 S3 S4 34 intero Impiegato Età da Maurizio Lenzerini

  42. Relazioni tra Entità

  43. Terminologia propria delle basi di datiRipercorriamo il percorso Relazioni professore corso I corsi sono tenuti dai professori Zanzotto tiene il corso di Abbbilità Informatiche Salotto tiene il corso di Informatica Personale Zanzotto Abbbilità Informatiche Salotto Informatica Personale

  44. Costrutto: relazione Una relazione (o associazione) si definisce su due o più entità, e rappresenta un legame fra tali entità. Il numero di entità coinvolte in una relazione determina il suo grado Esempi • Risiede(Persona,Città) • Afferisce(Impiegato,Dipartimento)

  45. Costrutto: relazione Rappresentazione grafica Ogni relazione: • ha un nome univoco nello schema • è rappresentata da un rombo collegato alle entità sulle quali è definita la relazione Esempio di relazione di grado 2 (relazione binaria): Nome Crediti Cognome Età HaSuperatoEsameDel Studente Corso

  46. Costrutto: relazione • A livello estensionale una relazione R(E,F) • è costituita da un insieme di coppie (x,y), tali che x è una istanza di E, ed y è una istanza di F. • Ovvero istanze(R) = {(x1, y1), (x2, y2), (x3, y3), …} • In altre parole, una relazione è una relazione matematica. In ogni istanza dello schema si ha: istanze(R)  istanze(E) × istanze(F)

  47. S1 S2 S3 S4 Studente Relazione a livello estensionale (S1,C1) C4 (S2,C2) C1 (S2,C3) C2 (S3,C3) C3 HaSuperatoEsameDel Corso da Maurizio Lenzerini

  48. Osservazione importante Dalla semantica delle relazioni segue immediatamente che non possono esistere due istanze della stessa relazione che coinvolgono le stesse istanze di entità. (S1,C1) C4 S1 (S2,C2) C1 S2 (S2,C3) C2 S3 (S2,C3) S4 (S3,C3) C3 HaSuperatoEsameDel da Maurizio Lenzerini

  49. Sededi lavoro Esempio: Due entità possono essere coinvolte in più relazioni Residenza Impiegato Città “Sede di Lavoro” e “Residenza” rappresentano due legami diversi tra le stesse entità “Impiegato” e “Città”

More Related