UNIDAD 2: MER Ejercicios resueltos
ACTIVIDAD 2: Identificación de Entidades - Atributos - Relaciones y MODELADO
EJERCICIO 1: Aplicar MER para TE (tipos o clases de entidad) y atributos identificados
1) Considere la definición de TE y atributos del CASO 1 de la actividad de la semana 4 y aplique MER.
“Una empresa de Arriendo de Maquinaria inscribe a las personas que necesitan arrendar sus maquinarias indicando a lo
menos su rut, nombre, fecha nacimiento, edad, dirección y algún de teléfono de contacto. Desde el momento que la
persona queda inscrita puede arrendar varias maquinarias y en ocasiones puede suceder que la persona se inscriba y no
arriende inmediatamente. Cada maquinaria sólo puede ser arrendada por una persona cada vez. De las maquinarias es
necesario registrar un código, nombre, descripción técnica, las 3 últimas fechas de las mantenciones y el proveedor de la
maquinaria”
a) Aplicar MER para la definición siguiente:
NOTA: Para definir la cardinalidad se utilizó la restricción estructural (mín, máx) definida en el capítulo 3
del libro (página 71):
Después de dibujar el MER, analice lo siguiente: Si se requiere registrar la fecha de arriendo de
la máquina, ¿dónde quedaría dicho atributo?
Si se requiere registrar la fecha de arriendo de la máquina, el MER queda así:
Aclarar al estudiante, que el MER anterior representa que una maquinaria puede ser arrendada por un
único cliente a la vez. No está representando que la misma máquina puede ser arrendada por otro
cliente en otro momento. Ocurrencias (o relaciones) del TR (tipo de relación) arrienda:
ARRIENDA:
rut fecha arriendo código maquinaria
200230663 14-09-2020 121
14566786k 20-10-2020 121 --> (NO PUEDE)
200230663 30-11-2020 121 --> (NO PUEDE)
Analizar con los estudiantes las siguientes situaciones y escoger la que más se acerca a la realidad:
Para representar que una maquinaria es arrendada por varios clientes en distintos momentos, se
debe cambiar la cardinalidad (0,1) a (0, n).
Aclarar al estudiante, que este MER a pesar de que está representando que la maquinaria puede
ser arrendada por varios clientes en distintos momentos, no representa que el mismo cliente
vuelva a arrendar la misma maquinaria en otro momento. Ocurrencias (o relaciones) del TR (tipo
de relación) arrienda:
ARRIENDA:
rut fecha arriendo código maquinaria
200230663 14-09-2020 121
14566786k 20-10-2020 121
200230663 30-11-2020 121 --> (NO PUEDE)
Si el mismo cliente arrienda la misma máquina en otro momento, el modelo debe contemplar
adicionalmente la fecha de arriendo que sería como parte del atributo identificador. Entonces el
MER para esta situación queda de la siguiente forma:
Considerar como supuesto que las máquinas se arriendan por día (no por hora, es decir, el
cliente puede tener en su poder la máquina todo un día como mínimo). Ocurrencias (o
relaciones) del TR arrienda para este caso:
ARRIENDA:
rut fecha arriendo código maquinaria
200230663 14-09-2020 121
14566786k 20-10-2020 121
200230663 30-11-2020 121
102210786 30-11-2020 121 --> (NO DEBIERA PODER, POR LO TANTO, SE
DEBE CONTROLAR POR PROGRAMA: sólo
se pueden arrendar las máquinas que no
estén arrendadas)
b) Si el usuario decide administrar los datos de los proveedores con el fin de gestionar y generar
informes a partir del proveedor a través de los atributos rut y nombre del proveedor, ¿cómo
quedaría el MER definitivo?
Cada máquina es única, entonces es lógico considerar que un proveedor puede abastecer varias
máquinas y cada máquina es abastecida por un proveedor. El proveedor se ingresa a la base de
datos cuando abastezca la primera máquina (no antes), por lo que consideraremos cardinalidad
mínima 1 (relación obligatoria). Por otro lado, ya sabemos que, al ingresar una máquina, el
proveedor es un dato obligatorio, por lo que, se considera cardinalidad mínima 1 (relación
obligatoria). El MER queda así:
2) Extender el modelo de las maquinarias arrendadas a Tipo Subtipo de entidad
Las nuevas reglas del negocio, requieren que al arrendar una maquina el cliente deba elegir un
medio de arriendo mediante un contrato, el contrato que la empresa ofrece es de dos tipos:
Contrato diario, contrato mensual. El contrato diario tiene un precio por dia de arriendo y requiere
saber cuántos días se arrendará la máquina. Cada contrato es efectuado por un cliente, para una
máquina. Los contratos deben saber el identificador del contrato, la fecha de creación del contrato
la máquina y el cliente; además el contrato mensual debe indicar el monto mensual por
contratación, el monto de la garantía y el día de devolución al termino del mes. Los únicos tipos de
contratos de la empresa son diarios y mensuales (completitud), los tipos de contratos son diarios o
mensuales y no se pueden combinar (para esta regla sirve el uso del arco)
EJERCICIO 2: Identificar tipos de entidades, tipos de relaciones y sus cardinalidades.
1) Aplique MER según lo que usted conozca de las realidades presentadas.
a) Determine cuáles de las definiciones siguientes son tipos de entidades (TE) y cuáles son tipos de
relaciones (TR).
TIPOS DE ENTIDADES (TE) TIPOS DE RELACIONES (TR)
MEDICO venta
PACIENTE visita
CASA atención médica
CLIENTE arrienda
TURISTA
PAIS
b) Indique la respectiva correspondencia entre TE y TR (tipo entidad – tipo relación – tipo entidad)
para todas las TR indicadas anteriormente. Ponga las reglas o supuestos que definen la triada.
MEDICO – atención médica – PACIENTE => el paciente podría ser atendido en otro momento
por otros médicos o por el mismo médico. Es
necesario porque los centros médicos (o hospitales)
mantienen fichas de sus pacientes.
CASA – venta – CLIENTE => una casa es vendida a un único cliente y el cliente puede comprar
varias casas. Para organizaciones (empresas) que venden “objetos”,
no es correcto que el mismo objeto se venda a otro cliente si ya fue
vendido anteriormente.
CASA – arrienda – CLIENTE => una casa es arrendada a un único cliente. Existen casos que no
interesa almacenar historia de los arriendos, es decir, en muchas
organizaciones se mantiene el registro del último cliente que
arrienda. Sin embargo, el cliente podría arrendar varias casas. Otras
organizaciones podrían interesarle administrar la historia de los
arriendos, registrando para cada casa todos los clientes que la han
arrendado a través del tiempo. Para cada situación hay que explicar
al usuario las ventajas y desventajas de optar por una u otra.
TURISTA – visita – PAÍS => un turista visita varios países en distintos momentos y un país es
visitado por varios turistas. Podría sólo interesar registrar si el turista
visitó el país o no, es decir, no interesaría saber cuántas veces lo visitó.
En este caso el usuario podría escoger almacenar la fecha de su última
visita. Por otro lado, también podría ser interesante registrar todas las
visitas que realiza el turista al mismo país.
c) Para las correspondencias anteriores (cada triada TE – TR – TE), represéntelas a través de un
MER indicando 2 atributos por cada tipo de entidad y 2 atributos para cada tipo de relación.
Defina las cardinalidades considerando las situaciones de supuestos que se definieron. Además,
elija una triada e indique un ejemplo de instancias de entidades y relaciones para analizar sus
datos.
2) Complete las cardinalidades de los modelos siguientes indicando los supuestos en cada caso.
Muestre una tabla con datos ejemplos (ocurrencias) para los TR de cada esquema:
SUPUESTO: Cada instrumento es tocado por varios músicos y cada músico toca varios instrumentos
distintos.
(1, n) (1, n)
TOCA:
Código Músico Código Instrumento
200230663 121
200230663 122
102210786 121
102210786 122
14566786k 121
14566786k 122
14566786k 123
SUPUESTO: Cada programa se emite una única vez por TV y por un único canal. Los canales a lo
menos exhibe un programa.
(1, 1)
(1, n)
número canal Código programa día hora
13 222 lunes 9:00
13 555 lunes 11:00
13 111 lunes 14:00
7 444 lunes 9:00
7 442 lunes 6:00
7 112 martes 18:15
2 225 miércoles 20:00
Preguntar a los estudiantes: ¿Cómo tendría que hacerlo para que el mismo programa se emita en
el mismo canal pero otro día (a cualquier hora).
SUPUESTO: El alumno está obligado a cursar al menos 1 asignatura y máximo 35 asignaturas (cantidad
total de cursos de su carrera)
(1, 35)
(0, n)
(1, n) (1, n)
Preguntar a los estudiantes: ¿Cómo tendría que hacerlo para que el alumno tome como máximo 6
asignatura, pero por año - semestre?
(TRABAJO AUTÓNOMO) EJERCICIO 3: Aplicar MER para los enunciados siguientes. Analice si algunos
TE son débiles:
3) Cursos, inscripción de actividades deportivas, pagos de colegiatura y préstamo de libros en un
colegio:
a) Un colegio tiene varios cursos para sus distintos niveles académicos (primero básico, segundo
básico, tercero básico, etc.). Los cursos pueden ser varios dependiendo de la cantidad de
alumnos matriculados. Cada nivel académico puede tener como mínimo 1 curso y máximo 4
(ejemplo: para el nivel académico primero básico existen los cursos 1 básico A, 1 básico B y 1
básico C)
b) Al inicio del año académico, los estudiantes del colegio se inscriben en a lo más 3 deportes de
interés. Es obligación que los estudiantes se inscriban al menos en un 1 deporte. Es necesario
obtener información de los deportes inscritos por los estudiantes en cada curso: código del
alumno, su nombre, los deportes que inscribió (nombre del deporte) y la fecha de inscripción de
cada deporte.
c) El apoderado mensualmente realiza el pago mensual de la colegiatura de su hijo. Es necesario
registrar para el alumno el monto del pago, la fecha del pago y el alumno correspondiente. Este
pago se abona al monto registrado en el momento de realizar la matricula del estudiante.
d) El colegio registra libros académicos y de lectura obligatoria para los estudiantes. Cada libro
posee varios ejemplares. Interesa saber los préstamos realizados a los estudiantes con sus
respectivas fecha y días de préstamo y las devoluciones.
4) Compra y venta de productos:
a) Un almacén registra el código y nombre de los productos que vende. En el momento de la venta
se registra el producto, la cantidad vendida, la fecha de venta y el cliente (número cliente y
nombre). Al final del día al dueño del almacén le interesa saber los productos que más se
vendieron y la recaudación total. Al final de cada mes interesa, además, generar un informe de
sus 10 mejores clientes (los que más compraron)
b) El dueño abastece el almacén comprando los productos a distintos proveedores. Cada producto
tiene un único proveedor y se abastece el almacén semanalmente. Es necesario actualizar el
stock de cada producto cada vez que se realizan las compras y se desea llevar un registro de lo
que se compra semanalmente.
(Trabajo autónomo) EJERCICIO 4: Ejercicio de apoyo para el proyecto.
Para el caso 4 de la actividad 1 de la semana 4: “ Se desea crear un sistema de base de datos para una
empresa de transportes que reparte encomiendas por todo Chile. Los encargados de llevar las encomiendas son
los camioneros, de los que se requiere guardar el RUT, nombre, teléfono, dirección, salario y comuna en la que
vive. Un camionero transporta muchas encomiendas, y una encomienda sólo puede ser distribuida por un
camionero. Las encomiendas llegan a las oficinas de distribución ubicadas una en cada provincia. Para las oficinas
es necesario registrar el nombre de la oficina, provincia y su encargado. Los encargados, reciben los camiones con
las encomiendas que vienen desde otras provincias. De las encomiendas interesa conocer el número de
encomienda, descripción, destinatario, oficina origen y dirección del destinatario. De los camiones que manejan
los camioneros, interesa conocer la matrícula, modelo y marca. Un camionero puede conducir diferentes camiones
en fechas diferentes, y un camión puede ser conducido por varios camioneros .”, el consultor creador de esta
base de datos ha identificado y definido los usuarios finales y los requerimientos clasificados en
requerimientos de almacenamiento de datos y requerimientos de consultas e informes. Se describen a
continuación:
Usuarios finales:
Administrador de personal y recursos: Encargado de contratar y registrar al personal de empresa
(choferes y jefes de oficina, entre otros). Además, se encarga de registrar los camiones que
utiliza la empresa, gestionar sus mantenciones, entre otros)
Administrador del programa de reparto: Se encarga de administrar los choferes y los camiones
para generar el programa diario de transporte de encomiendas desde un origen a destino.
Administrador de encomiendas: Este usuario recibe la encomienda del cliente (remitente) y
recibe las encomiendas que llegaron desde otras oficinas. Debe registrar al sistema la
encomienda cuando la recibe del cliente (remitente), aquellas encomiendas que vienen desde
otras oficinas y las que entrega al destinatario.
Requerimientos de almacenamiento:
Almacenar provincias:
o Sus datos: número y nombre provincia, oficina instalada
o Se usarán los números y nombres oficiales de la Subsecretaria de Desarrollo Regional y
Administrativo para las provincias
o Cada provincia registra una única oficina de reparto, sin embargo, se ha definido que, si
en un futuro se desea abrir más oficinas en la misma provincia, la base de datos lo
permitirá.
Almacenar oficinas distribuidoras de encomienda:
o Sus datos: número, nombre, dirección (calle, número, comuna, ciudad), jefe de oficina, y
provincia a la que pertenece.
o Cada oficina está ubicada en una única provincia.
Almacenar camiones de reparto:
o Sus datos: matricula, modelo y marca.
o Los camiones se trasladan a distintas oficinas y pueden ser manejados por distintos
choferes.
Almacenar choferes:
o Sus datos: rut, nombre, teléfono (celular ya que se requiere tener contacto inmediato),
dirección (calle, número, comuna, ciudad) y salario.
o Los choferes transportan encomiendas desde una oficina (ubicada en una provincia) a
otra oficina (ubicada en otra provincia) y usa el camión que se le asigna en su momento.
Almacenar Encomiendas y su trazabilidad:
o Sus datos: número, datos remitente (nombre remitente, teléfono contacto), oficina
origen, datos destinatario (nombre destinatario, teléfono contacto, dirección destino),
oficina destino, estado de la encomienda (recibida en origen, enviada o transportada al
destino, recibida en destino, entregada al destinatario)
o Cada encomienda se transporta a una única oficina destino, por un único chofer que
maneja un único camión.
Almacenar transporte de encomiendas:
o Datos: oficina origen, oficina destino, fecha de salida, chofer y camión de transporte y las
encomiendas que se transportan.
o Cada transporte posee un único origen – destino – chofer - camión y fecha para el
conjunto de encomiendas transportadas.
o El conjunto de encomiendas transportadas debe pertenecer al mismo origen y al mismo
destino.
Requerimientos de consultas e informes:
Se requiere generar un informe de los camiones y choferes disponibles para una fecha
determinada, indicando los lugares (dirección y provincia) donde se encuentran.
Se requiere generar un informe por oficina y fecha, con el programa de transportes de
encomiendas. Este informe muestra el camión y chofer asignado, el origen, el destino y el detalle
de cada encomienda transportada. Entrega el total de encomiendas trasportadas.
Se requiere consultar a la Base de datos el estado de una encomienda específica.
Se requiere consultar por cada oficina, las encomiendas por estado. Es decir, las que fueron
recibidas, entregadas, transportadas, etc. en un periodo o fecha determinada.
El consultor le solicitó a usted que continúe con el modelado, por lo tanto, usted debe hacer lo
siguiente:
Aplique correctamente la sintaxis y semántica del MER para diseñar un esquema conceptual que
represente los requerimientos de la base de datos que se ha descrito antes, identificando
correctamente las entidades, relaciones con sus cardinalidades y los atributos de las entidades y
relaciones según corresponda.