BD Clase 04 Modelo ERE
-
Upload
manuelenriqueq -
Category
Documents
-
view
26 -
download
0
Transcript of BD Clase 04 Modelo ERE
Presentacin de PowerPoint
Modelo ERE
Universidad de los AndesDemin GutierrezMarzo 2011
Modelo ER / Diagramas ER
Modelo Entidad-Relacin (ER)(Chen, 1976)Modelo Entidad-Relacin-Extendido (ERE)(Teorey 1986)Es un modelo de datos de alto nivel (semntico o conceptual) que describe los datos como Entidades, Vnculos y Atributos
Modelo ER / Diagramas ER
Mundo Real(Minimundo)
Esquema InternoEsquema ConceptualEsquema ExternoModeladoERBDTransformacin
Transformacin
El modelo y los diagramas ER nos facilitan el modelado del Esquema Conceptual
Modelo ER / Diagramas ER
El Modelo Entidad Relacin y su representacingrfica (Diagramas Entidad Relacin) son doscosas distintasModeloEntidad-Relacin
(Entidades, Conjuntosde Entidades, Tiposde Entidades, Atributos,Relaciones, entre otros)DiagramaEntidad-Relacin
Se representagrficamenteutilizando
Sin embargo, por razones didcticas, se utilizaranlos Diagramas ER para explicarmuchos de los conceptos del Modelo ER
cmo representamos los distintos conceptos del mundo real?
Mundo Real(Minimundo)consiste en crear una representacin ideal de un objeto real mediante un conjunto de simplificaciones y abstracciones, cuya validez se pretende constatar. La validacin del modelo se lleva a cabo comparando las implicaciones predichas por el mismo con observaciones (Modelado / Wikipedia)
Un modelo es una simplificacin de la realidad, se recogen aquellos aspectos de gran importancia y se omiten los que no tienen relevancia para el nivel de abstraccin dado (Modelado / Wikipedia)
Tipo de Entidad:Es elesqueletoque define que caractersticas comunes comparten todas las entidades de un mismo tipo
Es la descripcin de una entidad. Su nombre y sus caractersticas (atributos)
Entidades, Conjuntos y Tipos
A qu concepto de programacin OO se parece esto?
Entidad:Representauna cosadel mundo real con existencia independiente.Puede serfsicay existir de forma tangible, oconceptual, es decir, existir de forma intangible.
Conjunto de Entidades:Es una agrupacin (coleccin) de entidades quecomparten el mismo tipo.
Entidades, Conjuntos y Tipos
Entidades, Conjuntos y Tipos
e1Cdula=10.546.332Nombre=Pedro PrezEdad=33...e2Cdula=11.334.789Nombre=Miguel RojasEdad=30...e3Cdula=20.502.432Nombre=Silvia MolinaEdad=23...EMPLEADOCdula, Nombre, Edad...Conjunto deEntidadesTipo deEntidad(Metadato)Una EntidadOtra EntidadOtra Mas ...Cmo puedo diferenciar una entidad de otra?
Tipos de Entidades y Atributos
EmpleadoCdulaTelfonoNombrePrimNombrePrimApellidoSegApellidoDedicacinAtributos(Elipses)Entidades(Rectngulos)Los Atributosson propiedades especficas que describen a una entidad. Son elementos caractersticos de una entidad.
Cmo puedo diferenciar una entidad de otra?
Tipos de Atributos (Clave)
Los atributos clave son aquellos que se utilizan paraidentificarde forma nicaa una entidad en un conjunto de entidades.
El valor del atributo claveno se puede repetirparaotra entidaddentro delconjunto de entidadescorrespondiente.CursoNumCursoNomCursoAtributos Clave(Clave Compuesta)EmpleadoCdulaNombreTelfonoAtributoClaveClave:Cdula
Clave:NumCurso + NomCurso
Ms adelante, se ver que ya a nivel de implementacin los atributos derivados tienen la desventaja de que no es posible realizar consultas directas sobre ellos.
Tipos de Atributos (Compuestos)
EmpleadoCdulaTelfonoNombrePrimNombrePrimApellidoSegApellidoDedicacinLos atributos compuestos son aquellos que estn conformadospor la unin de otros atributos.
El atributoNombreno es ms que la composicin de losatributosPrimNombre,PrimApellidoySegApellidoAtributo CompuestoAtributo SimpleAtributo Componente
Tipos de Atributos (Multivaluados)
Los atributos multivaluados son aquellos que pueden tener msde un valor de forma simultnea.
Un automvil puede estar pintado conms de un color, de formasimultnea(Por ejemplo, rojo y negro).AutomvilMatrculaColorColorAtributo MonovaluadoAtributo MultivaluadoCuidado al implementar atributos multivaluados en el modelo relacional. Si se implementan directamente violan la 1era forma normal. Es necesario implementarlos en una relacin aparte.
Tipos de Atributos (Almacenados / Derivados)
Los atributos derivados son aquellos que se pueden calcular enbase a otros atributos, por lo tanto no es necesario guardarlosen la Base de Datos.
Es posible calcular la edad si se conoce la fecha de nacimiento.EmpleadoCdulaEdadNombreFechaNacimientoAtributo AlmacenadoAtributo DerivadoMs adelante, se ver que ya a nivel de implementacin los atributos derivados tienen la desventaja de que no es posible realizar consultas directas sobre ellos.
slo con representar los conceptos ser suficiente?qu ocurre con la forma en que se relacionan los conceptos?
consiste en crear una representacin ideal de un objeto real mediante un conjunto de simplificaciones y abstracciones, cuya validez se pretende constatar. La validacin del modelo se lleva a cabo comparando las implicaciones predichas por el mismo con observaciones (Modelado / Wikipedia)
Un modelo es una simplificacin de la realidad, se recogen aquellos aspectos de gran importancia y se omiten los que no tienen relevancia para el nivel de abstraccin dado (Modelado / Wikipedia)
Relaciones, Conjuntos y Tipos
Relacin: Representa una asociacin particular o un vnculo entre dos o ms entidades.
Conjunto de Relaciones: Es una agrupacin(coleccin) de relaciones que comparten el mismotipo.
Tipo de Relacin: Es la descripcin de unarelacin. Su nombre y sus caractersticas(atributos).
Estos conceptos son bastante similares a los de Entidad, Conjunto de Entidades y Tipo de Entidad
Relaciones (Vnculos)
Vnculos?Vnculos 1:1, 1:N y N:M?
Eso se puede vermejor con un ejemplo
consiste en crear una representacin ideal de un objeto real mediante un conjunto de simplificaciones y abstracciones, cuya validez se pretende constatar. La validacin del modelo se lleva a cabo comparando las implicaciones predichas por el mismo con observaciones (Modelado / Wikipedia)
Un modelo es una simplificacin de la realidad, se recogen aquellos aspectos de gran importancia y se omiten los que no tienen relevancia para el nivel de abstraccin dado (Modelado / Wikipedia)
Vnculo / RelacinTrabaja En / TieneRelaciones (Vnculos)
1:N
Departamentode ControlDepartamentode Computacin
Profesores
Departamentos
Departamentode Investigacinde OperacionesCuntos profesores puedo tener en el conjunto de entidades Profesores?Y en Departamentos?
Con cuantos profesores puede estar asociado un departamento? Y al contrario?
consiste en crear una representacin ideal de un objeto real mediante un conjunto de simplificaciones y abstracciones, cuya validez se pretende constatar. La validacin del modelo se lleva a cabo comparando las implicaciones predichas por el mismo con observaciones (Modelado / Wikipedia)
Un modelo es una simplificacin de la realidad, se recogen aquellos aspectos de gran importancia y se omiten los que no tienen relevancia para el nivel de abstraccin dado (Modelado / Wikipedia)
Vnculo / RelacinDicta / Es dictada porRelaciones (Vnculos)
N:M
Programacin10Bases de Datos
Profesores
Materias
Programacin20Cuntos profesores puedo tener en el conjunto de entidades Profesores?Y en Materias?
Con cuantos profesores puede estar asociado una materia? Y al contrario?
consiste en crear una representacin ideal de un objeto real mediante un conjunto de simplificaciones y abstracciones, cuya validez se pretende constatar. La validacin del modelo se lleva a cabo comparando las implicaciones predichas por el mismo con observaciones (Modelado / Wikipedia)
Un modelo es una simplificacin de la realidad, se recogen aquellos aspectos de gran importancia y se omiten los que no tienen relevancia para el nivel de abstraccin dado (Modelado / Wikipedia)
Relaciones (Vnculos)
1:1
Vnculo / RelacinEs novia de / Es novio de
Chicas
Chicos
Cuntos muchachos puedo tener en el conjunto de entidades Chicos?Y en Chicas?
Con cuantos Chicos puede estar asociados (ser novios) de una Chica en particular? Y al contrario?
consiste en crear una representacin ideal de un objeto real mediante un conjunto de simplificaciones y abstracciones, cuya validez se pretende constatar. La validacin del modelo se lleva a cabo comparando las implicaciones predichas por el mismo con observaciones (Modelado / Wikipedia)
Un modelo es una simplificacin de la realidad, se recogen aquellos aspectos de gran importancia y se omiten los que no tienen relevancia para el nivel de abstraccin dado (Modelado / Wikipedia)
Relaciones (Vnculos)
Los tipos de correspondencia pueden ser de 1:1, 1:N, N:1 o M:N
La cardinalidad define la cantidad mxima o mnima de entidadesque pueden estar asociadas de un lado u otro de la relacin.
Ojo aqu con la nomenclaturaAsiste_AM
N
EstudianteNombreCdulaCursoNumCursoNomCursoRelaciones(Rombos)5,30
1,5
participa_en
tiene
Tipo deCorrespondencia(Razn de Cardinalidad)CardinalidadNotaPueden tener o no AtributosClave:Cdula +NumCurso + NomCursoUn vnculo se puede ver como una conexin semntica entre dos o ms entidades, es decir, una conexin que tiene un significado entre dos o ms entidades
Relaciones (Vnculos) Recursivos
Los vnculos pueden ser recursivos, es decir, relacionar auna entidad consigo misma.
El nombre del papel (rol) indica el papel que una entidaddel tipo especificado desempea en la relacin especificada.SupervisorN
1
EmpleadoTelfonoNombresupervisa
supervisado
Papeles(Roles)Clave:Cdula_Supervisa +Cdula_SupervisadoCdula
Relaciones (Vnculos)
Dependencia Total / Parcial
1
ProfesorNombreCdulaDepartamentoCdigoNombreEs Jefe De1
Pertenece A1
N
Dependencia TotalDependencia ParcialLaDependencia Totalimplica que toda entidad Profesor debe estar relacionada con una entidad Departamento.
LaDependencia Parcial, implica que todas las entidades Departamentos deben estar relacionados con una entidad Profesor, pero no al contrario.
Tambin se les llamaRestriccin de Participacin Total / Parcial
Tipos de Entidades Fuertes / Dbiles
Un Tipo de Entidad Dbil es aquella queno tieneatributos clave propios.
Depende de los atributos clave de otro Tipo de Entidad, a la que usualmente est asociada por medio de una Relacin con Dependencia Total.
CursoSemestre
CdSeccinFechaIniCdCursoNombreN
1
SeccinInstancia UnSalnClave:CdCurso
Clave:CdSeccin + CodCurso
Nmero deEstudiantesPropietarioIdentificadorVnculoIdentificadorEntidad Dbil, (CdSeccin esuna Clave Parcial)Relacin de Dependencia
Aqu se ve claramente porque la dependencia total se le suele llamar dependencia de existencia
Relaciones (Vnculos) ternarios (y n-ario)
UnVnculo Ternarioes aquel en el que participan tres o msTipos de Entidades. Un vinculo n-ario es aquel en el que participan n o ms entidades.
Cuenta CorrienteClienteClienteCuentaNombreCdulaNmeroBalanceN
CdigoSucursal1
Nombre1
Vnculo TernarioClave:Cdula + Cdigo + Nmero
Relaciones (Vnculos) ternarios (y n-ario)
HuertorbolEst EnEspecieCdigoCdigoNombreN
1
FilaColumna
Ubicacin
Tiene1
1
N
HuertorbolEst EnEspecieCdigoCdigoNombreN
1
FilaColumna
Ubicacin
Tiene1
1
especializacin?generalizacin?herencia?
consiste en crear una representacin ideal de un objeto real mediante un conjunto de simplificaciones y abstracciones, cuya validez se pretende constatar. La validacin del modelo se lleva a cabo comparando las implicaciones predichas por el mismo con observaciones (Modelado / Wikipedia)
Un modelo es una simplificacin de la realidad, se recogen aquellos aspectos de gran importancia y se omiten los que no tienen relevancia para el nivel de abstraccin dado (Modelado / Wikipedia)
Especializacin / Generalizacin
(Herencia)
PersonaCdulaNombreApellidooCarreraCosto_Hora
EstudianteProfesorSubclasesTraslapadas (o)o Disjuntas (d)Superclase,Entidad PadreEntidad GeneralizadaSubclase,Entidad HijaEntidad EspecializadaEspecializacin: Es el proceso de tomar un tipo de entidad y generar subclases que tengan atributos especficos.
Generalizacin: Es el proceso de tomar un conjunto de tipos de entidades y abstraer sus atributos comunes en un tipo de entidad padre.
Recordar que la especializacin y la generalizacin son procesos similares pero inversos.
Recordar que en el fondo, tanto la superclase como la(s) subclases asociadas, a pesar de ser desde el punto ER dos entidades distintas, en el fondo estn representando una misma cosa en el mundo real.
Especializacin / Generalizacin
(Herencia)
Restriccin de Disyuncin
Disjunta: Una entidad puede ser miembro de cuando ms una de las subclases.
Traslapada: La misma entidad puede ser miembro de ms de una subclase de la especializacin.
PersonaCdulaNombreApellidodCarreraCosto_Hora
EstudianteProfesorPersonaCdulaNombreApellidooCarreraCosto_Hora
EstudianteProfesorSubclasesDisjuntasSubclasesTraslapadas
Especializacin / Generalizacin
(Herencia)
PersonaCdulaNombreApellidodCarreraCosto_Hora
EstudianteProfesorLa relacin de Herencia puede ser Total o ParcialRestriccin de Disyuncin
Especializacin Total: Toda entidad de lasuperclasedebe tener al menos una entidad en las subclases.
Especializacin Parcial: Es posible tener una entidad en la superclase y ninguna en las subclases.
Categoras
PersonaCdulaNombreApellidoDireccinUCuentaHabiente
CompaaDireccinRIFNombreC1
C2
BancotienecuentaenCategora: Es una relacin superclase / subclase, donde existen mltiples superclases en las que cada una de estas representa diferentes tipos de entidades. La relacin siempre es disjunta, es decir, la subclase solo puede ser una de las superclases a la vez.
Las categoras con restricciones totales, tienen un equivalente de especializacin o generalizacin
Categora(Entidad de la Categora)Un Cuenta Habiente es una Persona o una CompaaLa categoratambin puede serparcial o totalPara futuras clases aqu hay que aadir la categorizacin / total parcial
Para futuras clases hay que aadir un ejemplo adicional, esto suele ser muy confuso.
Tambin hay que aadir las situaciones en las que algo se puede modelar por medio de una categora y por medio de una herencia y el caso en que algo slo se puede modelar por medio de una categora (Navathe tiene un buen ejemplo al respecto)
Un Ejemplo
1
ProfesorDepartamentoCdigoNombreEs Jefe De1
Pertenece A1
N
CursoCoordina1
N
SemestreEstudianteAsiste_ACdSeccinDictaNotaFechaIniM
N
EsResponsableDe1
N
CdCursoNombreN
1
M
N
1,5
5,30
Seccin
InstanciaUnPersonao
NombreCdulaSalarioCarrera
Aqu se puede hablar del esquema externo, por ejemplo, aprovechando la oportunidad de responder a la pregunta Qu cursos han sido aprobados por un estudiante en particular? Eso se puede lograr por medio de una vista que haga un join entre estudiante seccin curso. Claro que a este nivel no podemos hablar de un joint a nivel de SQL o modelo relacional, pero est bien decirlo.
Ejercicio
ejercicios !
Este ejemplo es simple pero est un poco retorcido (Muchas restricciones forzadas), sera mejor buscar un ejemplo un poco mas real, o mostrar un examen de semestres pasados. Se puede usar el de los investigadores, las publicaciones, el financiamiento que anda por ahi
Gracias
Gracias!
Click to edit the title text format
Click to edit the outline text format
Second Outline Level
Third Outline Level
Fourth Outline Level
Fifth Outline Level
Sixth Outline Level
Seventh Outline Level
Eighth Outline Level
Ninth Outline Level
Haga clic para modificar el estilo de ttulo del patrn
Haga clic para modificar el estilo de subttulo del patrn
Haga clic para modificar el estilo de ttulo del patrn
Haga clic para modificar el estilo de texto del patrn
Segundo nivel
Tercer nivel
Cuarto nivel
Quinto nivel
Haga clic para modificar el estilo de ttulo del patrn
Haga clic para modificar el estilo de texto del patrn
Haga clic para modificar el estilo de ttulo del patrn
Haga clic para modificar el estilo de texto del patrn
Segundo nivel
Tercer nivel
Cuarto nivel
Quinto nivel
Haga clic para modificar el estilo de texto del patrn
Segundo nivel
Tercer nivel
Cuarto nivel
Quinto nivel
Haga clic para modificar el estilo de ttulo del patrn
Haga clic para modificar el estilo de texto del patrn
Haga clic para modificar el estilo de texto del patrn
Segundo nivel
Tercer nivel
Cuarto nivel
Quinto nivel
Haga clic para modificar el estilo de texto del patrn
Haga clic para modificar el estilo de texto del patrn
Segundo nivel
Tercer nivel
Cuarto nivel
Quinto nivel
Haga clic para modificar el estilo de ttulo del patrn
Haga clic para modificar el estilo de ttulo del patrn
Haga clic para modificar el estilo de texto del patrn
Segundo nivel
Tercer nivel
Cuarto nivel
Quinto nivel
Haga clic para modificar el estilo de texto del patrn
Haga clic para modificar el estilo de ttulo del patrn
Haga clic para modificar el estilo de texto del patrn
Haga clic para modificar el estilo de ttulo del patrn
Haga clic para modificar el estilo de texto del patrn
Segundo nivel
Tercer nivel
Cuarto nivel
Quinto nivel
Haga clic para modificar el estilo de ttulo del patrn
Haga clic para modificar el estilo de texto del patrn
Segundo nivel
Tercer nivel
Cuarto nivel
Quinto nivel