TEMA: MODELO DE DATOS ENTIDAD-RELACIN (E-R) Ing. Miguel Angel Ponte Roca. MODELO DE DATOS E-R Introduccin El modelo de datos Entidad-Relacin (E-R) es un modelo de datos conceptual. Se basa en una percepcin de un mundo real que consiste en un conjunto de objetos bsicos llamados Entidades y Relaciones entre estos objetos. Es un modelo abstracto independiente de la Base de Datos y puede incluir componentes de sistemas existentes y no existentes, con el cual se pretende especificar el esquema de dominio de informacin de un sistema.
MODELO DE DATOS E-R Introduccin ... El modelo entidad-relacin es utilizado para identificar los diferentes elementos involucrados en un problema y las asociaciones que existen entre ellos. El modelo entidad-relacin es independiente del SGBD o del modelo de bases de datos que utilice. Debido a esta independencia, el modelo ER es utilizado con propsito de anlisis y diseo dentro del desarrollo de sistemas de informacin. Modelo Conceptual Modelo Lgico Modelo fsico Realidad Anlisis D. lgico D. fsico Vista / Abstraccin Transformacin Transformacin Introduccin ... Dominio del problema Conceptos del mundo del problema Dominio de la solucin Objetos del mundo del software BD IU Mundo de Problema Mundo de la Solucin Sistema Real Software MODELO DE DATOS E-R MODELO DE DATOS E-R Introduccin ... BD jerrquica BD en red BD relacional Modelo ER
Problema Introduccin ... ABSTRACCIN La Abstraccin es el principal mecanismo que empleamos para enfrentar el estudio de un sistema complejo. Por medio de la abstraccin se toma cualquier sistema y se destacan las caractersticas ms importantes y que estn relacionadas con el objeto de estudio, dejando de un lado los aspectos que no son importantes, buscando las propiedades comunes de un conjunto de objetos, reducinedo la complejidad y aumentando el entendimiento La Abstraccin es separar por medio de una operacin intelectual las cualidades de un objeto para considerarlas aisladamente o para considerar el mismo objeto en su pura esencia o nocin. MODELO DE DATOS E-R MODELO DE DATOS E-R Introduccin ... Los modelos de datos proporcionan mecanismos de abstraccin que permiten la representacin de aquella parcela del mundo real cuyos datos nos interesa registrar, lo que habitualmente se conoce como Universo del discurso. MODELO DE DATOS E-R Introduccin ... Dicha representacin se describe en dos niveles: El de las estructuras que hacen posible la representacin de la informacin, y El de la Informacin en s misma. Estos dos niveles dan lugar, en el mbito de las bases de datos a la disticin entre esquema y base de datos. La descripcin especfica de un UD determinado, en terminos de un modelo de datos, recibe el nombre de esquema, y La coleccin de datos que en s misma representa la informacin del UD da lugar a la base de datos. MODELO DE DATOS E-R Para Recordar: Modelo, esquema y ejemplar El modelo es el instrumento de descripcin que da como resultado un esquema. Un esquema se puede considerar como una representacin grfica y simbolica de una cosa atendiendo slo a sus lineas o caracteres ms significativos. Un ejemplar son los datos que en un determinado momento se encuentran almacenados en el esquema. Modelado y Diseo de Bases de Datos Entidad:
Una entidad es un objeto que tiene significado o importancia, cuya informacin se necesita conocer. Un objeto de inters al negocio Una clase o categora de algo El nombre de una cosa Modelado y Diseo de Bases de Datos En el contexto de administracin de personal de una empresa las entidades pueden ser: Empleado Departamento Proyecto Entidades Ejemplo:
Modelado y Diseo de Bases de Datos Atributos Describen las entidades y son las piezas especficas de informacin que se desea conocer Por ejemplo, posibles atributos para la entidad empleado seran: -Nombre -Fecha nacimiento -Sueldo -Rut
Modelado y Diseo de Bases de Datos Atributos Para cada atributo hay un conjunto de valores permitidos, llamados el dominio o el conjunto de valores de ese atributo. Tipos de atributos: Simples y compuestos Univalorados y multivalorados Nulos Derivados
MODELO DE DATOS E-R Entidades y Conjuntos de Entidades ENTIDAD: una entidad es un objeto que existe y es distinguible de otros objetos. De cara al modelo conceptual una entidad se puede definir como cualquier objeto, real o abstracto, que existe en un contexto determinado o puede llegar a existir y del cual deseamos guardar informacin, por ejemplo: "PROFESORES", "CURSOS", "ALUMNOS" Una entidad puede ser concreta, tal como una persona o un libro, o puede ser abstracta, como un da festivo o un concepto. MODELO DE DATOS E-R Entidades y Conjuntos de Entidades ... Ejemplo: J. Harris, con No. de identificacin DNI 40035689 es una entidad, ya que identifica nicamente una persona especfica en el Universo. Anlogamente, el nmero de cuenta 2902300667-8 en la sucursal del banco interbank de Arequipa es una entidad que identifica nicamente una cuenta determinada. MODELO DE DATOS E-R Entidades y Conjuntos de Entidades ... CONJUNTO DE ENTIDADES: es un conjunto de entidades del mismo tipo. Ejemplo: el conjunto de todas las personas que tienen una cuenta en un banco, pueden definirse como el conjunto de entidades CLIENTE. nalogamente, el conjunto de entidades CUENTA podra representar el conjunto de todas las cuentas de un banco determinado.
MODELO DE DATOS E-R Entidades y Conjuntos de Entidades ... Los conjuntos de entidades no necesitan ser disjuntos. P.e., es posible definir el conjunto de entidades de todos los empleados de un banco (EMPLEADO) y el conjunto de entidades de todos los clientes del banco (CLIENTE). Una entidad persona puede ser una entidad empleado, una entidad cliente, ambas, o ninguna de las dos.
MODELO DE DATOS E-R Reglas para las entidades Para considerar una entidad, debe cumplir con las siguientes reglas:
Los nombres de las entidades deben representar el tipo de entidades (el conjunto de las ocurrencias) y no una ocurrencia de la misma. Por ejemplo, un nombre apropiado para una entidad debe ser Avin y no Boening 727 o Boening 747. Debe tener mltiples ocurrencias. Una entidad con slo una ocurrencia puede ser mejor representada como un atributo y no una entidad (no en todos los casos). Una cosa u objeto debe poderse representar por una y solo una entidad. Las entidades deben ser mutuamente excluyentes en sus ocurrencias Debe poseer un identificador, un atributo que identifique nicamente a una ocurrencia de la entidad. MODELO DE DATOS E-R Notacin de una Entidad Las entidades se representan mediante rectngulos, en cuyo interior colocamos el nombre de la entidad. Esta convencin es seguida por casi todas las notaciones.
PERSONA
CLIENTE
CUENTA
ASIGNATURA
Nombre
PROFESOR Objeto
Almacenar la informacin relativa de los profesores de la organizacin. Alcance
Se entiende como profesor a aquella persona que, contratada por la organizacin, imparte, al menos, un curso dentro de la misma. Nmero de ejemplares
10 profesores Crecimiento previsto
2 profesores / ao Observacio nes
Los ejemplares dados de baja no sern eliminados de la base de datos; pasarn a tener una marca de eliminado y no sern visualizados desde la aplicacin. MODELO DE DATOS E-R Definicin de una Entidad MODELO DE DATOS E-R Entidades y Conjuntos de Entidades ATRIBUTOS: es una propiedad descriptiva o valor asociado a una entidad, que sirve para cualificar, identificar, clasificar o expresar el estado de la entidad. Un atributo es cualquier descripcin o cosa de significancia de esa entidad. Cada ejemplar de una misma entidad posee los mismos atributos, tanto en nombre como en nmero, diferencindose cada uno de los ejemplares por los valores que toman dichos atributos. MODELO DE DATOS E-R Entidades y Conjuntos de Entidades S i c o n s i d e r a mo s l a e n t i d a d "PROFESOR" y definimos los atributos Nombre, Telfono y Salario, podramos obtener los siguientes: {Luis Garca, 074-458962, S/.2,500} {Juan Antonio lvarez,01-4205398,S/.5,500 } {Martha Casas Verastegui,074-224512,S/.6,500 } MODELO DE DATOS E-R Entidades y Conjuntos de Entidades ... Los conjuntos de entidades no necesitan ser disjuntos. P.e., es posible definir el conjunto de entidades de todos los empleados de un banco (EMPLEADO) y el conjunto de entidades de todos los clientes del banco (CLIENTE). Una entidad persona puede ser una entidad empleado, una entidad cliente, ambas, o ninguna de las dos.
MODELO DE DATOS E-R Reglas para las entidades Para considerar una entidad, debe cumplir con las siguientes reglas:
Los nombres de las entidades deben representar el tipo de entidades (el conjunto de las ocurrencias) y no una ocurrencia de la misma. Por ejemplo, un nombre apropiado para una entidad debe ser Avin y no Boening 727 o Boening 747. Debe tener mltiples ocurrencias. Una entidad con slo una ocurrencia puede ser mejor representada como un atributo y no una entidad (no en todos los casos). Una cosa u objeto debe poderse representar por una y solo una entidad. Las entidades deben ser mutuamente excluyentes en sus ocurrencias Debe poseer un identificador, un atributo que identifique nicamente a una ocurrencia de la entidad. MODELO DE DATOS E-R Entidades y Conjuntos de Entidades ATRIBUTOS: es una propiedad descriptiva o valor asociado a una entidad, que sirve para cualificar, identificar, clasificar o expresar el estado de la entidad. Un atributo es cualquier descripcin o cosa de significancia de esa entidad. Cada ejemplar de una misma entidad posee los mismos atributos, tanto en nombre como en nmero, diferencindose cada uno de los ejemplares por los valores que toman dichos atributos. MODELO DE DATOS E-R Entidades y Conjuntos de Entidades Existen cuatro tipos de atributos: 1. Obligatorios: aquellos que deben tomar un valor y no se permite ningn ejemplar no tenga un valor determinado en el atributo. 2. Opcional: aquellos atributos que pueden tener valores o no tenerlo. 3. Derivado: aquellos atributos cuyo valor se obtiene a partir de los valores de otros atributos. 4. Claves: El modelo E-R exige que cada entidad tenga un identificador, se trata de un atributo o conjunto de atributos que identifican de forma nica a cada uno de los ejemplares de la entidad. De tal forma que ningn par de ejemplares de la entidad puedan tener el mismo valor en ese identificador. MODELO DE DATOS E-R Reglas para los atributos 1. Los atributos deben ser univaluados, no pueden tener varios valores para una ocurrencia dada en un momento determinado. 2. Pertenencia a la entidad. Hace parte realmente de la entidad a la que asociamos? 3. Relevancia de un atributo depende del tipo del problema. MODELO DE DATOS E-R Notacin de un Atributo Cdula
Nombre
PERSONA
Los atributos de las entidades se representan de manera diferente de acuerdo a la notacin seleccionada. Dentro de la convencin sugerida por Chen, los atributos se representan como circunferencias que se enlazan a la entidad respectiva. MODELO DE DATOS E-R Notacin de un atributo En la convencin sugerida por James Martn y la utilizada por las herramientas CASE de Oracle, los atributos se representan como textos al interior de la entidad. Por ejemplo, para la entidad persona mencionada previamente: PERSONA
# Cdula * Nombre Un carcter se incluye a un lado del nombre del atributo para especificar algunas caractersticas de los mismos. * Atributo Obligatorio (presente en todas las ocurrencias de la entidad) o Atributo Opcional # Atributo Identificador (#)Atributo Identificador Secundario MODELO DE DATOS E-R Relaciones El modelo de datos E-R refleja los componentes de un problema y las relaciones existentes entre estos componentes. Una relacin es un asociacin, vinculacin o correspondencia significativa entre entidades. Las relaciones tienen asociadas una medida conocida como cardinalidad de asignacin.
MODELO DE DATOS E-R Relaciones CARDINALIDAD DE ASIGNACIN: una restriccin importante que impone el modelo de datos E-R es la de las cardinalidades de asignacin, que expresan el nmero de entidades con las que puede asociarse otra entidad mediante una relacin. Cada relacin debe contener - un verbo - una cardinalidad mnima - una cardinalidad mxima MODELO DE DATOS E-R Relaciones Una a Una: una entidad en A est asociada a lo sumo con una entidad en B, y una entidad en B est asociada a lo sumo con una entidad en A. Una a muchas: una entidad en A est asociada con un nmero cualquiera de entidades en B. Una entidad en B, sin embargo, puede estar asociada a lo sumo con una entidad en A. MODELO DE DATOS E-R Relaciones Muchas a Una: una entidad en A est asociada a lo sumo con una entidad en B, y una entidad en B, sin embargo, puede estar asociada con un nmero cualquiera de entidades en A. Muchas a muchas: una entidad en A est asociada con un nmero cualquiera de entidades en B, y una entidad en B est asociada con un nmero cualquiera de entidades en A. MODELO DE DATOS E-R Notacin de una relacin Las Relaciones entre entidades se representan de manera diferente de acuerdo a la notacin seleccionada. Dentro de la notacin sugerida por Chen, las relaciones se representan por rombos que se enlazan a las entidades involucradas. La cardinalidad de la relacin se especifica mediante letras en los extermos de las relaciones
Tiene Persona
Libro 0,M 1,1 MODELO DE DATOS E-R Notacin de una Relacin La notacin de James Martin sugiere utilizar lineas para representar las relaciones incluyendo los nombres de las relaciones como etiqueta para esas lneas. Los extremos de las lneas deben incluir algunos simbolos que sealen la cardinalidad de la relacin. En esta notacin, deben especificarse los dos nombres existentes para la relacin.
PERSONA
LIBRO Tiene Pertenece a MODELO DE DATOS E-R Notacin de una Relacin La relacin entre A y B es :
de 0 o 1
de 1 y solo uno
de 0 o muchos
de 1 o muchos
A
B
A
B
A
B
A
B MODELO DE DATOS E-R Notacin de una Relacin La notacin utilizada por las herramientas CASE de Oracle, se utiliza una notacin similar a la sugerida por Martn. Sin embargo, el grado de opcionalidad u obligatoriedad (cardinalidad minima), se representa colocando una porcin de la lnea continua o punteada. .
Persona
Libro Tiene Pertenece a MODELO DE DATOS E-R Notacin de una Relacin La relacin entre A y B es :
de 0 o 1
de 1 y solo uno
de 0 o muchos
de 1 o muchos
A
B
A
B
A
B
A
B CASO2: Abrir Historia Clnica
Un paciente acude a Admisin y solicita abrir una historia clnica, el encargado de admisin solicita su CSS. El paciente deber entregar su CSS. El encargado de admisin verificar si el paciente tiene derecho a ser atendido en la Clinica Javier Prado. Si es que tiene el derecho asistencial, proceder a entregarle un formato para que llene con todo sus datos. Este formato ser verificado por el encargado de admisin quien proceder a ingresar los datos del formato al archivo. Ello crear una historia clnica con un nmero respectivo y al paciente se le notificar el nmero de su historia clnica. Una vez generada la historia clinica, esta debera tener los datos del paciente,del medico tratante; con sus respectivas recetas.
Modelo Conceptual
EJERCICIO PRACTICO: (CONSIDERADO EVALUACION )
Se desea modelar la estructura de un banco de datos que contiene informacin relativa a ejercicios para toda la Universidad.
La realidad consiste en lo siguiente: Se tienen ejercicios, identificados por un cdigo, con una fecha de propuesta asociada y que pueden tener varios autores. Estos ejercicios pueden ser de prctico, de examen o simplemente propuestas de ejercicios. Tanto los ejercicios de prctico como los de examen estn asociados a materias dentro de carreras determinadas. Por ejemplo, el ejercicio cdigo PR274 es un ejercicio de prctico asociado a la materia Programacin 1 de la carrera Ingeniera en Computacin, pero no est asociado a la misma materia de la carrera de Ing. en Sistemas de Computacin. Sobre los ejercicios de prctico asociados a una materia en una carrera, interesa saber en qu Nro. De hoja est dicho ejercicio, su Nro. Dentro de la hoja y un cdigo de dificultad asociado. Un ejercicio de prctico puede aparecer en varias materias de diferentes carreras. Todos los ejercicios de prctico estn asociados a alguna materia. Sobre los ejercicios de examen, interesa saber la fecha del examen en que apareci, su cantidad de puntos y el Nro. De ejercicio en el examen. Un ejercicio de examen est asociado a una y solo una materia dentro de una carrera. La informacin que interesa sobre las materias es el nombre y sobre las carreras su identificacin. Se sabe que dentro de una carrera hay muchas materias y que una misma materia puede estar dentro de varias carreras. Una materia en una carrera tiene una determinada cantidad de horas de curso. Las materias con igual nombre, aunque se encuentren en distintas carreras, tendrn asociadas un mismo conjunto de temas. Por otro lado, todos los ejercicios (de cualquier tipo) estn relacionados con temas con distintos grados de profundidad. Cada tema se identifica por un cdigo e interesa saber cules temas son previos de otros.
Contenidos
Modelamiento de Datos Modelos de Datos El modelo Relacional LLave Primaria Llave Foranea Integridad de la Entidad Integridad Referencial Ejercicio de Aplicacin Normalizacion Definicin Dependencia Funcional Primera Forma Normal Segunda Forma Normal Tercera Forma Normal Desnormalizacion
Unidad 2 Modelamiento de Datos El modelo de datos, como abstraccin del minimundo en estudio, es el enfoque utilizado para la representacin de las entidades y sus caractersticas dentro de la base de datos, y puede ser dividido en tres grandes tipos: Modelos de Datos Clasificacion Bsica Modelo de Datos
Nociones de Modelamiento
El objetivo es producir una descripcin estructurada de la organizacin y del negocio del cliente, en detalle suficiente para permitir construir un sistema basado en ste.
Para esto, mnimamente se requiere:
Un conjunto de tcnicas especficas y complementarias, adecuadas cada una para describir distintos aspectos del negocio/sistema.
Conocimiento, normas y estndares que aseguren la correcta descripcin y posterior interpretacin usando estas tcnicas. Modelo de Datos Nociones de Modelamiento Modelamiento Entidad - Relacin
Modela las cosas acerca de las cuales el negocio mantiene o debe mantener informacin, y las asociaciones existentes entre stas. Modelo de Datos Nociones de Modelamiento Modelamiento Funcional
Modela lo que el negocio hace o har en el futuro para alcanzar sus objetivos. Modelo de Datos Nociones de Modelamiento Diagramas de Flujo de Datos
Modela el flujo de informacin dentro y fuera del negocio y las transformaciones que sta sufre en el proceso Modelo de Datos Nociones de Modelamiento Matrices de Cruce
Muestra las asociaciones entre elementos de distintas clases. Ayuda al control de calidad y a completar los modelos. Modelo de Datos Nociones de Modelamiento Panorama General Modelo de Datos
Modelo de Datos
Un modelo de datos se define como la combinacin de tres componentes :
Una coleccin de tipos de objetos de informacin, los cuales son las unidades bsicas para construir cualquier base de datos.
Una coleccin de reglas generales de integridad, las cuales limitan el conjunto de los tipos de objetos que pueden aparecer en forma legal en cualquier base de datos.
Una coleccin de operadores, aplicables a los objetos para obtener informacin y para otros propsitos.
La descripcin de la estructura de una base de datos, es el modelo de datos, una coleccin de herramientas conceptuales para describir datos, relaciones de datos, semnticas y restricciones de datos.
Los principales objetivos del proceso de modelamiento es saber identificar cual es el problema y encontrar la forma de representarlo en un sistema. Esto significa saber de los datos, saber quienes van a usarlos y como van a usarlos.
Modelo de Datos
Modelo de Datos
Modelo Entidad - Relacin
El objetivo es identificar y representar las cosas de importancia para el funcionamiento del negocio (entidades), sus propiedades (atributos), y la forma en que estas cosas se relacionan entre s (relaciones).
Este modelo se desarroll para facilitar el diseo de las bases de datos (presentado por Chen en 1976).
La idea de esta metodologa de representacin de la informacin es mostrar los datos que contendr un sistema como un conjunto de objetos con atributos propios, los cuales son capaces de disminuir la redundancia presente en un sistema de archivos tradicionales y ocupar mejor la estructura presente en los datos a almacenar. Modelo de Datos Modelo Entidad - Relacin
Terminologa bsica
Entidad Relacin Atributo Identificador nico Subtipo y Supertipo Dependencia de existencia Entidades fuertes y dbiles
Qu es una Entidad ?
Definiciones Cualquier cosa de relevancia para el negocio acerca de la cual debe mantenerse informacin. Algo con existencia real o conceptual. Algo a lo que se le da nombre. Cualquier cosa que se puede identificar claramente. Un objeto que existe y es distinguible de otros objetos.
Modelo de Datos Modelo Entidad - Relacin
Cmo se identifican Entidades ?
A partir de la descripcin del negocio:
Buscando SUSTANTIVOS de uso comn en el negocio.
Buscando SINNIMOS, que representen conceptos generalizables.
A partir de los documentos del negocio:
Buscando agrupaciones de informacin contenida en stos.
Buscando elementos de informacin cuyo origen puede estar en entidades no identificadas.
Modelo de Datos Modelo Entidad - Relacin
Entidades - Representacin grfica Rectngulo de bordes redondeados. Nombre en singular y maysculas.
Modelo de Datos Modelo Entidad - Relacin
EMPLEADO PROYECTO PERSONA SALA PROVEEDOR PRODUCTO Atributos
Las entidades poseen cualidades o propiedades conocidas como atributos : una sala de clases tiene, un nombre (QO - QP - D310), una ubicacin, un cupo, etc.. Definicin Dato especfico, significativo para una entidad, que: La califica, o (ej.: color) La identifica, o (ej.: RUT) La clasifica, o (ej.: grupo) La cuantifica, o (ej.: peso) Expresa su estado (ej.: pagado, solicitado)
Deben llevar nombre en singular, nico dentro de la entidad.
No deben incluir el nombre de la entidad.
Pueden ser opcionales u obligatorios.
Su formato, valores por defecto, rangos, validaciones, son comunes para todos los valores posibles del atributo.
Modelo de Datos Modelo Entidad - Relacin
Atributos - Representacin grfica
Modelo de Datos Modelo Entidad - Relacin
VEHICULO # Numero Motor Patente Tipo Marca o Modelo o Numero de puertas o Numero de asientos
Cada atributos de una entidad posee un TIPO, el que corresponde al tipo de dato del atributo.
Ejemplo : RUT Nmero Nombre String. Fecha Date.
Dominios
Dominio es un conjunto de reglas de validacin, restricciones de formato, y otras propiedades que se aplican a un grupo de atributos.
Ejemplos : Listas de valores Rangos
Los dominios estandarizan los atributos en las entidades del negocio.
Modelo de Datos Modelo Entidad - Relacin
Conversin de Atributos en Entidades
Esto ocurre cuando:
El atributo puede tener varios valores dada una ocurrencia de una entidad, o El atributo puede tener a su vez atributos, o Requerimos historia de cambios en los valores del atributo.
Relaciones
Definicin Una relacin es una asociacin significativa entre dos entidades.
Una relacin es una vinculacin entre entidades , por ejemplo, la entidad libro puede estar relacionada con la entidad persona por medio de la relacin arrendar. Modelo de Datos Modelo Entidad - Relacin
Toda relacin tiene un nombre, que expresa la asociacin entre las entidades.
Tiene grado (o cardinalidad).
Tiene opcionalidad.
Formalmente, una relacin R entre conjuntos de entidades {E 1 , E 2 , ... E n } se representa mediante un conjunto de n-tuplas (e 1 , e 2 , ..., e n ) donde e 1
1 , e 2
2 , ..., e n E n .
Una relacin tambin puede tener atributos, por ejemplo, en la relacin arrendar el atributo fecha podra indicar la fecha en que se devuelve el libro.
Relaciones - Representacin grfica
Una relacin se representa por una lnea que une dos entidades.
La opcionalidad se representa por una lnea punteada (opcional) o llena (obligatoria).
Modelo de Datos Modelo Entidad - Relacin
El grado se representa por un extremo simple (uno) o pata de gallo (muchos).
El nombre se escribe en los extremos.
Modelo de Datos Modelo Entidad - Relacin
MODELO MARCA corresponder a tener Muchos Uno (pata de gallo) (simple) Obligatorio Opcional (lnea llena) (punteado) Relaciones - Lectura
La lectura debe expresar reglas del negocio Cada extremo se lee: Cada (entidad) puede, o debe (nombre relacin) una o ms, o una y solo una (entidad(es))
Ejemplo:
Cada MODELO debe corresponder a una y slo una MARCA. Cada MARCA puede tener uno o ms MODELOS.
Relaciones Muchos a Muchos
Son aquellas cuyo grado es mltiple en ambos extremos.
Se deben resolver buscando una entidad de interseccin.
Modelo de Datos Modelo Entidad - Relacin
Ejercicios Haga una lista de entidades y atributos para: Una distribuidora de combustibles. Un Banco Comercio (Falabella)
Relaciones N:M
Relaciones Uno a Uno
Son aquellas de grado singular en ambos extremos.
Se debe investigar la posibilidad de fusionar ambas entidades Modelo de Datos Modelo Entidad - Relacin
A B A B X A B Relaciones recursivas
Modelan jerarquas en entidades del mismo tipo, por ejemplo: parte - componente, jefe - subordinado. Coloquialmente: Oreja de chancho
Relaciones excluyentes - Arcos
Modelan el caso en que las ocurrencias de una entidad estn asociadas con slo una de varias otras entidades.
Esta es una manera de modelar exclusividad. Otra posibilidad es usar subtipos.
A Modelo de Datos Modelo Entidad - Relacin
Relaciones excluyentes - Lectura
Se leen todas las relaciones, unindolas por la partcula o bien Cada (entidad) o bien (relacin 1 - entidad 1) o bien (relacin 2 - entidad 2) ... o bien (relacin N - entidad N)
Modelo de Datos Modelo Entidad - Relacin
C A B Ejemplo : Cada TRABAJO o bien debe ser hecho por un EMPLEADO o bien debe ser hecho por un PROVEEDOR. Relaciones excluyentes - Reglas
Toda relacin en el arco debe tener la misma opcionalidad.
Toda relacin en el arco debe ser de la misma entidad.
Una relacin puede participar en a lo ms un arco.
Identificador nico
Un conjunto de entidades es un conjunto de entidades del mismo tipo que poseen los mismos atributos. Una entidad se identifica dentro del conjunto, por los valores que adquieren sus atributos.
Modelo de Datos Modelo Entidad - Relacin
Ejemplo : El conjunto de todas las personas que toman ramo en la escuela, puede definirse como el conjunto de entidades alumno.
Definicin Para todo conjunto de entidades del mismo tipo, debe existir uno o ms atributos, o una o ms relaciones, o una combinacin de stos que permite identificar inequvocamente cada entidad en forma nica. Este atributo o combinacin de atributos se denomina identificador nico.
Conjunto de atributos y/o relaciones cuya combinacin de valores para una ocurrencia de una entidad es nica en el universo de ocurrencias posibles de la entidad.
Si bien siempre debe ser posible encontrar un identificador nico, es frecuente definir atributos artificiales que garanticen la unicidad. Modelo de Datos Modelo Entidad - Relacin
Ejemplo : El N de matrcula es una buen identificador nico para el conjunto de entidades alumno.
Pregunta : Es el Carnet de Identidad una buen identificador nico ?
EMPLEADO # Emp_Id PROYECTO # Codigo ASIGNACION # Fecha La barra seala que el UID de PROYECTO participa del UID de ASIGNACION Modelo de Datos Modelo Entidad - Relacin
Observaciones
Una entidad puede tener ms de un UID. En casos complejos, puede usarse UID artificiales. Nunca un atributo o relacin opcional es parte de un UID.
Problema
Definir el modelo E-R que permite obtener los horarios y las salas de clases de los cursos dictados por la escuela. (resolver los alumnos, supuestos vistos en clase).
Modelo de Datos Modelo Entidad - Relacin
Ejercicios Construir un modelo Entidad Relacin que represente el funcionamiento de una bomba de bencina.
Su solucin debe al menos contestar: Quines son los clientes? Qu productos compran los clientes? Cul es el monto total de venta diaria? Cul es la bomba que ms vende? Qu octanaje tiene ms venta? Construir las consultas sql para contestar las preguntas anteriores.
Construir un modelo Entidad Relacin que represente un banco y los productos cuenta corriente y tarjeta de crdito. Su solucin debe al menos contestar: Quines son los clientes? Qu productos tiene cada cliente? Cul es el movimiento de cada producto? Cul es el saldo de cada producto? Construir las consultas sql para contestar las preguntas anteriores.
Subtipos y Supertipos
Definicin Un supertipo es una entidad que queda completamente definida como la unin de dos o ms entidades. A stas ltimas se les llama subtipos de la entidad supertipo.
Los subtipos modelan exclusividad.
Observaciones
Cada ocurrencia de la entidad supertipo debe ser parte de una y slo una entidad subtipo. Los subtipos son excluyentes.
Puede haber anidamiento: un subtipo de una entidad puede ser el supertipo de otras
Modelo de Datos Modelo Entidad - Relacin
Subtipos y Supertipos
Generalizacin y Especializacin
Generalizacin es el proceso de definir supertipos a partir de varias entidades con atributos comunes. Especificacin es el proceso de definir subtipos de una entidad base.
La generalizacin se usa para obtener un conjunto de entidades de alto nivel a partir de un conjunto entidades de bajo nivel.
La generalizacin se usa para hacer resaltar los parecidos entre tipos de entidades de nivel ms bajo y ocultar sus diferencias.
La generalizacin ayuda a la modularidad permitiendo que atributos comunes de conjuntos de entidades similares sean representados una sola vez en un diagrama E-R.
Modelo de Datos Modelo Entidad - Relacin
Subtipos y Supertipos
La especificacin es el proceso inverso, pueden haber entidades en el conjunto de alto nivel que no estn asociadas a entidades en un conjunto de bajo nivel. Representacin grfica
Modelo de Datos Modelo Entidad - Relacin
PERSONA JURDICA NATURAL Regla descrita:
Toda PERSONA es o bien jurdica o bien natural.
Dependencia de Existencia
Definicin La entidad X depende de la entidad Y, si para que exista X debe existir Y.
Ejemplo : Para que exista una entidad Vendedor debe existir una entidad Empleado asociada.
Para que exista una orden de compra debe existir algn cliente que la ordena. Si se elimina un cliente se debe eliminar tambin sus rdenes de compra. El conjunto de entidades Clientes es el dominante y Orden es el subordinado.
Entidades fuertes y dbiles
Es posible que una entidad no tenga suficientes atributos para formar un identificador nico y deba ser formado usando la relacin. Entidades as se llaman entidades dbiles. Modelo de Datos Modelo Entidad - Relacin
Una entidad dbil es aquella cuya existencia depende de otra entidad, en el sentido de que no puede existir si no existe tambin esa otra entidad.
En el ejemplo (visto en clases), la entidad seccin es dbil por que no puede existir si no existe la entidad curso.
Una entidad fuerte es una entidad que no es dbil.
Problema
Definir el modelo E-R de los Mundiales de Ftbol, que considere a los pases participantes y jugadores de cada seleccin, indicando edad y posicin en que juega. Un jugador puede participar en ms de un mundial y lo puede hacer cada vez en una posicin distinta. Un jugador siempre juega por un mismo pas. Los partidos del mundial deben indicar los pases que jugaron y el marcador obtenido. Los pases se clasifican en etapas : final, semifinal, cuartos de final , etc.
Modelo de Datos Modelo Entidad - Relacin
Temas al cierre
Modelo Entidad - Relacin y Formas Normales 1ra F.N. : Todo atributo debe tener valor nico en una ocurrencia de la entidad. 2da F.N.: Todo atributo debe depender de la totalidad del UID de la entidad. 3ra F.N. : Ningn atributo que no sea parte del UID de la entidad puede depender de otro atributo que tampoco sea parte del UID.
Mapeo (elemental) de Modelo E-R a Modelo Relacional
Entidades se mapean a Tablas Atributos se mapean a Columnas UIDs se mapean a LLaves Primarias Relaciones se mapean a Llaves Forneas
Modelo de Datos Modelo Entidad - Relacin
Mapeo (elemental) de Modelo E-R a Modelo Relacional
Arcos pueden ser diseados de dos maneras: Explcitos:Cada relacin se mapea a una llave fornea. Implcitos: Todas las relaciones se mapean a una columna de llave fornea ms una bandera para el tipo.
Subtipos pueden ser diseados de tres maneras: Cada subtipo se mapea a una tabla. Todos los subtipos se mapean a una nica tabla, y se agrega una columna de tipo. El diseo de subtipos se rehace en trminos de relaciones con arcos. Modelo de Datos Modelo Entidad - Relacin
METODOLOGIA A EMPLEAR Sugerencia de pasos para resolver problemas de Modelamiento de Datos:
1.Leer bien el texto del problema que describe el negocio. 2.Identificar (subrayar) los diferentes conceptos que son susceptibles de ser modelados (entidades, atributos). 3.Generar una lista de conceptos, identificando de ellos las Entidades y los Atributos. 4.Se recomienda agregar los conceptos sobre los cuales se tienen dudas. Es ms fcil posteriormente eliminar que agregar. 5.Ahora, se trabajar con las Entidades: Consignar en un Modelo de Datos las Entidades identificadas 6.Relacionar las Entidades segn la nomenclatura vista en clases. (1:1, 1:N, N:M). Las relaciones N:M se separan al final del proceso. 7.Probar el modelo: para ello, se deber leer las relaciones y comprobar si satisfacen el problema. Es probable que su modelo permita obtener ms informacin de la solicitada. Esto no es malo. Sera errado que no soportara un requerimiento explcito en el texto. 8.Si hay dudas, se deben efectuar los supuestos correspondientes. 9.Identificar los Atributos llave (#), los obligatorios (*) y los opcionales (o). Las llaves que se propagan a las otras entidades, no se colocan en el modelo: solamente se explicita con una lnea segn nomenclatura vista en clases. 10.Separar las relaciones N:M y construir los NUBS o relaciones 1:N. 11.Probar nuevamente el modelo. 12.Identificar nuevos requerimientos que pueden ser satisfechos con su solucin.
Ejercicio en Clases Un empresario tiene en la Regin Metropolitana varias parcelas; en cada una de ellas tiene un Criadero de Perros. El empresario, que se dedica a la venta de perros, los clasifica por raza. Cada perro es inscrito oficialmente en el Kennel Club y tiene un nmero de pedigree que lo identifica en forma nica. Cuando se realiza la venta, el perro debe quedar registrado con su nuevo dueo, adems de asignrsele un nombre al perrito. Para cada perro interesa tambin identificar la raza a la cual pertenece, en qu criadero fue vendido, cul es su fecha de nacimiento y las seas particulares del perrito. Adems, y dado que la venta de un perrito genera ingresos, el dueo del criadero necesita saber el precio de venta de cada perrito.
Construir el modelo de datos que satisfaga este requerimiento.