Professional Documents
Culture Documents
Modelos de Datos
Diseo aplicaciones bd: complejo Herramientas conceptuales apoyo diseo bd Ayuda entender y especificar componentes de bd y relaciones Modelos
Conceptuales (de alto nivel): cercano usuario
E-R
Modelo de Datos
Herramienta conceptual para describir:
Datos (Estructura)
Constructores que definen estructura (grupos de elementos y elementos)
Propuestas de extensin
Propsito
Facilita diseo de esquemas de bd.
Incluye algunas restricciones No incluye operaciones.
ETAPAS DISEO
(tomada de Fundamentals of database Systems, Elmasri/Navathe)
Etapas Diseo
Anlisis de requerimientos Diseo conceptual Diseo Lgico Refinamiento de Esquema Diseo Fsico Diseo mecanismos de seguridad
Diseo Conceptual
Cules son las entidades y sus relaciones en la organizacin? Qu informacin sobre estas relaciones y entidades se debe almacenar en la bd? Cules reglas de negocio se deben asegurar? Modelo E-R ayuda en esta tarea
Atributos
Valores describiendo propiedades de una entidad
Diagramas E-R
Entidades organizadas en conjuntos entidad Conjuntos entidad: igual tipo Atributo de entidad con valor nico: llave o clave Llaves: simples o compuestas Subrayadas (notacin) Estado entidad: entidades almacenadas (instancias) Conjuntos entidad denotados por Entidad
Diagramas E-R
Atributos: propiedades entidades Asociados con dominios Conectados a conjuntos entidad Simples o compuestos Llave: atributo especial Representados por Atributo
Diagramas E-R
Entidades y atributos:
Conjunto Entidad = rectngulo. Atributo = valos, conectados con lneas a su conjunto entidad. Atmicos o compuestos (mltiples componentes atmicos).
Nombre Nombre Fech-nac cdula Fech_nac Estudiante Estudiante Nom cdula Apellido
Diagramas E-R
Atributos
Valores Atributo: dominio Simples o multivaluados
Nombre Promedio Nombre #crditos
cdula
Prerreq.
Estudiante
Cdigo
Asignatura
Relaciones
Una relacin conecta dos o ms entidades. Grado de tipo relacin: nmero de tipos de entidad que participan en ella Puede tener atributos propios El rol de una entidad en una relacin representa su propsito en la relacin Nombre de relacin con significado Representadas por relacin
Relaciones
miembro Miembro de Equipo de laboratorio
Horario
Aula
Profesor
Ofrece
Asignatura
cdula
Nombre
Cdigo
Nombre
categora
Relaciones
Nombre asociado nico Conectan conjuntos entidad: lneas Grado: Nmero entidades participantes Tipo de asociacin: 1-1, 1-m, m-n Rol: Funcin que desempea
Implcito Necesidad especificacin (reflexivas)
Conjunto Relacin
El valor actual de un conjunto entidad: conjunto de entidades que pertenecen a esta. Ejemplo: El conjunto de todas las pelculas en la bd. El valor de un conjunto relacin (tipo): conjunto de tuplas (instancias de relacin) con una componente por cada conjunto entidad relacionado.
Equipo P1 P3 P4 P2 P8
Relaciones Mltiples
Conectan ms de dos entidades
Asignatura
Ofrece
Programa
Aulas
Relaciones Mltiples
Asignatura Ofrece Programa
Aula
Una flecha que apunta a un conjunto entidad E, significa que si se selecciona una entidad de cada uno de los otros dos conjuntos entidad en la relacin, stas se relacionan con una nica entidad en E.
Relaciones Recursivas
La misma entidad participa ms de una vez en la relacin Equipos de estudiantes jugando rol de monitores de otros equipos y siendo monitoreados por otros equipos.
Supervisa Equipo supervisado Supervisin
23
Relaciones Muchos-Muchos
En una relacin muchos-muchos, una entidad de un conjunto se puede conectar a muchas entidades de otro conjunto.
E.g., un estudiante matricula muchas asignaturas y una asignatura es matriculada por muchos estudiantes.
n
Estudiantes
Matricula
Asignaturas
Grficamente
muchos-muchos
Relaciones Muchos-uno
Algunas relaciones binarias son muchos -uno (uno-muchos) entre dos entidades. Cada entidad del primer conjunto est conectado a lo sumo con una entidad del segundo conjunto. Pero, una entidad del segundo conjunto puede estar conectada a cero, uno o muchas entidades del primer conjunto.
Grficamente
muchos-uno
1 Espacios EN
Equipos
Relaciones uno-uno
En una relacin uno-uno, cada entidad de alguno de los conjuntos entidad est relacionada a lo sumo con una entidad del otro conjunto entidad Un equipo tiene a los sumo un estudiante lider y un estudiante lider lidera a lo sumo un equipo
1 Estudiante Lider de 1 Equipo
Grficamente
uno-uno
Entidades Dbiles
E/R Diagramas
fecha-adqu nmero nombre isbn autor
Ejemplar
Libro
Restricciones de Participacin
Participacin de entidades en relaciones son parciales o totales (Lneas sencillas y dobles) Fcil especificacin en relaciones binarias Representacin de: exactamente uno, al menos uno
Escuelas
Administra
Director
Atributos o entidades ?
Claves (Tardieu et al. 1979): Reglas de entidad
Tener existencia propia Instancias de un conjunto entidad distinguibles unas de otras Instancias de un conjunto entidad con iguales propiedades
Tcnicas de Diseo
Evita redundancia. Uso de entidades dbiles limitado. No usar un conjunto entidad cuando sea atributo
Evitando redundancia
Redundancia = decir lo mismo de dos formas diferentes Ahorrar espacio y reducir inconsistencias. Dos representaciones del mismo hecho se vuelven inconsistente si se cambia una y se olvida cambiar la otra.
Ejemplo: correcto
referencia nombre direcc
Equipos
Hecho-por
Fabricante
Ejemplo: Incorrecto
referencia nombre direcc
Equipos
Hecho-por
Fabricante
fabricante
Este diseo define al fabricante de equipos dos veces: como atributo y como una entidad relacionada.
Ejemplo: Incorrecto
nombre fabric dir-fabric
Equipos
Se repite a direccin del fabricante una vez por cada equipo. Se puede perder la direccin si no hay, temporalmente, equipos de un fabricante.
Notacin alternativa
(tomada de Fundamentals of database Systems, Elmasri/Navathe)
Notacin alternativa
(tomada de Fundamentals of database Systems, Elmasri/Navathe)
Notacin alternativa
(tomada de Fundamentals of database Systems, Elmasri/Navathe)
Relaciones IS-A
Indican relacin clase-subclase Representadas mediante un tringulo
Nombre
Empleados
Cdula
isa
Categoria
Profesores
E-R Extendido
(tomada de Fundamentals of database Systems, Elmasri/Navathe)
Especializacin
(tomada de Fundamentals of database Systems, Elmasri/Navathe)
Generalizacin
(tomada de Fundamentals of database Systems, Elmasri/Navathe)
Generalizacin/Especializacin
(tomada de Fundamentals of database Systems, Elmasri/Navathe)
Generalizacin/Especializacin UML
(tomada de Fundamentals of database Systems, Elmasri/Navathe)