3.- Diagramas de entidad/relación

Anuncio
Capítulo VI
Diagramas de
Entidad Relación
Capítulo VI
Diagramas de entidad relación
Tabla de contenido
1.-
Concepto de entidad.................................................................................. 91
1.1.Entidad del negocio ......................................................................... 91
1.2.Atributos y datos ............................................................................. 91
2.- Asociación de entidades............................................................................ 92
3.- Diagramas de entidad/relación.................................................................. 93
4.- Tipos de entidades..................................................................................... 94
5.- Tipos de relación....................................................................................... 95
6.- Modelo conceptual de datos...................................................................... 97
7.- Reglas de composición............................................................................ 100
90
Diagramas de entidad relación
Diagramas de entidad relación
1.- Concepto de entidad
En general, entendemos como entidad cualquier cosa acerca de lo cual
guardamos información. Si bien esta es la definición es la que comúnmente
se utiliza, en esta sección queremos refinarla un poco para adoptar el
enfoque que presenta C. J. Date, en el cual se establece una diferencia entre
entidades del negocio y entidades de datos.
Esta diferenciación la justificamos desde un punto de vista práctico, ya
que la experiencia nos enseña que el análisis de entidades y relaciones no
resulta simple para algunos usuarios. Normalmente, cualquier usuario
puede entender y definir lo que es una entidad del negocio, pero, al avanzar
en el análisis de datos, puede encontrar dificultades para reconocer y definir
las entidades asociativas. Al establecer la diferencia entre entidades del
negocio y entidades de datos, si bien nos apartamos de la ortodoxia (?),
estamos seguros de que facilitamos la participación del usuario.
1.1.- Entidad del negocio
Una entidad del negocio es algo acerca de lo cual guardamos
información. Ese algo puede ser un objeto tangible - como es el caso de la
entidad EMPLEADO - o puede ser de naturaleza totalmente conceptual como es el caso de la entidad CARGO (conjunto de responsabilidades o
tareas a las que un empleado puede ser asignado).
Una entidad del negocio puede estar "poblada" por uno o más
"ocurrencias"; por ejemplo, la entidad EMPLEADO está integrada, en una
determinada empresa, por todas las personas que trabajan en ella, y el
empleado Juan Pérez vendría a ser una ocurrencia de esa entidad del
negocio.
1.2.- Atributos y datos
Cada entidad del negocio tiene una serie de características o propiedades
que denominamos atributos. Por ejemplo, cada ocurrencia de la entidad
EMPLEADO tiene nombre, dirección, sexo, edad, fecha de ingreso a la
empresa, etc.; todas esas características constituyen los atributos de la
91
Capítulo VI
entidad empleado. Todos los atributos de una entidad del negocio se aplican
o tienen el mismo significado para todas sus ocurrencias.
Los datos son símbolos matemáticos o de lenguaje o de cualquier otra
naturaleza que se utilizan para describir los atributos de las entidades. La
descripción de una característica particular de una ocurrencia específica
dentro de una entidad es el valor del dato. Para cada ocurrencia de una
entidad del negocio, cada atributo tiene un valor específico: Juan
(ocurrencia de la entidad empleado) tiene una estatura (atributo) de 1,75
metros. Las palabras dato y atributo, a pesar de que tienen un significado
diferente, se utilizan, normalmente, como sinónimos, costumbre que
seguimos en nuestras publicaciones.
A los valores de los datos se les da una representación con el fin de
poderlos comunicar. Para algunos datos, sus valores pueden ser
representados de varias formas: la estatura de un empleado, por ejemplo,
puede ser expresada en metros, centímetros, pies y hasta en términos
relativos, diciendo que es alta, normal o baja.
Los valores que un dato puede tomar varían dentro de un rango que
constituye el domino del dato, que no es sino el conjunto de todos los
valores que un dato puede tomar.
Generalmente, alguno de los atributos de una entidad toma valores en
forma tal que permite individualizar cada ocurrencia de esa entidad, como
es el caso del atributo NOMBRE en la entidad EMPLEADO. Un atributo
como éste, que nos permite identificar sin ambigüedad las ocurrencias de
una entidad, se denomina identificador.
La información se produce a partir de datos; un dato se convierte en
información cuando toma significado para algún receptor. Utilizando un
paralelo industrial, podríamos decir que los datos son la materia prima con
la cual se produce información.
2.- Asociación de entidades
Las entidades que participan en un sistema (cosas acerca de las cuales
maneja información) se encuentran asociadas con otras entidades; por
ejemplo, la entidad MATERIAL se relaciona con la entidad ALMACEN
(los diferentes materiales se guardan en diversos almacenes de la empresa).
El conocimiento del conjunto de entidades que actúan en un sistema, sus
asociaciones y sus atributos, constituyen la base para desarrollar lo que se
denomina el modelo conceptual o semántico de datos. Para un sistema, el
modelo conceptual de datos constituye el universo acerca del cual maneja y
almacena información.
92
Diagramas de entidad relación
El objetivo que se persigue al representar un modelo conceptual de datos
es crear una buena descripción del significado de los datos, lo cual sólo se
logra entendiendo la realidad y capturándola en el modelo. Es necesario,
pues, que al construir el modelo conceptual, el analista olvide cualquier
consideración acerca de la utilización de los datos y, más aún, acerca del
hardware o de los manejadores de bases de datos, concentrándose en el
mundo real que rodea el sistema.
3.- Diagramas de entidad/relación
Los diagramas de entidad/relación permiten
que el analista de sistemas organice, formalice y
verifique su comprensión del negocio y del
significado de los datos.
En un diagrama de entidad/relación, una entidad del negocio se
representa por un rectángulo y dentro de él se coloca el nombre de la
entidad.
Una relación se representa por una línea que une las entidades
vinculadas; en esta línea se describe el nombre de la relación.
Los nombres de los atributos de las entidades se pueden incluir en la
parte inferior de su representación:
En este tipo de gráfico, los atributos identificadores se señalan con un *
(asterisco) que precede al nombre del atributo.
93
Capítulo VI
El número mínimo y máximo de veces que una ocurrencia de cada
entidad puede aparecer en las ocurrencias de la relación, se registra junto al
nombre de la relación. Estos números se denominan frecuencia mínima y
máxima de ocurrencia de la entidad en la relación y usualmente se
representan como una fracción: Mínima/Máxima.
Si, por ejemplo, el programador Juan Pérez trabaja como programador
en Proyecto Cuentas por Cobrar, ello constituye una ocurrencia de una
relación entre las entidades PROGRAMADOR y PROYECTO, a la cual
podemos darle el nombre de TRABAJA. En esta relación podemos observar
que un mismo programador puede trabajar en un proyecto, en varios
proyectos o en ninguno. El número de veces que un programador puede
entrar en la relación TRABAJA se representa de la siguiente forma:
La gráfica representa en forma simple que un PROGRAMADOR trabaja
en ningún proyecto (frecuencia mínima), en uno o en varios (frecuencia
máxima).
Recíprocamente, el desarrollo de un proyecto puede haber requerido la
participación de uno o varios programadores, aunque también, si el proyecto
aun no se ha iniciado, podemos afirmar que en un proyecto trabajan
ninguno, uno o varios programadores.
El número mínimo y máximo de veces que una ocurrencia de cada
entidad puede aparecer en las ocurrencias de una relación, constituye la
cardinalidad de la relación y, como arriba señaláramos, se registra junto a la
descripción de la relación, representándolos como una fracción:
Mínima/Máxima.
4.- Tipos de entidades
Existen entidades cuyas ocurrencias sólo tienen sentido cuando se
refieren a las ocurrencias de otras entidades, como es el caso de la entidad
HIJOS o DEPENDIENTES de un EMPLEADO. Este tipo de entidades
94
Diagramas de entidad relación
caracterizan a otras entidades como si fuesen uno más de sus atributos, por
lo que se denominan entidades características o dependientes.
Con el fin de distinguir las entidades características de las demás
entidades, a éstas se les denomina entidades independientes, para implicar
que sus ocurrencias no dependen de ninguna otra entidad. Usualmente,
cuando nos referimos a entidades independientes, las llamamos
simplemente entidades, sin añadir más adjetivos.
5.- Tipos de relación
Diremos que un a relación es designativa (una a muchas) cuando vincula
cada ocurrencia de una entidad con varias ocurrencias de la otra entidad
(una de las entidades tiene frecuencia máxima 1 y la otra tiene frecuencia
máxima n).
Es importante aclarar que, cuando decimos una ocurrencia, a veces
implicamos "una o ninguna", mientras que otras veces implicamos
"exactamente una". Análogamente, cuando decimos varias, implicamos
"ninguna, una o muchas".
Ejemplo de una relación designativa es la relación que guardan la
entidad EMPLEADO y la entidad DEPARTAMENTO; en ella, un
empleado sólo puede estar asignado a un departamento, mientras que un
mismo departamento puede tener asignados varios empleados (cero, uno o
muchos). En este caso, decimos que la relación es designativa y que la
entidad EMPLEADO está siendo designada por la entidad
DEPARTAMENTO.
Cuando una relación representa un vínculo de "muchas a muchas" (las
dos entidades tienen frecuencia máxima n), la denominamos simplemente
relación, sin añadir ningún adjetivo. Ejemplo de una relación es la que
95
Capítulo VI
existe entre REPUESTOS y ALMACEN, en la que un mismo repuesto tiene
existencia en varios almacenes (cero, uno o muchos) y, a su vez, un mismo
almacén guarda varios (cero, uno o muchos) repuestos.
Es posible que dos entidades se asocien en virtud de más de una relación,
como es el caso de REPUESTO y EQUIPO. Un repuesto se utiliza para dar
mantenimiento a uno o más equipos, pero también, para los efectos de
mantener un equipo dado, ciertos repuestos se RESERVAN. Esto puede ser
representado de la siguiente forma:
Las relaciones que vinculan a más de dos entidades las denominamos
relaciones múltiples. En la gráfica vemos un diagrama que nos muestra que
existe una relación de CLIENTE con PEDIDO y PRODUCTO, de PEDIDO
con PRODUCTO y CLIENTE y de PRODUCTO con CLIENTE y
PEDIDO.
Tal como ocurre con el ejemplo, en la mayoría de los casos estas
asociaciones complejas, si se analizan bien, pueden ser representadas en
forma más real y simple, pues, si bien existe una relación entre el CLIENTE
y el PRODUCTO, esta siempre es a través de un PEDIDO.
96
Diagramas de entidad relación
Sin embargo, existen casos en los que estas relaciones múltiples no
pueden simplificarse, ya que, al intentar hacerlo, el modelo pierde
significado. Como ejemplo de este tipo de asociaciones múltiples podemos
citar el caso de una empresa de servicios de consultoría, en la cual las
entidades CLIENTE, SERVICIO y CONSULTOR guardan una relación
múltiple: un CONSULTOR está capacitado para prestar diferentes servicios
(ANALISTA SENIOR, LIDER DE PROYECTO, DISEÑADOR DE
BASES DE DATOS) y, por lo tanto, puede ser asignado a diferentes
clientes (o a un mismo cliente) para desempeñar diferentes roles.
Las ocurrencias de una misma entidad
pueden estar asociadas en virtud de una o
más asociaciones recursivas, como es el
caso de EMPLEADO y las asociaciones
que se establecen en virtud de la
supervisión: un empleado supervisa a
varios empleados (ninguno, uno o
muchos) y, a su vez, un empleado es supervisado por otro empleado (uno y
sólo uno).
6.- Modelo conceptual de datos
Hasta ahora hemos hablado acerca de "cosas del negocio"; hemos
hablado de entidades, entidades dependientes, asociaciones (muchas a
muchas) y asociaciones designativas (una a muchas); sin embargo, para
completar la representación de un modelo conceptual de datos, (concebido
como el universo de la información acerca del cual maneja y almacena un
sistema), es necesario introducir una nueva idea o restricción, referida a las
relaciones “muchas a muchas”.
En un modelo conceptual de datos, no puede haber relaciones “muchas a
muchas”, por lo que, cada una de estas asociaciones, deberá descomponerse
en dos relaciones del tipo “una a muchas”.
Esta restricción tiene todo el sentido del mundo, ya que, una vez
identificadas las entidades del negocio y sus interrelaciones, es necesario
97
Capítulo VI
comenzar a pensar en las estructuras de datos que servirán para almacenar
los datos que describen esas entidades e interrelaciones. Es oportuno
señalar, que estas consideraciones se harán, como ya hemos dicho
anteriormente, sin tomar en cuenta aún la forma en que los datos se
utilizarán o almacenarán.
Así pues, para completar un modelo conceptual de datos, cada entidad
dará lugar a una entidad de datos, igualmente lo hará cada entidad
característica. Sin embargo, cada relación “muchas a muchas” entre dos
entidades, también deberá dar lugar a una entidad de datos, a la que
podemos llamar entidad asociativa.
Esta consideración vista en abstracto no parece tener mucho sentido; sin
embargo, si se observa que cualquier relación “muchas a muchas” requerirá
un registro separado, tiene todo el sentido del mundo.
Veamos, por ejemplo, la relación entre las entidades MATERIAL y
FACTURA. Típicamente, esta es una relación en la que una factura incluye
varios materiales y en la que un mismo material puede estar presente en
varias facturas; esta relación no es algo abstracto, sino algo concreto, puede
ser observada y "palpada" en las diferentes líneas de cada factura. Es fácil
ver que, probablemente, será necesario crear un registro para cada línea de
cada factura.
En el ejemplo citado, cuando diseñemos la base de datos, con toda
seguridad, tendremos tres registros diferentes:
MATERIAL:
Código de Material, Descripción, Precio Unitario, .........
FACTURA:
Número de Factura, Número de Cliente, Fecha, Monto Total, …….
LINEAS DE FACTURA:
Número de Factura, Código de Material, Cantidad Facturada, ……….
Los atributos identificadores de las entidades asociativas se conforman
con la identificación de las ocurrencias de las entidades que participan en
dicha relación. En otras palabras, el identificador de una entidad asociativa
es la concatenación de los atributos identificadores de las entidades que
participan en la relación.
Con todas estas consideraciones en mente, una vez representado el
modelo de las entidades del negocio, debe completarse el modelo
conceptual de datos de la siguiente forma:
98
Diagramas de entidad relación
1.
Identificando las asociaciones muchas a muchas (n a n) y
reemplazándolas por entidades asociativas.
2.
Identificando las asociaciones múltiples y reemplazándolas,
también, por entidades asociativas.
99
Capítulo VI
3.
Determinando los atributos identificadores de cada una de las
entidades asociativas, a través de la concatenación de los
atributos identificadores de las entidades que participan en la
relación.
7.- Reglas de composición
Cuando elaboramos el modelo conceptual de datos de un área del
negocio, lo que, en realidad, estamos haciendo es organizar las “cosas” que
integran esa área, creando un mapa que nos permita tener “un lugar para
cada cosa” y poner cada “cosa en su lugar”.
Dentro de este orden de ideas, para que un modelo conceptual de datos
sea de utilidad, deberá estar libre de ambigüedades, lo cual puede lograrse
siguiendo ciertas reglas de composición que a continuación presentamos:
1.
Una entidad de datos debe concebirse como una clase de
objetos que pueden ser descritos por los mismos atributos; por
lo tanto, si decimos que algo es una entidad de datos ello debe
implicar que los mismos datos serán utilizados para describir
cada ocurrencia de la entidad.
2.
Todos los atributos de una entidad de datos se aplican de la
misma forma o tienen el mismo significado para todas sus
ocurrencias; además, para una ocurrencia dada, cada uno de sus
atributos tiene un solo valor (valores atómicos). Si esto no
ocurre así, quiere decir que, por algún error, estamos
considerando más de una entidad; es muy posible que estemos
frente a una entidad característica, la cual debe representarse
separadamente.
3.
No pueden existir relaciones entre entidades del tipo “muchas a
muchas”. Este tipo de relaciones debe ser reemplazada por
entidades asociativas.
4.
No pueden existir relaciones múltiples entre entidades. Este
tipo de relaciones debe ser reemplazada por entidades
asociativas.
5.
Con excepción de las entidades dependientes, por lo menos uno
de los atributos de toda entidad toma valores en forma tal que
permite individualizar cada ocurrencia de esa entidad. Es decir,
dada una entidad, existe algún atributo identificador.
6.
Al igual que para cualquier entidad, los atributos de las
entidades asociativas deberán tener el mismo significado para
100
Diagramas de entidad relación
todas sus ocurrencias y tomarán un solo valor (valores
atómicos).
Al completar la representación de un modelo conceptual de datos, se
deberá verificar que cumple con las reglas de composición arriba
enumeradas; en especial deberá evaluarse cualquier dato cuyo valor no sea
atómico, con el fin de identificar entidades que hayan podido ser pasadas
por alto o la existencia de entidades dependientes; todo ello se hará con el
fin de mejorar el modelo, para que sea claro, esté libre de ambigüedades, y
nos permita tener “un solo lugar para cada cosa” y poner “cada cosa en su
lugar”.
101
Capítulo VI
102
Descargar