• No se han encontrado resultados

3. METODOLOGÍA PARA DISEÑO DE BASES DE DATOS. Proceso de Diseño de bases de datos Relacionales

N/A
N/A
Protected

Academic year: 2021

Share "3. METODOLOGÍA PARA DISEÑO DE BASES DE DATOS. Proceso de Diseño de bases de datos Relacionales"

Copied!
52
0
0

Texto completo

(1)

Los objetivos que persigue todo modelo de datos son de dos tipos:

Formalización: ya que el modelo de datos permite definir formalmente las estructuras permitidas y las restricciones; también el modelo de datos establece la base para la definición de un lenguaje de datos y facilita una apreciación más objetiva de la rigidez o flexibilidad de las estructuras de datos, ayudando a la comparación formal de distintos modelos de datos y a la evaluación de los SGBD.

Diseño: ya que el modelo de datos es un elemento fundamental en el desarrollo de una metodología de diseño de bases de datos, en el cual se basan los otros componentes de la metodología (lenguajes, documentación y otras herramientas); permiten, además, prever e impacto de los cambios del mundo real en nuestro sistema de información.

El primer paso en la metodologías es determinar el Universo del Discurso (UD), el cual generalmente debe establecerse a partir de un conjunto de diferentes vistas de los diferentes usuarios de la realidad.

Una vez definido el UD se puede proceder paso a paso tal como se muestra en la figura. Se presentan tres etapas bien definidas:

(2)

MER

OO

F. INDIVIDUAL

RELACIONAL

REDES

JERARQUICO

UNIFICADO

MEJORIA DE

ESQUEMA LÓGICO

REQUISITOS DE DATOS REALIDAD DISEÑO CONCEPTUAL ESQUEMA CONCEPTUAL MODELO CONCEPTUAL DISEÑO LÓGICO ESQUEMA LÓGICO MODELO LÓGICO DISEÑO FÍSICO ESQUEMA FÍSICO MODELO FÍSICO

(3)

Modelado Conceptual:

En esta se escoge un modelo conceptual (altamente

semántico) y se definen las estructuras y restricciones identificadas, totalmente

independiente del SGDB y del diseño de las estructuras lógicas.

Modelado Lógico:

Se escoge un modelo lógico, el cual esta diseñado para

representar la estructura de los datos, por ello se deben transformar los

esquemas conceptuales en esquemas lógicos, los cuales son conocidos y

manipulados por el SGBD.

Modelado Físico:

Finalmente los SGBD tienen en sus motores una serie de

políticas y estrategias de almacenamiento que le permiten llenar la información

física que los usuarios quieren almacenar en la base de datos. Los esquemas

resultantes se visualizan en los archivos físicos de la base de datos.

(4)

objetos, propiedades, restricciones y restricciones semánticas.

Sobre estos elementos se realizan las abstracciones que impone el modelo conceptual seleccionado, obteniendo así un esquema conceptual de la realidad. Posteriormente el esquema lógico se obtiene a partir de la conversión del esquema conceptual con el modelo lógico escogido y con la ayuda de las estructuras de los datos que se perciben de la realidad para formular los esquemas lógicos.

Los SGBD permiten definir éstos esquemas lógicos y posteriormente aplican sus modelos físicos a estos esquemas permitiendo obtener los archivos de bases de datos reales en los cuales se almacena la información.

relaciones y restricciones semánticas MODELO CONCEPTUAL Sistema Operativo SGBD Métodos de acceso Valores Estructura percibida ESQUEMA CONCEPTUAL ESQUEMA LÓGICO ESQUEMA INTERNO

(5)

Proceso de Diseño de bases de datos Relacionales

Etapa de Análisis de Requisitos

(¿Qué presentar?) (

Esquema percibido

)

Descripción de la Organización

Reglas de negocio

Etapa de Conceptualización

(¿Cómo?) (

Esquema Conceptual

).

Modelos Conceptuales (hacia el MER).

Enfoque Lingüístico (sustantivos, verbos, preposiciones)

Categorización de Objetos (Entidad, Atributo, Interrelación)

Metodologías Ascendentes y Descendentes.

Aplicación del Modelo E-R

(

Esquema Entidad – Relación

)

Tabla de Dominios:

(tabla, atributos, evaluación, tipo de dato, tamaño, descripción).

(6)

Propuesto por Peter P. Chen en dos artículos en 1976 y 1977.

El modelado de datos entidad/relación (o Interrelación) es un

modelo conceptual basado en una percepción del mundo real

por medio de objetos básicos llamados entidades y de las

relaciones que existen entre éstos.

Una

Entidad

representa elementos del mundo real que se

puede identificar claramente.

Una

interrelación

representa un vínculo entre entidades.

El modelo E/R permite al diseñador concebir la base de

datos a un

nivel superior de abstracción

, aislándolo

de consideraciones relativas a la máquina (tanto en su

nivel lógico como físico) y a los usuarios en particular

(nivel externo), y en donde la información desempeña

un papel fundamental.

(7)

Según CHEN el conjunto de valores (values set) son:

(1) Entidad (2) Interrelación (3) Dominio y Valor (4) Atributo

(1) ENTIDAD: Cualquier objeto (real o abstracto) que existe en la realidad y acerca del cual queremos almacenar información en la base de datos. La estructura genérica que describe un conjunto de entidades aplicando la abstracción de clasificación se denomina tipo entidad, mientras que entidad es cada uno de los ejemplares de este tipo entidad.

Tipos:

Regulares, que son aquellas cuyos ejemplares tienen existencia por sí mismos (como CURSO y PROFESOR), y

Débiles, en las cuales la existencia de un ejemplar depende de que exista un cierto ejemplar de otro tipo de entidad (por ejemplo, EDICIÓN depende de CURSO), y la desaparición de un determinado curso de la base de datos hace que desaparezcan también todas las ediciones de dicho curso.

Matemáticamente: {e : p(e)}, siendo e un ejemplar de tipo entidad E y p el predicado asociado a E.

Nombre Ejemplo Representación

Tipo Entidad

E = {e : p(e)} Tipos:

Regular Débil

Médico Manuel Patarroyo E = MEDICO

p = Persona que atiende pacientes y establece un diagnóstico.

e = “Manuel Patarroyo”

NOMBRE E

NOMBRE E

(8)

Cada relación tiene un nombre que describe su función. Las entidades que están involucradas en una determinada relación se denominan entidades participantes.

El número de participantes en una relación es lo que se denomina grado de la relación. Por lo tanto, una relación en la que participan dos entidades es una relación binaria; si son tres las entidades participantes, la relación es ternaria; etc.

Una relación recursiva es una relación donde la misma entidad participa más de una vez en la relación con distintos papeles. El nombre de estos papeles es importante para determinar la función de cada participación.

Dos entidades pueden tener una o varias interrelaciones.

Nombre Ejemplo Representación

Tipo

Interrelación

I = {<e1, e2,…en>}

Paciente consulta Médico.

E1 = PACIENTE ; e1 = “Pepito Perez” E2 = MEDICO ; e2 = “Manuel Patarroyo” I = Consulta

n = 2 ; Grado del tipo de interrelación

Nombre

I

E

2

(9)

(3) DOMINIO Y VALOR: Las distintas propiedades o características de un tipo de entidad o de interrelación pueden tomar valores para cada ejemplar de éstas.

Dominio: El conjunto de posibles valores que puede tomar cierta característica. Se define dominio como un conjunto de valores homogéneos con un nombre. El dominio se puede definir:

por intensión(*), especificando el tipo de datos y el predicado de los valores; ó por extensión, declarando el valor de cada elemento del dominio.

El dominio es un elemento que tiene existencia propia independiente de cualquier elemento.

Nombre Ejemplo Representación

Dominio y valor

D = {v

i

: p(v

i

)}

D es el dominio

v

i es un valor p es el predicado asociado a dicho dominio

Un procedimiento es la “Cirugía de Corazón” D = Nombres de Procedimientos

p = Es un procedimiento médico. Intensión = {v Є D | p}

Extensión = {“Cirugía de Corazón”, “Cirugía ambulatoria”, etc.}

Nombre D

Nombre D

(*) Intensión: Comprensión -conjunto de propiedades-. Conjunto de rasgos semánticos de una unidad

(10)

uno o varios dominios. Por tanto, podemos decir que el atributo le da una determinada interpretación al dominio (o a los dominios) en el contexto de un tipo de entidad o de un tipo de interrelación.

Curso

Id

Nombre

Creditos

(D: Cadena caracteres) (D: Cadena caracteres) (D: Entero positivo)

El modelo E/R admite —como se deduce de la definición de atributo— atributos compuestos, es decir, atributos definidos sobre más de un dominio; por ejemplo, el atributo Fecha_Ingreso de la entidad PROFESOR puede estar definido sobre los dominios

Profesor

Fecha_Ingreso

Id

Nombre

(D: Cadena caracteres) (D: Cadena caracteres) (D: Entero positivo) (D: Entero positivo) (D: Entero positivo) Fecha_Ingreso_Dia Fecha_Ingreso_Mes Fecha_Ingreso_Año

(11)

En la siguiente figura se representan los tipos de entidad CURSO y PROFESOR y el tipo de interrelación "Imparte" con alguno de sus atributos:

Curso

Id

Nombre

Creditos

Profesor

Id

Nombre

Fecha_Ingreso Fecha_Ingreso_Dia Fecha_Ingreso_Mes Fecha_Ingreso_Año Fecha_Inicio Fecha_Inicio_Dia Fecha_Inicio_Mes Fecha_Inicio_Año Fecha_Fin Fecha_Fin_Dia Fecha_Fin_Mes Fecha_Fin_Año Imparte

(12)

Nombre Ejemplo Representación

A : E  S(D) A : I  S(D)

Un procedimiento es la “Cirugía de Corazón” , este tiene un costo.

A1 = Nombre Procedimiento

D1 = Nombres de Procedimientos A2 = Costo Procedimiento

D2 = Costos de Procedimientos

valores de un dominio o de un conjunto de dominios:

A : E

S(D) ó A : E

S(D

1

) × S(D

2

) × ... × S(D

n

)

A : I

S(D) ó A : I

S(D

1

) × S(D

2

) × ... × S(D

n

)

Donde

A

es el atributo,

S(D¡)

todos los posibles

subconjuntos de los valores de los dominios,

E

es el tipo

de entidad e

I

es el tipo de interrelación.

NOMBRE E

Nombre D

Nombre A

(13)

En el modelo E/R se definen:

Restricciones inherentes y Restricciones de integridad

Restricciones inherentes:

• Solo permite establecer interrelaciones entre entidades, no estando admitidas entre entidades e interrelaciones ni entre interrelaciones.

• Todas las entidades deben tener un identificador.

• Los ejemplares no pueden existir por si mismos, éstos deben estar en un atributo de Tipo entidad o de Tipo interrelación.

PACIENTE

Consulta

MEDICO

PACIENTE

Firma

Consulta

Copago

Consulta

Recibo

PACIENTE

PAC_ID

(14)

Restricción específicas sobre valores, la cual se establece con la definición de los dominios.

Restricción específica estructural: esta clase refiere tanto a atributos como a interrelaciones. En cuanto a los atributos en todo Tipo entidad deben existir uno o varios atributos (simples o compuestos) que identifiquen unívocamente cada uno de los ejemplares de ese tipo entidad, cada uno de estos atributos de denomina identificador Candidato (IC).

Cuando un IC es compuesto, el número de los atributos que lo componen debe ser mínimo en el sentido de que la eliminación de cualquiera de ellos le haría perder su carácter identificador. Luego todo IC debe cumplir la condición de ser unívoco y mínimo. Entre los IC se elige el identificador principal (IP) y el resto serán identificadores alternativos (IA).

Estudiante

Codigo

Nombre

Doc_Identidad

(Identificador Principal) (Identificador Alternativo)

(15)

El modelo E/R permite también atributos multivaluados y opcionales (nulos o “faltantes”).

En general un atributo toma, para cada ejemplar de entidad, un único valor de cada dominio (o dominios) subyacente(s) (un libro tiene un único título, un único ISBN, etc.), pero también existen atributos que pueden tomar más de un valor (un curso puede impartirse en más de un idioma, o un profesor puede tener más de un teléfono);

estos atributos reciben el nombre de multivaluados frente a los univaluados que toman un solo valor.

Restricciones de integridad:

Por otro lado, puede obligarse a un atributo de un tipo de entidad a que tome, como mínimo, un valor del (o de los) dominio(s) subyacente(s) para cada ejemplar de entidad; es decir, el valor de ese atributo es obligatorio (no puede ser nulo) para todo ejemplar de la entidad.

La prohibición de valores nulos para un atributo (no admitir la opcionalidad) y la de que un atributo pueda tomar más de un valor (no admitir que sea multivaluado) son

restricciones específicas sobre la estructura de los atributos, al igual que la declaración de atributos identificadores.

(16)

Curso

Id

Nombre

Idioma

Numero_Horas

Identificador Principal

NOTACIÓN PARA ATRIBUTOS

Identificador Alternativo

Univaluado y obligatorio

Multivaluado y obligatorio

Opcional

(17)

Restricciones de integridad:

Todas estas restricciones pueden definirse basándose en el concepto de cardinalidad de un atributo en el tipo de entidad o de interrelación al cual pertenece.

Se entiende por cardinalidad mínima (o máxima) de un atributo el número mínimo (o máximo) de valores que puede tomar ese atributo en cada ejemplar del tipo de entidad al cual pertenece;

las cardinalidades se representan asociando un par de números enteros (min,max) al correspondiente atributo.

En la figura aparecen los cuatro tipos posibles de cardinalidades.

* La cardinalidad (1,1) es la que se toma por defecto y

(18)

También la cardinalidad, pero no del atributo sino del tipo de entidad

respecto al atributo, permite representar

otra restricción que es la

unicidad

, por la cual se obliga a que los valores de un atributo no puedan

repetirse en distintos ejemplares de un tipo entidad, en cuyo caso la

cardinalidad máxima de esa entidad respecto al atributo es uno.

Ejemplo: El código del estudiante. No tiene sentido asignarle el mismo

código a más de un estudiante.

Debemos observar que para todo identificador de un tipo de entidad se ha

de cumplir la restricción de unicidad, debiendo tener el tipo de entidad una

cardinalidad máxima de uno

respecto a ese atributo.

(19)

Estudiante

Fecha_Ingreso Fecha_Ingreso_Dia Fecha_Ingreso_Mes Fecha_Ingreso_Año

Codigo

Nombre

Doc_Identidad

Nacionalidad

(1,2)

Telefono

(0,2)

Estatura

Variante de representación para el atributo compuesto Fecha_Ingreso

Fecha_Ingreso

Fecha_Ingreso_Dia Fecha_Ingreso_Mes Fecha_Ingreso_Año

(20)

Dominio

Tipo

Descripción Dominio

NOMBRES

Intensión

Cadenas de hasta 30 caracteres alfabéticos

TELEFONOS

Intensión

Cadenas de hasta 9 caracteres numéricos

MEDIDA_ALTURA

Intensión

Números reales entre 0 y 2,2 (metros)

GENERO

Intensión

Un Caracter

(21)

1. Elementos de un Tipo de interrelación

Nombre:

distingue la interrelación unívocamente de las demás.

Grado:

Es el número de Tipos de Entidad que participan en un tipo de

interrelación.

Así un tipo de interrelación es de grado 2 o binaria cuando asocia dos tipos

de entidad.

Un caso particular de las interrelaciones de tipo 2 son las

reflexivas, las

cuales asocian un tipo entidad consigo misma. Pueden existir interrelaciones

que asocien más de dos tipo de entidades.

Procedimiento

(22)

Pueden existir también tipos de interrelación que asocien más de dos tipos de

entidad (grado n, n > 2).

En este ejemplo se muestra un profesor con los temas y cursos que imparte.

Profesor

Imparte

Tema

(23)

1. Elementos de un Tipo de interrelación

Tipo de Correspondencia:

Es el número máximo de ejemplares de un tipo

de entidad que pueden estar asociados, en una determinada interrelación,

con un ejemplar de otro(s) tipo(s); para su representación se puede utilizar

etiquetas 1:1, 1:N, N:M según corresponda al lado de la interrelación o bien

se orienta el arco de unión en sentido uno a N mediante una punta de flecha.

Dirige

Profesor

Departamento

1:1

Imparte

1:N

Profesor

Curso

N:M

Se_matricula

Estudiante

Curso

(24)

Papel (“rol”). Es la función que cada uno de los tipo entidad realiza en el tipo de interrelación; se representa poniendo el nombre del papel en el arco que une cada tipo de entidad con el tipo de interrelación. Siempre que no exista ambigüedad se suele prescindir de representar el papel.

Ejemplos varios:

Actor Actua_en Pelicula

Empleado Dirige Jefe Subordinado Pelicula Continuacion de

original

versión

(25)

Trabaja_en

Sucursal

Empleado

Cargo

Estudiante

Libro

Biblioteca

Presta

Ejemplos varios:

(26)

Se define como el número máximo o mínimo* de ejemplares de un tipo de

entidad que pueden estar interrelacionadas con un ejemplar del otro, u otros

tipos de entidad que participan en el tipo de interrelación.

Se representa mediante una etiqueta de tipo (0:1), (1:1), (0:N) ó (1:N), según

corresponda al lado de los tipos de entidades asociados por el tipo de

interrelación.

Paciente

(0,n)

Consulta

(1,n)

Medico

N:M

Departamento

(1,1)

Trabaja

Profesor

(0,n)

1:N

(27)

2. Cardinalidad de un tipo de entidad

Representación Matemática

Sea:

I un tipo de interrelación binaria

E1 y E2 dos tipos de entidad asociados por ella

En caso de no establecer restricción alguna I(E1(min,máx):E2(min,máx)),

cualquier número de ejemplares de entidad, ninguno o varios a la vez, de E1

pueden estar relacionados con uno de E2 y viceversa.

Para lo anterior la notación sería: I(E1(0,n):E2(0,n)).

Debe leerse de la siguiente forma:

E1(0,n) significa que “0,1,2,…,n ejemplares de E1 esta(n) relacionado(s) con un

ejemplar de E2”

(28)

Curso

(1,1)

Tiene

(0,n)

Edicion

1:N

Fecha_Imparte

Cuando una interrelación 1:N tiene un atributo asociado, es inmediata

la demostración matemática de que el atributo puede llevarse a la

entidad cuya cardinalidad máxima es N, (en el ejemplo de la figura el

atributo Fecha_Imparte podría llevarse a

Edicion

) con independencia

de los valores de las cardinalidades mínimas.

(29)

3. Atributos de las Interrelaciones

Paciente

(0,n)

Consulta

(1,n)

Medico

N:M

Fecha_Consulta

Semánticamente se puede dejar el atributo en la interrelación.

Dependiendo de la interrelación se pueden tener uno o más

atributos en la misma.

Generalmente en las interrelaciones N:M los atributos son propios

de la misma y no de las entidades vinculadas por la interrelación,

incluso los atributos pueden ser multivaluados.

(30)

Como en el caso de los tipos de entidad, los tipos de interrelación se clasifican también en regulares y débiles, según estén asociando dos tipos de entidad regulares, o un tipo de entidad débil con un tipo de entidad (regular o débil), respectivamente.

Se pueden distinguir en las entidades débiles dos tipos de dependencias:

Dependencia en existencia: Se da cuando los ejemplares de un tipo de entidad (entidad débil) no puede existir si desaparece el ejemplar del tipo entidad regular del cual dependen.

Si hay dependencia en existencia, el rombo que representa la interrelación va con una E (o sin etiqueta).

Cliente

(1,1)

(0,n)

Prestamo

Tiene

1:N

E

ID_Doc ID_Prestamo

(31)

4. Dependencia en existencia y dependencia de identificación

Dependencia de Identificación: Sucede cuando además de cumplirse la condición anterior, los ejemplares del tipo entidad débil no pueden identificarse por si mismos, es decir, mediante los propios atributos del tipo de entidad, y exigen añadir el identificador principal del tipo de entidad regular (e incluso débil) del cual dependen.

Si existe dependencia en identificación, el rombo que representa la interrelación va etiquetado con ID.

Copia

(1,1)

(1,n)

Tiene

1:N

ID

Num_Copia ID_Libro

Libro

ID_Copia

Copia

es débil, pues depende en existencia de

Libro

,

y también depende en identificación.

(32)

Dependencia de Identificación. Obsérvese que una entidad débil puede ser, a su vez, la entidad de la que depende otra débil.

Se ve claramente que una dependencia en

identificación es siempre una dependencia en

existencia (no ocurre lo contrario), y el tipo de

interrelación es débil en ambos casos.

Pago

(1,1)

(0,n)

Tiene

1:N

ID

Num_Pago ID_Prestamo

Prestamo

ID_Pago

(33)

4. Dependencia en existencia y dependencia de identificación

Participación total

No hay dependencia en existencia de ACTOR respecto de PELICULA,

pues si borramos una película determinada, no podemos borrar sus

actores, ya que pueden participar en otras películas. La participación

total de ACTOR está representada mediante la cardinalidad mínima 1

que aparece junto a PELICULA.

Además, es muy raro que haya una entidad débil en una relación M:N.

Pelicula

(0,m)

(1,n)

Actua_en

M:N

Titulo Nombre

Actor

(34)

decir que un elemento de un esquema es redundante cuando no se pierde semántica al eliminarlo.

Existen dos tipos de redundancia:

Redundancia en los atributos (Atributos derivados): Se entiende por atributos derivados o calculados, aquellos que se obtienen a partir de otros ya existentes, por lo que, aunque son redundantes, no dan lugar a inconsistencias, siempre que en el esquema se indique su condición de derivados y la fórmula mediante la cual han de ser calculados.

Paciente

(0,n)

Consulta

(1,n)

Medico

N:M

ID_Doc

Edad Dia Mes Año

(35)

Redundancia en las Interrelaciones (Relaciones cíclicas): Una interrelación es

redundante cuando su eliminación no implica pérdida de semántica

porque existe la posibilidad de realizar la misma asociación de ejemplares mediante otras interrelaciones. Es condición necesaria , aunque no suficiente, para que una interrelación sea redundante que forme parte de un ciclo, por lo que hay que estudiar detenidamente los ciclos del diagrama E/R.

LIBRO edita EDITORIAL

N:1

(1,n) (1,1) AUTOR escribe publica (1,n) (1,n) (1,n) (1,n)

M:N

M:N

redundante

Ciclo con un tipo de interrelación redundante

(36)

Para que una interrelación pueda ser eliminada por redundante debe cumplir: 1. Que exista un ciclo.

2. Que las interrelaciones que componen el ciclo sean equivalentes semánticamente. 3. Que se puedan asociar los ejemplares de las dos entidades que estaban

interrelacionadas, aún habiéndose eliminado la interrelación.

4. Que la interrelación o bien no tenga atributos o bien estos no puedan ser transferidos a otra a fin de no perder su semántica.

RECOPILACION aparece ARTICULO

M:N

(0,n) (1,n) AUTOR edita escribe (1,n) (1,n) (0,n) (1,n)

M:N

M:N

diapositiva anterior)

(37)

Al elaborar un modelo se debe analizar si los datos a almacenar van a constituir una base de datos histórica o, por el contrario, sólo interesa el estado actual. La diferencia entre estos tipos de esquemas se aprecia en la figura, que se refiere a los préstamos actuales de libros en una biblioteca, de forma que una vez finalizado el préstamo la correspondiente información desaparece de la base de datos, sin que exista archivo histórico.

EJEMPLAR Presta SOCIO

(0,5) (0,1)

Fecha_Prestamo

En la siguiente figura se representa el esquema conceptual de todos los préstamos que se han realizado en la biblioteca, recogiendo, además, el plazo que duró el préstamo.

EJEMPLAR Presta SOCIO

(1,n) (0,n)

Fecha_Prestamo

N:M

Fecha_Devolucion

En caso de tratarse de datos históricos, los tipos de entidad o de interrelación correspondientes tendrán asociados siempre atributos de tipo fecha. En las BD históricas donde una interrelación entre dos ejemplares concretos se pueda

repetir en el tiempo, el atributo fecha será multivaluado, como ocurre en la figura, donde el mismo ejemplar se puede prestar al mismo socio en repetidas ocasiones.

(38)

entidad a lo largo del tiempo y aparece la noción de "estado". Por ejemplo, si deseamos reflejar si un libro está en la biblioteca o se encuentra prestado, añadiremos al tipo de entidad un atributo que denominamos estado, que indicará en qué estado concreto se encuentra la entidad y que en muchos casos lleva asociado otro atributo, que es la fecha en la que se ha producido el cambio de estado.

Es también habitual en este tipo de aplicaciones que se desee

tener constancia de la evolución de los estados, en cuyo caso

se podría crear una nueva entidad, como SITUACIÓN, que

tendría como atributos, entre otros posibles, estado y fecha.

En los sistemas de información este mecanismo se

utiliza especialmente en la gestión de expedientes

(Hojas de vida en Recursos Humanos).

(39)

Cuando se presenta un tipo de interrelación de grado n (n>2), es preciso analizar si es propiamente de tal grado, ya que a veces es posible su descomposición en otras de menor grado; mientras que, otras veces, no es posible tal descomposición, ya que la semántica recogida en una y otra solución no es la misma.

No se ha encontrado ninguna ternaria con alguna entidad cuya cardinalidad mínima tuviera el valor 0 en la notación.

Más ejemplos de relaciones ternarias: CLIENTE – COCHE – VENDEDOR (relación VENTA, con atributos “fecha” y “precio”) ASIGNATURA – EXAMEN (débil) – ALUMNO (relación PRESENTA, con atributo “nota”) AUTOBÚS – LUGAR – CONDUCTOR (relación HACE_PARADA, con atributos “fecha”, “hora”)

1. Interrelaciones de grado superior a 2

CLIENTE

LIBRO

SEDE

BIBLIOTECA

Presta

(1,1)

(1,n)

(1,1)

fecha

(40)

binarias. Es complicado decidir entre utilizar una relación ternaria o varias binarias. El diseñador debe basar sus decisiones en la semántica de la situación particular que se está modelando.

CLIENTE

LIBRO

SEDE

BIBLIOTECA

Presta

(1,1)

(1,n)

(1,1)

fecha

SEDE

BIBLIOTECA

Presta

(1,m)

(1,n)

(1,n)

(1,1)

(1,1)

(1,1)

CONTIENE

fecha

Alquila_en

LIBRO

CLIENTE

(41)

NO siempre una relación ternaria se puede llevar a varias relaciones binarias porque puede perderse semántica (¡es decir, que no significan lo mismo!).

1. Interrelaciones de grado superior a 2

PRODUCTO

TIENDA

(1,m)

(1,n)

(1,p)

Suministra

idprov

codpr

nombre

cantidad

fecha

PROVEEDOR

TIENDA

(1,m)

(1,m)

(1,n)

(1,n)

(0,n)

(1,m)

vende

provee

puede

suministrar

PRODUCTO

PROVEEDOR

La ternaria modela la REALIDAD

(42)

Esta es la solución típica: emplear en el mismo diagrama tanto la relación ternaria como las binarias que se necesiten.

(1,m)

Suministra

fecha

cantidad

codpr

(1,m)

(1,n)

(0,n)

(1,m)

vende

PRODUCTO

nombre

idprov

TIENDA

(1,n)

(1,m)

PROVEEDOR

provee

(1,n)

(1,p)

puede

suministrar

(43)

2. Restricciones sobre Interrelaciones: Exclusividad

Exclusividad: Dos o más tipos de interrelación tienen una restricción de exclusividad con respecto a un tipo entidad que participa en ambas interrelaciones cuando cada ejemplar de dicho tipo entidad sólo puede pertenecer a uno de los dos tipos de la interrelación, pero en el momento en el que pertenezca a uno ya no podrá formar parte del otro.

Para el ejemplo: Un DOCENTE puede impartir cursos o puede tomar cursos, pero no puede hacer las dos cosas al tiempo.

DOCENTE

Imparte

Recibe

(0,n)

(0,n)

CURSO

(1,1)

(1,n)

(0,10)

(44)

interrelación excluyen el ejemplar por las otras interrelaciones.

Para el ejemplo: Se permite al DOCENTE tanto impartir cursos como recibir cursos, siempre y cuando el curso que este impartiendo no sea el mismo curso que este tomando.

DOCENTE

Imparte

Recibe

(0,n)

(0,n)

CURSO

(1,1)

(1,n)

(0,10)

(45)

2. Restricciones sobre Interrelaciones: Inclusividad

Inclusividad: Cuando un ejemplar relacionado por una interrelación exige que deba estar relacionado por las demás interrelaciones.

Para el ejemplo: Un DOCENTE puede impartir cursos siempre y cuando se cumpla que ha recibido o está recibiendo al menos tres cursos, no necesariamente el mismo curso que imparte. La flecha indica que si un profesor imparte, necesariamente participa en Recibe. La cardinalidad de la flecha establece el número mínimo y máximo que tiene que recibir un DOCENTE para poder impartir un curso.

DOCENTE

Imparte

Recibe

(0,n)

(0,n)

CURSO

(1,1)

(1,n)

(0,n)

(3,n)

(46)

relacionado con el mismo ejemplar por las otras interrelaciones.

Para el ejemplo: Un DOCENTE puede impartir cursos siempre y cuando se cumpla que ha recibido previamente el curso. La flecha indica que si un profesor imparte, necesariamente recibió el curso.

DOCENTE

Imparte

Recibe

(0,n)

(0,n)

CURSO

(1,1)

(1,n)

(0,n)

(47)

3. Más sobre el M-E/R extendido: Generalización - Especialización

La jerarquía de especialización / Generalización, en el modelo ER se considera un caso especial de interrelación de varios tipos de entidad (subtipos) con un tipo más general (supertipo) cuyas características son comunes a todos los subtipos.

PACIENTE

(1,1)

Es_Un

COMUN

VIP

EMPLEADO

(0,n)

(0,n)

(0,n)

SubTipos

TipoPac

SuperTipo

(48)

La interrelación que se establece es del tipo “es un” o más precisamente “es un tipo de”. La aparición de éstas jerarquías en el modelo de bases de datos puede surgir de dos formas:

Generalización: Se observa que dos o mas tipos de entidad comparten varios atributos y/o tipos de interrelación, de donde se deduce la existencia de un tipo de entidad de nivel superior que contiene los atributos y los tipos de interrelación comunes a todos los subtipos.

Especialización: Se observa que un tipo de entidad tiene ciertos atributos y/o tipos de interrelación que tienen sentido para unos ejemplares, pero no para otros, por lo que es conveniente definir uno o varios subtipos que contengan éstos atributos y/o interrelaciones específicos, dejando en el supertipo los que son comunes.

Puede ocurrir que se formen, por generalización y/o especialización, jerarquías a más de un nivel, dónde el subtipo es, a su vez, supertipo de otros. Otras característica a tener en cuenta es la herencia, en la cual los subtipos heredan todos los atributos del supertipo.

(49)

3. Más sobre el M-E/R extendido: Generalización - Especialización

De igual forma ocurre con las interrelaciones. Se pueden establecer restricciones semánticas a estas interrelaciones dependiendo si los subtipos se solapan o son disjuntos, y de si la unión de los subtipos recubre o no al supertipo, se pueden distinguir cuatro clases de generalización:

Solapamiento/exclusividad:

¿A cuántos subtipos puede pertenecer (a la vez) una instancia del supertipo? A solo un subtipo  exclusividad

A más de un subtipo  solapamiento (se le considera la “opción por defecto”)

VEHÍCULO

CAMIÓN

TURISMO

PERSONA

ESTUDIANTE

EMPLEADO

(50)

Totalidad. Indica que toda instancia del supertipo también debe ser instancia de algún subtipo.

Un elemento importante a tener en cuenta es que se pueden crear jerarquías con herencia múltiple, teniendo que hacer un estudio minucioso de la forma de migrar los atributos, depende del modelo.

VERTEBRADO

TETRAPODA

AGNATHA

GNATHOSTOMATA

Totalidad / Parcialidad:

¿Debe toda instancia del supertipo pertenecer a algún subtipo?

NoParcialidad. Indica que es posible que alguna instancia del supertipo no pertenezca a ninguno de los subtipos. Se le considera la opción por defecto.

ALIMENTO

FRUTA

(51)

3. Más sobre el M-E/R extendido: Agregación

La agregación llamada por algunos autores como meronimia, es una abstracción que permite representar tipos de entidad compuestos que se obtienen por unión de otros más simples. Al tipo compuesto nos referimos como al todo, mientras que los componentes son las partes.

PROFESOR Explica ASIGNATURA

MEDIO

Utiliza

Ej: Si se desea representar que un profesor explica asignaturas utilizando distintos medios (pizarra, diapositivas, computador, etc.), pero el ME/R no permite establecer la interrelación "Utiliza" sobre la interrelación "Explica".

(52)

entidad "EXPLICACIÓN” por agregación de PROFESOR Explica ASIGNATURA.

PROFESOR Explica ASIGNATURA

MEDIO

Utiliza

EXPLICACIÓN

Opción 1

PROFESOR Explica ASIGNATURA

MEDIO Utiliza Entidad COMPUESTA o AGREGADA EXPLICACIÓN

Opción 2

Referencias

Documento similar

El quincenario de los frailes de Filipinas, condena para el Archipiélago los propósitos de nivelación jurídica que para todo territorio español, peninsular o ultramarino, se

La potencia del eje del motor de arrastre se puede determinar aplicando diferentes métodos, se puede medir directamente con ayuda de un torquímetro, o en el caso de un arrastre

*Correctivo contingente *Correctivo programable.. El mantenimiento correctivo contingente se refiere a las actividades que se realizan en forma inmediata, debido a que algún

Estas restricciones son que el par´ametro S de adaptaci´on est´e por debajo de −7 dB para conseguir una buena adaptaci´on en los cuatro puertos del array, que los diagramas

Un método de estudio aparte de ser una herramienta muy útil al momento de estudiar también nos ayuda a agilizar nuestra mente y tener una buena memoria para futuro?. Palabras

Entre nosotros anda un escritor de cosas de filología, paisano de Costa, que no deja de tener ingenio y garbo; pero cuyas obras tienen de todo menos de ciencia, y aun

o Si dispone en su establecimiento de alguna silla de ruedas Jazz S50 o 708D cuyo nº de serie figura en el anexo 1 de esta nota informativa, consulte la nota de aviso de la

En cada antecedente debe considerarse como mínimo: Autor, Nombre de la Investigación, año de la investigación, objetivo, metodología de la investigación,