22
  MODELO ENTIDAD RELACIÓN (MER). EXTENSIONES DEL MER. Introducción Un Diagrama o Modelo Entidad Relación (a veces denominado por su siglas, E-R "Entity Relationship", o, "DER" Diagrama Entidad Relación), es una herramienta para el modelado de datos de un sistema de información.  Estos modelos expresan entidades relevantes para un sistema de información así como sus interrelaciones y propiedades. Propuesto por  Peter Chen en 1976, mediante el mismo se pretenden 'visualizar' los elementos que pertenecen a una Base de Datos, que reciben el nombre de entidades, las cuales se corresponden con el concepto de clase de la Programación Orientada a Objeto y donde cada tupla de una futura relación representaría un objeto de la Programación Orientada a Objetos. Desarrollo El principal instrumento para lograr los niveles de abstracción que conforman la arquitectura de un Sistema de Base de Datos (nivel externo, lógico global o conceptual y nivel interno) es precisamente el Modelo de Datos, que es una representación de la realidad que conserva sólo los detalles relevantes de esa realidad que se está modelando. Por ejemplo, si se considera una transacción bancaria, “el depósito en una cuenta corriente”, la oficina encargada debe conservar ciertos detalles como el número de la cuenta, monto del depósito, fecha, número del cajero e ignorar otros como el número de gente en el banco, las palabras que se intercambiaron durante la transacción, las personas que están en la cola, etc. Si se analiza este aspecto en relación con la Arquitectura de tres niveles, habría que tener en cuenta que tal vez, en otra visión de la realidad, detalles que han sido considerados irrelevantes tengan importancia y sean considerados relevantes, por lo que diferentes usuarios pueden tener diferentes modelos de la realidad. Para el propósito actual, un Modelo de Datos no va ser más que un conjunto de conceptos que pueden servir para describir la estructura de una BD, esto se refiere a tipos de datos, sus vínculos y las restricciones que deben cumplir estos datos. Cuando un Modelo de Datos describe un conjunto de conceptos de un problema real en términos comprensibles por los expertos del dominio de aplicación, se le llama Modelo de Datos Conceptual . Los modelos conceptuales se usan en las primeras fases del diseño de Bases de Datos y los modelos lógicos en fases más avanzadas cuando ya se tiene una

2.Modelo Entidad Relacion y Extensiones

Embed Size (px)

DESCRIPTION

ghbvbgbb

Citation preview

  • MODELO ENTIDAD RELACIN (MER). EXTENSIONES DEL MER.

    Introduccin

    Un Diagrama o Modelo Entidad Relacin (a veces denominado por su siglas, E-R "Entity

    Relationship", o, "DER" Diagrama Entidad Relacin), es una herramienta para el modelado

    de datos de un sistema de informacin. Estos modelos expresan entidades relevantes para

    un sistema de informacin as como sus interrelaciones y propiedades. Propuesto por Peter

    Chen en 1976, mediante el mismo se pretenden 'visualizar' los elementos que pertenecen a

    una Base de Datos, que reciben el nombre de entidades, las cuales se corresponden con el

    concepto de clase de la Programacin Orientada a Objeto y donde cada tupla de una futura

    relacin representara un objeto de la Programacin Orientada a Objetos.

    Desarrollo

    El principal instrumento para lograr los niveles de abstraccin que conforman la arquitectura

    de un Sistema de Base de Datos (nivel externo, lgico global o conceptual y nivel interno) es

    precisamente el Modelo de Datos, que es una representacin de la realidad que conserva

    slo los detalles relevantes de esa realidad que se est modelando. Por ejemplo, si se

    considera una transaccin bancaria, el depsito en una cuenta corriente, la oficina

    encargada debe conservar ciertos detalles como el nmero de la cuenta, monto del depsito,

    fecha, nmero del cajero e ignorar otros como el nmero de gente en el banco, las palabras

    que se intercambiaron durante la transaccin, las personas que estn en la cola, etc. Si se

    analiza este aspecto en relacin con la Arquitectura de tres niveles, habra que tener en

    cuenta que tal vez, en otra visin de la realidad, detalles que han sido considerados

    irrelevantes tengan importancia y sean considerados relevantes, por lo que diferentes

    usuarios pueden tener diferentes modelos de la realidad.

    Para el propsito actual, un Modelo de Datos no va ser ms que un conjunto de conceptos

    que pueden servir para describir la estructura de una BD, esto se refiere a tipos de datos, sus

    vnculos y las restricciones que deben cumplir estos datos.

    Cuando un Modelo de Datos describe un conjunto de conceptos de un problema real en

    trminos comprensibles por los expertos del dominio de aplicacin, se le llama Modelo de

    Datos Conceptual. Los modelos conceptuales se usan en las primeras fases del diseo de

    Bases de Datos y los modelos lgicos en fases ms avanzadas cuando ya se tiene una

  • definicin del SGBD que soportar la aplicacin. As se pueden formalizar las siguientes

    categoras de Modelos de Datos:

    Modelos de Datos de Alto Nivel o Conceptual: dispone de conceptos muy cercanos al

    modo en que la mayora de los usuarios perciben los datos.

    Modelo de Datos de Bajo Nivel o Fsico: proporciona conceptos que describen los

    detalles de cmo se almacenan los datos en la computadora, dirigidos a especialistas

    en computacin.

    Modelo de Datos de Representacin o de Implementacin: es un modelo intermedio,

    cuyos conceptos pueden ser entendidos por los usuarios finales aunque no est

    demasiado alejado de la forma en que los datos se almacenarn en la computadora.

    Ejemplos:

    o Relacional (Lgico basado en registros)

    o Redes o Plex (Lgico basado en registros)

    o Jerrquico (Lgico basado en registros)

    o Entidad-Relacin (Lgico basado en objetos)

    o Orientados a Objetos (Lgico basado en objetos)

    Representacin de la informacin

    En el proceso y construccin de todo sistema informativo automatizado, el diseo de la BD

    ocupa un lugar importante, a tal punto que esto puede verse como un proceso relativamente

    independiente dentro del diseo del sistema y compuesto por una serie de etapas. Es por

    ello que resulta de inters el estudio de los problemas relacionados con el diseo de las

    bases de datos y la modelacin de la informacin.

    Cuando se habla de informacin, se hace referencia, de forma general, a tres niveles

    diferentes, tendindose a saltar de uno a otro sin establecer una advertencia previa.

    1. El primero de estos niveles es el del MUNDO REAL, en el que existen entidades u objetos,

    que no son ms que cosas o elementos que existen y estn bien diferenciados entre s, que

    poseen propiedades y entre los cuales se establecen relaciones. Por ejemplo, una silla es

    una entidad u objeto, un automvil, un empleado, un profesor, un estudiante, que son cosas

    concretas; pero tambin puede ser algo no tangible como un suceso cualquiera, una cuenta

    de ahorro, o un concepto abstracto. Entre las propiedades que caracterizan a una entidad u

    objeto pudieran encontrarse el color, el valor monetario, el nombre, etc. De las relaciones

  • entre las entidades u objetos se habla ms adelante.

    La determinacin de cierta entidad u objeto correspondiente a un fenmeno o proceso est

    muy relacionada con el nivel de abstraccin en que se est realizando el anlisis. As, por

    ejemplo, si se estudia el comportamiento de un insecto especfico en determinadas

    condiciones climticas, las propiedades y relaciones que interesan son de un cierto tipo; sin

    embargo, si se estuviera realizando un estudio de las diferentes especies de insectos,

    entonces seran otros los objetos a definir, as como las propiedades que los caracterizaran

    y las relaciones que se estableceran. Si se estuviera analizando todo el reino animal, seran

    tambin otros los objetos a definir, con sus caractersticas y propiedades.

    2. El segundo nivel es el dominio de las ideas y es en el que se decide la informacin que

    debe existir en la BD sobre un fenmeno o proceso del mundo real, o sea, qu informacin

    debe almacenarse. En este nivel es donde realmente se define el contenido informativo que

    representar al fenmeno, proceso o ente de la realidad objetiva que se est analizando. De

    modo que, en este nivel, se definen cules objetos y qu propiedades de stos son

    representativas y sobre los cuales es necesario almacenar informacin.

    En este nivel es donde se trabaja con los conceptos ms importantes del Modelo de Datos,

    que establecen la relacin entre el mundo real y la informacin almacenada fsicamente en la

    Base de Datos:

    Campo o atributo: es la unidad menor de informacin sobre un objeto almacenada en la base

    y representa una propiedad de un objeto, por ejemplo el color. Sin embargo, hay que

    distinguir entre el nombre o tipo del atributo y el valor del atributo, ya que un nombre de

    atributo puede tomar diferentes valores sobre un cierto conjunto que se denomina dominio. A

    un valor de un atributo determinado o definido en el dominio dado en un cierto momento del

    tiempo, se denomina ocurrencia o instancia del atributo.

    Ejemplo:

    Atributo: Color, Cat_Doc

    Dominio: {Azul, Rojo, Verde,...}, {PTit, PAux, Asis, Inst}

    Ocurrencia: Rojo, Asis

    Ahora bien, una coleccin identificable de campos asociados es un artculo o registro y

    representa un objeto con sus propiedades. Una vez ms, es imprescindible distinguir entre

    nombre o tipo de artculo y ocurrencia de artculo. Una ocurrencia de artculo o tupla consiste

    en un grupo de ocurrencias de campos relacionados, representando una asociacin entre

    ellos. Por ejemplo, tenemos un artculo correspondiente al objeto profesor, en un fenmeno o

  • proceso de la realidad que pretenda representar el comportamiento de una Facultad.

    El nombre o tipo de artculo puede ser PROFESOR, que est formado por los siguientes

    tipos de campos o atributos:

    NRO_IDENT: nmero de identidad del profesor

    NOM_PROF: nombre del profesor

    CAT_DOC: categora docente del profesor

    DPTO: departamento docente al que pertenece el profesor

    Una ocurrencia de este artculo puede ser:

    45112801731, Hdez Roberto, PA, Computacin.

    Un fichero o archivo o conjunto de datos puede ser definido como un conjunto de ocurrencias

    de un mismo tipo de artculo. En la prctica, a menudo interesan las colecciones o conjuntos

    de objetos similares, necesitndose almacenar la informacin de las mismas propiedades

    para cada uno de ellos, por ejemplo, el conjunto de profesores de la Facultad.

    Entonces, una Base de Datos contendr muchas ocurrencias de cada uno de los tipos de

    artculos, lo que implica que la Base de Datos, por supuesto, tambin contendr muchas

    ocurrencias de los distintos tipos de atributos. Uno de los momentos cruciales en el diseo de

    un fenmeno de la realidad objetiva que se concreta en una Base de Datos es,

    precisamente, la seleccin de los conjuntos de objetos y sus propiedades.

    Adems, existe otro concepto muy importante en este nivel, que es el concepto de llave o

    clave: un atributo o conjunto de atributos de un artculo que define que cada ocurrencia de

    artculo de la Base de Datos sea nico. En principio, cada artculo tiene una llave, ya que se

    tiene como hiptesis que cada elemento u ocurrencia del artculo es diferente de las dems.

    Por ejemplo, nmero de identidad del trabajador.

    3. El tercer nivel es de los datos propiamente dichos, representados mediante cadenas de

    caracteres o de bits. En este nivel es necesario tener en cuenta la diferencia entre tipo de

    dato y valor del dato. El tipo de dato corresponde a un atributo o tipo de atributo, que est

    asociado a un tipo de artculo correspondiente, mientras que el valor corresponde a una

    ocurrencia del atributo. Sin embargo, una coleccin de bits o caracteres que representa un

    nico valor de datos y que puede existir independientemente de cualquier informacin que se

    almacena, adquiere significado slo cuando se le asocia a un tipo de atributo. Se puede, por

    ejemplo, almacenar permanentemente los valores ROJO, AZUL, VERDE, etc. y asociarlo en

    un momento determinado a un tipo de atributo a travs de los valores que toma,

    representando una ocurrencia en una tupla.

  • Es importante notar que, en general, habr asociaciones o relaciones enlazando las

    entidades bsicas. Estos enlaces se pueden establecer entre diferentes objetos o tipos de

    artculos o entre un mismo tipo de artculo. Por ejemplo, cuando se tiene una Base de Datos

    formada por dos tipos de objetos: SUMINISTRADOR y PRODUCTO, se puede tener la

    relacin "CANTIDAD", que establece la cantidad de cada producto que abastece un

    suministrador dado. Otro ejemplo pudiera ser con el artculo PERSONA, sobre el que se

    pudiera representar la relacin "SER MADRE DE", que no es ms que una relacin que se

    establece entre elementos de un mismo tipo de artculo.

    Es necesario profundizar acerca de los diferentes tipos de relaciones que pueden ocurrir en

    la prctica.

    Relaciones de correspondencia:

    Hay que establecer la correspondencia que existe entre los datos; esta relacin puede ser

    simple o compleja. Por relacin simple se entiende una correspondencia biunvoca (de uno a

    uno) entre las ocurrencias de los objetos, o sea, entre los artculos. Si, por ejemplo, los

    atributos son Nro_Ident y nombre del profesor la correspondencia entre ellos es simple: a

    cada nombre corresponde un nmero de identidad y viceversa.

    Si los atributos son Nro_ident y departamento, la relacin es ms complicada, porque a cada

    departamento corresponden varios empleados. La terminologa corriente expresa que la

    correspondencia de empleado a departamento es simple (cada empleado es miembro de un

    nico departamento), mientras que la correspondencia de departamento a empleado es

    compleja, pues cada departamento tiene, por lo general, muchos empleados.

    Hay cuatro tipos de relaciones posibles entre dos tipos de artculos A y B: La

    correspondencia de A a B puede ser simple y la recproca compleja. La correspondencia de

    A a B puede ser compleja y la recproca simple. Ambas correspondencias pueden ser

    complejas o ambas pueden ser simples.

    Nombre Nro_Identidad Relacin de uno a uno

    1 : 1

    Nro_Dpto Nro Ident Relacin de uno a muchos

    1 : M

  • A B A B A B

    Un ejemplo donde ambas correspondencias son complejas, lo es la relacin que se

    establece entre PROFESOR y ESTUDIANTE por la imparticin de clases, ya que un profesor

    puede impartir clases a varios estudiantes, pero a su vez, un estudiante puede recibir clases

    de varios profesores:

    PROFESOR ESTUDIANTE Relacin de muchos a muchos

    N : M

    Las relaciones pueden tener diferentes caractersticas:

    - Aunque la mayora de las relaciones asocian dos tipos de entidades, ste no es

    siempre el caso. Por ejemplo, PROFESOR_HORARIO_ESTUDIANTE. Esto podra

    representar el hecho de que un profesor imparte clases a una cierta hora a un cierto

    estudiante. Esto no es lo mismo que la combinacin PROFESOR_HORARIO y

    HORARIO_ESTUDIANTE, ya que la informacin de que "el profesor P5 imparte clases

    en el horario H1 al estudiante E4" dice ms que la combinacin "el profesor P5 imparte

    clases en el horario H1" y "el estudiante E4 recibe clases en el horario H1".

    - Las relaciones pueden establecerse entre un mismo tipo de entidad. Por ejemplo,

    una asociacin entre un profesor y otro puede venir dada por el hecho de que un

    profesor sea el jefe de otros profesores.

    - En general, las mismas entidades pueden ser asociadas en cualquier nmero de

    relaciones. Por ejemplo, se puede tener una relacin PROFESOR_ESTUDIANTE a

    travs de la asignatura que se imparte y otra a travs de la direccin del trabajo

    CIENTIFICO_ESTUDIANTIL.

    Es importante sealar que una asociacin entre entidades puede ser considerada en s como

    una entidad, ya que una relacin se puede ver como un objeto bien diferenciado sobre el cual

    se desea almacenar informacin. Entonces, un Modelo de Datos no es ms que la

    representacin de un fenmeno de la realidad objetiva a travs de los objetos, sus

    propiedades y las relaciones que se establecen entre ellos.

    El Modelo Entidad Relacin (MER).

    ... el modelo ER puede ser usado como una base para una vista unificada de los datos,

    adoptando el enfoque ms natural del mundo real que consiste en entidades e

    interrelaciones Peter P. Chen 1976.

  • El MER est basado en una percepcin del mundo real que consta de un conjunto de objetos

    bsicos llamados entidades con sus atributos y de las interrelaciones que existen entre estos

    objetos. Se desarroll para facilitar el diseo de Bases de Datos permitiendo la especificacin

    de un esquema del universo de discurso que representa la estructura completa de una Base

    de Datos. El MER es uno de los diferentes modelos de datos semnticos que existe; el

    aspecto semntico del modelo reside en su intento de representar el significado de los datos.

    Este modelo es extremadamente til para hacer corresponder los significados e interacciones

    del desarrollo del mundo real con un esquema conceptual. Los esquemas de MER usan

    diagramas para representar la estructura natural de los datos, que se nombran Diagrama

    Entidad Relacin (DER). En esos diagramas los rectngulos representan a las entidades y

    los rombos representan a las interrelaciones. Las interrelaciones son enlazadas con sus

    entidades constitutivas por arcos, y el grado de la interrelacin es indicado en el arco.

    Aunque con los conceptos bsicos del MER se pueden modelar la mayora de las

    caractersticas de las Bases de Datos, algunos aspectos de estas pueden ser expresados de

    una mejor forma mediante ciertas extensiones del MER bsico.

    Supongamos que deseamos modelar la Base de Datos de una empresa productora de

    proyectos de software, la informacin que se ha recogido del anlisis de requisitos es la

    siguiente:

    La empresa est organizada por departamentos dirigidos por un nico jefe, los empleados

    pertenecen a un solo departamento, pero pueden trabajar en varios proyectos de software,

    estos proyectos se asignan a un departamento, pero un departamento pudiera atender varios

    proyectos a la vez, de cada proyecto se generarn varios reportes.

    Otros aspectos a controlar son:

    - de los proyectos, su nmero (nico dentro de la empresa), ttulo, presupuesto , fecha

    de inicio, fecha de terminacin, el departamento responsable y los empleados que

    laboran en l.

    - de los departamentos, su nombre, localizacin y su jefe que es uno de los empleados

    que pertenece al departamento.

    - de los empleados, su nmero, su nombre, direccin y sexo y el departamento a que

    pertenece.

    - de los reportes el nmero del reporte (consecutivo dentro del proyecto), y el proyecto

    que lo origina.

  • Entidades.

    Las entidades son objetos reales o abstractos relevantes en el universo de discurso, que

    pueden ser identificadas unvocamente y acerca de los que se colecciona informacin;

    usualmente denotan una persona, lugar, cosa o evento de inters informacional. Las

    entidades son descritas a travs de atributos, si las mismas pueden ser descritas por el

    mismo tipo de atributos son consideradas como conjuntos y referidas como un conjunto de

    entidades. Los conjuntos de entidades son representados en el diagrama del MER como un

    rectngulo.

    Figura: Ejemplo de un conjunto de entidades.

    Interrelaciones.

    Las interrelaciones son asociaciones o conexiones que existen entre dos o ms entidades.

    Las entidades relacionadas pueden pertenecer al mismo o a distintos conjuntos de

    entidades. Una interrelacin puede ser vista como una relacin matemtica entre n entidades

    cada una tomada de un conjunto de entidades, no necesariamente diferentes, donde cada e i

    es una instancia del conjunto de entidades Ei. Cada tupla de la forma [e1, e2,, en] es una

    instancia de la interrelacin.

    Las interrelaciones son representadas grficamente por un rombo o diamante conectado a

    los conjuntos de entidades a travs de lneas. Una interrelacin debe tener como mnimo dos

    lneas de conexin.

    Una asociacin es una forma de abstraccin en que una interrelacin entre conjuntos de

    entidades con igual nivel de abstraccin es considerada como un conjunto de mayor nivel.

    Los detalles de los conjuntos de entidades interrelacionados se suprimen y se enfatizan los

    del conjunto obtenido. Esto establece una interrelacin Miembro_De entre conjuntos de

    EMPLEADO

    trabaja

  • entidades que permite determinar un conjunto de interrelaciones a partir de los objetos

    miembros.

    El grado de una asociacin est dado por el nmero de conjuntos de entidades asociados en

    las mismas. Las interrelaciones unarias, binarias y ternarias tienen grado 1, 2 y 3

    respectivamente.

    Las asociaciones son distinguidas por el nmero de posibles relaciones que una entidad

    determinada puede tener sobre esta. Este rango es llamado cardinalidad y es especificado

    por la cantidad mnima y mxima de instancias de la asociacin. Tpicamente la cota inferior

    es 0 o 1 y la superior 1 o n (muchos), esta forma de indicar la cardinalidad es llamada

    notacin (mn, mx) y es representada en las lneas que conectan los rombos y los

    rectngulos; que representan las asociaciones y los conjuntos de entidades

    respectivamente.

    Formalmente la cardinalidad se define para asociaciones binarias de la siguiente forma:

    Cardinalidad Mnima (min-card): Considrese la interrelacin A entre dos conjuntos de

    entidades E1 y E2. La cardinalidad mnima de E1 en A, denotada como min-card(E1, A), es la

    cantidad mnima de veces que cada elemento de E1 puede participar en A. Similarmente se

    define la cardinalidad mnima de E2 y se denotada como min-card(E2, A).

    Los valores ms usados para la cardinalidad mnima son 0 y 1 pero tambin pueden ser

    usados valores mayores. Si min-card(E1, A) = 0 se dice que el conjunto de entidades E1

    tiene una participacin opcional en la asociacin. Si min-card(E1, A) > 0 se dice que el

    conjunto de entidades E1 tiene una participacin total u obligatoria.

    Cardinalidad Mxima (max-card): Considrese la asociacin A entre dos conjuntos de

    entidades E1 y E2. La cardinalidad mxima de E1 en A, denotada como max-card(E1, A), es la

    cantidad mxima de veces que cada elemento de E1 puede participar en A. La cardinalidad

    mxima de E2 se define similarmente y es denotada como max-card(E2, A).

    Los valores ms usados para la cardinalidad mxima son 1 y n, n, m, etc. representa

    cualquier nmero e indica que cada elemento de E1 puede participar un nmero

    arbitrariamente grande de veces en A. La cardinalidad mxima tambin puede tener un valor

    fijo.

    La participacin de un conjunto de entidades en una asociacin se caracteriza indicando los

    valores de las cardinalidades mnima y mxima y se denota en lo que sigue: sea A una

    asociacin binaria de los conjuntos de entidades E1 y E2 con min-card(E1, A) = m1 y max-

  • card(E1, A) = M1; entonces se dice que la cardinalidad de E1 en A es el par (m1, M1).

    Similarmente se define la cardinalidad para el conjunto de entidades E2 en A.

    El concepto de cardinalidad se puede generalizar a las asociaciones n-aria de la siguiente

    forma.

    Cardinalidad Mnima (min-card) Considrese la asociacin A entre los conjuntos de

    entidades E1, E2, , En. La cardinalidad mnima de Ei en A, denotada como min-card(Ei, A),

    es la cantidad mnima de veces que cada elemento de Ei puede participar en A, i toma

    valores que estn entre 1y n.

    Cardinalidad Mxima (max-card) Considrese la asociacin A entre los conjuntos de

    entidades E1, E2, , En. La cardinalidad mxima de Ei en A, denotada como max-card(Ei, A),

    es la cantidad mxima de veces que cada elemento de Ei puede participar en A, i toma

    valores que estn entre 1y n.

    Para una asociacin binaria R entre los conjuntos de entidades A y B, la cardinalidad mxima

    debe ser una de las siguientes:

    Uno a Uno: Una entidad en A se asocia con a lo sumo una entidad en B, y una entidad

    en B se asocia con a lo sumo una entidad en A.

    (1, 1) (1, 1)

    Uno a Muchos: Una entidad en A se asocia con cualquier nmero de entidades en B.

    Una entidad en B, sin embargo, se puede asociar con a lo sumo una entidad en A.

    (1, 1) (1, N)

    Muchos a Uno: Una entidad en A se asocia con a lo sumo una entidad en B. Una entidad

    en B, sin embargo, se puede asociar con cualquier nmero de entidades en A.

    (1, N) (1, 1)

    Muchos a Muchos: Una entidad en A se asocia con cualquier nmero de entidades en B,

    y una entidad en B se asocia con cualquier nmero de entidades en A.

    A B R

    A B R

    A B R

  • (1, M) (1, N)

    El rol de una entidad es el papel o funcin que esta desempea en una asociacin. La

    definicin de roles permite atribuirle a un conjunto de entidades su semntica dentro de la

    agregacin aportndole mayor expresividad al esquema y permitiendo disminuir

    ambigedades en la definicin de cardinalidades (esto cobra mayor importancia en aquellas

    interrelaciones que involucran a un mismo conjunto de entidades ms de una vez).

    Atributos.

    Cada entidad, instancia de un conjunto de entidades, es descrita por un conjunto de atributos

    que representan sus cualidades, caractersticas o propiedades relevantes, y por los valores

    asociados a los mismos. Las interrelaciones, al igual que los conjuntos de entidades, tambin

    pueden tener atributos. Los atributos son representados usualmente con crculos u valos

    conectados a un conjunto de entidades o una interrelacin. Para cada atributo existe un

    conjunto de valores posibles o permitidos, este conjunto de valores es llamado dominio o

    conjunto de valores de un atributo. Varios atributos pueden compartir el mismo dominio.

    Formalmente un atributo de un conjunto de entidades es una funcin que asigna al conjunto

    de entidades un dominio. Como un conjunto de entidades puede tener diferentes atributos,

    cada entidad se puede describir con un conjunto de pares (atributo, valor), un par para cada

    atributo del conjunto de entidades.

    Clasificacin de los atributos:

    1. Atributos Simples o Compuestos.

    Atributo Simple o atmico: no son divisibles.

    Alternativa: Nombre (para ocupar menos espacio en el

    diagrama)

    A B R

    Nombre

  • Atributo Compuesto: se puede dividir en componentes ms pequeos que

    representan atributos ms bsicos con su propio significado independiente, Ejemplo

    el atributo direccin est compuesto por calle, nmero y ciudad.

    Los atributos compuestos pueden formar jerarquas, el valor del atributo es la

    concatenacin de los valores de los atributos simples que lo constituyen.

    Son tiles para las ocasiones en que el usuario hace referencia al atributo

    compuesto como una unidad unas veces y otras se refiere especficamente a sus

    componentes. Si slo se hace referencia al atributo compuesto como un todo

    entonces no hay necesidad de subdividirlo.

    2. Atributo Monovaluado (univaluado) o Multivaluado.

    Atributos Monovaluados: tienen un solo valor para una entidad en particular, ejemplo

    la edad es un atributo monovaluado de una persona.

    Atributo Multivaluado: el atributo puede tener un conjunto de valores para la misma

    entidad, ejemplo el color de un automvil o el grado universitario para una persona.

    3. Atributo Almacenado o Derivado.

    Atributos derivados: cuando se relacionan dos o ms valores de atributos. Ejemplo la fecha

    de nacimiento y la edad de una persona. En este caso la edad es un atributo derivado del

    atributo fecha de nacimiento que es un atributo almacenado. En otras ocasiones se pueden

    se pueden derivar de entidades relacionadas. Ejemplo Nmero de Empleado se obtiene

    contando la cantidad de empleados del departamento. En ciertos casos, cierta entidad,

    Nombre

    color

    direccin

    calle

    nmero

    ciudad

  • podra no tener ningn valor aplicable para un atributo, en estas situaciones crea un valor

    especial llamado nulo.

    Existen atributos identificadores (subrayado) y descriptivos (sin subrayar). Los atributos

    identificadores distinguen de manera nica una instancia de un conjunto de entidades o

    relaciones, mientras que los descriptivos, como su nombre lo indica, describen la ocurrencia

    de cierta entidad o relacin.

    Atributos identificadores.

    Alternativa: Nro_ident (para ocupar menos espacio en el diagrama)

    El identificador o llave de un conjunto de entidades E es una coleccin de atributos o de

    conjuntos de entidades relativas a E con la propiedad de determinar unvocamente todas las

    instancias de E. Una restriccin importante de las entidades de un tipo es la restriccin de

    clave o de unicidad de los atributos, aquel atributo cuyo valor es distinto para cada entidad

    individual, su nombre sirve para identificar de manera nica cada entidad.

    Formalmente un identificador se define de la siguiente manera: sea E un conjunto de

    entidades y A1,,An atributos univaluados y obligatorios de E, sean E1,,Em otros

    conjuntos de entidades conectados a E por asociaciones binarias obligatorias, Uno a Uno o

    Muchos a Uno. Considrese como un posible identificador de E el conjunto I(E) = {A1,,An,

    I(E1),,I(Em)} n 0, m 0, n + m 1; un identificador de E cumple las siguientes

    propiedades.

    1. No puede haber dos instancias de E con el mismo valor del identificador.

    2. Si se suprime cualquier componente del conjunto I(E), la propiedad 1 no se cumple.

    Los identificadores se clasifican de la siguiente forma:

    1. Un identificador es simple si n + m = 1; es compuesto si n + m > 1.

    2. Un identificador es interno si m = 0; es externo si n = 0.

    3. Un identificador es mixto si n > 0 y m > 0.

    edad

    Nro_ident

  • Extensiones del Modelo Entidad Relacin (ER).

    Con los elementos ya mencionados que incluye el MER, no se pueden modelar todas las

    situaciones que existen relacionadas con la informacin. Por ejemplo, cuando la interrelacin

    entre dos entidades a su vez constituye otro concepto que puede tener atributos, relaciones

    con otras entidades, etc, no es posible interrelacionar una interrelacin con otra entidad, por

    tanto se necesitan de otros elementos adicionales a los ya mencionados.

    Otro ejemplo que no se puede modelar con los conocimientos actuales es el hecho de que

    existen personas con determinada informacin, pero un grupo de esas personas tiene

    adems otros datos especficos, por ejemplo de las personas de la Uci se tiene sus datos

    generales, pero de los estudiantes se tiene adems el ao que cursa, el grupo al que

    pertenece, y de los profesores se conoce el departamento al que pertenece, la asignatura

    que imparte, etc. En este caso tampoco se conocen elementos para representar esta

    situacin

    A continuacin se describirn un grupo de extensiones que tiene el MER para representar

    estas y otras situaciones.

    Entidades dbiles.

    El concepto de entidad dbil no es tratado con suficiente claridad por diferentes autores, en

    general hay un consenso en considerarla como una entidad que tiene dependencia de

    existencia de otra, ya sea porque sus atributos internos no son suficientes para identificarla o

    bien porque no lo son dentro del dominio de aplicacin. Aunque un conjunto de entidades

    dbiles no tiene llave primaria con sus atributos internos, al menos en el contexto de la

    aplicacin que se modela, solamente se necesita conocer la distincin entre todas aquellas

    entidades del conjunto de entidades que depende de una entidad particular fuerte. El

    discriminante de un conjunto de entidades dbiles es un conjunto de atributos que permite

    que esta distincin se haga, a este discriminante se le llama llave parcial del conjunto de

    entidades dbiles.

    La llave primaria de un conjunto de entidades dbiles se forma mediante la llave primaria del

    conjunto de entidades fuertes, de cuya existencia depende el conjunto de entidades dbiles,

    y el discriminante del conjunto de entidades dbiles. El conjunto de entidades que identifica

    un conjunto de entidades dbiles se llama Propietario (Owner) del conjunto de entidades

    dbiles.

  • Un conjunto de entidades dbiles puede participar como propietario en una interrelacin de

    identificacin con otro conjunto de entidades dbiles. Los conjuntos de entidades dbiles se

    indican en los DER mediante un rectngulo dibujado con una lnea doble y la

    correspondiente interrelacin de identificacin mediante un rombo dibujado con lneas

    dobles.

    Figura: Ejemplo de la representacin de entidades dbiles.

    Notar que el familiar del trabajador, es a su vez una persona y tiene suficientes atributos

    como para poder ser identificado y tener una contrapartida en la realidad. No obstante, en el

    contexto de la aplicacin se desea representar solo el inters de esa persona asociada a un

    trabajador.

    Existen otras situaciones donde esta dependencia es an ms marcada y se puede

    presentar el caso que un conjunto de entidades pueda no tener suficientes atributos para

    formar un identificador y para que dicho conjunto de entidades tenga sentido, debe formar

    parte de una interrelacin de identificacin con otro conjunto de entidades denotado por id.

    Con la interrelacin id se modelan las asociaciones entre entidades genricas y especficas.

    Ejemplo:

    Asociaciones recursivas.

    Una asociacin recursiva o unaria es definida como una asociacin entre las instancias, al

    tomar roles, de un mismo conjunto de entidades. Un conjunto de instancias puede tomar uno

    o mltiples roles dentro de un mismo conjunto de entidades. Examinando estos roles es

    posible clasificar las asociaciones recursivas en simtricas o asimtricas y las asimtricas, a

    su vez, se clasifican en jerrquicas, circulares y reflejadas (mirrored).

  • Una asociacin recursiva es simtrica o reflexiva cuando todas las instancias que participan

    en la misma toman un nico rol y el significado semntico de la relacin es el mismo para

    todas las instancias que participan en esta, independientemente de la direccin en que sea

    vista. Estos tipos de asociaciones tambin son llamados bidireccionales.

    Una asociacin recursiva es asimtrica o no reflexiva cuando existe una asociacin entre dos

    grupos de roles distintos dentro del mismo conjunto de entidades y el significado semntico

    de la asociacin vara dependiendo de la direccin en que sea vista. Estos tipos de

    interrelaciones tambin son llamados unidireccionales.

    Dentro de las asociaciones asimtricas, las jerrquicas son aquellas en que las instancias de

    un mismo conjunto de entidades son organizadas en grados, rdenes, o clases, unas por

    encima de otras. Una asociacin recursiva es circular cuando al menos una de sus instancias

    no obedece a una jerarqua determinada. En el caso de las reflejadas son aquellas

    asociaciones cuya semntica permite que una instancia de un conjunto de entidades se

    relacione con ella misma a travs la asociacin.

    Especializacin.

  • Un conjunto de entidades puede incluir subgrupos de entidades que se diferencian de alguna

    forma de las otras entidades del conjunto. Por ejemplo, un subconjunto de entidades en un

    conjunto de entidades puede tener atributos que no son compartidos por todas las dems

    entidades. El proceso de designacin de subgrupos dentro de un conjunto de entidades es la

    especializacin. Un conjunto de entidades se puede especializar mediante ms de una

    caracterstica distintiva.

    Muchas veces las generalizaciones son representadas a travs de interrelaciones ISA. Las

    interrelaciones ISA son un tipo especial de interrelaciones semnticas, si A ISA B entonces B

    es un concepto ms general y A es el concepto especfico. La propiedad ms significativa de

    una interrelacin ISA es la herencia. Todo lo que sea vlido para el concepto genrico es

    vlido para el concepto especfico, esto es, que todos los atributos, sus valores y

    restricciones son heredados desde el nivel ms genrico hasta el nivel especfico.

    Generalizacin.

    En el MER es posible establecer jerarquas de generalizacin entre los conjuntos de

    entidades. Un conjunto de entidades E es una generalizacin de un grupo de conjuntos de

    entidades E1, E

    2,, E

    n si cada elemento de los conjuntos de entidades E

    1, E

    2,, E

    n es

    tambin un elemento del conjunto de entidades E. La representacin grfica en el DER es

    como se muestra en la figura. La flecha va hacia el conjunto de entidades generalizado. En el

    sentido contrario hablamos de especializacin.

  • Propiedad de cubrimiento de una generalizacin

    Cubrimiento Total o Parcial. El cubrimiento de una generalizacin es total (t) si cada

    elemento del conjunto de entidades genrico es transformado en al menos un elemento de

    los conjuntos de entidades de nivel ms bajo o especficos; es parcial (p) si existe algn

    elemento del conjunto de entidades genrico que no es transformado a algn elemento de

    los conjuntos de entidades especficos.

    Cubrimiento Exclusivo o Solapado. El cubrimiento de una generalizacin es exclusivo (e) si

    cada elemento del conjunto de entidades genrico es transformado a lo sumo a un elemento

    de los conjuntos de entidades especficos; es solapado (s) si existe algn elemento del

    conjunto de entidades genrico que es transformado a elementos de dos o ms conjuntos de

    entidades diferentes.

    Los siguientes ejemplos ilustran las formas en que son combinados los distintos cubrimientos

    de la generalizacin.

    1. El cubrimiento de la generalizacin Persona de los conjuntos de entidades Masculino y

    Femenino es total y exclusivo (t, e).

    2. El cubrimiento de la generalizacin Persona de los conjuntos de entidades Masculino y

    Empleado es parcial y solapado (p, s).

    3. El cubrimiento de la generalizacin Vehculo de los conjuntos de entidades Bicicleta y

    Auto es parcial y exclusivo (p, e).

    4. El cubrimiento de la generalizacin Deportista de los conjuntos de entidades Futbolista

    y Tenista en una escuela que requiere que cada alumno participe al menos en uno de

    estos deportes es total y solapada (t, s).

  • La principal propiedad de la abstraccin de generalizacin es la herencia, todas las

    propiedades del conjunto de entidades genrica son heredadas por los conjuntos de

    entidades de nivel ms bajo. En trminos del MER esto quiere decir que cada atributo,

    interrelacin, y generalizacin definida para el conjunto de entidades genricas es

    automticamente heredada por todos los conjuntos de entidades de nivel ms bajo en la

    generalizacin.

    Generalizacin versus Especializacin.

    Para todos los propsitos prcticos, la generalizacin es una inversin simple de la

    especializacin. En trminos de DER no se distingue entre especializacin y generalizacin.

    La especializacin parte de un conjunto de entidades simples, enfatiza la diferencia entre las

    entidades dentro del conjunto mediante la creacin de distintos conjuntos de entidades de

    nivel ms bajo. Estos conjuntos de entidades de nivel ms bajo pueden tener atributos, o

    pueden participar en interrelaciones, que no se aplican a todas las entidades del conjunto de

    entidades de nivel ms alto. De hecho, la razn de que el diseador aplique la

    especializacin es representar tales caractersticas diferentes.

    La generalizacin procede del reconocimiento de un nmero de conjuntos de entidades que

    compartan algunas caractersticas comunes (se describen mediante el mismo conjunto de

    atributos y participan en las mismas interrelaciones). Basada en sus similitudes, la

    generalizacin sintetiza estos conjuntos de entidades en uno solo, el conjunto de entidades

    de nivel ms alto. La generalizacin se usa para resaltar las similitudes entre los conjuntos

    de entidades de nivel ms bajo y para ocultar las diferencias, tambin permite economizar la

    representacin para que los atributos compartidos no estn repetidos.

    Agregaciones.

    Una limitacin del MER bsico es que no facilita expresar interrelaciones entre

    interrelaciones. Una interrelacin y los conjuntos de entidades que relaciona, pueden ser

    manejados como un conjunto de entidades en un nivel de abstraccin mayor, lo que posibilita

    que se pueda asociar con otros conjuntos de entidades. Este mecanismo es conocido como

    Estructura de Agregacin o Agregacin de Conjuntos de Entidades y permite representar la

    interrelacin Part_Of. La agregacin se representa en el DER como un rectngulo

    englobando a la interrelacin que la conforma.

  • Figura: Ejemplo de una agregacin

    Clase membresa de una interrelacin o funcin en la interrelacin.

    Esta extensin permite especificar si la aparicin de una ocurrencia de un tipo de entidad en

    una interrelacin es obligatoria u opcional. Es obligatoria si en la interrelacin al menos una

    ocurrencia del tipo de entidad tiene que darse en la interrelacin, en caso contrario es

    opcional. Ntese que la opcionalidad puede representarse mediante la especificacin de la

    cardinalidad mnima como cero.

    Ejemplo:

    Aqu se introduce la semntica de que un empleado puede o no trabajar en uno o varios

    proyectos, o sea, habr entidades del tipo de entidad empleado que no participan en la

    interrelacin. Ntese que la interrelacin obligatoria u opcional tambin puede ser expresada

    a travs de las cardinalidades mnimas y mximas.

    Interrelaciones de grado mayor que 2.

    Interrelacin ternaria: Las interrelaciones pueden envolver ms de dos entidades. Aquellas

    que envuelven tres no son inusuales. Como un ejemplo consideremos la Base de Datos en la

    figura de abajo, la cual es para guardar informacin sobre compaas, los productos que

    estos producen y los pases a las cuales estos exportan esos productos.

    El conjunto de pases a los cuales un producto es exportado vara de producto a producto y

    tambin de compaa a compaa. La interrelacin VENTAS es ternaria, es decir, esta

    envuelve tres entidades. La funcionalidad de la interrelacin ternaria VENTAS es

  • representada en la figura como muchos a muchos a muchos (N-M-P). Esto refleja los

    hechos siguientes sobre la interrelacin:

    Para un par dado (compaa, producto) existen por lo general muchos pases a los cuales

    ese producto se vende. Para un par dado (pas, producto) existen varias compaas que

    exportan ese producto a ese pas. Para un par dado (compaa, pas) existirn muchos

    productos exportados por esa compaa a ese pas.

    Figura: Una interrelacin ternaria.

    La cardinalidad de la interrelacin ternaria podra ser adems uno a muchos a muchos,

    uno a uno a muchos o an uno a uno a uno y la semntica de la interrelacin tienen que

    ser cuidadosamente examinada para determinar sus cardinalidades.

    Las interrelaciones ternarias tienen que ser definidas cuidadosamente y debera ser

    introducida slo cuando la interrelacin no puede ser representada exactamente por varias

    interrelaciones binarias entre las entidades participantes. En otro caso es probable que

    surjan redundancias innecesarias en la Base de Datos resultante. Por ejemplo, si una

    compaa fabrica muchos productos y exporta todos esos productos a un nmero de pases

    diferentes, entonces dos interrelaciones binarias independientes EXPORTA y CREA, como

    se muestra en la figura ms abajo deberan ser definidas en lugar de la interrelacin ternaria.

    En este caso, es independiente del producto, y este hecho tiene que ser reflejado por el

    Modelo de Datos.

    Figura: Dos interrelaciones binarias N-M.

  • Pueden existir interrelaciones de grados mayores y el tratamiento ser parecido al que se le

    da a las ternarias.

    Conclusiones

    La gran ventaja de los MER est en que pueden ser comprendidos por personas que no

    sean especialistas. El nmero de entidades en una Base de Datos es por lo general

    considerablemente menor que el nmero total de elementos de datos. As, usando el

    concepto de una entidad como una abstraccin para esos objetos del mundo real sobre el

    cual se desean coleccionar informaciones, se simplifican grandemente las fases de anlisis

    de los requerimientos y diseo conceptual. Un MER esquemtico puede ser modificado y

    extendido por un usuario hasta que este represente cuidadosamente la estructura de los

    datos a ser modelada. En este sentido los MER son independientes de cualquier SGBD

    particular. Estos sistemas generalmente imponen restricciones en la forma en que los

    campos pueden ser representados, considerando que el MER, estando en un nivel superior,

    puede reflejar ms cuidadosamente la estructura natural de los datos. Adems, a diferencia

    de muchas implementaciones, los MER son flexibles y extensibles, y por tanto se adaptan

    fcilmente a nuevos desarrollos.

    El traspaso de un MER en una implementacin es razonablemente directo. Cualquier SGBD

    provee algn mecanismo para representar entidades y las conexiones entre estas

    (interrelaciones), pero por supuesto los compromisos tienen que ser hechos dependiendo de

    las facilidades disponibles. Los SGBD en red, por ejemplo, generalmente imponen

    restricciones sobre los tipos de interrelaciones que pueden ser representadas directamente.

    Con tales sistemas puede ser necesario descomponer interrelaciones N-M e interrelaciones

    recursivas en estructuras ms primitivas para facilitar la implementacin.

    Tambin existen software que permiten realizar la representacin conceptual, modela los

    Diagramas Entidad Relacin y posteriormente generando los diagramas fsicos y

    especficamente las Bases de Datos.