2.1 El Proceso de Diseño 
"El diseño de bases de datos es el 
proceso por el que se determina la   organización de una base de datos, 
incluidos su estructura, contenido y   las aplicaciones que se han de 
desarrollar. Durante mucho tiempo, el   diseño de bases de datos fue 
considerado una tarea para expertos: más un   arte que una ciencia. Sin 
embargo, se ha progresado mucho en el diseño   de bases de datos y éste 
se considera ahora una disciplina estable, con   métodos y técnicas 
propios. Debido a la creciente aceptación de las   bases de datos por 
parte de la industria y el gobierno en el plano   comercial, y a una 
variedad de aplicaciones científicas y técnicas, el   diseño de bases de
 datos desempeña un papel central en el empleo de los   recursos de 
información en la mayoría de las organizaciones. El diseño   de bases de
 datos ha pasado a constituir parte de la formación general   de los 
informáticos, en el mismo nivel que la capacidad de construir   
algoritmos usando un lenguaje de programación convencional."
Si usa un proceso de diseño de base 
de datos establecido, puede crear   de forma rápida y efectiva una base 
de datos bien diseñada que le   proporciona acceso conveniente a la 
información que desea. Con un diseño   sólido tardará menos tiempo en 
construir la base de datos y obtendrá   resultados más rápidos y 
precisos.
Nota Los términos "base de datos" y "tabla" no son sinónimos. El término base de datos se refiere a una base de datos relacional que almacena información sobre una o más tablas.
La clave para obtener un diseño de 
base   de datos eficaz radica en comprender exactamente qué información 
se   desea almacenar y la forma en que un sistema de administración de 
bases   de datos relacionales,  almacena los datos. Para   ofrecer 
información de forma eficiente y precisa,  debe   tener almacenados los 
datos sobre distintos temas en tablas separadas.   Por ejemplo, puede 
haber una tabla donde sólo se almacenen datos sobre   empleados y otra 
tabla que sólo contenga datos de ventas.
Al   organizar los datos de forma 
apropiada, proporciona flexibilidad a la   base de datos y tiene la 
posibilidad de combinar y presentar información   de muchas formas 
diferentes. 
Al diseñar una base de datos, en   
primer lugar debe dividir la información que desea almacenar como temas 
  distintos y después indicar cómo se relacionan estos   temas para que 
pueda recuperar la información correcta cuando sea   necesario. Si 
mantiene la información en tablas separadas facilitará la   organización
 y el mantenimiento de los datos y conseguirá aplicaciones   de alto 
rendimiento.
El proceso de diseño consta de los pasos siguientes (pueden variar según la fuente de información):
- Determinar la finalidad de la base de datos
Esto le ayudará a estar preparado para los demás pasos.
- Buscar y organizar la información necesaria
Reúna todos los tipos de información que desee   
registrar en la base de datos, como los nombres de productos o los   
números de pedidos.
- Dividir la información en tablas
Divida los elementos de información en entidades o   
temas principales, como Productos o Pedidos. Cada tema pasará a ser una 
  tabla.  
- Convertir los elementos de información en columnas
Decida qué información desea almacenar en cada   
tabla. Cada elemento se convertirá en un campo y se mostrará como una   
columna en la tabla. Por ejemplo, una tabla Empleados podría incluir   
campos como Apellido y Fecha de contratación.
No incluir datos calculados.
Almacene la información en sus partes lógicas mas pequeñas
- Especificar claves principales
Elija la clave principal de cada tabla. La clave   
principal es una columna que se utiliza para identificar inequívocamente
   cada fila, como Id. de producto o Id. de pedido.
- Definir relaciones entre las tablas
Examine cada tabla y decida cómo se relacionan   los 
datos de una tabla con las demás tablas. Agregue campos a las tablas   o
 cree nuevas tablas para clarificar las relaciones según sea   
necesario.
- Ajustar el diseño
Analice el diseño para detectar errores. Cree las   
tablas y agregue algunos registros con datos de ejemplo. Compruebe si   
puede obtener los resultados previstos de las tablas. Realice los   
ajustes necesarios en el diseño.
- Aplicar las reglas de normalización
Aplique reglas de normalización de los datos para   
comprobar si las tablas están estructuradas correctamente. Realice los  
 ajustes necesarios en las tablas.
2.2 Modelo Entidad - Relación 
1.Un modelo de datos es una colección de herramientas conceptuales 
  para la descripción de datos, relaciones entre datos, semántica de los
  datos y restricciones de consistencia. Podemos citar dos 
modelos de datos —el modelo entidad-relación y el modelo relacional.
  El modelo entidad-relación (E-R) es un modelo de datos de alto nivel. Está 
  basado en una percepción de un mundo real que consiste en una colección de 
  objetos básicos, denominados entidades, y de relaciones entre estos objetos.
El modelo relacional es un modelo de menor nivel. Usa una colección de tablas
  para representar tanto los datos como las relaciones entre los datos. Su simplicidad
  conceptual ha conducido a su adopción general; actualmente, una vasta
  mayoría de productos de bases de datos se basan en el modelo relacional. Los
  diseñadores formulan generalmente el diseño del esquema de la base de datos
  modelando primero los datos en alto nivel, usando el modelo E-R, y después
  traduciéndolo al modelo relacional.
Otro modelo de
  datos es el orientado a objetos, por ejemplo, extiende la representación de entidades
  añadiendo nociones de encapsulación, métodos (funciones) e identidad de
  objeto. El modelo de datos relacional orientado a objetos combina características
  del modelo de datos orientado a objetos y del modelo de datos relacional.
Se desarrolló para facilitar el diseño de bases de datos permitiendo la especificación
  de un esquema de la empresa que representa la estructura lógica completa de una base
  de datos. El modelo de datos E-R es uno de los diferentes modelos de datos semánticos; el
  aspecto semántico del modelo yace en la representación del significado de los datos. El modelo
  E-R es extremadamente útil para hacer corresponder los significados e interacciones de las
  empresas del mundo real con un esquema conceptual. Debido a esta utilidad, muchas herramientas
de diseño de bases de datos se basan en los conceptos del modelo E-R.
Hay tres nociones básicas que emplea el modelo de datos
  E-R: conjuntos de entidades, conjuntos de relaciones y
atributos.
Una entidad es una «cosa» u «objeto» en el mundo real
  que es distinguible de todos los demás objetos. Por ejemplo,
  cada persona en un desarrollo es una entidad. Una
  entidad tiene un conjunto de propiedades, y los valores
  para algún conjunto de propiedades pueden identificar
  una entidad de forma unívoca. Por ejemplo, el D.N.I.
  67.789.901 identifica unívocamente una persona particular
  en la empresa. Análogamente, se puede pensar
  en los préstamos bancarios como entidades, y un número
  de préstamo P-15 en la sucursal de Castellana identifica
  unívocamente una entidad de réstamo. Una entidad
  puede ser concreta, como una persona o un libro, o
  puede ser abstracta, como un préstamo, unas vacaciones
o un concepto.
Un conjunto de entidades es un conjunto de entidades
  del mismo tipo que comparten las mismas propiedades,
o atributos.
El conjunto de todas las personas
  que son clientes en un banco dado, por ejemplo, se pueden
definir como el conjunto de entidades cliente.
Las entidades individuales
  que constituyen un conjunto se llaman la extensión del
  conjunto de entidades. Así, todos los clientes de un banco
son la extensión del conjunto de entidades cliente.
Una entidad se representa mediante un conjunto de
  atributos. Los atributos describen propiedades que
  posee cada miembro de un conjunto de entidades. La
  designación de un atributo para un conjunto de entidades
  expresa que la base de datos almacena información
  similar concerniente a cada entidad del conjunto de entidades;
  sin embargo, cada entidad puede tener su propio
  valor para cada atributo. Posibles atributos del conjunto
  de entidades cliente son id-cliente, nombre-cliente,
  calle-cliente y ciudad-cliente. En la vida real, habría
  más atributos, tales como el número de la calle, el número
  del portal, la provincia, el código postal, y la comunidad
  autónoma, pero no se incluyen en el ejemplo simple.
  Posibles atributos del conjunto de entidades
préstamo son número-préstamo e importe.
Para cada atributo hay un conjunto de valores permitidos,
  llamados el dominio, o el conjunto de valores,
  de ese atributo. El dominio del atributo nombrecliente
  podría ser el conjunto de todas las cadenas de
  texto de una cierta longitud. Análogamente, el dominio
  del atributo número-préstamo podría ser el conjunto de
  todas las cadenas de la forma «P-n», donde n es un entero
positivo.
Ejemplo:
Entidad: Empleado
Nombre de atributo: Código
• Descripción: Código único por empleado
asignado por la empresa
• Función: Identificación (+Definición)
• Dominio: Números positivos de dos cifras
Entidad: Empleado
Nombre de atributo: Código
• Descripción: Código único por empleado
asignado por la empresa
• Función: Identificación (+Definición)
• Dominio: Números positivos de dos cifras
Atributos monovalorados y multivalorados. Los
  atributos que se han especificado en los ejemplos
  tienen todos un valor sólo para una entidad concreta.
  Por ejemplo, el atributo número-préstamo 
  para una entidad préstamo específico, referencia a
  un único número de préstamo. Tales atributos se
  llaman monovalorados. Puede haber ocasiones en
  las que un atributo tiene un conjunto de valores para
  una entidad específica. Considérese un conjunto de
  entidades empleado con el atributo número-teléfono.
  Cualquier empleado particular puede tener cero,
  uno o más números de teléfono. Este tipo de atributo 
  se llama multivalorado. En ellos, se pueden
  colocar apropiadamente límites inferior y superior
en el número de valores en el atributo multivalorado.
Como otro ejemplo, un atributo nombresubordinado
  del conjunto de entidades empleado sería multivalorado, ya que un empleado en concreto
podría tener cero, uno o más subordinados.
Cuando sea apropiado se pueden establecer
  límites superior e inferior en el número de valores
  de un atributo multivalorado. Por ejemplo, un banco
  puede limitar el número de números de teléfono
almacenados para un único cliente a dos. Colocando límites en este caso, se expresa que el atributo número-teléfono del conjunto de entidades cliente puede tener entre cero y dos valores.
almacenados para un único cliente a dos. Colocando límites en este caso, se expresa que el atributo número-teléfono del conjunto de entidades cliente puede tener entre cero y dos valores.
Considérese que el conjunto
  de entidades empleado tiene un atributo edad,
  que indica la edad del cliente. Si el conjunto de
  entidades cliente tiene también un atributo fechade-nacimiento, se puede calcular edad a partir de
  fecha-de-nacimiento y de la fecha actual. Así, edad
es un atributo derivado.
Un atributo toma un valor nulo cuando una entidad
  no tiene un valor para un atributo. El valor nulo también
  puede indicar «no aplicable», es decir, que el valor
  no existe para la entidad. Por ejemplo, una persona puede
  no tener segundo nombre de pila. Nulo puede también
  designar que el valor de un atributo es desconocido.
  Un valor desconocido puede ser, bien perdido (el
  valor existe pero no se tiene esa información) o desconocido
(no se conoce si el valor existe realmente o no).
Por ejemplo, si el valor nombre para un cliente particular
  es nulo, se asume que el valor es perdido, ya que
  cada cliente debe tener un nombre. Un valor nulo para
  el atributo piso podría significar que la dirección no
  incluye un piso (no aplicable), que existe piso pero no
  se conoce cuál es (perdido), o que no se sabe si el piso
  forma parte o no de la dirección del cliente (desconocido).
Una relación es una asociación entre diferentes entidades.
  Por ejemplo, se puede definir una relación que
  asocie al cliente López con el préstamo P-15. Esta relación
  especifica que López es un cliente con el préstamo
  número P-15.
  Un conjunto de relaciones es un conjunto de relaciones
  del mismo tipo. Formalmente es una relación
  matemática con n > = 2 de conjuntos de entidades (posiblemente
no distintos). Si E1, E2,…,En son conjuntos de
  entidades, entonces un conjunto de relaciones R es un
subconjunto de:
{(e1, e2,…,en) | e1 ∈ E1, e2 ∈ E2,…,en ∈ En}
donde (e1,e2,…en) es una relación.
Considérense las dos entidades cliente y préstamo. Se define el conjunto de relaciones
  prestatario para denotar la asociación entre clientes y
  préstamos bancarios que los clientes tengan. Esta asociación
se describe en la siguiente figura:
La función que desempeña una entidad en una relación
  se llama papel de la entidad.
  Debido a que los conjuntos de entidades que participan
  en un conjunto de relaciones son generalmente distintos,
  los papeles están implícitos y no se especifican
  normalmente. Sin embargo, son útiles cuando el significado
  de una relación necesita aclaración. Tal es el caso
  cuando los conjuntos de entidades de una relación no
  son distintos; es decir, el mismo conjunto de entidades
  participa en una relación más de una vez con diferentes
  papeles. En este tipo de conjunto de relaciones, que se
  llama algunas veces conjunto de relaciones recursivo,
  es necesario hacer explícitos los papeles para especificar
  cómo participa una entidad en un ejemplar de relación.
  Por ejemplo, considérese una conjunto de entidades
  empleado que almacena información acerca de todos
  los empleados del banco. Se puede tener un conjunto de
  relaciones trabaja-para que se modela mediante pares
  ordenados de entidades empleado. El primer empleado
  de un par toma el papel de trabajador, mientras el segundo
  toma el papel de jefe. De esta manera, todas las relaciones
trabaja-para son pares (trabajador, jefe); los pares (jefe, trabajador) están excluidos.
trabaja-para son pares (trabajador, jefe); los pares (jefe, trabajador) están excluidos.
El número de conjuntos de entidades que participan
  en un conjunto de relaciones es también el grado del
  conjunto de relaciones. Un conjunto de relaciones binario
  tiene grado 2; un conjunto de relaciones ternario tiene
grado 3.
Otro ejemplo:
Una relación tiene sentido al 
expresar las entidades que relaciona. En   el ejemplo anterior, un 
huesped(entidad), se aloja(relación) en una   habitacion(entidad).
Dados los conjuntos de entidades
 "Habitación" y "Huésped", todas   las relaciones de la forma 
habitación-huésped, permiten obtener la   información de los huéspedes y
 sus respectivas habitaciones.
La dependencia o asociación entre los conjuntos de entidades es llamada participación. En el ejemplo anterior los conjuntos de entidades "Habitación" y "Huésped" participan en el conjunto de relaciones habitación-huésped.
2.3 Restricciones
Una restricción es una condición que obliga el 
cumplimiento de   ciertas condiciones en la base de datos. Algunas no 
son determinadas por   los usuarios, sino que son inherentemente 
definidas por el simple hecho   de que la base de datos sea relacional. 
Algunas otras restricciones las   puede definir el usuario, por ejemplo,
 usar un campo con valores   enteros entre 1 y 10.
Las restricciones proveen un método de implementar 
reglas en la base   de datos. Las restricciones restringen los datos que
 pueden ser   almacenados en las tablas. Usualmente se definen usando 
expresiones que   dan como resultado un valor booleano, indicando si los
 datos satisfacen   la restricción o no.
Las restricciones no son parte formal del modelo 
relacional, pero son   incluidas porque juegan el rol de organizar mejor
 los datos.
Un esquema de desarrollo E-R puede definir ciertas restricciones 
  a las que los contenidos de la base de datos
se deben adaptar.
Examinemos la correspondencia 
  de cardinalidades y las restricciones de participación,
  que son dos de los tipos más importantes de
restricciones.
La correspondencia de cardinalidades, o razón de cardinalidad,
  expresa el número de entidades a las que otra
entidad puede estar asociada vía un conjunto de relaciones.
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.
Ej. Una persona tiene un coche y un coche es de una sola persona. 
Uno a varios. Una entidad en A se asocia con cualquier
  número de entidades en B (ninguna o varias).
  Una entidad en B, sin embargo, se puede asociar con
a lo sumo una entidad en A
Ej. Una persona tiene varios coches y un coche es de una sola persona.
Varios 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 número de entidades
(ninguna o varias) en A
 Ej. Una persona tiene un coche y un coche es de varias personas. 
Varios a varios. Una entidad en A se asocia con
  cualquier número de entidades (ninguna o varias)
  en B, y una entidad en B se asocia con cualquier
número de entidades (ninguna o varias) en A.
Ej. Una persona tiene varios coches y un coche es de varias personas. 
Como ilustración considérese el conjunto de relaciones 
  prestatario. Si en un banco particular un préstamo
  puede pertenecer únicamente a un cliente y un cliente
  puede tener varios préstamos, entonces el conjunto
  de relaciones de cliente a préstamo es uno a varios. Si
  un préstamo puede pertenecer a varios clientes (como
  préstamos que se toman en conjunto por varios socios
  de un negocio) el conjunto de relaciones es varios a
varios.
Restricciones Parciales
La participación de un conjunto de entidades E en un
  conjunto de relaciones R se dice que es total si cada
  entidad en E participa al menos en una relación en R.
  Si sólo algunas entidades en E participan en relaciones
  en R, la participación del conjunto de entidades E en la
  relación R se llama parcial. Por ejemplo, se puede esperar
que cada entidad préstamo esté relacionada con al primamenos
un cliente mediante la relación prestatario. Por
lo tanto, la participación de préstamo en el conjunto de
relaciones prestatario es total. En cambio, un individuo
puede ser cliente de un banco tenga o no tenga un préstamo
en el banco. Así, es posible que sólo algunas de
las entidades cliente estén relacionadas con el conjunto
de entidades préstamo mediante la relación prestatario,
y la participación de cliente en el conjunto de relaciones
prestatario es por lo tanto parcial.
 • Una línea dirigida desde el conjunto de relaciones
  prestatario al conjunto de entidades préstamo especifica que prestatario es un conjunto de relaciones
  uno a uno, o bien varios a uno, desde cliente a préstamo;
  prestatario no puede ser un conjunto de relaciones
  varios a varios ni uno a varios, desde cliente
  a préstamo.
• Una línea no dirigida desde el conjunto de relaciones prestatario al conjunto de relaciones préstamo especifica que prestatario es o bien un conjunto de relaciones varios a varios, o bien uno a
varios, desde cliente a préstamo. Volviendo al diagrama E-R de la figura anterior, se ve que el conjunto de relaciones prestatario es varios a varios.
 Si el conjunto de relaciones
  prestatario fuera uno a uno, entonces ambas líneas
  desde prestatario tendrían flechas: una apuntando
  al conjunto de entidades préstamo y otra apuntando al
conjunto de entidades cliente
 
  
Observe el siguiente modelo E-R y analicelo:
  
a) La entidad superclase nos permite modelizar las características comunes de la entidad vista de una forma genérica.
 
Es necesario que se cumpla que toda ocurrencia de una entidad subclase sea también una ocurrencia de su entidad superclase.
Denotamos la generalización/especialización con una flecha que parte de las entidades subclase y que se dirige a la entidad superclase.
La generalización/especialización de los empleados es total porque suponemos que todo empleado debe ser directivo, técnico o administrativo. Se denota con la etiqueta T.
Lectura del tema 2.8 Diseño de un esquema de 
Bases de Datos E-R, del libro Fundamentos de Bases de Datos de Abraham 
Silberschatz. 
Lectura del tema 2.9 Reducción de un esquema E-R a Tablas, del libro Fundamentos de Bases de Datos de Abraham Silberschatz. 
Los conjuntos de relaciones binarias se representan en UML dibujando simplemente una línea que conecte los conjuntos de entidades. Se escribe el nombre del conjunto de relaciones adyacente a la línea. También se puede especificar el papel que juega un conjunto de entidades en un conjunto de relaciones escribiendo el nombre del papel en un cuadro, junto con los atributos del conjunto de relaciones, y conectar el cuadro con una línea discontinua a la línea que describe el conjunto de relaciones. Este cuadro se puede tratar entonces como un conjunto de entidades, de la misma forma que una agregación en los diagramas E-R puede participar en relaciones con otros conjuntos de entidades. La relaciones no binarias no se pueden representar directamente en UML se deben convertir en relaciones binarias (vease Apartado 2.4.3). Las restricciones de cardinalidad se especifican en UML de la misma forma que en los diagramas E-R, de la forma i..s, donde i denota el mínimo y s el máximo número de relaciones en que puede participar una entidad. Sin embargo, se debería ser consciente que la ubicación de las restricciones es exactamente el inverso de la ubicación de las restricciones en los diagramas E-R, como muestra la figura. La restricción 0..* en el lado E2 y 0..1 en el lado E1 significa que cada entidad.
Tiempo de TAREA, ups!!!!!!!, revisar el partado de tareas y elaborar la nùmero 3.
2.4 Diagramas E-R 
2.5 Diseño con Diagramas E-R
La estructura lógica de una Base de Datos se puede 
representar graficamente a través de un diagrama, el cual llamaremos 
Diagrama E-R. Estos diagramas se apoyan de diferentes símbolos los 
cuales tienen un significado particular. Los diagramas se usan para que 
la información se presente de forma clara y sencilla. Los componentes 
principales son:
Breve recordatorio:
Entidad: Representa un objeto que 
tiene vida propia en el sistema que se está modelando, tanto tangible 
como intangibles. Ejemplo: cliente, producto, estudiante, vacación.
Conjunto de entidades: Grupo 
(conjunto) de entidades del mismo tipo. Ejemplo: Todos los estudiantes 
de un curso, representan el conjunto de entidades estudiante.  
Relación: Asociación o vinculación 
entre dos o más entidades. Ejemplo: La relación comprar entre las 
entidades cliente y producto. Generalmente representa acciones entre las
 entidades.  
Conjunto de relaciones: Son relaciones del mismo tipo. 
Atributos: Características o 
propiedades asociadas al conjunto de entidades o relaciones y que toman 
valor en una entidad en particular. Ejemplo: nombre, cédula, teléfono.
  Los posibles valores puede tomar un atributo para un conjunto de 
entidades se denomina dominio.  
Los atributos se pueden clasificar en:  
- Simples o atómicos: Son aquellos que no contienen otros atributos- Compuestos: Son los que incluyen otros atributos simples.. Ejemplo: dirección (Se puede dividir en calle, número, ciudad).- Monovalorados o Univalorados: Atributo que toma un solo valor, para una entidad en particular.- Multivalorados: Atributo que para una misma entidad puede tomar muchos valores.- Derivados o calculados: Son aquellos atributos cuyos valores se pueden conseguir con operaciones sobre valores de otros atributos.- Nulos: Son aquellos atributos para los cuales en algún momento no existe o no se conoce su valor.
Diagrama Entidad - Relación.
Es la representación gráfica del Modelo 
Entidad-Relación             y permite ilustrar la estructura de la base
 de datos del negocio             modelado. 
 
Escribe Johnson "los diagramas ER constituyen una notación            
 para documentar un diseño tentativo de bases de datos. Los             
analistas los utilizan para facilitar el proceso de diseño"             
[Joh00]. 
Está compuesto por los siguientes elementos.
• Rectángulos: representan conjuntos de entidades.
• Elipses: representan atributos.
• Rombos: representan relaciones.
• Líneas: unen atributos a conjuntos de entidades y conjuntos de entidades a conjuntos de relaciones.
• Elipses dobles: representan atributos multivalorados.
• Elipses discontinuas: que denotan atributos derivados.
• Líneas dobles: indican participación total de una entidad en un conjunto de relaciones.
• Rectángulos dobles: representan conjuntos de entidades débiles.
Tomaremos el ejemplo del Libro, Fundamentos de Bases de Datos
Considérese el diagrama entidad-relación de la siguiente figura, que consta de dos conjuntos de entidades, cliente
  y préstamo, relacionadas a través de un conjunto de
  relaciones binarias prestatario. Los atributos asociados
  con cliente son id-cliente, nombre-cliente, calle-cliente,
  y ciudad-cliente. Los atributos asociados con préstamo
  son número-préstamo e importe. Como se muestra
  en la figura, los atributos de un conjunto de
  entidades que son miembros de la clave primaria están
  subrayados.
  El conjunto de relaciones prestatario puede ser varios
  a varios, uno a varios, varios a uno o uno a uno. Para
  distinguir entre estos tipos, se dibuja o una línea dirigida
  (→) o una línea no dirigida (—) entre el conjunto de
relaciones y el conjunto de entidades en cuestión.
• Una línea no dirigida desde el conjunto de relaciones prestatario al conjunto de relaciones préstamo especifica que prestatario es o bien un conjunto de relaciones varios a varios, o bien uno a
varios, desde cliente a préstamo. Volviendo al diagrama E-R de la figura anterior, se ve que el conjunto de relaciones prestatario es varios a varios.
Si el conjunto de relaciones prestatario fuera
  uno a varios, desde cliente a préstamo, entonces la línea
  desde prestatario a cliente sería dirigida, con una flecha
  apuntando al conjunto de entidades cliente. 
 Si el conjunto de relaciones prestatario fuera varios a uno desde cliente a préstamo,
  entonces la línea desde prestatario a préstamo tendría
una flecha apuntando al conjunto de entidades préstamo.
 Diagrama E-R con un atributo unido a un conjunto de relaciones.
   Diagrama E-R con atributos compuestos, multivalorados y derivados.
 Diagrama E-R con indicadores de papeles.
 Los conjuntos de relaciones no binarias se pueden
  especificar fácilmente en un diagrama E-R. La siguiente figura consta de tres conjuntos de entidades cliente, trabajo
  y sucursal, relacionados a través del conjunto de
  relaciones trabaja-en.
  Se pueden especificar algunos tipos de relaciones
  varios a uno en el caso de conjuntos de relaciones no
  binarias. Supóngase un empleado que tenga a lo sumo
  un trabajo en cada sucursal (por ejemplo, Santos no puede
  ser director y auditor en la misma sucursal). Esta restricción
  se puede especificar con una flecha apuntando
a trabajo en el borde de trabaja-en.
 Límites de cardinalidad en conjuntos de relaciones.
Veamos otra forma de poder representar las relaciones:
2.6 Conjunto de entidades débiles 
Las entidades que hemos considerado 
hasta ahora tienen un conjunto de   atributos que forman su claves 
primarias y que permiten identificarlas   completamente. Estas entidades
 se denominan, de forma más específica,   entidades fuertes. En este subapartado consideraremos otro tipo de   entidades que denominaremos entidades débiles.
  Una entidad débil es una entidad 
cuyos atributos no la identifican   completamente, sino que sólo la 
identifican de forma parcial. Esta   entidad debe participar en una 
interrelación que ayuda a identificarla.
Una entidad débil se representa con un rectángulo doble, y la interrelación que ayuda a identificarla se representa con una doble línea.
Una entidad débil se representa con un rectángulo doble, y la interrelación que ayuda a identificarla se representa con una doble línea.
Para que un conjunto de entidades débiles tenga sentido,
  debe estar asociada con otro conjunto de entidades,
  denominado el conjunto de entidades identificadoras
  o propietarias. Cada entidad débil debe estar
  asociada con una entidad identificadora; es decir, se dice
  que el conjunto de entidades débiles depende existencialmente
  del conjunto de entidades identificadoras. Se
  dice que el conjunto de entidades identificadoras es propietaria
  del conjunto de entidades débiles que identifica.
  La relación que asocia el conjunto de entidades débiles
  con el conjunto de entidades identificadoras se
  denomina relación identificadora. La relación identificadora
  es varios a uno del conjunto de entidades débiles
  al conjunto de entidades identificadoras y la participación
  del conjunto de entidades débiles en la relación
es total.
Ejemplo: Consideremos las entidades edificio y despacho de
 la   figura siguiente. Supongamos que puede haber despachos con el 
mismo   número en edificios diferentes. Entonces, su número no 
identifica   completamente un despacho. Para identificar completamente 
un despacho,   es necesario tener en cuenta en qué edificio está 
situado. De hecho,   podemos identificar un despacho mediante la 
interrelación situación, que   lo asocia a un único edificio. El nombre 
del edificio donde está   situado junto con el número de despacho lo 
identifican completamente.
La interrelación situación nos
 ha permitido completar la   identificación de los despachos. Para toda 
entidad débil, siempre debe   haber una única interrelación que permita 
completar su identificación.   Esta interrelación debe ser binaria con 
conectividad 1:N, y la entidad   débil debe estar en el lado N. De este 
modo, una ocurrencia de la   entidad débil está asociada con una sola 
ocurrencia de la entidad del   lado 1, y será posible completar su 
identificación de forma única.   Además, la entidad del lado 1 debe ser 
obligatoria en la interrelación   porque, si no fuese así, alguna 
ocurrencia de la entidad débil podría no   estar interrelacionada con 
ninguna de sus ocurrencias y no se podría   identificar completamente. 
Veamos y anilicemos el siguiente ejemplo:
El discriminante de un conjunto de entidades
  débiles es un conjunto de atributos que permite
  que  sea distinguido. Por ejemplo, el discriminante
  del conjunto de entidades débiles pago es el atributo
  número-pago, ya que, para cada préstamo, un
  número de pago identifica de forma única cada pago
  para ese préstamo. El discriminante de un conjunto de
  entidades débiles se denomina la clave parcial del conjunto
  de entidades.
  La clave primaria de un conjunto de entidades débiles
  se forma con la clave primaria del conjunto de entidades
  identificadoras, más el discriminante del conjunto
  de entidades débiles. En el caso del conjunto de
  entidades pago, su clave primaria es {número-préstamo,
  número-pago}, donde número-préstamo es la clave
  primaria del conjunto de entidades identificadoras,
  es decir, préstamo, y número-pago distingue las entidades
pago dentro del mismo préstamo. 
Observe el siguiente modelo E-R y analicelo:
2.7 Modelo E-R extendido 
En algunos casos, hay ocurrencias de 
una entidad que tienen   características propias específicas que nos 
interesa modelizar. Por   ejemplo, puede ocurrir que se quiera tener 
constancia de qué coche de la   empresa tienen asignado los empleados 
que son directivos; también que,   de los empleados técnicos, interese 
tener una interrelación con una   entidad proyecto que indique 
en qué proyectos trabajan y se   desee registrar su titulación. 
Finalmente, que convenga conocer la   antigüedad de los empleados 
administrativos. Asímismo, habrá algunas   características comunes a 
todos los empleados: todos se identifican por   un DNI, tienen un 
nombre, un apellido, una dirección y un número de   teléfono.
La generalización/especialización permite reflejar el hecho de   que hay una entidad general, que denominamos entidad superclase, que se   puede especializar en entidades subclase:
a) La entidad superclase nos permite modelizar las características comunes de la entidad vista de una forma genérica.
b) Las entidades subclase nos permiten modelizar las características propias de sus especializaciones.
Es necesario que se cumpla que toda ocurrencia de una entidad subclase sea también una ocurrencia de su entidad superclase.
Denotamos la generalización/especialización con una flecha que parte de las entidades subclase y que se dirige a la entidad superclase.
Ejemplo de entidades superclase y subclase
En la figura siguiente están representadas la entidad
 superclase, que   corresponde al empleado del ejemplo anterior, y las 
entidades subclase,   que corresponden al directivo, al técnico y al 
administrativo del mismo   ejemplo.
En la generalización/especialización, las 
características (atributos o   interrelaciones) de la entidad superclase
 se propagan hacia las   entidades subclase. Es lo que se denomina 
herencia de propiedades.
En el diseño de una generalización/especialización, se puede seguir uno de los dos procesos siguientes:
1)  Puede ocurrir que el diseñador 
primero identifique la necesidad   de la entidad superclase y, 
posteriormente, reconozca las   características específicas que hacen 
necesarias las entidades subclase.   En estos casos se dice que ha 
seguido un proceso de especialización.
2)  La alternativa es que el 
diseñador modelice en primer lugar las   entidades subclase y, después, 
se dé cuenta de sus características   comunes e identifique la en- tidad
 superclase. Entonces se dice que ha   seguido un proceso de 
generalización.
La generalización/especialización puede ser de dos tipos: 
a)  Disjunta. En este caso no puede suceder que una 
misma ocurrencia   apa rezca en dos entidades subclase diferentes. Se 
denota gráficamente   con la etiqueta D.
b)  Solapada. En este caso no tiene lugar la restricción anterior. Se denota gráficamente con la etiqueta S.
Además, una generalización/especialización también puede ser: 
1)  Total. En este caso, toda ocurrencia de la 
entidad superclase   debe pertenecer a alguna de las entidades subclase.
 Esto se denota con   la etiqueta T.
2)  Parcial. En este caso no es necesario que se cumpla la condición anterior. Se denota con la etiqueta P.
La generalización/especialización de los empleados es total porque suponemos que todo empleado debe ser directivo, técnico o administrativo. Se denota con la etiqueta T.
Notaciones usadas en el Modelo E-R
Notaciones del Modelo E-R alternativas 
Tarea: Lectura del tema 2.7 
Características del modelo E-R Extendido del libro Fundamentos de Bases 
de Datos de Abraham Silberschatz
2.8 Otros aspectos del diseño de bases de datos
Reducción de diagramas E-R a tablas
Un diagrama E-R, puede ser  representado también a
 través de una colección de tablas. Para cada una de las  entidades y  
relaciones  existe una tabla única a la que se le asigna como  nombre el
 del conjunto de entidades y de las relaciones respectivamente, cada 
tabla tiene  un número de columnas que son definidas por la cantidad de 
atributos y las cuales tienen  el nombre del atributo.
La transformación de nuestro ejemplo  Venta en la
 que intervienen las entidades de Vendedor con los atributos RFC, 
nombre,  puesto, salario y Artículo con los atributos Clave, 
descripción, costo.
Cuyo diagrama E-R es el siguiente:
Nótese que en la tabla de relación  - Venta -, 
contiene como atributos a las llaves primarias de las entidades que 
intervienen  en dicha relación, en caso de que exista un atributo en las
 relaciones, este atributo es  anexado como una fila más de la tabla.
Por ejemplo si anexamos el atributo  fecha a la relación venta, la tabla que se originaria sería la siguiente:
Reglas que se deben seguir para poder crear dicho esquema.
Modelo e-r conversión a tablas 
-  una tabla por cada conjunto de entidades
    - nombre de tabla = nombre de conjunto de entidades
 
- una tabla por cada conjunto de relaciones m-m
    - nombre de tabla = nombre de conjunto de relaciones
 
-  definición de columnas para cada tabla
    -  conjuntos fuertes de entidades
          - columnas = nombre de atributos
 
- conjuntos débiles de entidades
        - columnas = llave_primaria (dominante) U atributos(subordinado)
 
- conjunto de relaciones R (m-m) entre A, B
        - columnas (R) = llave_primaria (A) U llave_primaria (B) U atributos(R)
 
- conjunto de relaciones R (1-1) entre A y B
        - columnas (A) = atribs(A) U llave primaria(B) U atributos(R)
 
- conjunto de relaciones R (1-m) entre A y B
        - columnas (B) = atribs(B) U llave primaria(A) U atributos(R)
 
 
-  conjuntos fuertes de entidades
          
2.9 La Notación E-R con UML 
Los diagramas entidad-relación ayudan a modelar el
  componente de representación de datos de un sistema
  software. La representación de datos, sin embargo,
  sólo forma parte de un diseño completo de un sistema.
  Otros componentes son modelos de interacción
  del usuario con el sistema, especificación de módulos
  funcionales del sistema y su interacción, etc. El
  lenguaje de modelado unificado (UML, Unified
  Modeling Language) es un estándar propuesto para la
  creación de especificaciones de varios componentes
  de un sistema software. Algunas de las partes de UML
son:
Diagrama de clase. Un diagrama de clase es similar a un diagrama E-R. Más adelante en este apartado se mostrarán algunas características de los diagramas de clase y cómo se corresponden con los diagramas E-R.
Diagrama de caso de uso. Los diagramas de caso de uso muestran la interacción entre los usuarios y el sistema, en particular los pasos de las tareas que realiza el usuario (tales como prestar dinero o matricularse de una asignatura).
Diagrama de actividad. Los diagramas de actividad describen el flujo de tareas entre varios componentes de un sistema.
Diagrama de implementación. Los diagramas de implementación muestran los componentes del sistema y sus interconexiones tanto en el nivel del componente software como el hardware.
La figura siguiente muestra varios constructores de diagramas
  E-R y sus constructores equivalentes de los
  diagramas de clase UML. Más abajo se describen estos
  constructores. UML muestra los conjuntos de entidades
  como cuadros y, a diferencia de E-R, muestra los atributos
dentro del cuadro en lugar de como elipses separadas. UML modela realmente objetos, mientras que
E-R modela entidades. Los objetos son como entidades
y tienen atributos, pero además proporcionan un conjunto
de funciones (denominadas métodos) que se pueden
invocar para calcular valores en términos de los atributos
de los objetos, o para modificar el propio objeto.
Los diagramas de clase pueden describir métodos además
de atributos. 
Los conjuntos de relaciones binarias se representan en UML dibujando simplemente una línea que conecte los conjuntos de entidades. Se escribe el nombre del conjunto de relaciones adyacente a la línea. También se puede especificar el papel que juega un conjunto de entidades en un conjunto de relaciones escribiendo el nombre del papel en un cuadro, junto con los atributos del conjunto de relaciones, y conectar el cuadro con una línea discontinua a la línea que describe el conjunto de relaciones. Este cuadro se puede tratar entonces como un conjunto de entidades, de la misma forma que una agregación en los diagramas E-R puede participar en relaciones con otros conjuntos de entidades. La relaciones no binarias no se pueden representar directamente en UML se deben convertir en relaciones binarias (vease Apartado 2.4.3). Las restricciones de cardinalidad se especifican en UML de la misma forma que en los diagramas E-R, de la forma i..s, donde i denota el mínimo y s el máximo número de relaciones en que puede participar una entidad. Sin embargo, se debería ser consciente que la ubicación de las restricciones es exactamente el inverso de la ubicación de las restricciones en los diagramas E-R, como muestra la figura. La restricción 0..* en el lado E2 y 0..1 en el lado E1 significa que cada entidad.





 
no entendi bien lo ultimo pero despues me lo estudio por mi cuenta
ResponderEliminarMEJOR VETE ALV
EliminarLe respondiste un comentario a alguien de hace 9 años?
EliminarNo entendi nada, pero despues me lo estudio por mi cuenta
ResponderEliminar