Вы находитесь на странице: 1из 15

UNIDAD 2

MODELO ENTIDAD RELACIN (E-R) EL MODELO ENTIDAD-RELACIN ENTIDADES Denominado por sus siglas como: E-R; Este modelo representa a la realidad a travs de entidades, que son objetos que existen y que se distinguen de otros por sus caractersticas, por ejemplo: un alumno se distingue de otro por sus caractersticas particulares como lo es el nombre, o el numero de control asignado al entrar a una institucin educativa, as mismo, un empleado, una materia, etc. Las entidades pueden ser de dos tipos: Tangibles : Son todos aquellos objetos fsicos que podemos ver, tocar o sentir. Intangibles: Todos aquellos eventos u objetos conceptuales que no podemos ver, aun sabiendo que existen, por ejemplo: la entidad materia, sabemos que existe, sin embargo, no la podemos visualizar o tocar.

Las caractersticas de las entidades en base de datos se llaman atributos, por ejemplo el nombre, direccin telfono, grado, grupo, etc. son atributos de la entidad alumno; Clave, nmero de seguro social, departamento, etc., son atributos de la entidad empleado.

RELACIONES Una entidad se puede asociar o relacionar con ms entidades a travs de relaciones, Una relacin es la asociacin que existe entre dos a ms entidades.

ATRIBUTOS De cada entidad se almacenan una serie de datos que se denominan atributos de la entidad. Pueden ser atributos de una entidad cualquier caracterstica o propiedad de sta. Son atributos de la entidad libros: Autor, Ttulo, rea de Edicin, ISBN.

Pero para entender mejor esto, veamos un ejemplo: Consideremos una empresa que requiere controlar a los vendedores y las ventas que ellos realizan; de este problema determinamos que los objetos o entidades principales a estudiar son el empleado (vendedor) y el artculo (que es el producto en venta), y las caractersticas que los identifican son: Empleado: Nombre Puesto Salario RFC Artculo Descripcin Costo Clave

La relacin entre ambas entidades la podemos estableces como venta. Atributo multivaluado (o multivalorado). Se dice del atributo tal que para una misma entidad puede tomar varios valores diferentes, es decir, varios valores del mismo dominio.

Dominio. Conjunto de valores posibles para un atributo. Una fecha de nacimiento o de matriculacin tendr casi siempre un dominio, aunque generalmente se usar el de las fechas posibles. Por ejemplo, ninguna persona puede haber nacido en una fecha posterior a la actual. Si esa persona es un empleado de una empresa, su fecha de nacimiento estar en un dominio tal que actualmente tenga entre 16 y 65 aos. (Por supuesto, hay excepciones...) Los nmeros de matrcula tambin tienen un dominio, as como los colores de chapa o los fabricantes de automviles (slo existe un nmero limitado de empresas que los fabrican). Generalmente, los dominios nos sirven para limitar el tamao de los atributos. Supongamos que una empresa puede tener un mximo de 1000 empleados. Si uno de los atributos es el nmero de empleado, podramos decir que el dominio de ese atributo es (0,1000). Con nombres o textos, los dominios limitarn su longitud mxima.

Clave Estaremos de acuerdo en que es muy importante poder identificar claramente cada entidad y cada interrelacin. Esto es necesario para poder referirnos a cada elemento de un conjunto de entidades o interrelaciones, ya sea para consultarlo, modificarlo o borrarlo. No deben existir ambigedades en ese sentido. Entonces definiremos Clave, Es un conjunto de atributos que identifican de forma unvoca una entidad. En nuestro ejemplo de las entidades persona, podemos pensar que de una forma intuitiva sabemos qu atributos distinguen a dos personas distintas. Sabemos que el nombre por si mismo, desde luego, no es uno de esos atributos, ya que hay muchas personas con el mismo nombre. A menudo, el conjunto de nombre y apellidos puede ser suficiente, pero todos sabemos que existen ciertos nombres y apellidos comunes que tambin se repiten, y que esto es ms probable si se trata de personas de la misma familia. Las personas suelen disponer de un documento de identidad que suele contener un nmero que es distinto para cada persona. En fin, que en ocasiones, por un motivo u otro, creamos un atributo artificial para usarlo slo como clave. Esto es perfectamente legal en el modelo E-R, y se hace frecuentemente porque resulta cmodo y lgico. Claves candidatas. Una caracterstica que debemos buscar siempre en las claves es que contengan el nmero mnimo de atributos, siempre que mantengan su funcin. Diremos que una clave es mnima cuando si se elimina cualquiera de los atributos que la componen, deja de ser clave. Si en una entidad existe ms de una de estas claves mnimas, cada una de ellas es una clave candidata. Clave candidata, es entonces cada una de las claves mnimas existente en un conjunto de entidades. Clave principal. Si disponemos de varias claves candidatas no usaremos cualquiera de ellas segn la ocasin. Esto sera fuente de errores, de modo que siempre usaremos la misma clave candidata para identificar la entidad. Clave principal (o primaria), es una clave candidata elegida de forma arbitraria, que usaremos siempre para identificar una entidad. Claves de interrelaciones. Para identificar interrelaciones el proceso es similar, aunque ms simple. Tengamos en cuenta que para definir una interrelacin usaremos las claves primarias de las entidades

interrelacionadas. De este modo, el identificador de una interrelacin es el conjunto de las claves primarias de cada una de las entidades interrelacionadas. Por ejemplo, si tenemos dos personas identificadas con dos valores de su clave primaria, clave1 y clave2, y queremos establecer una interrelacin "es padre de" entre ellas, usaremos esas dos claves. El identificador de la interrelacin ser clave1, clave2.

Restricciones de asignacin Existen 4 tipos de relaciones que pueden establecerse entre entidades, las cuales establecen con cuantas entidades de tipo B se pueden relacionar una entidad de tipo A Relacin uno a uno: Se presentan cuando existe una relacin con su nombre lo indica uno a uno, denominado tambin relacin de matrimonio. Una entidad del tipo A solo se puede relacionar con una entidad del tipo B y viceversa. Por ejemplo: la relacin asignacin de automvil que contienen a las entidades EMPLEADO, AUTO, es una relacin 1 a 1 ya que asocia a un empleado con un nico automvil por tanto ningn empleado posee ms de un automvil asignado, y ningn vehculo se asigna a ms de un trabajador. Es representado grficamente de la siguiente manera

A: representa a una entidad de cualquier tipo diferente a una entidad B. R: en el diagrama representa a la relacin que existe entre las entidades. El extremo de la flecha que se encuentra punteada indica el uno de la relacin, en este caso, una entidad A ligada a una entidad B. Relacin uno a mucho Significa que una entidad del tipo A puede relacionarse con cualquier cantidad de entidades del tipo B, y una entidad del tipo B solo puede estar relacionada con una entidad del tipo A. Su representacin grfica es la siguiente

Ntese en este caso que el extremo punteado de la flecha de la relacin de Ay B, indica una entidad A conectada a muchas entidades B. Muchos a uno Indica que una entidad del tipo B puede relacionarse con cualquier cantidad de entidades del tipo A, mientras que cada entidad de tipo A solo puede relacionarse con solo una entidad del tipo B

Muchos a Muchos Establece que cualquier cantidad de entidades del tipo A puede estar relacionados con cualquier cantidad de entidades del tipo B

A los tipos de relaciones antes descritos, tambin se le conocen como cardinalidad. La cardinalidad nos especifica los tipos de relaciones que existen entre las entidades en el modelo E-R y establecer con esto las validaciones necesarias para conseguir que los datos de la instancia (valor nico en un momento dado de una base de datos) correspondan con la realidad. Algunos ejemplos de cardinalidades de la vida comn pueden ser: Uno a uno. El noviazgo, el RFC de cada persona, el CURP personal, el acta de nacimiento, ya que solo existe un solo documento de este tipo para cada una de las diferentes personas. Uno a mucho Cliente Cuenta en un banco, padre-Hijos, Camin-Pasajeros, Zoologico-Animales, rbolhojas. Muchos a muchos Arquitecto-Proyectos, Fiesta-Personas, Estudiante-Materia. Consideremos una empresa que requiere controlar a los vendedores y las ventas que ellos realizan; de este problema determinamos que los objetos o entidades principales a estudiar

son el empleado (vendedor) y el artculo (que es el producto en venta), y las caractersticas que los identifican son: Empleado: Nombre Puesto Salario RFC Artculo Descripcin Costo Clave

Veamos el siguiente ejemplo

Generalizacin. Es el resultado de la unin de 2 o ms conjuntos de entidades (de bajo nivel) para producir un conjunto de entidades de ms alto nivel. La generalizacin se usa para hacer resaltar los parecidos entre tipos de entidades de nivel ms bajo y ocultar sus diferencias. La generalizacin consiste en identificar todos aquellos atributos iguales de un conjunto de entidades para formar una entidad(es) global(es) con dichos atributos semejantes, dicha entidad(es) global(es) quedara a un nivel ms alto al de las entidades origen. Ejemplo: Tomando el ejemplo del libro de fundamentos de base de datos de Henry F. Korth. Donde: Se tiene las entidades Cta_Ahorro y Cta_Cheques, ambas tienen los atributos semejantes de No_Cta y Saldo, aunque adems de estos dos atributos, Cta_Ahorro tiene el atributo Tasa_Interes y Cta_Cheques el atributo Saldo_Deudor. De todos estos atributos podemos juntar (generalizar) No_Cta y Saldo que son iguales en ambas entidades. Entonces tenemos:

Podemos leer esta grfica como: La entidad Cta_ahorro hereda de la entidad CUENTA los atributos No_Cta y saldo, adems del atributo de Tasainteres, de forma semejante Cta_Cheque tiene los atributos de No_Cta, Sado y SaldoDeudor. Como podemos observar la Generalizacion trata de eliminar la redundancia (repeticin) de atributos , al engloba los atributos semejantes. La entidad (es) de bajo nivel cuenta (heredan ) todos los atributos correspondientes. Especializacin Es el resultado de tomar un subconjunto de entidades de alto nivel para formar un conjunto de entidades de ms bajo nivel En la generalizacin cada entidad de alto nivel debe ser tambin una entidad de bajo nivel. La especializacin no tiene ese limitante Se representa por medio de un tringulo denominado con la etiqueta ISA se distingue de la generalizacin por el grosor de las lneas que conectan al tringulo con las entidades. La especializacin denota la diferencia entre los conjuntos de entidades de alto y bajo nivel. SUBCLASE Y SUPERCLASE En el modelo ERE, una entidad agrupa un conjunto de ocurrencias de entidad del mismo tipo. En muchos casos, estas ocurrencias se pueden agrupar a su vez en otros subconjuntos que tienen un significado propio para los propsitos de la Base de Datos y, por tanto, deberan representarse de forma explcita. Por ejemplo, la entidad EMPLEADO puede a su vez subdividirse en SECRETARIA, INGENIERO, JEFE, TCNICO, ASALARIADO, SUBCONTRATADO, etc. El conjunto de ocurrencias de entidad en cada una de estas entidades ser un subconjunto de las ocurrencias de entidad de EMPLEADO, ya que por ejemplo, un ingeniero tambin es un empleado. Llamaremos a cada uno de estos subconjuntos Subclases de la entidad EMPLEADO y a EMPLEADO una Superclase de cada uno de estos subconjuntos. Llamaremos a la relacin existente entre las Superclases y las Subclases como relacin Clase/Subclase. En el ejemplo anterior, EMPLEADO/SECRETARIA y EMPLEADO/TCNICO son dos relaciones Clase/Subclase. Hay que tener en cuenta que una ocurrencia de una Subclase representa el mismo objeto real que alguna correspondiente a su Superclase, por ejemplo la SECRETARIA "Lety Lpez" ser tambin la EMPLEADO "Lety Lpez". Por tanto, la

ocurrencia de Subclase es la misma que en la Superclase pero con un rol especfico. Una ocurrencia de Subclase no tienen sentido si no es a su vez ocurrencia de Superclase. Por otro lado, una ocurrencia de superclase puede ser a su vez ocurrencia de varias subclases o de ninguna. Por ejemplo, "Roberto Mate" como ocurrencia de EMPLEADO puede a su vez pertenecer a subclases INGENIERO y ASALARIADO. MODELO DE DATOS ORIENTADAS A OBJETOS. Las aplicaciones de las bases de datos en reas como el diseo asistido por computadora, la ingeniera de software y el procesamiento de documentos no se ajustan al conjunto de suposiciones que se hacen para aplicaciones del estilo de procesamiento de datos. El modelo de datos orientado a objetos se ha propuesto para tratar algunos de estos nuevos tipos de aplicaciones. El modelo de bases de datos orientado a objetos es una adaptacin a los sistemas de bases de datos. Se basa en el concepto de encapsulamiento de datos y cdigo que opera sobre estos en un objeto. Los objetos estructurados se agrupan en clases. El conjunto de clases esta estructurado en sub y superclases basado en una extensin del concepto ISA del modelo Entidad - Relacin. Puesto que el valor de un dato en un objeto tambin es un objeto, es posible representar el contenido del objeto dando como resultado un objeto El propsito de los sistemas de bases de datos es la gestin de grandes cantidades de informacin. Las primeras bases de datos surgieron del desarrollo de los sistemas de gestin de archivos. Estos sistemas primero evolucionaron en bases de datos de red o en bases de datos jerrquicas y, ms tarde, en bases de datos relacionales. Estructura de objetos. El modelo orientado a objetos se basa en encapsular cdigo y datos en una nica unidad, llamada objeto. El interfaz entre un objeto y el resto del sistema se define mediante un conjunto de mensajes. Un objeto tiene asociado: un conjunto de variables que contienen los datos del objeto. El valor de cada variable es un objeto. Un conjunto de mensajes a los que el objeto responde. Un mtodo, que es un trozo de cdigo para implementar cada mensaje. Un mtodo devuelve un valor como respuesta al mensaje. El trmino mensaje en un contexto orientado a objetos, no implica el uso de un mensaje fsico en una red de computadoras, si no que se refiere al paso de solicitudes entre objetos sin tener en cuenta detalles especficos de implementacin. La capacidad de modificar la definicin de un objeto sin afectar al resto del sistema est considerada como una de las mayores ventajas del modelo de programacin orientado a objetos. Las clases en un sistema orientado a objetos se representan en forma jerrquica, as que las propiedades o caractersticas del elemento persona las contendrn (heredaran) los

elementos alumno y maestro. Decimos que tanto la entidad Alumno y maestro son subclases de la clase persona este concepto es similar al utilizado en la de especializacin (la relacin ISA) del modelo E-R. Se pueden crear muchas agrupaciones (clases) para simplificar un modelo as que una jerarqua (en forma grfica) puede quedar muy extensa, en estos casos tenemos que tener bien delimitados los elementos que intervienen en una clase y aquellos objetos que las heredan. HERENCIA DE ATRIBUTOS EN LA RELACIN CLASE/SUBCLASE. Debido a que una subclase es a su vez parte se una superclase, la subclase tendr sus atributos especficos as como los atributos correspondientes a la superclase a la que pertenece. Esto quiere decir que la ocurrencia de entidad de una subclase hereda los atributos correspondientes a la superclase a la que pertenece. De la misma manera hereda las relaciones en las que su correspondiente superclase participa. ESPECIALIZACIN El proceso por el que se definen las diferentes subclases de una superclase se conoce como especializacin. El conjunto de subclases se define basndonos en caractersticas diferenciadoras de las ocurrencias de entidad de la superclase. Por ejemplo, el conjunto se subclases {SECRETARIA, INGENIERO, TECNICO} es una especializacin de la superclase EMPLEADO mediante la distincin del tipo de trabajo en cada ocurrencia de entidad. Podemos tener varias especializaciones de una misma entidad basndonos en distintos criterios. Por ejemplo, otra especializacin de EMPLEADO podra dar lugar a las subclases ASALARIADO y SUBCONTRATADO, dependiendo del tipo de contrato.

UTILIZACIN DE SUBCLASES EN LOS MODELOS DE DATOS. Hay dos razones principales para el uso de la relacin clase/subclase en los modelos de datos. La primera es que ciertos atributos no pueden ser aplicados a todas las ocurrencias de

entidad correspondiente a la superclase. Una subclase se define para agrupar aquellas ocurrencias de entidad donde el atributo es aplicable. Suele ocurrir que las subclases comparten la mayora de los atributos correspondientes a la superclase. Por ejemplo, SECRETARIA tiene el atributo de velocidad mientras que INGENIERO tiene tipo, sin embargo ambos comparten los mismos atributos de EMPLEADO. La segunda razn para la utilizacin de subclases es que algunas relaciones pueden tener sentido solo para algunas ocurrencias de entidad de la superclase. Por ejemplo, si solo los empleados subcontratados pueden pertenecer a otras empresas, podremos representar este hecho mediante la creacin de la subclase SUBCONTRATADO y relacionarla con la entidad EMPRESA mediante la relacin PERTENECE, como se puede ver en la figura 1. GENERALIZACIN El proceso de especializacin expuesto en el punto anterior nos permite lo siguiente: Definir un conjunto se subclases a partir de una entidad. Asociar atributos especficos a cada subclase. Establecer relaciones especficas entre cada subclase con otras entidades o subclases. Podemos pensar en un proceso inverso de abstraccin en el cual suprimimos las diferencias entre las distintas entidades, identificando sus caractersticas comunes, y generalizando dichas entidades en una sola superclase de la cual las entidades iniciales seran subclases especiales. Por ejemplo, supongamos las entidades COCHE y CAMION de la figura 2(a); podremos generalizarlas en la entidad VEHICULO, como se muestra en la figura 2(b). Tanto COCHE como CAMION sern ahora subclases de la superclase generalizada VEHICULO. Usamos el trmino generalizacin para referirnos al proceso de definicin de una entidad generalizada a partir de unas entidades dadas.

Hay que tener en cuenta que el proceso de generalizacin puede ser visto funcionalmente como el proceso inverso de especializacin. Por tanto, en la figura 2 podemos ver {COCHE, CAMION} como una especializacin de VEHICULO, as como VEHICULO puede verse como la generalizacin de COCHE y CAMION. De la misma forma podemos

ver en la figura 1 a EMPLEADO como la generalizacin de SECRETARIA, TCNICO e INGENIERO. En algunas ocasiones se utilizan flechas para representar en los diagramas ERE cual a sido la tcnica de identificacin de superclases/clases.

Вам также может понравиться