Está en la página 1de 3

CC42A – BASES DE DATOS

Profesores: Claudio Gutiérrez, Gonzalo Navarro


Auxiliar: Mauricio Monsalve

Auxiliar 1
Modelo Entidad-Relación – 16 de agosto de 2004

Recomendaciones preliminares: que trabaja, NO interesa conocer el T.F.C. que dirige


- Un buen modelo ER se debería entender a simple vista; sino a qué alumno se lo dirige.
más aún, debería dar a entender qué se está modelando · Que un Comité está formado por varios profesores
sin problemas. y los profesores pueden formar parte de varios
- Cuando hagan un modelo ER deben tratar de evitar crear Comités. Por otra parte, sí es de interés para el
campos id. Simplemente porque van en contra de la idea comité conocer qué alumno es el que se presenta,
de entender el problema a simple vista y porque no son
con qué T.F.C. y en qué fecha lo ha defendido. El
parte de lo que se quiere modelar (a menos que se
explicite lo contrario, naturalmente). comité se define por un número de tribunal, lugar de
- Traten de evitar atributos con alta posibilidad de ser examen y por el número de componentes.
NULL. Un NULL va en contra de un buen diseño ya que · Al margen de esto, un alumno puede haber
aporta ambigüedad. pertenecido a algún grupo de investigación del que
- En lo posible traten de evitar relaciones ternarias (o de haya surgido la idea del T.F.C. Dichos grupos se
mayor aridad) y entidades débiles. identifican por un número de grupo, su nombre y por
- Escojan llaves simples y representativas. su número de componentes. Un alumno no puede
pertenecer a más de un grupo y no es de interés
Problema 1: Modelar un sistema de ventas saber si el grupo tiene algo que ver o no con el
Le contratan para hacer una BD que permita apoyar T.F.C. del alumno; sí siendo de interés la fecha de
la gestión de un sistema de ventas. La empresa incorporación a dicho grupo.
necesita llevar un control de proveedores, clientes, · Por otra parte, un profesor, al margen de dirigir el
productos y ventas. T.F.C. de algunos alumnos, puede haber colaborado
Un proveedor tiene un RUT, nombre, dirección, con otros en la realización de dicho T.F.C. pero
teléfono y página web. Un cliente también tiene RUT, siendo otro profesor el que lo dirige. En este caso,
nombre, dirección, pero puede tener varios teléfonos sólo es interesante conocer qué profesor ha ayudado
de contacto. La dirección se entiende por calle, a qué alumno (a un alumno le pueden ayudar varios
número, comuna y ciudad. profesores).
Un producto tiene un id único, nombre, precio actual,
stock y nombre del proveedor. Además se organizan Problema 3: ¿Modelo de datos?
en categorías, y cada producto va sólo en una El siguiente modelo ER ha llamado la atención del
categoría. Una categoría tiene id, nombre y auxiliar por su curiosa constitución. En efecto el
descripción. ejercicio es mejorar el modelo que está ahí.
Por razones de contabilidad, se debe registrar la
Balance
información de cada venta con un id, fecha, cliente, #Cliente Cta. Ahorro
descuento y monto final. Además se debe guardar el
precio al momento de la venta, la cantidad vendida y Balance
el monto total por el producto.
CLIENTE
Cta. Corriente
Problema 2: Trabajos de fin de carrera (TFC)
Se ha decidido crear una BD de los TFC, que modele
a alumnos que los realizan, profesores que los Pers. De
dirigen, temas de los que tratan y tribunales que los Contacto
corrigen. Por tanto, es de interés: Persona Empresa
· Que los alumnos se definan por su número de Tipo
matrícula, RUT y nombre. Un alumno realiza,
evidentemente, sólo un T.F.C. #Empleados
Sexo Fecha de
· Que los T.F.C. se definen por su tema, por un Nacimiento
número de orden y por la fecha de comienzo. Un
T.F.C. determinado, no puede ser realizado por El modelo trata de un banco extraño que no deja que
varios alumnos. sus clientes tengan más de una cuenta de ahorro ni
· Que un profesor se define por su RUT, nombre y más de una cuenta corriente. Sí se quiere acceso
domicilio; y puesto que los T.F.C. son del área en el independiente a estos tipos de cuentas (tienen
manejos distintos, por ej. una cuenta de ahorro es
eterna, teóricamente). También se desea registrar los Los soldados están agrupados en compañías, siendo
movimientos de dinero y asociarlos a cada cuenta. significativa para cada una de éstas, el número de
Además se desea tener la posibilidad de contactar y compañía y la actividad principal que realiza.
tratar cordialmente a los clientes (de partida se Se desea controlar los servicios que realizan los
necesita el nombre). soldados (guardias, imaginarias, cuarteleros,...), y se
definen por el código de servicio y descripción.
Problema 4: Servicio Militar Consideraciones de diseño:
¡Hay que hacer más expedito el proceso de Un soldado pertenece a un único cuerpo y a una
reclutamiento! Por ello se le ha contratado para servir única compañía, durante todo el servicio militar. A
a la patria y bla-bla… bases de datos. Los datos una compañía pueden pertenecer soldados de
significativos a tener en cuenta son: diferentes cuerpos, no habiendo relación directa
Un soldado se define por su código de soldado entre compañías y cuerpos. Los soldados de una
(único), su nombre y apellidos, y su graduación. misma compañía pueden estar destinados en
Existen varios cuarteles, cada uno se define por su diferentes cuarteles, es decir, una compañía puede
código de cuartel, nombre y ubicación. estar ubicada en varios cuarteles, y en un cuartel
Hay que tener en cuenta que existen diferentes puede haber varias compañías. Eso si, un soldado
Cuerpos del Ejército (Infantería, Artillería,...), y cada sólo esta en un cuartel. Además, un soldado realiza
uno se define por un código de Cuerpo y varios servicios a lo largo de la mili. Un mismo
denominación. servicio puede ser realizado por más de un soldado
(con independencia de la compañía), siendo
significativa la fecha de realización.

SOLUCIÓN

P1.- Sistema de ventas • Exploten su conocimiento sobre los


problemas para hacer supuestos razonables.
ID Nombre Descripción • Hay más de una forma de modelar un
problema.
Categoría
Número
Calle (1,n)
Comuna Podría ser útil, además, recordar cómo se expresan
Ciudad se las cardinalidades. El siguiente dibujo representa
clasifica
Dirección
cómo se entiende una cardinalidad según la aridad
ID
Teléfono
Nombre
de una relación respecto a una entidad:
(1,1)
Proveedor (1,n) (1,1) Producto Precio
Provee
Stock
Diagrama explicativo de cardinalidad, formato (x,y):
(0,n)
RUT
(1,n)
Nombre
WEB Cantidad Detalle

ID
(1,n)
Fecha
Venta
Monto Final
(1,1)
Descuento

Nombre RUT
Compra

Cliente (1,n)

Teléfonos Dirección
Comuna

Calle
Ciudad Este formato con forma de tuplas es bastante útil
Número pues especifica el número mínimo y máximo (o
simplemente la variedad) de la aridad de una relación
• Recuerden usar el sentido común para respecto a una entidad.
obtener las cardinalidades.
P2.- TFC Balance
(Ejercicio para recalcar la forma de hacer modelos ER) #Cliente Cta. Ahorro (1,1) Se usa
(0,1) de (1,1)
Nombre Balance
Grupo
CLIENTE
(1,n) (0,1)
de Cta. Corriente
Nº (1,1)
(1,1) (1,1)
Está Tema
Fecha Tipo Se usa GIRO
en Nº Nº
(1,1)
(0,n) Nº matrícula
Nombre Pers.Natural Empresa Nombre
Monto
Fecha
Alumno Hace T.F.C. (1,1)
RUT (1,1) (1,1) #Empleados
(1,1) (0,m) (1,1) Contacto

Ayuda (0,1)
Fecha Examina
Dirige Persona Sexo
C.I.
Fecha de
(1,n) (1,1) Nacimiento
(0,n) Nombre
RUT Es Nombres
Profesor parte Tribunal Dirección Teléfono
(1,n) (n,m) Apellido1
Nombre Apellido2 Número
Domicilio Lugar Ciudad
Nº tribunal Comuna
Calle
(Ahora sólo contempla alumnos que hacen TFC, ver enunciado)
Además puse, en Persona, a Nombres como un
Nota: Aquí no extendí ni los atributos Nombre ni atributo multivaluado. Es porque soy una excepción a
Domicilio, pero uds. saben que suelen ser atributos la regla de los dos nombres… Igual esa no es la
compuestos; en Nombre van nombres y apellidos, y solución óptima, ni tampoco es muy buena que
en Domicilio van el número, la calle, la comuna, la digamos. ¿Por qué? (Para meditar, varios motivos,
ciudad, etc. Domicilio es bien expandible. pero  nombres no debe ser multivaluado).
Ahora queda propuesto mejorar lo anterior (es
P3.- ¿Modelo de datos? perfectamente mejorable). Para meditar: ¿Cómo
Viendo el dibujo original es posible percatarse que no modelaría el caso de 40 tipos distintos de cuenta?
hay llaves, no hay cardinalidades y que no hay Por ejemplo, cuenta para la vivienda, cuentas PYME,
información suficiente en éste como para trabajar el planes ejecutivos, cuentas para capital de trabajo,
problema. Entonces del dibujo original: etc. (Hint: Debe quedar más simple).

Balance P4.- Servicio Militar


#Cliente Cta. Ahorro (Ejercicio sencillo para llenar 10 minutos de auxiliar)
Balance
CLIENTE
Cta. Corriente

Pers. De
Contacto
Persona Empresa
Tipo

#Empleados
Sexo Fecha de
Nacimiento

Se puede elaborar un poquito y conseguir lo


siguiente (una de tantas alternativas):

Intereses relacionados