M2 - Bases de dades / UF1NF2: Conceptes del model entitat-relació

De wikiserver
La revisió el 12:57, 20 des 2021 per Rsort (Discussió | contribucions)
(dif) ← Versió més antiga | Versió actual (dif) | Versió més nova → (dif)
Dreceres ràpides: navegació, cerca

Les estructures bàsiques del model Entitat-Relació (model ER) es corresponen, fonamentalment, amb els conceptes proposats en la formulació original d’aquest model que va fer el Dr. Peter Pin Shan Chen en el seu treball The Entity-Relationship Model.

La notació d’aquestes construccions és fonamentalment diagramàtica. Es coneixen com a diagrames ER o diagrames Chen.

Els diagrames ER són molt eficaços a l’hora de modelitzar la realitat per obtenir un esquema conceptual entenedor.

Entitats i atributs

Una entitat és alguna cosa que existeix en el món real, distingible de la resta de coses, i de la qual ens interessen algunes propietats.

Exemple entitat

Les entitats poden tenir una existència física, com per exemple una persona, un cotxe o un llibre, però també poden consistir en conceptes més abstractes, com ara una assegurança o un deute.

Exemple d'entitat
Imaginem que estem dissenyant la BD d’un institut de secundària, dedicat a l’ensenyament de diferents cicles formatius de formació professional. Cada persona concreta, alumne de l’institut esmentat, existeix en el món real i, per tant, es pot considerar una entitat.

Les entitats en els diagrames ER es representen amb un rectangle.

Amb el terme entitat es pot fer referència a un objecte específic del món real, però també a un conjunt d’objectes semblants, dels quals ens interessen les mateixes característiques. Per tant, hem de distingir:

  • Entitats-instància, com a objectes concrets del món real (per exemple, l’alumne Manel Riba és una entitat-instància).
  • Entitats-tipus, com a conjunts d’entitats-instància (per exemple, l’entitat tipus alumne).

Anomenem atributs les característiques que ens interessen de les entitats.

Habitualment, només ens interessarà modelitzar una part dels atributs d’una entitat, ja que hi podrà haver dades que només seran d’utilitat en àmbits molt específics.

Exemples d'atributs
En una entitat-instància referent als alumnes d’un institut, ens pot resultar interessant recollir certes dades personals, per tal d’identificar correctament els alumnes a l’hora de comunicar-nos amb ells, o d’expedir notes i títols acadèmics, com ara el DNI, el nom, els cognoms, l’adreça, el telèfon, etc.
En canvi, altres dades de la mateixa entitat no seran d’interès per a nosaltres, encara que sí que ho puguin ser per a una BD que pertanyi a un altre àmbit. Per exemple, des d’un punt de vista sanitari, podria ser interessant registrar l’alçada, el pes o el grup sanguini d’aquestes mateixes persones.

Els atributs en els diagrames ER es representen amb una el·lipse.

Exemples atributs

Domini dels atributs

Conjunt de valors acceptables per a l'atribut en qüestió.

Exemples de domini i de valors vàlids
El domini de l’atribut Nom de l’entitat ALUMNE podria consistir en el conjunt de totes les cadenes de caràcters possibles d’una longitud determinada, tot excloent les xifres i els caràcters especials. Serien valors vàlids per a l’atribut Nom, definit d’aquesta manera, “Laia”, “Pol”, etc. En canvi, no ho serien, per exemple, una data, un nombre o una cadena de caràcters que n’inclogués algun d’especial, com ara “Mariona”.

Valor nul dels atributs

Els atributs d’una entitat-instància poden no tenir cap valor per a algun atribut concret. En aquests casos, també es diu que l’atribut té valor nul.

Exemple de valor nul
Pot passar que un alumne no tingui telèfon. Aleshores, l’atribut Telefon de l’entitat ALUMNE no contindrà cap valor o, dit d’una altra manera, tindrà un valor nul.

Atributs simples i compostos

Un atribut simple no es pot dividir en parts més petites sense que això comporti la pèrdua del seu significat.

Exemple d'atribut simple
L’atribut Nom és un atribut simple, perquè el seu significat és indivisible (encara que en alguns casos emmagatzemi noms compostos, com ara Joan Manel), i per tant no té sentit dividir el seu valor en cadenes de caràcters més petites per tractar-les per separat.

Un atribut compost és el que està subdividit en parts més petites (que també tenen la consideració d’atributs), les quals tenen un significat propi.

Exemple d'atribut compost
L’atribut Cognoms es pot tractar com un atribut compost, perquè es pot dividir en dues parts més petites (dos atributs, en definitiva) que emmagatzemin, una, el primer cognom, i l’altra el segon cognom. Aquests dos atributs es poden tractar per separat sense problemes.
Com que moltes persones estrangeres només tenen un cognom, en aquest exemple, l’atribut Cognom1 sempre tindrà algun valor per a qualsevol entitat-instància, però l’atribut Cognom2 haurà d’admetre valors nuls.
Exemple atribut compost

Pot resultar interessant utilitzar atributs compostos si ens consta que els usuaris es referiran, de vegades, a l’atribut globalment considerat, i de vegades als seus components per separat.

D’altra banda, els atributs compostos agrupen els atributs relacionats, estructurant-los jeràrquicament, de manera que normalment contribueixen a la comprensibilitat dels models.

Atributs monovaluats i multivaluats

Un atribut monovaluat és el que només pot emmagatzemar, com a màxim, un sol valor per a cada entitat instància concreta, en un moment determinat.

Exemple d'atribut monovaluat
És evident que cada persona només pot tenir un DNI vàlid. Per tant, l’atribut DNI de l’entitat ALUMNE s’haurà de tractar necessàriament com un atribut monovaluat.

Un atribut multivaluat pot emmagatzemar, per a cada entitat instància concreta, diferents valors al mateix temps.

Exemple atribut multivaluat
Exemple d'atribut multivaluat
En el món real, una persona pot tenir més d’un telèfon. Per exemple, pot disposar d’un telèfon fix al domicili particular, d’un altre a la feina, i a més pot tenir un telèfon mòbil. Per tant, l’atribut Telefon de l’entitat ALUMNE es pot tractar com un atribut multivaluat.

Els atributs multivaluats es representen en els diagrames ER amb una el·lipse de doble traç.

Cardinalitat dels atributs

Si cal, es poden especificar a continuació del nom de l’atribut, entre parèntesis i separats per comes, el límit màxim i el mínim de valors que s’han d’emmagatzemar, això és la cardinalitat dels atributs. I es poden presentar les opcions següents:

  • NomAtribut (1, 1): atribut univaluat obligatori (valor per defecte, si no s’especifica res).
  • NomAtribut (0, 1): atribut univaluat opcional (admet valors nuls).
  • NomAtribut (1, n): atribut multivaluat obligatori (no admet valors nuls).
  • NomAtribut (0, n): atribut multivaluat opcional (admet valors nuls).
Exemples de límits superior i inferior
Seguint amb el cas de l’atribut Telefon, es podria establir, per exemple, un límit inferior a 0 (ja que un alumne pot no disposar de cap telèfon durant un període de temps determinat) o a 1 (si volem obligar l’alumne a donar un telèfon de contacte, encara que no sigui el seu, sinó el d’un familiar, amic o veí).
I es podria limitar el nombre màxim de telèfons a emmagatzemar, per exemple, a 2 (si es preveu la possibilitat, força habitual, de tenir un fix i un mòbil) o a 3 (si, a més, considerem la possibilitat de registrar el telèfon del centre de treball).

Atributs derivats

Es diu que un atribut és derivat quan el seu valor es pot calcular a partir d’altres atributs o bé d’altres entitats interrelacionades.

Quan un atribut serveix per calcular el valor d’un atribut derivat, se’l considera atribut base d’aquest.

Exemples d'atribut derivat
Podríem necessitar saber quina és l’edat en anys dels alumnes, per tal de permetre’ls sortir o no de l’institut durant els períodes d’esbarjo, en funció d’aquella. Si l’entitat ALUMNE té un atribut anomenat DataNaixement, en podríem modelitzar un altre de derivat, anomenat Edat, que es calculés a partir de la data actual (prenent la data del sistema) de la data de naixement (registrada en l’atribut DataNaixement).
També podríem necessitar saber el nombre total d’assignatures a les quals està matriculat cada alumne. Podríem establir un atribut derivat anomenat NombreAssignatures, el valor del qual es calcul és en funció del nombre d’ocurrències d’una altra entitat-tipus anomenada ASSIGNATURA interrelacionades amb cadascuna de les instàncies de l’entitat ALUMNE.
Exemple atribut derivat

Els atributs derivats constitueixen una redundància, és a dir, una repetició normalment innecessària de dades. Per aquest motiu, les dades dels atributs derivats inclosos en els diagrames ER no s’acostumen a emmagatzemen (i molt especialment si traduïm aquest esquema conceptual a l’esquema lògic més freqüentment utilitzat, és a dir, al model relacional), sinó que es calculen quan és necessari.

Clau primària

L’atribut o el conjunt d’atributs que identifiquen unívocament les entitats instància s’anomenen clau primària de l’entitat.

La clau primària en els diagrames ER es representa subratllant els atributs que la formen.

Exemples de clau primària
Podríem seleccionar l’atribut DNI de l’entitat ALUMNE com a clau primària, ja que sabem que en el món real no han d’existir dos documents d’identitat iguals i, per tant, ens servirà amb tota seguretat per distingir qualsevol alumne de la resta.
En els països on no existeixen documents d’identitat, com els anglosaxons, hauríem d’optar per una solució alternativa. Podríem afegir al nostre model un atribut identificador, de tipus codi, encara que aquest no existís al món real: CodiAlumne.
O també podríem considerar com a clau primària un conjunt d’atributs tal que fes impossible o, si més no, molt difícil, que es repetissin les combinacions dels seus valors per a diferents entitats-instància: Nom+Cognoms+Telefon.
Exemple clau primaria

Notació

Notacions ER alternatives
Actualment no existeix cap notació estandarditzada universalment per representar els esquemes del model ER. Cada recurs bibliogràfic o cada programari de disseny presenta, doncs, variacions i ampliacions sobre la reduïda notació proposada originàriament per Peter Chen.

El model ER ens permet representar entitats i atributs mitjançant una senzilla notació diagramàtica.

En aquesta representació respectarem les característiques següents:

  • Com a regla general, no farem servir accents ni caràcters especials, només lletres i xifres.
  • Representarem les entitats tipus escrivint el seu nom en majúscules i en singular, a dins d’un rectangle.
  • Representarem cada atribut escrivint el seu nom amb la primera lletra en majúscula i la resta en minúscules, dins d’una el·lipse unida amb un guió amb el rectangle que representa l’entitat tipus de la qual formen part:
  • Si un atribut té un nom compost, cada nom començarà amb majúscula per tal de fer-lo més llegidor. Per exemple, TelefonFix, TelefonMobil.
  • Si el nom d’un atribut correspon a unes sigles, ha d’anar íntegrament en majúscules, com ara DNI (document nacional d’identitat).
  • Les el·lipses dels atributs en què es pot descompondre un atribut han d’anar unides amb un guió amb l’el·lipse de l’atribut compost.
  • L’el·lipse d’un atribut multivaluat estarà formada per un traç doble.
  • Els límits d’un atribut multivaluat, en cas d’existir, s’han d’especificar a continuació del nom de l’atribut, entre parèntesis i separats per una coma.
  • L’el·lipse d’un atribut derivat estarà formada per un traç puntejat.
  • Els atributs que formen part d’una clau primària han d’anar subratllats.

Si hem d’establir qualsevol altra característica de les dades que no tingui predefinida una notació diagramàtica concreta, haurem d’afegir al diagrama les especificacions textuals necessàries.

Interrelacions

Una interrelació consisteix en una associació entre dues o més entitats (referència tant a una associació entre diferents entitats instància, como entre diferents entitats tipus).

Exemple d'interrelació
Ja coneixem l’entitat ALUMNE. Però per dissenyar la BD del nostre institut necessitarem més entitats. Per exemple, serà convenient disposar d’una entitat per emmagatzemar les assignatures que conformin l’oferta formativa del centre. Podem anomenar, aquesta nova entitat, ASSIGNATURA.
En un centre educatiu, els alumnes es matriculen d’assignatures. Doncs bé, per modelitzar aquesta característica del món real, no necessitarem cap nova entitat. Només ens caldrà establir una associació entre les dues entitats de què disposem, ALUMNE i ASSIGNATURA, mitjançant una interrelació.
D’aquesta manera, modelitzarem l’associació de cada alumne amb totes les assignatures en què estigui matriculat, i, recíprocament, de cada assignatura amb tots els estudiants respectius. Podríem anomenar aquesta interrelació, per exemple, Matricula.

Les interrelacions en els diagrames ER es representen amb un rombe.

Exemple d'interrelaciló

Atributs de les interrelacions

De vegades, ens pot interessar reflectir algunes característiques de determinades interrelacions. La manera de fer-ho és afegir els atributs necessaris, com faríem si treballéssim amb entitats. Aquests atributs són els atributs de la interrelació.

Exemple d'atribut d'interrelació
La secretaria del nostre institut necessitarà tenir constància, com a mínim, de la nota final obtinguda per cada alumne en cada assignatura en què s’hagi matriculat alguna vegada.
La manera més senzilla de fer-ho seria afegir, a la interrelació Matricula, un atribut anomenat, per exemple, NotaFinal, que servís per emmagatzemar aquesta dada per a cada associació existent entre instàncies de les entitats ALUMNE i ASSIGNATURA.
Exemple d'atribut d'interrelaciló

Les propietats dels atributs de les interrelacions són idèntiques a les descrites prèviament en relació als atributs de les entitats.

Grau de les interrelacions

El grau d’una interrelació depèn del nombre d’entitats que aquesta associa.

la figura del subapartat anterior “Atributs de les interrelacions” mostra un exemple d’interrelació de grau dos (només associa dues entitats: ALUMNE i ASSIGNATURA).

Les interrelacions de grau dos també s’anomenen binàries. I les de grau superior a dos s’anomenen genèricament n-àries. Les interrelacions n-àries de grau tres també poden ser anomenades ternàries, i les de grau quatre, quaternàries.

Exemple d'interrelació de grau tres
Fins ara, la interrelació Matricula només permet emmagatzemar una matrícula de cada alumne en cada assignatura, i el seu atribut NotaFinal només permet reflectir una sola nota final de curs.
Però aquest esquema no permet modelitzar el fet que un alumne es pot haver de matricular més d’un cop d’una mateixa assignatura (i obtenir una nota final en cada nova matrícula) fins a obtenir una qualificació igual o superior a l’aprovat.
Una manera d’aconseguir representar aquesta característica del món real consistiria a afegir, en nostre disseny, una nova entitat que fes referència a l’element temporal. La podríem anomenar CURS, per exemple.
I, a continuació, només cal que la interrelació Matricula (tot conservant l’atribut NotaFinal) interrelacioni tres entitats: ALUMNE, ASSIGNATURA i CURS.
I el nou esquema ja permetrà registrar matrícules successives d’un mateix alumne en una mateixa assignatura, però al llarg de diferents cursos acadèmics, amb les respectives qualificacions obtingudes.
Exemple d'interrelaciló de grau tres

Connectivitat de les interrelacions

La connectivitat (també anomenada cardinalitat) d’una interrelació indica el tipus de correspondència que hi ha entre les ocurrències de les entitats que ella mateixa permet associar.

Tractant-se d’interrelacions binàries, la cardinalitat expressa el nombre màxim d’instàncies d’una de les entitats amb les quals una instància de l’altra entitat pot estar associada segons la interrelació en qüestió.

Una N en un costat de la interrelació també es representa freqüentment amb un asterisc (*).

Les interrelacions binàries poden oferir tres tipus de connectivitat:

  • Un a un (1:1)
  • Un a uns quants (1:N)
  • Uns quants a uns quants (N:M)

Un 1 al costat d’una entitat indica que, com a màxim, només una de les seves instàncies (la qual podrà variar en cada cas) tindrà la possibilitat d’estar associada amb cadascuna de les instàncies de l’altra entitat.

Si més d’un extrem de la interrelació té una N, per raó d’elegància es representa amb consonants successives, començant per M: M, N, P, Q, etc.

La cardinalitat 1 també es pot representar convertint la línia que uneix la interrelació amb l’entitat en una fletxa que apunti cap a l’entitat.

En canvi, una N (o una M) al costat d’una entitat indica que serà una pluralitat de les seves instàncies (les quals també podran variar en cada cas) la que tindrà la possibilitat d’estar associada amb cadascuna de les instàncies de l’altra entitat.

La cardinalitat N (o M) també es pot representar amb una fletxa de doble punta que vagi de la interrelació cap a l’entitat.

És molt important adonar-se que, independentment del tipus de connectivitat, una interrelació només permet associar una sola vegada unes entitats instància determinades entre elles.

Exemple de connectivitat 1:1
Com els alumnes, els professors també formen part de la comunitat educativa (a més d’altres col·lectius que de moment no necessitem tenir en compte).
Els professors s’organitzen professionalment en departaments, en funció de la seva especialitat (per exemple: matemàtiques, filosofia, informàtica, etc.).
Per tal de reflectir aquestes dues realitats, haurem d’afegir al nostre model dues noves entitats: PROFESSOR i DEPARTAMENT.
Cada departament és coordinat per un sol professor, i un professor només pot coordinar un sol departament. Per tal de reflectir aquesta circumstància, haurem d’establir una interrelació entre les entitats PROFESSOR i DEPARTAMENT amb cardinalitat 1:1. Podem anomenar la nova interrelació Coordina.
Exemple de connectivitat 1:1
Exemple de connectivitat 1:N
Ja sabem que tot professor d’institut està assignat a un departament. Però encara ens falta establir una nova interrelació entre PROFESSOR i DEPARTAMENT que reflecteixi aquesta realitat. La podem anomenar Treballa.
Exemple de connectivitat 1:N
Com que cada professor només pot treballar a un departament, al costat de la interrelació que connecta l’entitat DEPARTAMENT, hi anirà un 1.
Inversament, com que cada departament pot tenir més d’un professor assignat, al costat de la interrelació que connecta l’entitat PROFESSOR, hi anirà una N.
Exemple de connectivitat N:M
Imaginem que al nostre institut s’organitzen activitats esportives extraescolars. Cal incorporar al nostre model una nova entitat (que podem anomenar ESPORT, per exemple) i una nova interrelació que l’associï amb l’entitat ALUMNE (que podem anomenar Practica).
Els alumnes tenen la possibilitat d’inscriure’s com a practicants d’un o més esports. I els esports, evidentment, poden ser practicats per més d’un alumne. Per tant, a un costat de la interrelació, hi anirà una N, i a l’altre una M.
Exemple de connectivitat M:N

Dependències d'existència a les interrelacions binàries

De vegades, una entitat instància només té sentit si existeix com a mínim una altra entitat instància associada amb ella mitjançant una interrelació binària determinada. En aquests casos, es diu que la darrera entitat és una entitat obligatòria per a la interrelació. Altrament, es diu que es tracta d’una entitat opcional per a la interrelació.

Les entitats opcionals en els diagrames ER es representen superposant un cercle a la línia que uneix l’entitat a la relació.

Les entitats obligatòries en els diagrames ER es representen superposant un petit guió a la línia que uneix l’entitat a la relació.

Exemple de dependència  d'existència

Un cercle en la línia de connexió entre una entitat i una interrelació indica que l’entitat és opcional en la interrelació. L’obligatorietat d’una entitat en una interrelació s’indica amb un guionet perpendicular a la línia que uneix l’entitat amb la interrelació. Si no es consigna ni un cercle ni una línia perpendicular, es considera que la dependència d’existència és desconeguda.

Tindrem en compte aquesta característica només pel que faci a les interrelacions binàries, però no a les n-àries.

Exemple de dependències d'existència
L’entitat PROFESSOR és obligatòria en la interrelació Coordina. D’aquesta manera, s’indica que no pot existir un departament que no tingui cap professor que faci de coordinador del departament. L’entitat DEPARTAMENT, en canvi, és opcional en la interrelació Coordina, ja que la majoria dels professors no coordinaran cap departament.

Interrelacions ternàries i n-àries

La cardinalitat de les interrelacions n-àries expressa el nombre màxim d’instàncies d’una de les entitats amb les quals una combinació concreta d’instàncies de les altres entitats pot estar associada segons la interrelació en qüestió.

Les interrelacions ternàries poden oferir quatre tipus de connectivitat:

  • 1:1:1
  • 1:1:N
  • 1:M:N
  • M:N:P
Exemple de connectivitat M:N:P
Ja coneixem la interrelació Matricula, que associa les entitats ASSIGNATURA, ALUMNE i CURS. Però encara no hem establert les seves cardinalitats.
Un alumne, en un curs determinat, es pot matricular d’unes quantes assignatures. Per tant, al costat de l’entitat ASSIGNATURA, hi haurà una N (però si només es pogués matricular d’una sola assignatura, hi hauria d’haver un 1).
Un alumne es pot haver de matricular d’una mateixa assignatura durant més d’un curs acadèmic, fins que la superi. Per tant, al costat de l’entitat CURS, hi haurà una N (però si només fos possible matricular-se un cop d’una assignatura, hi hauria d’haver un 1).
I és evident que, durant un curs acadèmic, diferents alumnes poden estar matriculats en una mateixa assignatura. Per tant, al costat de l’entitat ALUMNE, també hi haurà una N (però si només s’acceptés la matrícula d’un alumne per assignatura i curs, hi hauria d’haver un 1).
Exemple de connectivitat M:N:P

Límits de cardinalitat

De vegades, pot resultar útil establir límits mínims i màxims a les cardinalitats de les interrelacions. Per fer-ho, només cal afegir una etiqueta del tipus mín..màx, per tal d’expressar els límits respectius, al costat de la línia que uneix cada entitat amb la interrelació.

Els valors mín i màx podran tenir els valors següents:

  • Zero, per indicar la possibilitat que no existeixi cap associació entre instàncies.
  • Qualssevol nombres enters, per indicar un límit mínim o màxim concret de possibilitats d’associació entre instàncies.
  • Un asterisc (*), per indicar la possibilitat d’un nombre il·limitat d’associacions entre instàncies.
Exemple de límits de cardinalitat
Ja coneixem la interrelació Coordina, que associa les entitats PROFESSOR i DEPARTAMENT amb cardinalitat 1:1.
Cada departament ha de tenir assignat un, i només un, professor que el coordini. Per tal de reflectir aquesta limitació, haurem d’afegir l’etiqueta 1..1 al costat de la línia que uneix l’entitat PROFESSOR amb la interrelació Coordina.
D’altra banda, no tots els professors s’encarreguen de coordinar un departament (de fet, el més freqüent és que no se n’encarreguin). I si ho fan, només es poden encarregar de la coordinació d’un. Per tal de reflectir aquesta limitació haurem d’afegir l’etiqueta 0..1 al costat de la línia que uneix l’entitat DEPARTAMENT amb la interrelació Coordina.
Exemple de límits de cardinalitat

Interrelacions recursives

Una interrelació recursiva associa les instàncies d’una entitat amb altres instàncies de la mateixa entitat.

Es diu que una interrelació recursiva és de grau 2 (o binària) si només hi participa una entitat, la qual es relaciona amb ella mateixa.

Exemple d'interrelació recursiva binària
Imaginem que al nostre institut s’estableix, com a requisit per cursar certes assignatures, el fet d’haver superat prèviament una altra o unes altres assignatures.
Podríem modelitzar aquesta situació mitjançant una interrelació recursiva binària sobre l’entitat ASSIGNATURA, i anomenar-la, per exemple, Prerequisit.
Si considerem que cada assignatura pot tenir més d’una altra assignatura com a prerequisit, i que al mateix temps cada assignatura pot ser prerequisit d’una pluralitat d’assignatures, la cardinalitat hauria de ser M:N.

Les interrelacions recursives en els diagrames ER es representen connectant una mateixa entitat més d’una vegada, mitjançant una única relació.

Exemple d'interrelació recursiva binaria

Si en una interrelació recursiva participen, addicionalment, més entitats, parlarem d’interrelacions recursives de grau 3 (o ternàries), de grau 4 (o quaternàries), i així successivament.

Exemple d'interrelació recursiva ternària
Cada alumne del nostre institut té un delegat per assignatura, que el representa davant del professorat que la imparteix, per tal de fer més fluïdes les comunicacions sobre les qüestions relatives al funcionament d’aquella que no siguin d’índole personal.
Podríem modelitzar aquesta situació mitjançant una interrelació recursiva ternària, anomenada, per exemple, Delegat. Una ocurrència d’aquesta interrelació associarà un alumne que actuarà com a delegat en l’àmbit d’una assignatura, un altre alumne que actuarà com a estudiant de la mateixa assignatura, i l’assignatura en qüestió.
La connectivitat és 1:M:N. En els dos costats de l’entitat ALUMNE hi ha un 1 i una N, perquè, d’una banda, un delegat d’una assignatura pot representar més d’un estudiant (N), i, d’una altra banda, un estudiant d’una assignatura només pot tenir un sol representant en l’àmbit d’aquesta (1). I al costat de l’entitat ASSIGNATURA hi ha una M, perquè un alumne pot actuar com a representant d’un altre en diferents àmbits, corresponents a diferents assignatures.
Exemple d'interrelació recursiva ternaria

En una interrelació no recursiva, el paper, o rol, que interpreta cada entitat implicada se sobreentén i, per tant, no cal especificar-lo.

En el cas de les interrelacions recursives, pot tenir importància especificar els diferents papers o rols que interpreten les instàncies d’una mateixa entitat, si aquests rols no coincideixen plenament. Si el rol és exactament el mateix, no cal especificar-lo.

Exemple de diferenciació de rols
Podríem etiquetar les dues línies de la interrelació Prerequisit com a “pre” i “post”, per exemple, per tal de modelitzar en el primer cas el rol de prerequisit acadèmic i, en el segon cas, el rol d’assignatura autoritzada.
Exemple de diferenciació de rols

Notació

Com amb les entitats, la notació diagramàtica per representar les interrelacions i les seves propietats també és força senzilla:

  • Tota interrelació es representa amb un rombe, que va unit, mitjançant línies, a totes les entitats que associa.
  • Els atributs d’una interrelació, quan existeixen, es representen de la mateixa manera que els atributs d’una entitat.
  • La connectivitat d’una interrelació es representa afegint una etiqueta amb un 1 o una N, segons calgui, a cadascuna de les línies que la uneix amb les entitats que hi participen.
  • L’opcionalitat es representa superposant un cercle a la línia de connexió corresponent, i l’obligatorietat, superposant un petit guió perpendicular a la línia de connexió de què es tracti.
  • Si cal establir límits (0, enter, *) a la cardinalitat d’una interrelació, s’ha d’afegir a cadascuna de les seves línies de connexió una etiqueta amb el límit inferior i el superior separats per dos punts seguits.
  • La recursivitat d’una interrelació es representa fent arribar dues línies de connexió a la mateixa entitat. Si participen més entitats de la mateixa interrelació recursiva, s’hi han de fer arribar les línies de connexió corresponents des de la interrelació.
  • Si cal fer una diferenciació dels rols d’una interrelació recursiva, s’ha d’afegir una etiqueta, amb l’especificació textual adequada, al costat de cadascuna de les línies de connexió.

Entitats febles

Les entitats que disposen d’un atribut o, si no, d’un conjunt d’atributs capaços d’establir una clau primària que serveixi per distingir cada instància de l’entitat de la resta d’ocurrències es poden anomenar, més específicament,entitats fortes.

Les entitats febles són aquelles que no disposen de prou atributs per a designar unívocament les seves instàncies. Per tal d’aconseguir-ho, han d’estar associades, mitjançant una interrelació, amb una entitat forta que les ajudi.

La interrelació entre una entitat feble i la seva forta associada és sempre de cardinalitat 1:N, i es resta l’1 al costat de l’entitat forta, i la N al costat de la feble.

Cada instància d’una entitat feble està associada amb una única ocurrència de l’entitat forta (per això és en el costat 1 de la interrelació), i així és possible completar-ne la identificació de manera única.

D’altra banda, l’entitat del costat 1 ha de ser obligatòria en la interrelació perquè, si no fos així, alguna instància de l’entitat feble podria no estar associada amb cap de les ocurrències de l’entitat forta i, aleshores, no es podria identificar completament.

Les entitats febles, doncs, no tenen clau primària, però sí un atribut (o un conjunt d’atributs) anomenat discriminant, que permet distingir entre elles totes les instàncies de l’entitat feble que depenen d’una mateixa instància de l’entitat forta.

Tot i no ser un cas gaire freqüent, es poden encadenar entitats febles, de tal manera que una entitat que actuï com a part feble en la interrelació que mantingui amb una altra entitat, pot actuar al mateix temps com a entitat forta respecte a una altra entitat que, al seu torn, la necessiti per identificar completament les seves instàncies.

Addicionalment a la interrelació que els serveix per identificar-se completament, les entitats febles poden participar en altres interrelacions, com qualsevol altra entitat.

Exemple d'entitat feble
Ha arribat el moment d’establir una clau primària per a l’entitat ASSIGNATURA. Podríem adoptar una codificació derivada de la utilitzada en els currículums oficials: C1, C2, C3, etc. (de Crèdit 1, Crèdit 2, i així successivament). Podríem anomenar aquest atribut CodiAssignatura. Però això no permetria distingir les assignatures dels diferents cicles formatius impartits en el nostre institut.
Per aconseguir la identificació inequívoca de cada crèdit, en primer lloc hauríem de comptar amb una nova entitat anomenada, per exemple, CICLE, per emmagatzemar tots els cicles impartits al centre. Aquesta entitat seria forta, i les seves instàncies es distingirien inequívocament les unes de les altres mitjançant una clau primària que es podria dir CodiCicle.
A continuació, hauríem d’establir una interrelació binària anomenada, per exemple, Curriculum, en la qual participés l’entitat ASSIGNATURA com a entitat feble, en el costat N de la interrelació, i l’entitat CICLE com a entitat forta, en el costat 1.

Les relacions febles en els diagrames ER es representen amb un rectangle de doble línia.

Exemple d'entitat feble

Notació

Per incorporar les entitats febles als diagrames ER, cal aplicar unes poques regles de notació addicionals:

  • Les entitats febles es representen escrivint el seu nom en majúscules i en singular, dins d’un rectangle dibuixat amb una línia doble.
  • La interrelació que uneix l’entitat feble amb la seva forta es representa amb un rombe també de línia doble.
  • Aquest rectangle s’ha d’unir, igualment amb una línia doble, amb la interrelació que l’associa amb la seva entitat forta de la qual depèn.
  • L’atribut o el conjunt d’atributs que actuïn com a discriminants han d’anar subratllats amb una línia discontínua.

Extensions del model Entitat-Relació

Les estructures bàsiques del model Entitat-Relació (model ER) permeten representar la majoria de situacions del món real que habitualment cal incorporar en les BD. Però, de vegades, certs aspectes de les dades s’han de descriure mitjançant unes construccions més avançades del model ER, les quals comporten una extensió del model ER bàsic. Aquestes ampliacions del model ER consisteixen en l’especialització, la generalització i l’agregació, d’entitats.

Especialització i generalització

Ens podem trobar amb el cas d’alguna entitat tipus en què -a més de les característiques generals, comunes a totes les seves instàncies- ens interessi modelitzar, addicionalment, certes característiques específiques aplicables només a part de les seves instàncies.

Aleshores, podrem considerar que aquesta entitat tipus conté altres entitats tipus, de nivell inferior, amb característiques pròpies.

          L’especialització permet reflectir l’existència d’una entitat general, anomenada 
          entitat superclasse, que es pot especialitzar en diferents entitats subclasse. 

L’entitat superclasse permet representar les característiques comunes de l’entitat des d’un punt de vista general. Les entitats subclasse, en canvi, permeten representar les característiques pròpies de les especialitzacions de l’entitat superclasse.

Les instàncies de les subclasses han de ser, al mateix temps, instàncies de la superclasse respectiva.

El procés de designació de subclasses a partir d’una superclasse s’anomena especialització.

        Exemple d'especialització

        Fins ara comptàvem amb una única entitat PROFESSOR, que ens servia per treballar
        amb tots els docents del centre, ja que encara no havíem detectat cap subconjunt
        d’aquest col·lectiu que ens hagués fet pensar en implementar-ne una especialització.

        Però resulta que la direcció del centre vol implicar, en la gestió d’aquest i en el 
        seu manteniment informàtic, el professorat de dues famílies professionals: l’administrativa
        i la informàtica, respectivament.

        Per tant, ens interessa tenir constància, d’una banda, de la titulació dels professors 
        de la família administrativa i de la seva especialitat, ja que en funció d’aquestes
        característiques podran assumir, o no, les responsabilitats que se’ls volen encomanar.

        També pot resultar útil saber quina és l’especialitat principal, tant en maquinari com 
        en programari, del professorat de la família d’informàtica, per assignar les tasques de 
        manteniment amb una certa garantia d’èxit.

        Com a conseqüència de tot això, implementarem una especialització de l’entitat PROFESSOR 
        en dues subclasses: ADMINISTRATIU, que incorporarà dos nous atributs (Titulacio i 
        Especialitat), i INFORMATIC, que n’incorporarà uns altres dos (EspecialitatMaquinari i 
        EspecialitatProgramari). 
Exemple d’especialització
Exemple d'especialitzacio
             L’especialització en els diagrames ER es representa amb un triangle. 

En funció de les similituds detectades entre diferents entitats, aquestes es poden arribar a sintetitzar en una sola entitat, de nivell superior, mitjançant un procés de generalització.

La generalització serveix per ressaltar les similituds entre entitats, per sobre de les diferències, i també per simplificar les representacions de les dades, en evitar la repetició d’atributs compartits per diferents subclasses.

          Exemple de generalització

          Fins ara, hem utilitzat dues entitats diferents que ens han servit per modelitzar 
          dues categories, també diferents, existents al món real: ALUMNE i PROFESSOR.

          Però, és evident que tant els alumnes com els professors són persones, tot i que amb 
          rols diferents. Per tant, tindran una sèrie de característiques comunes, que es podran
          modelitzar de la mateixa manera.

          Així, tant els uns com els altres tindran nom, cognoms, telèfons de contacte, etc., que
          es podran modelitzar mitjançant els mateixos atributs.

          També és possible que totes dues tipologies puguin participar en les mateixes  
          interrelacions. Per exemple, per tal d’indicar la localitat de residència, el més 
          habitual és relacionar l’entitat que representa les persones amb una altra entitat que 
          emmagatzema les diferents localitats.

          En definitiva, partint de les entitats ALUMNE i PROFESSOR, podríem crear una altra 
          entitat, superclasse de les anteriors, i anomenar-la, per exemple, PERSONA.

          D’aquesta manera implementarem l’entitat PERSONA, com a generalització d’ALUMNE i 
          PROFESSOR, la qual contindrà els atributs comuns a les seves subclasses, i a més 
          participarà directament en les interrelacions que també siguin comunes a les subclasses 
          esmentades. 
               La generalització en els diagrames ER es representa amb un triangle, com en
               l’especialització. 
Exemple de generalització
Exemple de generalització

El producte resultant de l’especialització i de la generalització és, doncs, idèntic. La diferència entre ambdós recau en el tipus de procés que condueix a cadascuna:

  • L’especialització deriva d’un procés de disseny descendent, durant el qual, a partir d’una entitat preexistent, considerada com a superclasse es detecta la utilitat d’establir certes subclasses, a causa de l’existència de certes característiques (atributs i participacions en interrelacions) no aplicables a totes les instàncies de la superclasse.
  • La generalització respon a un procés considerat de disseny ascendent. Durant aquest tipus de disseny es valora la utilitat de contemplar unes quantes entitats preexistents, anomenades subclasses, dependents d’una mateixa superclasse comuna a totes elles. La superclasse presenta unes característiques comunes (atributs i participacions en interrelacions) a totes les subclasses que en depenen.

Herència de propietats

Tant en el cas de generalització com en el d’especialització, les característiques de l’entitat superclasse s’estenen cap a les entitats subclasse. Com ja sabem, aquestes característiques poden consistir o bé en atributs de l’entitat superclasse, o bé en la seva participació en diferents interrelacions.

          Anomenem herència de propietats la transmissió de característiques (atributs
          i interrelacions) des de l’entitat superclasse cap a les entitats subclasse. 

Pot passar que una mateixa entitat adopti el rol de subclasse en un procés de generalització o especialització i que, al mateix temps, assumeixi el paper de superclasse en un altre d’aquests processos en què participi.

               Jerarquia d'entitats

               Quan s’encadenen diferents generalitzacions o especialitzacions de
               tal manera que una mateixa entitat és subclasse d’una estructura, i 
               superclasse d’una altra, té lloc el que s’anomena jerarquia d’entitats.

Quan es produeix una jerarquia d’entitats, les entitats dels nivells inferiors poden heretar característiques no solament de la superclasse respectiva, sinó també d’altres classes de nivells superiors.

          Anomenem herència múltiple la recepció, per part d’una entitat subclasse, tant de 
          les característiques (atributs i interrelacions) de la seva superclasse, com de les 
          d’altres entitats de nivells superiors, dins d’una estructura jeràrquica d’entitats 
          amb generalitzacions o especialitzacions encadenades. 
          Exemple de jerarquia d'entitats i d'herència múltiple

          Com a resultat d’un procés de generalització hem conferit, a l’entitat PERSONA, la 
          qualitat de superclasse de les entitats PROFESSOR i ALUMNE, considerades subclasses
          d’aquella.

          Al mateix temps, però com a resultat d’un procés d’especialització, hem conferit a 
          l’entitat PROFESSOR la categoria de superclasse de dues noves entitats, subclasses 
          de la mateixa: INFORMATIC i ADMINISTRATIU.

          A conseqüència de tot això, les entitats del nivell inferior (INFORMATIC i ADMINISTRATIU)
          no solament heretaran les característiques de la seva superclasse (PROFESSOR), sinó també 
          les de les altres entitats de nivells superiors de les quals siguin descendents i, per tant,
          hereves.

          En aquest cas, doncs, INFORMATIC i ADMINISTRATIU heretaran les característiques de la seva
          superclasse (PROFESSOR) i també les propietats de la superclasse d’aquella (PERSONA). Però 
          no heretaran cap propietat d’ALUMNE, perquè no són descendents d’aquesta entitat. 
Exemple d’herència múltiple
Exemple d'herència múltiple

Restriccions

Per tal de modelitzar més exactament la parcel·la del món real que ens interessi, es poden establir certes restriccions sobre les especialitzacions o generalitzacions detectades.

Un primer tipus de restriccions defineix si les instàncies poden pertànyer simultàniament o no a més d’una subclasse d’una estructura simple (és a dir, que compti amb una sola superclasse i un sol nivell de subclasses) de generalització o especialització. En aquests casos, les entitats de tipus subclasse poden ser de dos tipus:

  • Disjuntes. Una mateixa entitat instància no pot aparèixer en dues entitats subclasse diferents. Es representa en el diagrama afegint una etiqueta amb la lletra D.
  • Encavalcades. Una mateixa entitat instància pot aparèixer en dues (o, fins i tot, en més de dues) entitats subclasse diferents. Es representa en el diagrama afegint una etiqueta amb la lletra E.

Un segon tipus de restriccions especifica si tota instància de la superclasse ha de pertànyer simultàniament a una o més de les subclasses o no. Aquí les entitats de tipus subclasse també poden ser de dos tipus:

  • Totals. Tota instància de l’entitat superclasse ha de pertànyer simultàniament, com a mínim, a una de les seves entitats subclasse. Es denota amb l’etiqueta T.
  • Parcials. Algunes instàncies de l’entitat superclasse poden no pertànyer simultàniament a cap de les seves entitats subclasse. Es denota amb l’etiqueta P.

Combinant aquestes restriccions obtenim, doncs, quatre possibilitats aplicables a les subclasses d’una generalització o especificació. Cal separar les lletres que s’inclouen en l’etiqueta amb una coma:

  • D, T (disjuntes i totals)
  • D, P (disjuntes i parcials)
  • E, T (encavalcades i totals)
  • E, P (encavalcades i parcials)
          Exemple de subclasses D, T

          Haurem de considerar disjuntes les subclasses de PERSONA si els reglaments de 
          funcionament del centre no permeten que cap professor s’hi matriculi com a alumne, 
          simultàniament amb l’exercici de la seva tasca docent.

          Al mateix temps, les considerarem totals si la nostra BD registra exclusivament les 
          dades de professors i d’alumnes, sense ocupar-se d’altres categories de persones (com 
          podria ser el personal administratiu, de manteniment, de neteja, etc.). 
Exemple de subclasses D,T
Exemple de subclasses D, T
          Exemple de subclasses E, P

          Haurem de considerar encavalcades les subclasses de PROFESSOR si volem reflectir
          el fet que alguns professors, tot i exercir com a tals amb una especialitat concreta
          en un curs acadèmic, poden tenir altres especialitats. Per tant, un professor podrà 
          ser simultàniament INFORMATIC i ADMINISTRATIU.

          D’altra banda, les considerarem parcials perquè al nostre institut hi podrà haver, amb 
          tota seguretat, professors d’altres especialitats (com ara electròniques, comercials, 
          etc.), que no seran ni informàtics ni administratius. 
Exemple de subclasses E,P
Exemple de subclasses E, P

Per reflectir una combinació de característiques encara més complicada, s’ha de recórrer a una especificació textual que acompanyi el diagrama.

         Exemple de subclasses amb diferents restriccions

         Imaginem que volem afegir una nova subclasse de PERSONA, per tal d’incloure-hi el
         personal d’administració i serveis del centre. Anomenarem aquesta nova entitat 
         ADMO_SERVEI.

         Ja hem exposat més amunt que els reglaments interns del nostre institut no permeten 
         que cap professor sigui, simultàniament, alumne del centre. Però ara ens trobem que, 
         al personal d’administració i serveis, sí que se li permet matricular-se com a alumne 
         en algun dels estudis impartits al centre al mateix temps que exerceixen la seva tasca 
         professional.

         Totes tres subclasses seran totals, com abans, perquè tothom haurà de pertànyer a alguna
         de les tres categories reflectides.

         PROFESSOR i ALUMNE seran disjuntes entre elles, igual que PROFESSOR i ADMO_SERVEI, ja que 
         no es poden compatibilitzar les condicions esmentades. Però, al mateix temps, ALUMNE i 
         ADMO_SERVEI seran encavalcades, perquè una persona podrà estar inclosa en aquestes dues 
         categories simultàniament, segons hem vist.

         Per reflectir una realitat com aquesta, no hi ha altre remei que fer servir una 
         especificació textual que, tot acompanyant el diagrama, aclareixi degudament les 
         característiques específiques de cada subclasse o agrupació d’aquestes. 
Exemple de subclasses amb diferents restriccions
Exemple de subclasses amb diferents restriccions

Notació

Tant l’especialització com la generalització es representen mitjançant un triangle que inclou, al seu interior, l’etiqueta ES. Aquesta etiqueta indica que tota instància de qualssevol de les subclasses és, al mateix temps, una instància de la superclasse corresponent (per exemple, tant un informàtic com un administratiu seran, al mateix temps, un professor).

Per distingir clarament la superclasse en els casos en què hi ha un gran nombre d’entitats subclasse implicades en l’estructura, o bé quan resulta difícil, per les característiques del diagrama, alinear clarament totes les subclasses, és convenient indicar els límits de cardinalitat de la generalització o especialització. Per a això, només cal afegir una etiqueta del tipus mín..màx, per tal d’expressar els límits respectius, al costat de la línia que uneix cada entitat amb el triangle que representa la generalització o especialització, en què mín i màx podran tenir els valors següents:

  • 1..1 en la línia que enllaça la superclasse, perquè tota instància de qualsevol subclasse sempre constituirà, simultàniament, una i només una instància de la superclasse.
  • 0..1 en la línia que enllaça cada subclasse, perquè no necessàriament tota instància de la superclasse haurà de ser, simultàniament, instància de la subclasse en qüestió (ho podrà ser d’una altra subclasse, o podrà no ser-ho de cap, si estem en presència d’una restricció de parcialitat).

Les entitats que formen part d’una estructura de generalització o especialització es representen com la resta d’entitats: cadascuna amb un rectangle que incorpora el nom respectiu, i els atributs respectius encerclats dins d’el·lipses lligades a la seva entitat amb una línia. Si els atributs formen una clau primària, el seu nom haurà d’anar subratllat.

En termes de notació diagramàtica, no s’estableix cap diferència entre una generalització i una especialització. Les diferències entre ambdós fenòmens es redueixen al procés que s’ha seguit per derivar en cadascun d’ells, però no en el resultat, que sempre és el mateix: l’establiment d’una superclasse i d’unes subclasses amb unes restriccions concretes, que es representen afegint, a l’etiqueta ES, les inicials de les dues restriccions aplicables separades per una coma:

  • D, T (disjuntes i totals)
  • D, P (disjuntes i parcials)
  • E, T (encavalcades i totals)
  • E, P (encavalcades i parcials)

Agregacions d'entitats

Amb les regles bàsiques del model ER, només es poden modelitzar interrelacions en què participen exclusivament entitats, però no es pot expressar la possibilitat que una interrelació participi directament en una altra interrelació. Però hi ha un mecanisme, anomenat agregació, que permet superar la limitació descrita anteriorment, tot considerant una interrelació entre entitats com si fos una entitat, i utilitzant-la com a tal.

               Les agregacions també són conegudes com a entitats associatives. 
         L’agregació d’entitats és una abstracció, mitjançant la qual, una interrelació es 
         tracta com una entitat de nivell més alt, que agrupa les entitats interrelacionades 
         gràcies a ella. L’agregació ha de tenir el mateix nom que la interrelació sobre la 
         qual es defineix. 

La utilitat d’una agregació d’entitats, doncs, consisteix en el fet que la interrelació en què es basa es pot interrelacionar amb altres entitats. Una agregació d’entitats es denota requadrant totes les entitats que participen en una interrelació determinada, per tal de construir una nova entitat que pot establir les pròpies interrelacions.

         Exemple d'agregació d'entitats

         Considerem la interrelació Practica, binària i de cardinalitat N-M, que té lloc entre
         les entitats ALUMNE i ESPORT, que ja coneixem.

         Imaginem ara que es vol tenir constància del professor que, si és el cas, es dedica a 
         entrenar un alumne que practica un esport determinat. I recordem que ja existeix en el 
         nostre model una entitat anomenada PROFESSOR.

         Una alternativa per representar aquesta realitat consistiria a crear una interrelació 
         ternària, anomenada, per exemple, Entrena, entre les entitats ALUMNE, ESPORT i PROFESSOR. 
Exemple d’interrelacions redundants
Exemple d'interrelacions redundants

D’aquesta manera, pot semblar que les interrelacions Practica i Entrena es poden combinar en una única interrelació. Però això no és del tot cert, ja que hi haurà interrelacions entre ALUMNE i ESPORT que no disposaran necessàriament d’un professor que actuï com a entrenador.

Ara bé, hi ha informació redundant en l’esquema proposat fins ara, ja que tota combinació entre instàncies de les entitats ALUMNE i ESPORT que hi ha a Entrena també és a Practica.

Si l’entrenador només fos un valor, ens podríem plantejar simplement afegir un atribut a la interrelació Practica, que es digués, per exemple, Entrenador. Però en existir una entitat (PROFESSOR) que conté la instància aplicable a cada cas, quan és necessari, hem de descartar aquesta possibilitat.

Així, doncs, la millor manera de reflectir totes aquestes circumstàncies és fer ús d’una agregació d’entitats. En aquest cas, cal considerar la interrelació Practica, entre ALUMNE i ESPORT, com una altra entitat de nivell més alt, anomenada PRACTICA. I, seguidament, es pot establir una interrelació binària amb cardinalitat 1-N entre PROFESSOR i l’agregació PRACTICA, i anomenar-la Entrena, i que inclogui les combinacions necessàries entre ambdues, per tal de modelitzar qui entrena la pràctica dels esports per part dels alumnes, quan es produeix aquesta circumstància (figura següent).


               Les agregacions d’entitats en els diagrames ER es representen com 
               una agrupació rectangular de les entitats i relacions que integren. 
Exemple d’agregació d'entitats sense redundància
Exemple d'agregació d'entitats sense redundáncia

La tècnica de les agregacions engloba la de les entitats febles, però encara resulta més potent: sempre que fem servir una entitat dèbil, la podrem substituir per una agregació, però no a l’inrevés. Ara bé, cal mantenir les entitats febles en el model ER perquè, tot i que resulten menys complexes que les agregacions, normalment són suficients per modelitzar la majoria de les situacions que es produeixen al món real.

Exemple de substitució d'una entitat feble per una agregació

Recuperem l’entitat feble ASSIGNATURA. Ara imaginem que, per establir un cert control en matèria de coordinació pedagògica, es necessita saber qui és el professor responsable de realitzar la programació didàctica de cada assignatura.

Entre PROFESSOR i ASSIGNATURA es pot establir una interrelació binària de cardinalitat 1-N per representar aquest fet, que s’anomena, per exemple, Programa. 
Exemple de substitució d'una entitat feble per una agregació
Però, alternativament, podríem modelitzar aquesta dada convertint ASSIGNATURA en una agregació.

Per aconseguir-ho, en primer lloc hauríem de considerar una nova entitat, i anomenar-la per exemple CODI, que emmagatzemés simplement codis d’assignatura (com ara C1, C2, C3, etc.).

A continuació, hauríem d’establir, d’una banda, una interrelació binària de cardinalitat N-M entre CICLE i CODI, i anomenar-la Assignatura. I, d’altra banda, també hauríem d’obtenir una agregació de la interrelació entre CICLE i CODI (és a dir, Assignatura).

Finalment, hauríem d’interrelacionar l’agregació resultant amb l’entitat PROFESSOR, amb una senzilla interrelació binària amb cardinalitat 1-N, anomenada Programa (figura següent). 
Exemple d’agregació d'entitats sense redundància
Exemple de substitució d'una entitat feble per una agregació resultat

Notació

Les agregacions d’entitats es representen incloent dins d’un requadre totes les entitats que participen en una interrelació determinada.

               Les agregacions també es representen freqüentment incloent, dins d’un requadre, 
               només el rombe de la interrelació de la qual provenen les entitats implicades. 

Des d’una interrelació, es pot fer arribar una una fletxa (de punta senzilla o doble, per tal d’expressar la cardinalitat 1 o N, respectivament) fins al rombe inclòs dins del requadre que indica l’existència d’una agregació (o bé fins al mateix requadre, exactament igual que si es tractés d’una simple entitat).

Tota agregació ha de tenir el mateix nom que la interrelació sobre la qual es defineix.