Modelul Entitate-Asociere (EA)

Choose a study mode

Play Quiz
Study Flashcards
Spaced Repetition
Chat to Lesson

Podcast

Play an AI-generated podcast conversation about this lesson
Download our mobile app to listen on the go
Get App

Questions and Answers

Care dintre următoarele NU este un beneficiu direct al utilizării modelului Entitate-Asociere (EA) în proiectarea bazelor de date?

  • Standardizarea procesului de normalizare a datelor. (correct)
  • Simplificarea comunicării între dezvoltatori și utilizatori.
  • Oferirea unei abordări grafice intuitive pentru proiectare.
  • Facilitarea proiectării bazelor de date complexe prin segmentare.

Ce reprezintă o entitate slabă în contextul modelului Entitate-Asociere (EA)?

  • O entitate care are mai puține atribute decât alte entități.
  • O entitate care nu are atribute descriptive.
  • O entitate care nu poate fi identificată în mod unic.
  • O entitate a cărei existență depinde de o altă entitate. (correct)

Ce reprezintă gradul unei asocieri în modelul Entitate-Asociere (EA)?

  • Numărul de entități care participă la asociere. (correct)
  • Importanța asocierii în contextul bazei de date.
  • Numărul total de atribute ale asocierii.
  • Complexitatea algoritmilor utilizați pentru implementarea asocierii.

Care este diferența principală dintre un atribut de identificare și un atribut de descriere într-o entitate?

<p>Atributele de identificare sunt unice pentru fiecare instanță a entității, în timp ce atributele de descriere oferă informații suplimentare non-unice. (C)</p> Signup and view all the answers

Într-o diagramă EA, cum sunt reprezentate entitățile dependente (slabe)?

<p>Prin dreptunghiuri cu linie dublă. (C)</p> Signup and view all the answers

Ce indică conectivitatea într-o asociere din modelul Entitate-Asociere (EA)?

<p>Numărul maxim de instanțe dintr-o entitate care pot fi asociate cu o instanță din altă entitate. (A)</p> Signup and view all the answers

Ce reprezintă obligativitatea unei asocieri în contextul modelului Entitate-Asociere (EA)?

<p>Necesitatea ca o instanță a unei entități să participe la o asociere. (D)</p> Signup and view all the answers

Care dintre următoarele afirmații descrie cel mai bine o ierarhie de incluziune în modelul Entitate-Asociere (EA)?

<p>O structură în care entitățile &quot;fiu&quot; reprezintă submulțimi ale entității &quot;tată&quot;, putând exista suprapuneri între ele. (C)</p> Signup and view all the answers

Ce reprezintă o asociere ternară în modelul Entitate-Asociere (EA)?

<p>O asociere între mai mult de două entități, modelând o relație complexă. (D)</p> Signup and view all the answers

În transformarea unei diagrame EA în model relațional, ce rol au cheile străine?

<p>Să mențină relațiile dintre tabele, reflectând asocierile din diagrama EA. (B)</p> Signup and view all the answers

Când este adecvat să folosim o ierarhie de generalizare în modelul EA?

<p>Când subclasele au atribute specifice care nu sunt aplicabile superclasei. (C)</p> Signup and view all the answers

Care este scopul aplicării criteriilor de modelare în crearea unei diagrame EA?

<p>Să ghideze clasificarea corectă a informațiilor ca entități, atribute și asocieri, evitând ambiguitățile. (C)</p> Signup and view all the answers

Care dintre următoarele este un dezavantaj al utilizării identificatorilor compuși într-un model Entitate-Asociere (EA)?

<p>Pot complica crearea indexilor și pot încetini căutările. (D)</p> Signup and view all the answers

Când ar trebui să reclasificăm un atribut multivaloric ca entitate separată în modelul EA?

<p>Când este necesar să stocăm informații suplimentare despre valorile atributului. (D)</p> Signup and view all the answers

De ce este important să se evite asocierile redundante într-un model Entitate-Asociere?

<p>Toate cele de mai sus. (D)</p> Signup and view all the answers

Ce regulă ar trebui urmată atunci când identificatorul unei entități este compus din mai multe atribute, toate fiind identificatori în alte entități?

<p>Se elimină entitatea, iar informația este modelată printr-o asociere între celelalte entități. (A)</p> Signup and view all the answers

Care este un criteriu esențial pentru determinarea conectivității corecte într-o relație stabilită printr-o asociere, între două entități?

<p>Stabilirea cerințelor operaționale inițiale pentru funcționarea și modelarea viitoare a entităților. (D)</p> Signup and view all the answers

Cum influențează alegerea obligativității ramurilor unei asocieri procesul de transformare al modelului EA în modelul relațional?

<p>Determină dacă atributele folosite pentru cheile străine pot accepta valori nule. (D)</p> Signup and view all the answers

Într-un scenariu în care se constată că o asociere de tip multi-multi între două entități induce o complexitate inutilă în model, care ar fi cea mai bună strategie de abordare?

<p>Se introduce o entitate asociativă care descompune asocierea multi-multi în două asocieri unu-la-mulți. (D)</p> Signup and view all the answers

Un arhitect de baze de date se confruntă cu modelarea unei relații complexe, mai exact: un student poate fi înscris la mai multe cursuri, fiecare curs poate avea mai mulți profesori, iar fiecare profesor poate conduce mai multe cursuri. Modelarea inițială propune o asociere ternară între entitățile STUDENT, CURS și PROFESOR. Ce recomandare ați face pentru a optimiza această structură și a reduce complexitatea modelului, având în vedere criteriile de modelare?

<p>Se transformă asocierea ternară într-o entitate asociativă numită ÎNSCRIERE_CURS care conține informații despre combinația student-curs și o altă entitate asociativă numită PREDARE_CURS care conține informații despre combinația curs-profesor, conectate mai departe la entitățile inițiale prin relații binare. (C)</p> Signup and view all the answers

Flashcards

Modelul Entitate-Asociere (EA)

Un model de date folosit în proiectarea conceptuală a bazelor de date, transformabil în model relational.

Entități

Modelează clase de obiecte concrete sau abstracte despre care se colectează informații; au existență independentă.

Entitatea

Obiect generic care reprezintă mulțimea tuturor instanțelor sale. Poate fi independentă sau dependentă.

Entități Independente

Sunt cele care au existență independentă de alte entități. (sau tari) sunt cele care au existenta independenta de alte entitati.

Signup and view all the flashcards

Entități Dependente

Sunt formate din instante care isi justifica incadrarea in clasa respectiva doar atata timp cat intr-o alta entitate (tata) exista o anumita instanta de care sunt dependente.

Signup and view all the flashcards

Atribute

Proprietăți atomice distincte ale entităților, semnificative pentru aplicația respectivă.

Signup and view all the flashcards

Atribute de identificare

Reprezintă acea multime de atribute care permite identificarea unica a instantelor unei entitati.

Signup and view all the flashcards

Atribute de descriere

Sunt folosite pentru specificarea informatiilor suplimentare ale instantelor.

Signup and view all the flashcards

Asocieri

Modelează interdependențele dintre clasele de obiecte reprezentate prin entități.

Signup and view all the flashcards

Gradul Asocierii

Valoarea numerică ce indică numărul de entități participante într-o asociere.

Signup and view all the flashcards

Conectivitatea

Specifică una din două valori: unu sau multi.

Signup and view all the flashcards

Obligativitatea

Este specifică fiecărei ramuri și poate fi obligatorie sau opțională.

Signup and view all the flashcards

Ierarhia de incluziune

O submultime a entitatii Ek este o submultime a entitatii E (sau este inclusa in entitatea E) daca fiecare instanta a lui Ex este de asemenea o instanta a lui E.

Signup and view all the flashcards

Ierarhia de generalizare

O entitate E este generalizarea entitatilor E1, E2, En daca orice instanta a lui E este de asemenea instanta in una, si numai una, dintre entitatile E1, E2, En.

Signup and view all the flashcards

Atributele asocierilor

In unele cazuri o anumita informatie descriptiva este asociata cu un ansamblu de clase diferite, nu cu o singura clasa de obiecte, modelate fiecare prin entitati.

Signup and view all the flashcards

Prima regula de modelare

Criteriu general_de impartire in entitati si atribute.

Signup and view all the flashcards

Atributele multivalorice

Daca la o valoare a unui identificator corespund mai multe valori ale unui descriptor, atunci descriptorul va fi clasat ca entitate.

Signup and view all the flashcards

Asocierile a doua entitati

Entitatile sunt legate intre ele.

Signup and view all the flashcards

Atribut

Va fi atasata la o enitate pe care o descrie direct.

Signup and view all the flashcards

Rolul

In cazul in care de la o asociere pornesc mai multe ramuri catre aceeasi entitate, fiecareia dintre acestea i se poate asocia un rol.

Signup and view all the flashcards

Study Notes

  • Cursul nr. 4 se concentrează pe modelul entitate-asociere (EA).
  • Sunt descrise elementele modelului EA, extensiile acestuia, caracteristicile elementelor, criteriile de modelare, transformarea diagramelor EA în MR.

Modelul Entitate-Asociere (EA)

  • Este un model de date utilizat în proiectarea conceptuală de nivel înalt a bazelor de date.
  • Poate fi transformat în model relațional prin aplicarea unor reguli specifice.
  • Modelul EA este o abordare grafică a proiectării bazelor de date, adoptată datorită simplității și expresivității sale.
  • A fost introdus de P.P. Chen în 1976 și a fost utilizat de diverse sisteme CASE (Computer-Aided Software Engineering).
  • Înainte de aceste metodologii, se pornea de la tabele și dependențe, ajungându-se la schema bazei de date dorite prin normalizare.
  • Abordarea bottom-up este dificilă în cazul bazelor de date complexe.
  • Utilizarea modelului EA reduce probabilitatea apariției anomaliilor în exploatarea aplicațiilor.
  • Permite găsirea unor căi moderne de proiectare a bazelor de date.
  • Este intuitiv și simplu, dar și flexibil, având variante create prin abstractizări și generalizări ulterioare.
  • Extensiile modelului EA permit modelarea cerințelor de secretizare, elaborarea documentației, ușurarea comunicării și proiectarea bazelor de date complexe.
  • Prin aplicarea modelului EA, se obține o diagramă entitate-asociere care poate fi translatată în modelul de date utilizat de sistemul de gestiune a bazei de date.
  • Este independent de modelele folosite de sistemele de gestiune a bazelor de date.
  • Există algoritmi stabiliți pentru transformarea din modelul EA în alte modele.
  • Rezultatul modelării este o diagramă ce definește datele stocate și interdependențele.
  • Proiectarea se poate face modular, diagramele parțiale fiind apoi integrate. Este ușor de înțeles și interpretat.

Elementele Modelului EA

  • Reprezintă structura bazelor de date prin entități, atribute ale entităților și asocieri între entități.
  • Entitățile modelează clase de obiecte concrete sau abstracte cu existență independentă, identificabile unic.
  • Entitățile definesc obiecte sau evenimente cu importanță informațională, iar membrii claselor sunt instanțe.
  • Exemple de entități includ Studenți, Produse și Facturi.
  • Entitățile pot fi independente (tari) sau dependente (slabe), fiind un obiect generic ce reprezintă mulțimea tuturor instanțelor sale.
  • Entitățile independente au existență independentă de alte entități.
  • Entitățile dependente își justifică existența doar în prezența unei alte entități (tata). Notele sunt dependente de existența unui student în facultate.

Atributele

  • Modelează proprietăți atomice distincte ale entităților, fiind semnificative pentru aplicația respectivă.
  • Entitatea STUDENTI poate avea atribute ca Matricol, Nume, CNP și Grupa.
  • Caracteristici ca Talia nu sunt luate în considerare.
  • Atributele pot fi de identificare sau de descriere.
  • Cele de identificare permit identificarea unică a instanțelor unei entități (ex., Matricol la Studenți).
  • Cele de descriere (descriptori) specifică informații suplimentare despre instanțe.

Asocierile

  • Modelează interdependențele dintre clasele de obiecte reprezentate prin entități.
  • Între Studenți și Facultăți poate exista asocierea Înscris_la.
  • În crearea diagramei, se iau în considerare doar interdependențele necesare aplicației. Nu se vor lua in considerare alte tipuri de asocieri.
  • Entitățile se reprezintă prin dreptunghiuri (linie dublă pentru cele slabe).
  • Atributele se reprezintă prin cercuri sau ovale conectate la entitate cu un segment de dreaptă.
  • Atributele de identificare sunt subliniate.
  • Asocierile se reprezintă prin romburi (pentru două entități) sau poligoane regulate (pentru mai multe entități), conectate prin segmente de dreaptă.

Extensii ale Modelului Entitate-Asociere

  • Sunt motivate de limitările modelului clasic în modelarea caracteristicilor subclaselor.
  • Se adaugă ierarhia de generalizare și ierarhia de incluziune.
  • Ierarhia de generalizare partitionează instantele unei entitati in n subclase diferite.
  • Ierarhia de incluziune permite clasarea unora dintre instantele unei entitati in k subclase ce nu reprezinta o partitie in sens matematic.
  • O entitate Ek este o submultime a entitatii E daca Ek este inclusa in E, adica fiecare instanta a lui Ex este de asemenea o instanta a lui E.
  • Un exemplu de incluziune consta in definirea in cadrul entitatii ANGAJATI a unor subclase modelate prin entitatile INGINERI, ECONOMISTI si COLABORATORI.
  • În ierarhia de incluziune, entitățile fiu pot să nu fie disjuncte, iar reuniunea lor poate să nu acopere întreaga entitate tată.
  • O entitate E este generalizarea entitatilor E1, E2, ..., En daca orice instanta a lui E este de asemenea instanta in una, si numai una, dintre entitatile E1, E2, ..., En.
  • Un exemplu de generalizare este clasarea instantelor entitatii ANGAJATI in subclasele BARBATI si FEMEI.
  • Entitățile fiu reprezintă o partiție a entității tată (E₁ ∪ E₂ ∪...∪ Eₙ = E). Intersecția dintre Eᵢ și Eⱼ este mulțimea vidă pentru orice i diferit de j din intervalul 1..n.
  • Ierarhiile de incluziune și generalizare se folosesc doar dacă subclasele necesită stocarea unor informații suplimentare specifice.
  • Se prezintă un exemplu cu o bază de date de personal unde trebuie specificat numărul de copii ai fiecărui angajat.
  • Se poate adăuga un atribut Numar_copii la entitatea ANGAJATI.
  • Se poate crea o entitate suplimentară COPII, aflată într-o relație de incluziune cu entitatea ANGAJATI.
  • Varianta a doua este preferabilă dacă este nevoie de informații suplimentare despre copii sau dacă numărul angajaților cu date specifice este mic. Permite o economie de spațiu pe disc.

Caracteristici ale Elementelor Modelului

  • Asocierile au caracteristici care aduc informatii suplimentare, cum ar fi Gradul asocierii.
  • Gradul asocierii este o valoare numerică întreagă, reprezentând numărul de entități participante.
  • Asocierile de grad 1, 2 și 3 se numesc unare, binare și ternare.
  • Un exemplu este o bază de date cu studenți, proiecte, calculatoare și facultăți, unde unii studenți au un tutor.

Asocieri specifice

  • Asocierea Tutor este unară, implicând doar entitatea STUDENTI și indicând tutorul fiecărui student.
  • Asocierea Înscris_la este binară, implicând STUDENTI și FACULTATI, indicând facultatea studentului.
  • Asocierea Alocare este ternară, implicând STUDENTI, PROIECTE și CALCULATOARE, modelând resursele alocate (ore de lucru).
  • Se prezintă un exemplu de asociere de grad mai mare ca trei, orarul unui an de studiu.
  • Sunt implicate GRUPE (cod unic), SALI (indicativ alfanumeric), ORE (triplet: Zi, De la ora, La ora), ACTIVITATE (curs, seminar, proiect) și PROFESOR (titular).
  • Modelarea presupune stocarea și a altor informații despre ele.
  • Diagrama EA modelează programarea activităților didactice efectuate de profesori pe intervale orare, în săli și grupe.

Conectivitatea Asocierii

  • Este specifică fiecărei ramuri și poate fi unu sau multi.
  • Se determină alegând o entitate E, fixând o entitate F și determinând câte instanțe din F se pot conecta cu o instanță din E.
  • Dacă se poate conecta cel mult o instanță, ramura este unu, altfel, este multi. Verificarea se face în ambele sensuri.
  • Asocierea Tutor poate fi unu-unu sau multi-unu.
  • Asocierea Înscris_la poate fi multi-unu sau multi-multi.
  • Se analizează ramurile STUDENTI (multi), PROIECTE (unu) și CALCULATOARE (unu). Deci, asocierea Alocare este multi-unu-unu.
  • Aceeași asociere poate avea conectivități diferite în cazuri diferite.

Obligativitatea Asocierii

  • Se determină pentru fiecare ramură și poate fi obligatorie sau opțională.
  • Se alege o ramură spre o entitate E, se fixează o entitate F și se verifică dacă este obligatoriu să existe o instanță a Entitatii E asociată cu o instanță din F. Raspunsul poate fi doar da sau nu.
  • Dacă da, ramura este obligatorie, altfel, este opțională.
  • În exemplul anterior, ramurile Tutor și Alocare sunt optionale, Inscris_la este obligatorie.
  • Reprezentarea grafică implică linie continuă pentru ramurile obligatorii și linie întreruptă pentru cele opționale.
  • Obligativitatea se modelează pentru definirea unui criteriu de integritate. Atributele tabelelor relaționale pot avea sau nu valori nule.

Atributele Asocierilor

  • Uneori, o informație descriptivă este asociată mai multor clase de obiecte.
  • În acest caz, aceasta va fi modelată ca un atribut al asocierii dintre entitățile respective.
  • Se prezintă exemplul asocierii A_absolvit (multi-multi) între STUDENTI și FACULTATI.
  • Informații precum anul absolvirii, media și specializarea nu pot fi conectate nici la STUDENTI, nici la FACULTATI, ci descriu asocierea lor.
  • Toate atributele unei asocieri sunt atribute descriptive, fără identificator.
  • Rolul: unei asocieri pornesc mai multe ramuri catre aceeasi entitate, fiecareia dintre acestea i se poate asocia un rol.
  • Rolul arata semnificatiile pe care le are aceeasi entitate in cadrul asocierii respective.
  • În cazul asocierii Tutor (tutor și discipol), ce arată instanțe diferite ale aceleiași entități având roluri diferite.

Criterii de Modelare

  • Deși definițiile sunt simple, clasificarea informațiilor poate fi dificilă.
  • Pentru sediile unei bănci, Orase pot fi entitate distinctă sau atribut descriptiv al entitatii SEDII.
  • Entitățile au informații descriptive, atributele nu.
  • Dacă există informații descriptive despre o clasă de obiecte, va fi modelată ca entitate. Dacă este nevoie doar de identificator, va fi modelată ca atribut.
  • Dacă pentru un oraș este necesară stocarea judetului, a străzilor, etc., va fi o entitate. Dacă este nevoie doar de nume, va fi un atribut al altei entități.
  • Atributele multivalorice vor fi reclasificate ca entități.
  • Dacă la o valoare a unui identificator corespund mai multe valori ale unui descriptor, acesta va fi clasat ca entitate.
  • Într-o bază de date cu bănci, dacă se stochează doar bănci cu un singur sediu, Localitate este atribut al entității BANCI.
  • Reclasificarea se aplică adesea relațiilor multi-unu.

Integrarea Vederilor

  • În cazul proiectării bazelor de date complexe, activitatea se desfășoară uneori de către mai multe colective simultan, fiecare modelând o porțiune distinctă a bazei de date.
  • Fiecare colectiv modelează o porțiune distinctă a bazei de date. Diagramele rezultate sunt integrate, redundantele și inconsistentele sunt eliminate.

Transformarea Diagramelor EA în MR

  • transformarea asocierilor unare si binare unu-unu si multi-unu vor imbogati atributele descriptive ale uneia dintre cele doua scheme rezultate din entitatile asociate, cu cheia celeilalte scheme.
  • In cazul asocierilor multi-unu, identificatorul entitatii unu se adauga in entitatea multi.
  • se poate alege schema in care se face adaugarea se poate face dupa doua criterii: In schema cu cele mai putine tupluri sau in filiatia naturala dintre cele doua entitati.
  • in cazul asocierilor unare si binare la schema de relatie se ataseaza una sau doua dependente functionale primare.
  • Transformarea asocierilor unare si binare multi-multi si a celor de grad mai mare decat doi: Fiecare asociere binara multi-multi si fiecare asociere cu grad mai mare decat doi se transforma intr-o schema de relatie.

Bibliografie

  • Florin Radulescu, Rezumatul bibliografiei in domeniu (materialul de studiu cursul nr. 4)
  • Florin Radulescu, Alexandru Boicea, Baze de date online, Editura Oamenilor de Stiinta din Romania, 2011
  • Alexandru Boicea, Baze de date – Note de curs, Universitatea Politehnica din Bucuresti
  • Alexandru Boicea, Oracle SQL, SQL*Plus, Editura Printech, 2007
  • Mircea Stelian Petrescu, Baze de date I, Baze de date II – Note de curs

Studying That Suits You

Use AI to generate personalized quizzes and flashcards to suit your learning preferences.

Quiz Team

Related Documents

More Like This

Database Conceptual Data Model Example
18 questions
Entity Relationship Data Model
10 questions
Entity-Relationship (E/R) Model
20 questions
Use Quizgecko on...
Browser
Browser