Está en la página 1de 21

Mdulo B TEMA 2

Esquema Conceptual: Modelado Semntico de Datos mediante el modelo Entidad-Relacin con notacin UML
1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. Modelo Entidad/Relacin Tipos de entidad Tipos de relacin. Caractersticas Atributos Conjuntos especiales de atributos Tipo de entidades: Fuertes y Dbiles Tipo de entidades: Superclases y Subclases Relaciones de herencia Herencia: Restricciones Relaciones Involutivas Relaciones de Agregacin Del esquema conceptual al modelo lgico.

Modelo Entidad/Relacin

MODELIZACIN SEMNTICA DE LOS DATOS Consiste en estudiar los datos que se pretenden almacenar en la BD antes de elegir el modelo lgico de datos concreto que se va a usar. Ayuda al diseo sistemtico de BD. MODELO E/R Herramienta para representar de forma abstracta la informacin que se pretende gestionar con la BD. Es una tcnica de diseo basada en la identificacin de las entidades y relaciones que se dan entre ellas en la parte de realidad que pretendemos representar en la BD. DIAGRAMAS E/R Representacin grfica del diseo conseguido mediante la tcnica de anlisis que propone el modelo E/R. Nosotros vamos a utilizar la notacin propuesta por el Lenguaje Unificado de Modelado (UML).

Nicols Marn Ruiz, Mara Jos Martn Bautista Departamento de Ciencias de la Computacin e Inteligencia Artificial Universidad de Granada

Tema 1 pgina 2

Tipos de entidad

TIPO DE ENTIDAD Grupo de objetos que tienen las mismas propiedades y que en la organizacin para la que va a servir la BD tienen una existencia independiente, bien sea fsica o abstracta. Notacin UML

Nombre
Ejemplos Sucursal Cliente Movimiento Empleado Cuenta

OCURRENCIA DE UN TIPO DE ENTIDAD Objeto de un tipo de entidad que es identificable de forma nica

Nicols Marn Ruiz, Mara Jos Martn Bautista Departamento de Ciencias de la Computacin e Inteligencia Artificial Universidad de Granada

Tema 1 pgina 3

Tipos de relacin

TIPO DE RELACIN Asociacin que se establece entre tipos de entidad para representar un conjunto de relaciones que se establecen entre las ocurrencias de esos tipos de entidades. Notacin UML TE1 TE1 Nombre TE2 TE2

Nombre

TE3

Ejemplos Sucursal

Trabaja

Empleado

Cliente

Tiene

Cuenta

Nicols Marn Ruiz, Mara Jos Martn Bautista Departamento de Ciencias de la Computacin e Inteligencia Artificial Universidad de Granada

Tema 1 pgina 4

Tipos de relacin: Caractersticas

GRADO DE UN TIPO DE RELACIN Nmero de tipos de entidades que participan en la conexin. CARDINALIDAD DE UN TIPO DE RELACIN Restriccin que se observa en el problema y que controla si las ocurrencias de uno de los tipos de entidades que intervienen en el tipo de relacin pueden o no tener mltiples conexiones con ocurrencias de los dems tipos. Tipos Uno a uno - 1:1 Uno a muchos - 1:* Muchos a muchos - *:* Nombre
LI..LS LI..LS

Notacin UML TE1


LI: 0,1,n LS: 1,n,*

TE2

OCURRENCIA DE UN TIPO DE RELACIN Asociacin entre ocurrencias de cada uno de los tipos de entidad que participan en el tipo de relacin, identificable de forma nica.
Nicols Marn Ruiz, Mara Jos Martn Bautista Departamento de Ciencias de la Computacin e Inteligencia Artificial Universidad de Granada

Tema 1 pgina 5

Tipos de relacin

Ejemplos Sucursal
1..1

Trabaja
1..*

Empleado

Cliente
1..*

Tiene
0..*

Cuenta

Sucursal
0..1

Dirige
1..1

Empleado

Inmobiliaria
0..1

Cliente
1..*

Hipoteca
1..1 1..*

Sucursal

Inmueble

Nicols Marn Ruiz, Mara Jos Martn Bautista Departamento de Ciencias de la Computacin e Inteligencia Artificial Universidad de Granada

Tema 1 pgina 6

Atributos

ATRIBUTO Propiedad que caracteriza a las ocurrencias de un tipo de entidad o de un tipo de relacin. DOMINIO DE UN ATRIBUTO Conjunto de valores posibles de un determinado atributo. Notacin UML

TE
atributo: dominio atributo: dominio ...

TE1

TR1

TE2

atributo: dominio atributo: dominio ...


Nicols Marn Ruiz, Mara Jos Martn Bautista Departamento de Ciencias de la Computacin e Inteligencia Artificial Universidad de Granada

Tema 1 pgina 7

Conjuntos especiales de atributos

CLAVE CANDIDATA Conjunto de atributos que identifican de forma nica cada ocurrencia de un tipo de entidad. CLAVE PRIMARIA Clave candidata elegida para identificar de forma nica cada ocurrencia de un tipo de entidad. Notacin UML TE atributo1(CP) atributo2 ... Ejemplo Empleado clave candidata numero(CP) DNI ...

Nicols Marn Ruiz, Mara Jos Martn Bautista Departamento de Ciencias de la Computacin e Inteligencia Artificial Universidad de Granada

Tema 1 pgina 8

Ejemplos

Atleta nombre D.N.I.(CP) edad altura peso 1..* Participa 1..* Prueba cdigo (CP) ttulo

Equipo Nacional Pertenece 0..* 1..1 pas (CP) color marca

fase (CP) fecha hora

Instalacin nombre tipo categora localizacin

0..*

Sede

1..*

Nicols Marn Ruiz, Mara Jos Martn Bautista Departamento de Ciencias de la Computacin e Inteligencia Artificial Universidad de Granada

Tema 1 pgina 9

Ejemplos

Profesor nombre D.N.I.(CP) departamento Imparte 1..1 1..*

Asignatura nombre (CP) aula hora 1..* Recibe 1..1

Alumno nombre D.N.I. (CP) Pertenece 1..*

Grupo curso (CP) 1..* letra (CP)

Modificacin: Y si se quieren almacenar las notas?

Nicols Marn Ruiz, Mara Jos Martn Bautista Departamento de Ciencias de la Computacin e Inteligencia Artificial Universidad de Granada

Tema 1 pgina 10

Tipos de Entidad: Fuertes y Dbiles

TIPOS DE ENTIDAD FUERTES Y DBILES Un tipo de entidad es fuerte si la existencia de sus ocurrencias no depende de ningn otro tipo. En caso contrario, se dice que el tipo de entidad es dbil. Ejemplo Tiene Cuenta nmero saldo
1..1 0..*

Movimiento nmero fecha cantidad

Tipo de entidad fuerte

Tipo de entidad dbil

Si se elimina una ocurrencia del tipo de entidad fuerte, habr que eliminar las ocurrencias del tipo de entidad dbil que dependen de ella.
Nicols Marn Ruiz, Mara Jos Martn Bautista Departamento de Ciencias de la Computacin e Inteligencia Artificial Universidad de Granada

Tema 1 pgina 11

Tipos de Entidad: Superclases y Subclases

SUPERCLASE Tipo de entidad que incluye uno o ms subgrupos distintos de ocurrencias que deben ser representados en el modelo de datos. SUBCLASE Cada uno de los subgrupos de ocurrencias de un tipo de entidad que se han de representar en el modelo de datos.

ESPECIALIZACIN Proceso de extraer diferencias entre las ocurrencias de un tipo de entidad para distinguir las subclases que lo forman. GENERALIZACIN Proceso de encontrar la parte comn de las ocurrencias de distintos tipos de entidad para extraer la superclase que los engloba.

Nicols Marn Ruiz, Mara Jos Martn Bautista Departamento de Ciencias de la Computacin e Inteligencia Artificial Universidad de Granada

Tema 1 pgina 12

Relaciones de herencia

RELACIN DE HERENCIA Relacin que se establece en un diagrama E/R entre una superclase y sus subclases. Notacin UML Superclase atributo_comn1 atributo_comn2 ...

Subclase atributo_propio1 atributo_propio2 ...

Subclase

...

atributo_propio1 atributo_propio2 ...

Nicols Marn Ruiz, Mara Jos Martn Bautista Departamento de Ciencias de la Computacin e Inteligencia Artificial Universidad de Granada

Tema 1 pgina 13

Relaciones de herencia
Ejemplos
Empleados nmero(CP) D.N.I. direccin ...

Gestor mesa rea ...

Cajero caja turno ...

Profesor D.N.I.(CP) nombre direccin ...

P_Teora clase turno num_alumnos ...


Nicols Marn Ruiz, Mara Jos Martn Bautista Departamento de Ciencias de la Computacin e Inteligencia Artificial Universidad de Granada

P_Prcticas coche modalidad ...

Tema 1 pgina 14

Herencia: Restricciones

PARTICIPACIN Determina si un miembro de la superclase debe obligatoriamente ser un miembro de una subclase. EXCLUSIVIDAD Determina si un miembro de una subclase, puede ser a la vez miembro de otras subclases. Notacin UML Superclase atributo_comn1 atributo_comn2 ... {P,E} Subclase atributo_propio1 atributo_propio2 ... P=Opt, Obl E=Y,O
Nicols Marn Ruiz, Mara Jos Martn Bautista Departamento de Ciencias de la Computacin e Inteligencia Artificial Universidad de Granada

Subclase

...

atributo_propio1 atributo_propio2 ...

Tema 1 pgina 15

Restricciones en la herencia
Ejemplos
Empleados nmero(CP) D.N.I. direccin ... {Opt,O} Gestor mesa rea ... Cajero caja turno ...

Profesor D.N.I.(CP) nombre direccin ... {Obl,Y} P_Teora clase turno num_alumnos ...
Nicols Marn Ruiz, Mara Jos Martn Bautista Departamento de Ciencias de la Computacin e Inteligencia Artificial Universidad de Granada

P_Prcticas coche modalidad ...

Tema 1 pgina 16

Ejemplos
Profesor D.N.I.(CP) nombre direccin {Obl,Y} P_Teora %aprobados disponibilidad 0..* hora Usa 1..1 Aula nmero capacidad 0..* Tiene cantidad 0..* cdigo (CP) tipo Material 0..* Alumno nombre D.N.I. (CP) telfono Fecha (CP) Hora (CP) 0..* 0..* Coche matrcula (CP) modelo color 1..1 1..1 Pupilo P_Prcticas fumador peligrosidad 1..1 Utiliza

Conduce

Nicols Marn Ruiz, Mara Jos Martn Bautista Departamento de Ciencias de la Computacin e Inteligencia Artificial Universidad de Granada

Tema 1 pgina 17

Relaciones Involutivas

TIPO DE RELACIN INVOLUTIVA Tipo de relacin en el que interviene el mismo tipo de entidad desempeando distintos roles. Notacin UML TRR
LI..LS

LI..LS

TE

Ejemplo

Dirige
0..*

1..1

Empleado

Nicols Marn Ruiz, Mara Jos Martn Bautista Departamento de Ciencias de la Computacin e Inteligencia Artificial Universidad de Granada

Tema 1 pgina 18

Relaciones de Agregacin

AGREGACIN Tipo especial de relacin entre tipos de entidades que representa una conexin es parte de o tiene un. Notacin UML TE1 la parte Ejemplos Sucursal Tiene Nombre TE2 el todo

Empleado

Departamento

Tiene

Profesor

Nicols Marn Ruiz, Mara Jos Martn Bautista Departamento de Ciencias de la Computacin e Inteligencia Artificial Universidad de Granada

Tema 1 pgina 19

Del Esquema Conceptual al Modelo Lgico

PASOS A REALIZAR:

1.- Establecer las restricciones semnticas del problema. 2.- Clasificar la informacin en entidades, atributos y relaciones, representando dicha informacin en tablas. 3.- Realizar el diagrama Entidad-Relacin con notacin UML correspondiente a dicha estructuracin de los datos y teniendo en cuenta las restricciones semnticas exigidas. 4.- Pasar del modelo Entidad-Relacin al modelo lgico escogido para el diseo de la base de datos.

Nicols Marn Ruiz, Mara Jos Martn Bautista Departamento de Ciencias de la Computacin e Inteligencia Artificial Universidad de Granada

Tema 1 pgina 20

Ejercicio Propuesto

Control de prstamos en una Biblioteca Se desea modelar semnticamente los datos relativos al control de prstamos en una Biblioteca con las siguientes restricciones: Cada libro puede estar escrito por ms de un autor Un autor puede escribir ms de un libro Cada libro puede tratar ms de un tema Hay muchos libros de cada tema No existe ms que un ejemplar de cada libro Cada persona slo puede tomar un libro prestado a la vez

Nicols Marn Ruiz, Mara Jos Martn Bautista Departamento de Ciencias de la Computacin e Inteligencia Artificial Universidad de Granada

Tema 1 pgina 21