Diseno de Modelos de Bases de Datos
Carlos A. Olarte ([email protected])BDI
Pontificia Universidad Javeriana
Carlos A. Olarte ([email protected]) BDI Diseno de Modelos de Bases de Datos
Contenido
1 Diseno de Modelos de Bases de Datos
2 Modelo Entidad Relacion
3 Llaves
4 Conjuntos Entidad Debil
5 Subclases y relaciones ISA
6 Ejercicios
Carlos A. Olarte ([email protected]) BDI Diseno de Modelos de Bases de Datos
El diseno de Modelos de BD
Carlos A. Olarte ([email protected]) BDI Diseno de Modelos de Bases de Datos
Modelo Conceptual
Describe el contenido (informacion) de la base de datos, nolas estructuras de almacenamiento.
Tiene como proposito comprender el dominio del problema yfacilitar la comunicacion entre las personas interesadas(desarrolladores, usuarios, ...)
Son completos y expresivos, y las descripciones que con ellosse construyen son simples, precisas y faciles de usar.
Carlos A. Olarte ([email protected]) BDI Diseno de Modelos de Bases de Datos
Diseno de Modelos de Bases de Datos
Las B.D ocultan detalles de almacenamiento a los usuarios
Un Modelo de Datos es un conjunto de conceptos quepueden servir para describir la estructura de una base de datos(vehıculo para describir la realidad)
Los modelos de datos se describen mediante:
Una estructuraUn conjunto de operacionesDefiniciones de Integridad
Carlos A. Olarte ([email protected]) BDI Diseno de Modelos de Bases de Datos
Principios de Diseno
Fidelidad: El diseno ha de ser fiel a las especificaciones, esdecir, debe corresponder a la realidad
Evitar la redundancia: Se debe tener mucho cuidado y decirlas cosas solo una vez
Simplicidad de Cuenta: En el diseno se debe introducir tansolo los elementos que sean absolutamente necesarios
Carlos A. Olarte ([email protected]) BDI Diseno de Modelos de Bases de Datos
Modelos Logicos Basados en Objetos
Las ligaduras de datos se hacen explicitas
Ejemplos:E/R ODL
interface C \\
{
attr str X;
relationship ...
}
interface A
{
relationship ...
}
Carlos A. Olarte ([email protected]) BDI Diseno de Modelos de Bases de Datos
Modelos Logicos Basados en Registros
Carlos A. Olarte ([email protected]) BDI Diseno de Modelos de Bases de Datos
Diagramas Entidad-Relacion
Se componen de:
Conjuntos entidad (rectangulos)
Atributos (Ovalos)
Relaciones (Rombos)
En este modelo, se asigna un solo nombre a una relacion en ambasdirecciones.Las relaciones pueden incluir mas de dos conjuntos entidad
Carlos A. Olarte ([email protected]) BDI Diseno de Modelos de Bases de Datos
Continuacion (E/R)
Aspectos Importantes: Direccionalidad de las relaciones, relacionesmultidireccionales, atributos en las relaciones
Carlos A. Olarte ([email protected]) BDI Diseno de Modelos de Bases de Datos
Componentes del MERAtributos
Las propiedades de una entidad se describen mediante unconjunto de atributos. La entidad tiene un valor para cadauno de sus atributos.
Ejemplo, el numero de cedula es un atributo de una persona,y su valor podrıa ser 29.092.939.
El dominio de un atributo es el conjunto de valores permitidospara ese atributo.
Carlos A. Olarte ([email protected]) BDI Diseno de Modelos de Bases de Datos
Componentes del MERAtributos
Almacenado / Derivado
Almacenado: se guarda en la base de datosDerivado: Su valor se obtiene a partir del valor de otros atributos oentidades relacionados. Se representa con un ovalo punteado. Ej.Edad.
Valores Nulos
Un atributo toma un valor null cuando una entidad no tiene unvalor para el.
Carlos A. Olarte ([email protected]) BDI Diseno de Modelos de Bases de Datos
Componentes del MERConjunto de Entidades (o Tipo de Entidad)
Es un conjunto de entidades del mismo tipo que compartenlas mismas propiedades, o atributos.
Ejemplo: el conjunto de todas las personas que son clientes deun banco.
Las entidades individuales son la extension del conjunto deentidades.
El tipo de entidad define la intension de la entidad.
Carlos A. Olarte ([email protected]) BDI Diseno de Modelos de Bases de Datos
Componentes del MERConjuntos Entidad
Algunos ejemplo:
Sujeto: Cliente, Proveedor, Empleado
Objeto: Producto, Factura
Evento: Solicitud de Pedido, Ajuste, Venta
Lugar: Ciudad, Paıs, Bodega
Abstraccion: Tipo de cliente, Unidad de medida
Carlos A. Olarte ([email protected]) BDI Diseno de Modelos de Bases de Datos
Componentes del MERRelaciones
Es una asociacion entre dos o mas entidades.
Ejemplo: si se tienen las entidades “estudiante Perez” y“curso Bases de Datos” se puede definir una relacion queasocie al estudiante con el curso.
Una relacion tambien puede tener atributos.
Carlos A. Olarte ([email protected]) BDI Diseno de Modelos de Bases de Datos
Relaciones Multidireccionales
Las Relaciones Multidireccionales pueden ser transformadas en unconjunto de relaciones binarias de mucho a uno introduciendo unconjunto entidad conexion. En el ejemplo del banco, el resultadoes:
Carlos A. Olarte ([email protected]) BDI Diseno de Modelos de Bases de Datos
Llaves
Las llaves son un conjunto de atributos que permiten identificar losobjetos pertenecientes a una clase (Interfaz en ODL o Conjuntoentidad en E/R) de manera unica.De manera formal, dados dos objetos O1 y O2 pertenecientes auna clase C con atributos A y llave K ⊆ A, siO1[K ] = O2[K ]→ O1 = O2.
Carlos A. Olarte ([email protected]) BDI Diseno de Modelos de Bases de Datos
Continuacion (Llaves)
ODL
interface X{
key(<List Atributos>);
...}
E/R
Carlos A. Olarte ([email protected]) BDI Diseno de Modelos de Bases de Datos
Conjuntos Entidad Debiles
Se denomina un Conjunto Entidad Debil a un C.E cuya llave estacompuesta parcial o totalmente por atributos llaves de otroconjunto entidad. Esta situacion se puede presentar en lassiguientes situaciones:
El conjunto cae dentro de una jerarquıa
Se crea un conjunto entidad de conexion para eliminarrelaciones multidireccionales
Al eliminar una relacion mucho a muchos
Carlos A. Olarte ([email protected]) BDI Diseno de Modelos de Bases de Datos
Notacion de los C.E.D
Condiciones:
La relacion R siempre debe ser binaria de Muchos (en ladebil) a uno
Los atributos que aporta A a B debe ser atributos llave de A
Si A tambien es debil, los atributos que aporta a B puedenpertenecer a otro conjunto entidad conectado a A por unarelacion muchos a uno
Si existen varias relaciones muchos a uno entre B y A, se debehacer una copia de los atributos llave de A por cada relacionpara formar la llave de B
Carlos A. Olarte ([email protected]) BDI Diseno de Modelos de Bases de Datos
Subclases en los diagramas E/R
Las subclases se representa en el MER por medio de relacionesISA. Por ejemplo:
Carlos A. Olarte ([email protected]) BDI Diseno de Modelos de Bases de Datos
Ejercicio
Construya un MER para el siguiente problema:Se desea mantener la informacion de la nomina de los empleadosde la companıa. De cada empleado se conoce su identificacion,nombre, fecha de nacimiento , y opcionalmente un conjunto deempleados subordinados. Cada empleado adicionalmente tiene uncargo en la companıa y por cada cargo se conoce cuanto es elsalario basico. La nomina se genera mensualmente y en ella sealmacena por cada empleado su salario basico y sus deduccionesobligatorias (porcentajes sobre el salario basico)
Carlos A. Olarte ([email protected]) BDI Diseno de Modelos de Bases de Datos
Ejercicio
Construya un MER para el siguiente problema:Se desea mantener la informacion de las cuentas de ahorros ycorrientes de un banco. Para lo anterior se tienen las siguientesconsideraciones:
Cada cuenta debe tener asociado una tarjeta
Para las cuentas de ahorros solo es requerido un titular
Las cuentas corrientes pueden tener uno o varios titulares
Las cuentas corrientes pueden tener amparados, es decir, unacuenta hace parte de otra cuenta (comparten recursos).
Por cada cuenta debe registrarse las transacciones de lasmismas. En cada una de las transacciones se debe almacenarla fecha, cajero, tarjeta, monto y tipo de la transaccion(retiro, consignacion o consulta de saldo)
Carlos A. Olarte ([email protected]) BDI Diseno de Modelos de Bases de Datos
Ejercicio (MER/ODL)
Construya un MER y un diseno en ODL para el sgte problema:Se requiere un sistema para registro academico que cumpla con las siguientes caracterısticas:
Un estudiante puede matricularse en varias carreras. Por cada una de ellas debe tener un codigo propio
Cada carrera tiene asignado un plan de estudio, es decir, una serie de materias, las cuales pueden tenerprerequisitos.
En cada grupo el profesor debe estar en capacidad de indicar las notas con sus respectivos porcentajes (i.eP.Parcial 20%, Tareas 10%,etc)
Se debe registrar tanto las notas parciales como la nota definitiva por cada estudiante matriculado
Los cursos pueden tener varias ediciones (grupos). Dichas ediciones tambien deben tener en cuenta elperıodo academico, por ej. CC080, grupo A, 2005-01 es diferente a CC080-A, 2004-02.
Cada grupo (edicion) debe tener asociado el profesor quien lo dicata
Carlos A. Olarte ([email protected]) BDI Diseno de Modelos de Bases de Datos
Top Related