Está en la página 1de 74

Modelado de Datos: Entidad - Relación

Link de Descarga:
Versión para Windows
Enlace de descarga:
https://www.tuinformaticafacil.com/descargas-
gratis/herramientas-desarrollo/diagramas-modelo-de-
datos/oracle-sql-developer-data-modeler-64-bit

Versión para Mac


Enlace de Descarga:
https://www.tuinformaticafacil.com/descargas-
gratis/herramientas-desarrollo/diagramas-modelo-de-
datos/oracle-sql-developer-data-modeler-mac-os

Fundamento Teórico:
https://github.com/juan-bol/Modelado

Atributo
Es información calificativa o descriptiva (adjetivos).

Como parte de la Normalización creamos Relaciones de Atributos donde se expresaban las


dependencias, cada una de ellas se denominará entidades.

.,
Entidad
Es una representación de un objeto o un evento en datos persistentes; que se requiere
guardar, identificar, saber, tomar los datos, conocer o contener o mantener información de sus
atributos, y se asocia con otras entidades a través de una relación.

Nota de Normalización, los atributos que hacen única la relación en normalización, hacen única
la entidad, son identificadores únicos y candidatos a llave primaria, en el modelo se expresan
como Obligatorios / Mandatory.
Un identificador único puede ser una llave primaria y estas son obligatorias / mandatory por
defecto.
● Enfatizar en que todas las entidades deben tener PK
○ Una entidad es una relación en 1FN.

Instancia
Es un elemento de una entidad, una representación de uno de los objetos (un registro en una
tabla, una fila en una tabla, una tupla, una fila en un archivo, datos).

Ejemplo para buscar datos:

La Entidad es Persona Natural con atributos CoDNI, NoPersona

Persona Natural (CoDNI, NoPersona)

La Instancia de la Entidad tiene los atributos descritos en datos y está identificada únicamente
con la Llave Primaria.

Un ejemplo es la Instancia de la Entidad Persona Natural es el CoDNI con dato 35758371.

La Instancia también puede ser llamado por el conjunto de sus atributos, por ejemplo es
35758371 Rosa Tuesta

La instancia tiene celdas con datos, en cambio la entidad tiene atributos descritos más no
datos.

MetaData un registro en una tabla, una fila en una tabla

Entidad Persona Natural Atributo CoDNI Atributo NoPersona

Instancia 1 (Fila en la BD) 53275737 Rosa Melgar

.,
Instancia 2 (Fila en la BD) 54646444 Ursula Vasquez

Instancia 3 (Fila en la BD) 64462462 NULL

Relación
Son la asociación entre dos entidades, y se encuentra en una oración: relacionando ambas
entidades como un verbo. Tiene dos sentidos o dos vías, el verbo puede cambiar de un sentido
al otro.

Ejemplo:
Vía 1:
Entidad 1 __accion_a__ Entidad 2
Vía 2:
Entidad 2 __accion_b__ Entidad 1

Además, estas relaciones tienen cardinalidades.

Al Iniciar Data Modeler

.,
Configuración de Vista de Data Modeler

Creación de Vista

Configuración Inicial de Data Modeler

Utilizar las siguientes opciones en el diagrama a usar:

.,
.,
Creación de Entidades

Seleccionar en la vista y se generará


Establecer un nombre y presionar ok

.,
Creación de Atributos
Doble Clic a la Entidad ya creada
Seleccionar en la pantalla lateral Attributes

.,
Nota de Normalización, los atributos que hacen única la relación, o sea hacen única la entidad,
son identificadores únicos y candidatos a llave primaria, en el modelo se expresan como

.,
Obligatorios / Mandatory, como se muestra la opción en la pantalla de Edición de Atributos en
Data Modeler.

Elegir si es Llave Primaria en Primary UID

.,
Generen la entidad Propiedad

.,
Definiendo una relación

Ejemplo:

Vía 1: Una persona puede no tener o tener varias propiedades.

Persona Natural 0 ------------->* Propiedad

Vía 2: La propiedad pertenece a solo una persona natural.

Propiedad 1 ------------->1 Persona Natural

Como vemos que hay una relación 1:N y 1:1, utilizaremos en la herramienta el 1:N en lo
siguiente.

Generamos una relación de 1 a muchos (1:N)

.,
Hacemos clic a la entidad del que tiene uno a muchos
Recordamos que fue la Via 1 (1:N) : Inicia en Persona Natural

Vía 1: Una persona puede no tener o tener varias propiedades.

Persona Natural 0 ------------->* Propiedad

Arrastramos la flecha hasta la entidad final de vía: Fin en Propiedad


Y hacemos el clic

.,
Generamos la Relación

Cuando se genera la relación en el modelado en el caso de la Herramienta:

E1 ---- > E2 (muchos) automáticamente se crea en la entidad 2 un atributo por cada


Llave Primaria que tenga la entidad 1, este atributo quedará de tipo llave foránea (F)
Esto es similar a las llaves foráneas que tenían en las Relaciones Resultantes en
Normalización.
Aún no hemos hablado de Cardinalidad.

.,
Cardinalidad
Son los límites de cantidad de instancias que se relacionan entre dos entidades.

Los tipos de cardinalidades se definen a través de estos límites: cero, uno o muchos (0,1,N).

Definir los Tipos

Se definen con preguntas que veremos a continuación, y se realizan sobre ambas vías:

Ejemplo:

Regla de Negocio:

Vía 1: Una persona puede tener sólo una propiedad. Se tiene conocimiento de las
personas que no tienen propiedades.

Vía 2: La propiedad pertenece a solo una persona natural. Se tiene la lista de


propiedades, inclusive las que no tienen dueño.

Cardinalidad Origen a Destino (1° Vía)

(0,1,N)

0 ----> ¿Puede No haber un E1 R1 por un E2? / ¿Puede haber un maestro de E1?

1 ----> ¿Puede un E1 R1 por un E2?

N ---> ¿Puede un E1 R1 por más de un E2?

Si la primera es SI, y la segunda es SI y las demás son NO ====>

Resultado:

Cardinalidad es E1 ----- (0,1) E2

Entidad Destino E2 = (0,1)

● NOTA: representar que un campo puede ser nulo dentro de una entidad E2 y ese campo
pertenece a otra entidad E1 es la cardinalidad Entidad Destino E2 0.

Vía 2: La propiedad pertenece a solo una persona natural. Se tiene la lista de


propiedades, inclusive las que no tienen dueño.

Cardinalidad Destino a Origen (2° Vía)

(0,1,N)

.,
0 ----> ¿Puede No haber un E2 R1 por un E1?

1 ----> ¿Puede un E2 R1 por un E1?

N ---> ¿Puede un E2 R1 por más de un E1?

Si la primera es SI, y la segunda es SI y la tercera respuesta es NO ====>

Resultado:

E2 ----- (0,1) E1

Entidad Origen E1 = (0,1)

Ambas vías (0,1)


Entonces
E1 (0,1) ----- (0,1) E2

Entidad Origen E1 = (0,1)


Entidad Destino E2 = (0,1)

Buscamos la relación en la notación de cardinalidades.

Nota: Estas preguntas son diferentes a las de Relación de Identificación

Pues la pregunta de Relación de Identificación es:

¿Es necesaria la entidad E1 para identificar únicamente a la entidad E2


si la llave primaria no es autogenerada? -------|-->

No, por lo tanto no es identificativa, es no identificativa.

Modificación en Data Modeler

Doble clic a la relación

.,
Aquí para modificar la cardinalidad se utilizan los campos:

1° Vía

● Source to Target Cardinality (1)


● Source Optional (Marcado)

2° Vía

● Target to Source Cardinality (1)


● Target Optional (Marcado)

.,
Tipos de Relación de acuerdo a la Condición de Existencia
Tipo N°1

Relación No Identificativa
E1 -------------> E2

Persona Natural -------------> Propiedad

Se responde a la pregunta:
¿Es necesaria la entidad E1 para identificar únicamente a la entidad E2?

No, porque la Entidad 2 no necesita atributos de la Entidad 1 para ser definida


únicamente, o sea porque la PK de E2 no tiene atributos de la E1.

Si la respuesta fue NO, entonces este tipo de relación es:

Relación No Identificativa
------------->

-------------O

Persona Natural -------------> Propiedad

En este caso la entidad propiedad puede existir sin necesidad de que exista una
Persona Natural, comprobando con la llave primaria de la propiedad que es un Atributo de la
propiedad (Código Único).

.,
Tipo N°2

Relación Identificativa
¿Es necesaria la entidad E1 para identificar únicamente a la entidad E2?

Si

Tenemos el caso SI, entonces este tipo de relación es:

Relación Identificativa
Regla de Negocio:

Todo artículo facturado (que es el detalle de la factura) se identifica con el código de


factura.

Se le llama también Relación de Padre - Hijo, es una relación de existencia, pues una
no existe sin la otra.

Factura -------------|> Detalle de Factura

Su símbolo es una flecha con una línea cortada. -------|-->

Ejemplo: maestro (factura), detalle (productos facturados)

Factura CoFactura 05993159

Detalle CoFactura 05993159 CoProducto 58389 QtProducto 3

Si se lleva el código padre al hijo; la entidad hijo necesita al código padre para ser
identificada, E1 ---|-> E2 (muchos identificativa) automáticamente se crea en la entidad 2 un
atributo por cada Llave Primaria que tenga la entidad 1, este atributo quedará de tipo llave
PRIMARIA y foránea (PF)

Nota de Normalización: En este caso el determinante está en la entidad 1.

Presionar en la opción New 1:N Relation Identifying

.,
● Enfatizar las diferencias entre las relaciones identificativas y
las no identificativas: no confundir con la cardinalidad de
relaciones obligatorias en la entidad destino

Otros Tipos de Relación


Tipo N°3

Generalización
Permite formar una nueva entidad (generalización) mediante la unión de otras
entidades, o dividir una entidad en cierto número de otras entidades (especialización)

Los atributos y relaciones comunes se asignan a la entidad generalizada (supertipo), en


tanto que los específicos se asignan a las especializadas (subtipo).

.,
Llamada también SuperTipo (Generalización) y Subtipo (Especialización), es parecido
no igual a generar una relación de herencia en POO, se genera un supertipo de la entidad
como por ejemplo persona con sus subtipos: persona natural o jurídica

● En estas relaciones supertipo/subtipo: ojo que los subtipos


no debe tener PK, porque aplica para ellas la PK del
supertipo
○ Los identificadores únicos de los subtipos son
candidatos a llave primaria por lo que los pondremos
Mandatory.
● Cuando se genera la entidad en implementación de base de
datos, el comportamiento es especial, diferente a la herencia
en POO.

Regla de Negocio:

Tenemos actores y directores en la base de datos.

De los actores conocemos su código de Documento de Identidad, nombre de persona,


así como el código de escuela teatral mundial.

De los directores conocemos su código de Documento de Identidad, nombre de


persona, así como el código de escuela de dirección mundial.

Por lo tanto, es mejor crear una entidad nueva Persona Super Tipo y Actor y Director
son Subtipo.

.,
.,
Entrar en cada Subtipo con doble clic

En la primera opción lateral General

Elegir el valor de Super Type : Persona Natural

.,
.,
● Enfatizar en el asterisco rojo que evidencia los atributos que
son obligatorios (no pueden ser nulos)

Tipo N° 4

Relación Recursiva
La Relación Recursiva es una relación se da en la misma entidad. Dicho de otra forma,
es cuando una instancia de la entidad se relaciona con otras instancias de la misma entidad.

Ejemplo:

Regla de Negocio

.,
En una empresa hay un jefe (que es un Empleado) supervisa a otros Empleados.

Jefe ------supervisa----> Empleado

Y Jefe es Empleado

Entonces:

Empleado ------supervisa----> Empleado

Se presiona en New 1:N Relation

Se presiona sobre la entidad y se presiona nuevamente:

Aceptar Relación

.,
Cuando se genera la relación en el modelado automáticamente se crea un atributo que
es de tipo llave foránea (F) que es CoEmpleado1.

Doble clic a la Entidad, Atributos y doble clic al nuevo atributo FK creado

.,
Aquí se puede cambiar el atributo que es de tipo llave foránea (F) que es el Jefe
(CoEmpleado1).

.,
.,
En la imagen se ve como F CoJefe.

MetaData un registro en una tabla, una fila en una tabla

Entidad Empleado Atributo CoEmpleado Atributo NoEmpleado Atributo CoJefe

.,
Instancia 1 (Fila en la 53275737 Rosa Melgar 54646444
BD)

Instancia 2 (Otra fila) 54646444 Ursula Vasquez NULL

Instancia 3 (Otra fila) 64462462 NULL NULL

● Nota: Relaciones recursivas - Renombrar las FK

Tipo N° 5

Multivaloración
Es una relación de X a muchos que también regresa de X a muchos.

E1 -> E2 y E2 -> E1,

por lo tanto E1<< - >>E2.

Regla de Negocio:

● Se tiene una lista de comprobantes de pago.


● Se tiene una lista de productos que son vendidos.
● La venta produce una facturación que es identificada con el código de factura y
el código del producto.

Generamos la relación de muchos a muchos

.,
Equivalente a:

Regla de Negocio Nueva:

● La venta además tiene como dato la cantidad de cada producto que se ha


vendido en la facturación.

Para resolverlo necesitamos despejar la multi valoración.

Despeje de Multi Valoración

Despeje: Al crear una entidad (hija), que despeja la multi valoración, la relación hacia
esta entidad es identificativa y de uno a muchos por ambos lados, es decir esta entidad
(hija) no puede existir sin los padres.

Creación de Tabla Despeje de Multivaloración (Intermedia)

.,
Además que los atributos llaves primarias se heredan como atributos llaves foráneas y
pasan a ser parte de la llave primaria de este hijo.

La cardinalidad de esta relación en el caso del 0 y el 1 se mantienen en los orígenes.

FIN DE LA SESION INTRODUCTORIA

Aula Virtual
Unidad 3
Cartilla de Cardinalidades

NOTACIÓN PARA LA CARDINALIDAD

.,
1..Muchos a 1..muchos

Leyenda de Lectura/Interpretación de una Relación en el Modelo


con foco a dos entidades:

.,
De acuerdo a una relación entre dos entidades en un modelo.
Sea Responsable y Evento en este caso.

1ero
Poner el foco (nos ubicamos) en una de las dos entidades,
en este caso la Entidad: Responsable.
A esta entidad la trataré como Origen.
Origen: Responsable.

2do
Sobre esa entidad y su relación, analizar otra entidad Destino: Evento.
A esta entidad la trataré como Destino.
Destino: Evento.

3ro
Revisar la cardinalidad en la 1ra Vía: Origen a Destino
Origen: Responsable.
Destino: Evento.

.,
Entonces vamos a revisar lo siguiente:
Origen:
Revisar el color que sale: Si es blanco es 0 o si es sombreado 1.
Destino:
Revisar la forma que entra: Si es círculo es 1 si es flecha el * (Muchos).

Entonces,
1ra Vía: Origen Destino:

Origen: Responsable
Revisar el color que sale: Si es blanco es 0 o si es sombreado 1.
Sale el círculo blanco: Indica 0 (Opcional).
Destino: Evento
Revisar la forma que entra: Si es círculo es 1 si es flecha el * (Muchos).
Entra flecha: Indica el * (Muchos).

Resultado:
1ra Vía: Responsable --- 0..* Evento

Entidad Destino Evento = (0..*)

Traducimos a Regla de Negocio:


Responsable tiene de 0 a muchos Eventos

4to
Revisar la 2da Vía: Destino Origen
Destino: Evento.
Origen: Responsable.
Destino:
Revisar el color que sale: Si es blanco es 0 o si es sombreado 1.
Origen:
Revisar la forma que entra: Si es círculo es 1 (No es Opcional) si es flecha el *
(Muchos).

2da Vía: Destino Origen:

.,
Destino: Evento
Revisar el color que sale: Si es blanco es 0 o si es sombreado 1.
Es sombreado / negro: Indica que es 1.
Origen: Responsable
Revisar la forma que entra: Si es círculo es 1 (No es Opcional) si es flecha el *
(Muchos).
Es círculo: Indica 1.

Resultado:
2da Vía: Evento 1..1 Responsable

Entidad Origen Responsable = (1)

Traducimos a Regla de Negocio:


Evento sólo puede tener a un Responsable
● El atributo de la llave foránea será obligatorio (no nulo) al realizar esta relación con su
cardinalidad.

5to
Resultado:
1ra Vía: Responsable 0..* Evento
Entidad Destino Evento = (0..*)
2da Vía: Evento 1..1 Responsable
Entidad Origen Responsable = (1)

Reglas Resultantes del Análisis del Modelo


● Responsable tiene de 0 a muchos a Eventos
● Evento sólo puede tener a un sólo Responsable

6ta
¿es necesaria la entidad E1 para identificar únicamente a la entidad E2 si la llave primaria no
es autogenerada? -------|-->

No, por lo tanto no es identificativa, es no identificativa.

.,
Correspondencia con la Cartilla

Entidad Origen Responsable = (1)


Entidad Destino Evento = (0..*)

Estructura Relacional
Representación de los datos en relaciones.

Término Relacional Término tabular

Base de datos relacional Conjunto de tablas


Relación Una sola tabla
Atributo Encabezado de columna
Tupla Fila de datos de una tabla
Cardinalidad Número de filas de una tabla
Grado Número de columnas de una tabla
Lista de valores permitidos para los datos
Dominio de una columna

.,
Unidad 3 - Sesión 9

Ejercicios de Modelado_1

Ejercicio 1

AVES

Reglas

Se quiere diseñar una base de datos que contenga información sobre las observaciones
realizadas a ejemplares de distintas especies de aves en la región de la selva. Para ello se ha
de considerar las siguientes especificaciones.

Cada especie de ave se identifica por su nombre científico. Se desea conocer su nombre vulgar
y una breve descripción de las características más importantes que la diferencian del grupo
ornitológico al que pertenece.

Los grupos ornitológicos clasifican las especies según sus similitudes estructurales, por
ejemplo, el grupo de las zancudas se caracteriza por tener patas largas y pico largo. Por lo
tanto para cada grupo guardaremos información acerca de las patas, los dedos y el pico.

Cada especie de ave está siempre asignada a un solo grupo ornitológico.

Existen asociaciones ornitológicas de las cuales se quiere saber su nombre, la dirección y el


teléfono.

Cada una de estas asociaciones consta de un grupo de personas, los observadores, que son
los que realizan los avistamientos de las distintas especies. De los observadores se requiere su
código de observador, su DNI, el nombre completo y la dirección. Un observador solamente
puede estar inscrito en una asociación.

Las zonas de observación tienen un código de zona que es único. También se quiere saber el
nombre de la misma, la provincia a la que pertenece, y el tipo (si es laguna, río, zona
pantanosa, etc.). En cada zona se encuentra por lo menos un observador, y si existe más de
uno en la misma zona podrían ser de la misma o de distintas asociaciones ornitológicas. Cada
observador está asignado a una determinada zona (y solo a una).

También se desea guardar información acerca de la fecha en la que el observador divisa una
determinada especie, teniendo en cuenta que estos solamente registran el primer avistamiento
de cada especie por día. Es decir, si en un día un observador divisa una especie en la mañana,

.,
en la tarde y luego al anochecer, solamente registra un avistamiento. Esta información es muy
importante para controlar las especies de aves que existen en nuestra selva, y por tanto
tendremos que guardar las observaciones aunque los observadores ya no se encuentren.

Importante

Llave sólo CoObservador y CoEspecie

NoObservador NoEspecie FeDiaObservacion

Joaquín Colibrí Sábado 28

Lucía Colibrí Sábado 28

Lucía Colibrí Viernes 27

* Falta cumplir con la observación diaria.

Llave CoObservador, CoEspecie y FeDiaObservacion

NoObservador NoEspecie FeDiaObservacion

Joaquín Colibrí Sábado 28

Lucía Colibrí Sábado 28

Lucía Colibrí Viernes 27

* Si se cumple con la observación diaria. Entidad que usa la fecha.

Entidades y Atributos
especie de ave nombre científico nombre vulgar y una breve descripción de las
características
grupos ornitológicos patas, los dedos y el pico
asociaciones ornitológicas nombre, la dirección y el teléfono
observadores código de observador, su DNI, el nombre completo y la dirección
zonas de observación código de zona nombre de la misma, la provincia a la que pertenece, y el
tipo
avistamiento fecha

Relación
especie de ave asignada grupo ornitológico

.,
observador inscrito en una asociación
observador realizan avistamientos
observador está asignado a una zona

.,
avistamiento realizada a especie de ave

Cardinalidad

Cada especie de ave está siempre asignada a un solo grupo ornitológico


especie de ave Se desea conocer su nombre vulgar y una breve descripción de las
características más importantes que la diferencian del grupo ornitológico al que pertenece
Un observador solamente puede estar inscrito en una asociación.
cada zona se encuentra por lo menos un observador
si existe más de uno en la misma zona podrían ser de la misma o de distintas asociaciones
ornitológicas
Cada observador está asignado a una determinada zona (y solo a una).
observador divisa una determinada especie, teniendo en cuenta que estos solamente registran
el primer avistamiento
si en un día un observador divisa una especie en la mañana, en la tarde y luego al anochecer,
solamente registra un avistamiento
guardar las avistamientoaunque los observadores ya no se encuentren

Detalle de Análisis de Cardinalidad

21-02A DBD - Sesión AAD Modelado Detalle

Modelamos las entidades y sus atributos

.,
Modelo en Clase

Modelo en base al análisis de Enunciado

.,
Modelo Incorrecto

¿Cuáles son los incorrectos y por qué?

.,
Unidad 3 - Sesión 9
Ejercicios de Modelado_1
Ejercicio 2

PINACOTECA

El Ministerio de Cultura desea mantener información acerca de todos los cuadros


que se encuentran en las pinacotecas peruanas y toda la información relacionada
con ellos.
De cada pinacoteca se desea saber el nombre (que se supone único), la ciudad en
que se encuentra, la dirección y el área en metros cuadrados que tiene.
Cada pinacoteca tiene una serie de cuadros de los que se quiere guardar su código,
nombre, medidas, fecha en la que fue pintado y técnica usada para pintarlo.

.,
Cada cuadro es pintado por un determinado pintor (nombre, país, ciudad, fecha de
nacimiento y fecha de fallecimiento).
Un pintor puede tener a otro como maestro; a su vez un maestro puede serlo de varios (o de
ninguno).
Los pintores pueden pertenecer o no a una escuela, de la que se desea saber en qué
país y en qué fecha apareció.
Los pintores pueden tener también uno o varios mecenas que los protegen (nombre,
país, ciudad de nacimiento, fecha de nacimiento y muerte y fecha en que se inicia y
termina el mecenazgo con cada pintor).
A su vez un mismo mecenas puede serlo de varios pintores. Se desea recoger la
relación que existe entre un pintor y sus mecenas.

cuadros código, nombre, medidas, fecha en la que fue pintado y técnica usada para
pintarlo
pinacoteca nombre ciudad dirección y el área en metros cuadrados

.,
Unidad 3 - Sesión 9
Ejercicios de Modelado_1
Ejercicio 3

CONSULTORA DE SISTEMAS

Una empresa, que se dedica a la consultoría y desarrollo de sistemas de


información, tiene una organización matricial/flexible:
Existe una jerarquía organizacional (organigrama) permanente.
En esta primera jerarquía permanente cada persona tiene un jefe de nivel superior.
La consultora desarrolla proyectos para sus clientes.
Un proyecto es un trabajo que realiza la empresa para un determinado cliente, tiene
una fecha de inicio y una de finalización.
Pero para la optimización de recursos humanos invertidos en los diferentes
proyectos que tiene la empresa, cada proyecto tiene su propia organización
(usando el mismo personal permanente, de allí lo flexible).
Así, los empleados que trabajan en los proyectos desempeñan cargos tales como
jefe de proyecto, analista, asegurador de calidad, desarrollador, etc., de acuerdo a
lo que sea necesario.
La empresa tiene la política de, una vez finalizado cada proyecto, tomar una
encuesta a un representante del cliente para que éste otorgue un puntaje al
proyecto y un puntaje a cada participante de la empresa consultora.
Con el mismo objetivo de no descuidar la calidad del servicio, al finalizar cada
proyecto cada persona que participó se somete a una evaluación por su jefe y una
evaluación por uno de sus subordinados en el proyecto (si tiene más de uno, se
elige uno al azar). Estos puntajes sirven para promociones en la “organización
permanente”.
Asimismo cada año toda persona es evaluada por su jefe y una evaluación de todos
sus subordinados en la organización permanente y estos puntajes también son
considerados para los ascensos.

.,
CONSULTORA DE SISTEMAS

Una empresa, que se dedica a la consultoría y desarrollo de sistemas de


información, tiene una organización matricial/flexible: Existe una jerarquía
organizacional (organigrama) permanente.
En esta primera jerarquía permanente cada persona tiene un jefe de nivel superior.
La consultora desarrolla proyectos para sus clientes.
Un proyecto es un trabajo que realiza la empresa para un determinado cliente, tiene
una fecha de inicio y una de fecha finalización.
Pero para la optimización de recursos humanos invertidos en los diferentes
proyectos que tiene la empresa, cada proyecto tiene su propia organización
(usando el mismo personal permanente, de allí lo flexible).
Así,los empleados que trabajan en los proyectos desempeñan cargos tales como
jefe de proyecto, analista, asegurador de calidad, desarrollador, etc., de acuerdo a
lo que sea necesario.
La empresa tiene la política de, una vez finalizado cada proyecto, tomar una
encuesta a un representante del cliente para que éste otorgue un puntaje al
proyecto y un puntaje a cada participante de la empresa consultora.

Con el mismo objetivo de no descuidar la calidad del servicio, al finalizar cada


proyecto cada persona que participó se somete a una evaluación por su jefe y otra
evaluación por uno de sus subordinados en el proyecto (si tiene más de uno, se
elige uno al azar).
Estos puntajes sirven para promociones en la “organización permanente”.

Asimismo cada año toda persona es evaluada por su jefe y evaluada por todos sus
subordinados en la organización permanente y estos puntajes también son
considerados para los ascensos.

Entidades y Atributos
Persona, Empleado
Jefe nivel
Proyectos fecha de inicio, fecha finalización, puntaje
clientes
Evaluación Anual puntaje evaluado por cada miembro de la organización
permanente (empleado) hacia ellos mismos (este es un evento que se despeja de la
dimensión/entidad tiempo Año y Organización permanente)

Relaciones y Cardinalidad

.,
proyecto es un trabajo que realiza la empresa para un determinado cliente
persona tiene un jefe
desarrolla proyectos para sus clientes.
los empleados que trabajan en los proyectos desempeñan cargos (proyecto por
empleado) puntaje a cada participante de la empresa consultora, evaluación por su
jefe y evaluación por todos sus subordinados

Relaciones Recursivas
jerarquía permanente, organización permanente persona tiene un jefe

Recuerden que recomiendo tener preparado para la exposición


EX2:
Enunciado analizado (con colores para
- posible sustentación a la profesora)
El modelo en Data Modeler (comprimido
el dmd y su carpeta para subirlo y
- exponerlo)

.,
Unidad 3 - Sesión 9
Ejercicios de Modelado_1
Ejercicio 3

CORRUPCION
La asociación internacional “Voto Blanco” tras una larga investigación ha logrado obtener
valiosa información acerca de los numerosos casos de corrupción que se están presentando en
un país “imaginario”.

Para tener esta información ordenada y accesible va a preparar una base de datos donde
almacenarla.

De cada caso de corrupción se desea saber su código, el nombre por el que se le conoce,
fecha en que se denunció, una breve descripción y la cantidad estimada de millones de dólares
que se ha desviado.

Cada caso es investigado por un juez, del que se desea saber su nombre, dirección, número de
colegiatura y fecha en que asumió la investigación.

Entidad Origen: Caso


Entidad Destino: Juez

Cardinalidad Origen a Destino (1° Vía)

(0,1,N)

0 ----> ¿Puede No haber un Caso investigado por un Juez? / ¿Puede haber un


maestro de Caso?

1 ----> ¿Puede un Caso investigado por un Juez?

N ---> ¿Puede un Caso investigado por más de un Juez?

.,
Aquí hay muchos porque hay una fecha en que asumió la investigación por caso.

Si la primera es NO, y la segunda es SI y la tercera es SI ====>

Resultado:

Cardinalidad es E1 ----- (1..*) E2

Entidad Origen: Caso


Cardinalidad: (1..*)
Aquí hay muchos porque hay una fecha de investigación por caso.

Entidad Destino: Juez


Cardinalidad: (1) En el enunciado no indica si puede ser 0.

Existe esta en la cartilla:

La usaremos en inversa, de esta forma para entendimiento:

Entidad Origen: Caso


Cardinalidad: (1..*)
Aquí hay muchos porque hay una fecha de investigación por caso.

Entidad Destino: Juez


Cardinalidad: (1) En el enunciado no indica si puede ser 0. Se define a la realidad de la
industria, concluímos que es 1.

.,
En cada caso hay una serie de ciudadanos implicados, cada uno de ellos con un cargo
principal determinado en el momento en que se produjo el caso.
Entidad Origen: Caso
Cardinalidad: (1..*)
Aquí hay muchos porque hay una fecha de investigación por caso.

Entidad Destino: Ciudadano


Cardinalidad: (1..*) En el enunciado no indica si puede ser 0. Se define a la realidad de
la industria, concluímos que es 0.
Son muchos porque tenemos un atributo dependiente de dos entidades.

.,
De cada uno de ellos se desea saber su nombre, dirección, DNI y patrimonio.

Estos ciudadanos pueden o no pertenecer a un partido político determinado, y a veces


desempeñan un puesto en él.

Entidad Origen: Ciudadano


Cardinalidad: (0,1)

Entidad Destino: Partido


Cardinalidad: (0,1,*) En el enunciado no indica si puede ser 0. Se define a la realidad de
la industria, concluímos que si puede ser 0.

.,
De cada partido se desea conocer su nombre, dirección de la sede central y teléfono.

Cada caso de corrupción es descubierto por un medio de prensa (nombre, dirección y tiraje, si
es impreso).

.,
Cada medio de prensa puede tener o no una afinidad con un partido político, y un partido
puede tener afinidad con cero o varios medios de prensa.

Modelo Completo

.,
Unidad 3 - Sesión 10
Ejercicios de Modelado_2

Ejercicio 1

Colecciones De Mariposas
Una de las principales tareas de los biólogos es el estudio de la población de las
especies naturales que pueblan el Perú, siendo los insectos uno de los reinos
naturales más estudiados, y dentro de éste, el orden de los lepidópteros, mariposas
concretamente.
Se desea considerar la información referente al estudio de estos insectos, teniendo
en cuenta que se desea representar la información sobre los ejemplares de
mariposas que son capturados, bien para su observación o bien para ser incluidos
en una colección, considerando la zona donde fueron capturados, la fecha de
captura y la persona que realizó la misma.

.,
Se considera que un ejemplar de mariposa pertenece a una única especie. Una
especie pertenece a un único género, y un género pertenece a una única familia
natural.
Cada especie de mariposas tiene un nombre científico que es único, pero el nombre
común que tiene una especie puede variar según la zona geográfica donde se
encuentre. Si bien dentro de una zona determinada el nombre común de una
especie es único.
Ya sea para su observación o para formar parte de una colección, la mariposa ha
de ser capturada primero. La captura de un ejemplar la realiza una sola persona; se
desea mantener además, como se ha mencionado, la información de la fecha y
hora de captura, así como la zona donde ésta se realizó. Asimismo, características
propias del ejemplar capturado, como pueden ser el sexo, el tamaño, etc.

De los ejemplares que son capturados para ser liberados luego de haberlos
estudiado, interesa conocer el tiempo que duró el estudio y el resultado del mismo.
De los ejemplares capturados para formar parte de una colección, se requiere saber
su precio.

Una determinada persona solo puede ser propietaria de una colección, y los
ejemplares de mariposas que pertenecen a esta colección pueden haber sido
capturados por otras personas.
Con relación a las personas, es suficiente considerar al DNI como identificador
único, interesando registrar además su nombre, dirección, actividad (investigador,
profesor, etc.) y teléfono. De las colecciones de mariposas, interesa conocer la
fecha de inicio (la fecha en que la persona comenzó la colección, que no
necesariamente coincidirá con la fecha de captura del primer ejemplar de ésta), el
precio estimado de la colección (que podría no ser igual a la suma de los precios de
las mariposas que la conforman), además de cualquier cuidado especial que sea
necesario para mantener la colección en perfecto estado (como puede ser
temperatura, % de humedad, etc.).
Se desea mantener información de las familias, géneros y especies a las que
pertenecen los ejemplares de mariposas, independientemente de que haya sido
capturado algún ejemplar de los mismos.
Una mariposa sólo puede pertenecer a una colección, y una colección estará
formada al menos por un ejemplar de mariposa (como es lógico).
El nombre de una zona geográfica donde es capturado un ejemplar es único; es
decir, para simplificar se considera que no existen dos zonas geográficas con el
mismo nombre. Cada zona está ubicada en un Departamento y una Provincia.

.,
Entidades Atributos
ejemplar de mariposa zona donde fueron capturados, la fecha de captura y
la persona que realizó la misma.fecha y hora de captura características sexo,
el tamaño, etc
para su observación, estudiado, tiempo que duró el estudio y el resultado del
mismo
Para su Colección precio
Especie . nombre científico
género, codigo, nombre
familia natural.codigo, nombre
nombre común nombre común
zona geográfica nombre Departamento y una Provincia
persona; DNI como identificador único, interesando registrar además su
nombre, dirección, actividad (investigador, profesor, etc.) y teléfono
Colección de mariposas, fecha de inicio (la fecha en que la persona
comenzó la colección, que no necesariamente coincidirá con la fecha de
captura del primer ejemplar de ésta), el precio estimado de la colección (que
podría no ser igual a la suma de los precios de las mariposas que la
conforman), además de cualquier cuidado especial que sea necesario para
mantener la colección en perfecto estado (como puede ser temperatura, %
de humedad, etc.).

Relación

Generalización :

ejemplar de mariposa -> Mariposas para su observación


ejemplar de mariposa -> Mariposas para su Colección

ejemplar de mariposa pertenece (1) especie


Especie pertenece (1..*) ejemplar de mariposa

especie pertenece (1) género


Género pertenece (1..*) especie

género pertenece (1) familia natural


familia natural pertenecen (1..*) género

.,
Despeje de Multi Valoración: nombre común Relación No Identificativa
Especie puede variar según la (1..*) zona geográfica

zona geográfica puede variar según la (1..*) Especie

Especie puede variar según la (1..*) nombre común puede variar según la (1)
zona geográfica

zona geográfica puede variar según la (1..*) nombre común puede variar
según la (1) Especie

ejemplar de mariposa capturada por (1) persona


Persona que capturó (1..*) ejemplar de mariposa

ejemplar de mariposa capturada en una zona ( captura de un ejemplar la


realiza una sola persona )

persona puede ser propietaria (1) colección


Colección puede ser de (1) persona

Mariposas para su Colección pertenecen (1) colección


colección pertenecen (1..*) Mariposas para su Colección
Relación Identificativa

zona geográfica es capturado ejemplar de mariposa;

Cardinalidad Origen a Destino

(0,1,N)

¿Puede No haber un E1 R1 por un E2?

¿Puede un E1 ser R1 por un E2?

.,
¿Puede un E1 ser R1 por más de un E2?

Identificativa

¿Puede un E1 existir sin un E2?

Cardinalidad y Otros Tipos de Relación Relación No Identificativa Despeje de Multi Valoración:


nombre común

Unidad 3 - Sesión 10
Ejercicios de Modelado_2

Ejercicio 2

Expendio de Combustible

.,
Un negocio de expendio de combustible que tiene varias sucursales desea
implementar una base de datos para manejar su información, para lo cual le ha
solicitado que diseñe un modelo de datos con las siguientes especificaciones:
• Cada sucursal tiene un tanque subterráneo para cada tipo de combustible que
expende (90 octanos, 95 octanos, 97 octanos, etc.) y puede tener más de un
surtidor por cada uno.
• Por razones de marketing el precio del galón de cada tipo de combustible puede
variar de una sucursal a otra y a lo largo del tiempo.
• Cuando un grifero va a expender un producto de un surtidor, además de registrar
el monto (en soles) o la cantidad de producto a surtir, debe registrar su identificador
de 4 dígitos. Entonces por cada vez que se expende, el surtidor registra: la fecha, la
hora, la cantidad del producto en galones (del tipo de gasolina correspondiente al
surtidor), el monto de la venta y el identificador del grifero.
• Por seguridad, a cada grifero no se le permite tener más de 500 soles recibidos en
efectivo. Por ello, cada vez que pasan esa cifra debe hacer una entrega a la
administración del grifo, quien una vez contado y registrado (tipo de entrega, fecha,
hora, grifero, monto) lo deposita en una bóveda sólo accesible por una compañía de
traslado / seguridad. Los tipos de entrega pueden ser efectivo o vouchers de débito
o crédito.
• Las sucursales también cuentan con puntos de venta (POS) que permite a un
cliente portador de tarjeta de débito o crédito pagar haciendo uso del POS, donde
se registra: fecha, hora, número de la tarjeta de débito, código del banco emisor de
la tarjeta, operación (número único por cada banco) y monto vendido. En ambos
casos (débito o crédito) el grifero se queda con una copia del "voucher" que
contiene toda la información impresa.
• Por cada expendio es obligatorio que cada grifero entregue una o una boleta
factura. La máquina que registra estos comprobantes imprime el nombre y dirección
de la sucursal, el número de comprobante (único a nivel de toda la empresa), la
fecha, hora, el monto y - sólo si es factura - el RUC informado por el cliente.

.,
Unidad 3 - Sesión 12
Ejercicios de Modelado_3

Ejercicio 1

Organización De Congresos

Se requiere establecer un modelo de datos que soporte la organización de congresos:

Se sabe que en la organización de un congreso se programan muchos eventos. Un


congreso tiene un nombre, un coordinador general, una fecha de inicio y un fin.

.,
Un congreso se puede llevar a cabo en uno o varios locales. Los locales tienen un
código único de identificación, nombre y tipo (hotel, centro empresarial, centro de
convenciones, etc.) y una dirección compuesta de calle, número, ubicación (piso).

Un congreso se puede llevar a cabo en varios locales. Un congreso puede también


tener por definir al local donde se llevará a cabo. Los locales tienen un código único de
identificación, nombre y tipo (hotel, centro empresarial, centro de convenciones, etc.) y
una dirección compuesta de calle, número, ubicación (piso).

Cada evento de un congreso se desarrolla en un ambiente de alguno de los locales


donde se lleva a cabo el congreso.

De cada ambiente es necesario registrar un código de identificación (único por cada


local), el nombre y una descripción textual amplia.

Los participantes pagan por una única inscripción al congreso, pero debido a la
programación de eventos simultáneos, no pueden asistir a todos

De los participantes se registra el nombre, cargo, empresa de procedencia y tipo. Los


tipos de participantes son: asistentes (que pagan la inscripción), estudiantes (que
pagan la mitad de la inscripción), expositores, responsables (organizadores del
evento) y promotores (personas técnicas encargadas de los showrooms).

Cada evento del congreso está a cargo de un responsable, pero una persona
responsable puede estar a cargo de muchos eventos.

Cada evento del congreso está a cargo de un responsable, pero una persona
responsable puede estar a cargo de por lo menos un evento.

Los eventos tienen un identificador único, un título, se llevan a cabo en un ambiente de


un local en una fecha y con una duración determinada y se clasifican por tipo en:
conferencias, mesas redondas y show rooms.

En las conferencias participa un expositor, en las mesas redondas


participan varios expositores, y en los showrooms, uno o muchos promotores.

Se debe controlar la asistencia (por tipo de participante) a cada uno de los


eventos presentados en cada congreso, para conocer los temas de mayor interés.33

Correcto

.,
Incorrecto

.,
Unidad 3 - Sesión 11
Ejercicios de Modelado_3

Ejercicio 2

Tarjetas De Crédito

La Caja de Ahorros de Piura ha creado la entidad financiera NortCredit, la cual tiene


como único producto la tarjeta de crédito, y de la cual ya tiene como 200,000
tarjetas.

Esta tarjeta tiene 3 tipos: Clásica, Oro y Platino. La diferencia entre ellas es la tarifa
que se cobra para cada una (interés, mora, renovación, etc.).

.,
Cada tarifa, sin depender de qué tipo es la tarjeta, se cobra con una frecuencia
definida (al cierre de ciclo, en el mes y año de vencimiento, etc), la cual se
encuentra codificada.Un cliente puede tener una o varias tarjetas de crédito (del
mismo o de diversos tipos). NortCredit para aplicar promociones especiales ha
definido que puede haber tarjetas asociadas(adicionales) a una titular. Las personas
a las que se emiten tarjetas adicionales son registradas también como clientes
tarjetahabientes.

De los clientes tarjetahabientes se mantiene un código único de identificación, su


nombre completo, sexo, fecha de nacimiento, dirección electrónica, dirección
domiciliaria y documento de identidad (tipo y número de documento).

De cada tarjeta se mantiene información del tipo, número único de identificación,


línea de crédito, fecha de emisión, fecha de vencimiento.

Cada vez que el cliente (tarjetahabiente) titular o uno que no lo es (pero puede estar
asociado a uno titular) utiliza la tarjeta, se genera una transacción en el sistema,
que guarda el número de transacción (único), el número de tarjeta, si es un cargo
(compra algo) o un abono (paga la tarjeta), un detalle genérico de la compra, el
establecimiento donde se realiza la transacción (tiendas, banco, etc.), el monto y la
fecha de la transacción.

NortCredit para fidelizar a sus clientes ha diseñado una campaña de “puntostarjeta”,


donde por cada sol de consumo se otorga 1 punto. Con estos puntos los
tarjetahabientes pueden realizar compras en su Web, desde un catálogo de
productos ordenados por 6 categorías (Hogar, Electrodomésticos, Licores,
Perfumes, Niños y computación, por el momento). Las compras con puntos son
registradas también como transacciones, y es necesario guardar registro de los
productos del catálogo (uno o más) adquiridos en cada una de estas transacciones.

Correcto

.,
Revisión de Regla de Negocio
Un cliente puede tener una o varias tarjetas de crédito (del mismo o de diversos
tipos).

.,
Tarjetahabiente a 1..* Tarjetas
Tarjeta a 1 Tarjetahabiente

Interpretación del Modelo en Regla de Negocio.


Tarjetahabiente puede tener una a muchas tarjetas
Tarjeta pertenece a solo un Tarjetahabiente.

Es Igual al Enunciado
Un cliente puede tener una o varias tarjetas de crédito (del mismo o de diversos
tipos).

Interpretación de una Relación del Modelo

De acuerdo a una relación entre dos entidades en un modelo.


Tomamos una:
Sea TARIFA_TIPO_TARJETA y TIPO_TARJETA en este caso.

1ero
Poner el foco (nos ubicamos) en una de las dos entidades a analizar en esta interpretación,
En este caso la Entidad: TIPO_TARJETA.
A esta entidad la trataré como Origen.
Origen: TIPO_TARJETA.

.,
2do
Sobre esa entidad y su relación, analizar otra entidad Destino: TARIFA_TIPO_TARJETA.
A esta entidad la trataré como Destino.
Destino: TARIFA_TIPO_TARJETA.

3ro
Revisar la cardinalidad en la 1ra Vía: Origen a Destino
Origen: TIPO_TARJETA.
Destino: TARIFA_TIPO_TARJETA.

Entonces vamos a revisar lo siguiente:


Origen:
Revisar el color que sale: Si es blanco es 0 o si es sombreado 1.
Destino:
Revisar la forma que entra: Si es círculo es 1 si es flecha el * (Muchos).

Entonces,
1ra Vía: Origen Destino:

Origen: TIPO_TARJETA
Revisar el color que sale: Si es blanco es 0 o si es sombreado 1.
Sale el círculo negro: Indica 1.
Destino: TARIFA_TIPO_TARJETA
Revisar la forma que entra: Si es círculo es 1 si es flecha el * (Muchos).
Entra flecha: Indica el * (Muchos).

Resultado:
1ra Vía: TIPO_TARJETA--- 1..* TARIFA_TIPO_TARJETA

.,
Entidad Destino TARIFA_TIPO_TARJETA = (1..*)

Traducimos a Regla de Negocio:


TIPO_TARJETA--- tiene de 1 a muchos TARIFA_TIPO_TARJETA

4to
Revisar la 2da Vía: Destino Origen
Destino: TARIFA_TIPO_TARJETA.
Origen: TIPO_TARJETA.
Destino:
Revisar el color que sale: Si es blanco es 0 o si es sombreado 1.
Origen:
Revisar la forma que entra: Si es círculo es 1 (No es Opcional) si es flecha el *
(Muchos).

2da Vía: Destino Origen:

Destino: TARIFA_TIPO_TARJETA
Revisar el color que sale: Si es blanco es 0 o si es sombreado 1.
Es sombreado / negro: Indica que es 1.
Origen: TIPO_TARJETA
Revisar la forma que entra: Si es círculo es 1 (No es Opcional) si es flecha el *
(Muchos).
Es círculo: Indica 1.

Resultado:

.,
2da Vía: TARIFA_TIPO_TARJETA 1..1 TIPO_TARJETA

Entidad Origen TIPO_TARJETA = (1)

Traducimos a Regla de Negocio:


TARIFA_TIPO_TARJETA sólo puede tener a un TIPO_TARJETA
● El atributo de la llave foránea será obligatorio (no nulo) al realizar esta relación con su
cardinalidad porque SOLO puede tener uno.

5to
Resultado:
1ra Vía: TIPO_TARJETA--- 1..* TARIFA_TIPO_TARJETA
Entidad Destino TARIFA_TIPO_TARJETA = (1..*)

2da Vía: TARIFA_TIPO_TARJETA 1..1 TIPO_TARJETA


Entidad Origen TIPO_TARJETA = (1)

Reglas Resultantes del Análisis del Modelo


● TIPO_TARJETA--- tiene de 1 a muchos TARIFA_TIPO_TARJETA
● TARIFA_TIPO_TARJETA sólo puede tener a un TIPO_TARJETA

6ta
¿Es necesaria la entidad E1 para identificar únicamente a la entidad E2 si la llave primaria no
es autogenerada?
¿Tiene una raya la relación?
-------|-->

.,
Si tiene

Por lo tanto SI es identificativa.

Correspondencia con la Cartilla

Entidad Destino TARIFA_TIPO_TARJETA = (1..*)


Entidad Origen TIPO_TARJETA = (1)
Por lo tanto SI es identificativa.

Esta tarjeta tiene 3 tipos: Clásica, Oro y Platino. La diferencia entre ellas es la tarifa
que se cobra para cada una (interés, mora, renovación, etc.). Cada tarifa, sin

.,
depender de qué tipo es la tarjeta, se cobra con una frecuencia definida (al cierre de
ciclo, en el mes y año de vencimiento, etc), la cual se encuentra codificada.

Sobre la PC2

Tipos de Preguntas:

Identificación de Reglas
Se brinda un Modelo correcto
Se debe realizar la identificación de reglas correctas

● Se les brinda un modelo diseñado de BD correcto, y se les presenta una lista de reglas,
donde ustedes van a marcar solo las que se cumplen para el modelo presentado.

Ejemplo:

Modelo Correcto

.,
Reglas:

Se sabe que en la organización de un congreso se programan muchos eventos. Un


congreso tiene un nombre, un coordinador general, una fecha de inicio y un fin.

Un congreso se puede llevar a cabo en uno o varios locales. Los locales tienen un
código único de identificación, nombre y tipo (hotel, centro empresarial, centro de
convenciones, etc.) y una dirección compuesta de calle, número, ubicación (piso).

Un congreso se puede llevar a cabo en varios locales. Un congreso puede también


tener por definir al local donde se llevará a cabo. Los locales tienen un código único de
identificación, nombre y tipo (hotel, centro empresarial, centro de convenciones, etc.) y
una dirección compuesta de calle, número, ubicación (piso).

Selección de Modelo
Se brinda un Conjunto de Reglas Correctas
Se debe realizar la selección de modelo correcto entre tres alternativas

.,
● Casos con una lista de reglas muy precisas, y tres modelos en datamodeler (uno
correcto y dos incorrectos). Decidirá entre tres alternativas, los modelos errados tienen
más de un error, ya sea en el tipo de relaciones, condición de obligatoriedad en los
extremos de las relaciones, en la estructura, etc.

Link a Ejercicios de la PC2


:)
https://docs.google.com/document/d/10YapmpY0nrqN2KCUsCMM7lKs_VxzCeV3fv0UUMme4u
I/edit?usp=sharing

.,

También podría gustarte